Prévia do material em texto
Paradigmas de Aprendizado de Redes Neurais Arti�ciais O que são Redes Neurais Arti�ciais (RNA)? Em suma, uma RNA é um método computacional de aprendizagem baseado no funcionamento do cérebro humano. Seu funcionamento pode ser entendido a partir de uma breve analogia com os sentidos do corpo humano. Quando estamos inseridos em um ambiente, nossos sentidos, como olfato, tato ou visão, fornecem informações sobre as condições do meio em que estamos inseridos. É a partir dessas informações que pautamos as nossas ações. Se estamos em um ambiente muito quente, com alta incidência de raios solares, nossos sentidos são capazes de interpretar essas informações e nos dar as possíveis consequências de uma permanência prolongada em tal ambiente, como uma insolação solar ou até mesmo lesões severas na pele. Essa capacidade interpretativa é construída a partir de um processo de aprendizado, constituído basicamente por experiências adquiridas ao longo de nossas vidas e lições que nos são transmitidas em um processo geracional. Assim como no exemplo a pouco citado, uma rede neural arti�cial trabalha inserida em um meio, de onde se retiram informações iniciais (inputs) e suas consequências (outputs), de acordo com o treinamento obtido através do processo de aprendizagem da rede neural. Este processo pode �car mais claro a partir de uma representação grá�ca: Figura 1: Exemplo de uma rede neural arti�cial. As camadas em vermelho, amarelo e azul descrevem, respectivamente, a camada de entrada (input layer), camada oculta (hidden layer) e camada de saída (output layer). | Fonte: LEK, PARK (2008). Na Figura 1, a camada de entrada recebe os estímulos do meio absorvendo os dados iniciais, que, logo em seguida, são processados pelas camadas ocultas conforme o processo de aprendizagem da máquina. Por �m, os resultados são apresentados na camada �nal, ou camada de saída. Arquiteturas de Rede A forma como estruturamos a RNA é orientada pelo algoritmo de aprendizado escolhido. Em geral, estes algoritmos são escolhidos de acordo com a complexidade do problema a ser atacado. Suas estruturas básicas podem ser divididas em três classes: Redes Alimentadas Adiante com Camada Única Quando organizado em camadas, os neurônios são distribuídos em nós de entrada e saída, em um sistema de distribuição de informações não-cíclico. Estes nós formam as camadas de entrada e saída, como mostra a Figura 2. Figura 2: Exemplo de uma rede de camada única. | Fonte: HAYKIN S. (2001). Redes Alimentadas Adiante com Múltiplas Camadas Como no caso anterior, os dados nesse tipo de rede �ui apenas em uma direção, no entanto, entre as camadas de interface existem N camadas, ditas camadas ocultas, formadas por nós ocultos. Este tipo de arquitetura é extremamente útil quando o número de nós na camada de entrada é particularmente grande, dando mais profundidade à análise da RNA. Logo abaixo temos um exemplo de rede com múltiplas camadas: Figura 3: Exemplo de uma rede com múltiplas camadas. | Fonte: HAYKIN S. (2001). Redes Recorrentes Ao contrário dos casos anteriores, uma rede recorrente possui um �uxo cíclico de dados, com ao menos um dado de saída sendo reintroduzido na camada de entrada após o término do processo de aprendizado. Este tipo de rede pode ser construída com ou sem camadas ocultas, como mostra a Figura 4. Figura 4: Exemplo de duas redes recorrentes, com camada única (esquerda) e camada oculta (direita). | Fonte: HAYKIN S. (2001). A realimentação da camada de entrada com dados da camada de saída afeta profundamente a capacidade de aprendizagem da rede e seu desempenho, alterando o comportamento linear da RNA. Aprendizado Supervisionado O processo de aprendizagem de uma RNA pode ser de�nido como uma busca por padrões em um conjunto de dados que permitam predições de comportamento. De maneira simples, o processo de aprendizado pode ser dividido em três tipos: supervisionados, não supervisionados e por reforço. O processo supervisionado ocorre quando ensinamos à rede como fazer predições mais assertivas a partir de resultados já assimilados e de veracidade comprovada. Neste caso, adicionamos à rede um elemento dito professor, que possui experiência prévia sobre os resultados desejados. Deste modo, quando comparamos a diferença entre os resultados obtidos com os resultados esperados, adicionamos o elemento erro ao nosso aprendizado de máquina. Aprendizado Não Supervisionado São classi�cadas como redes não supervisionadas as redes que não possuem nenhum direcionamento durante o processo de aprendizagem. Nesse caso, a própria rede é responsável por agrupar os padrões de treinamento de acordo com o número de entradas. Aprendizado por Reforço De modo semelhante ao primeiro caso, no aprendizado por reforço o conhecimento prévio de um resultado assertivo é substituído por um crivo, que avalia os resultados obtidos por um determinado processo de aprendizado, reforçando suas diretrizes caso o resultado seja satisfatório. Atividade Extra Recomendo assistir esse vídeo, com legendas em português. Mas o que *é* uma Rede Neural? | Deep learning https://www.youtube.com/watch?v=aircAruvnKk (19:13) https://www.youtube.com/watch?v=aircAruvnKk Referência Bibliográ�ca HAYKIN, S. "Neural Networks. A Comprehensive Foundation". 2 ed. New Jersey: Prentice Hall, 2001. LEK, S.; PARK, Y.P. “Arti�cial Neural Network”. Springer. 2008. GOODFELLOW, I. “Deep Learning”. The Mit Press. 2016.