Inmetrics

Redes neurais artificiais

Redes neurais artificiais

Observar, entender, analisar e tentar reproduzir: esses comportamentos humanos são repetidos há milhões de anos, sempre que identificamos um fenômeno natural que cremos ser possível copiar. Fizemos isso com o fogo, quando percebemos que conseguíamos gerar faíscas a partir do atrito entre objetos. Fizemos isso com os aviões, a partir da análise da aerodinâmica de pássaros. E fazemos isso com as redes neurais artificiais, na intenção de reproduzir a inteligência natural, a humana.

Conforme contamos no post sobre inteligência artificial, desde a invenção dos computadores, cientistas acreditavam que máquinas seriam capazes de emular o pensamento humano. Contudo, como poderíamos emulá-lo se não sabíamos como ele realmente acontecia?

Pensar sobre o pensamento, mais especificamente, sobre entendimento, conhecimento e aprendizagem, é uma das buscas mais antigas da humanidade, perpassando diferentes ciências. Siga com a gente neste texto para conhecer como avançamos na compreensão do funcionamento da mente e como as descobertas possibilitaram a criação das redes neurais artificiais!

O que é aprender?

Observar como a mente funciona foi uma preocupação para diferentes sociedades do mundo: Egito, China, Grécia… O registro histórico mais antigo dessa preocupação possivelmente é uma coleção de máximas, ou conselhos, produzidas por Ptahhotep, vizir do faraó Djedkare Isesi, há cerca de 4.500 anos. Em uma dessas máximas, ele afirma: “se aquele que escuta ouve plenamente, ele se torna então aquele que entende”.

Os sentidos – no caso, a audição – são um input para o entendimento. Dois mil anos depois de Ptahhotep, Teeteto, em um diálogo sobre conhecimento com Sócrates e Teodoro, sugere que conhecer é perceber através dos sentidos. Em resposta, Sócrates e Teodoro argumentam que a facilidade de aprender demanda entendimento rápido e boa memória.

Ptahhotep, Sócrates e outros filósofos, há milhares de anos, associaram entendimento e aprendizagem a percepção e memória. Essas linhas de pensamento avançaram por diferentes ciências até o ponto de compreendermos que processos mentais derivam da nossa formação biológica.

Como contamos em post publicado aqui no blog, estudando a morfologia do cérebro descobrimos as redes neurais. A partir desse avanço, compreendemos que o raciocínio acontece por causa das conexões entre camadas de neurônios. Contudo, as sinapses explicam apenas parte do funcionamento da inteligência. Como, a partir delas, é gerado o aprendizado?

Foi a Psicologia que trouxe essas respostas, mais especificamente a teoria de Donald Hebb, o psicólogo canadense e professor da Universidade de McGill, em Montreal. Em sua teoria, Hebb apresenta o conceito de “assembleias celulares”: grupos de neurônios que trabalham conjuntamente, como uma unidade de processamento. De acordo com Hebb, é nas “assembleias celulares” que a percepção se transforma em “informação”. Além disso, ele propõe que “assembleias” que são repetidamente ativadas geram mudanças estruturais ou metabólicas naquele conjunto de células, permitindo que a memória seja armazenada de forma estável.

Com a memória armazenada, aí sim é possível aprender. De acordo com a teoria de Hebb, atividades repetidas persistentemente viabilizam o crescimento do volume de conexões e a formação de outras “assembleias celulares”, mais amplas. Assim, o momento em que aprendemos é aquele no qual associamos informações que inicialmente foram memorizadas em “assembleias” mais restritas.

Redes neurais artificiais: entendendo suas estruturas

No post sobre redes neurais, contamos que em 1958 Frank Rosenblatt cria a o perceptron – um classificador linear que mapeia valores de entrada para um valor de saída – que seria o “neurônio artificial”.

O algoritmo perceptron calcula um valor de saída a partir de alguns valores de entrada sendo que estes tem pesos, que expressam a importância de cada valor de entrada. O cálculo que o perceptron faz é uma soma ponderada dos valores de entrada e leva em consideração um valor de viés, um termo constante que não depende dos valores de entrada.

O valor de saída de cada perceptron é necessariamente um dos valores de entrada de todos os perceptrons da camada seguinte. Nessa nova camada, os perceptrons fazem o mesmo cálculo, a soma ponderada dos valores anteriores, levando em consideração um valor de viés – e assim sucessivamente – até chegar ao valor final da rede neural artificial.

A rede neural artificial criada por Rosenblatt é um tipo de rede neural feedforward de camada única. Apesar de conseguir “tomar decisões”, ela possuía um aprendizado limitado. Lembremos que para aprender, a inteligência humana armazena de forma estável a memória em “assembleias celulares” e, ao repetir persistentemente a ativação dessas “assembleias”, há crescimento no volume de conexões e a formação de novas “assembleias”. Dizendo de outra forma, para que as redes neurais artificiais aprendessem de forma ampla, elas precisariam repetir a atividade e estabelecer novos conjuntos de conexões. O fluxo do cálculo não poderia apenas seguir em frente, ele deveria poder ser voltar para ser repetido e, a partir daí, possibilitar novas conexões criando novas “assembleias”.

Esse foi o problema resolvido com o algoritmo de retropropagação, descrito no artigo “Aprendizado de representações por meio da retropropagação de erros” de David Rumelhart, Geoffrey Hinton e Ronald Williams. O que o algoritmo viabiliza é que um sinal seja enviado para trás – ou “retropropagado” – pela rede, informando quanto e em qual direção cada perceptron contribuiu para o erro final. O sinal informa uma sensibilidade do erro, ou seja, quanto uma diferença de valores, seja nas entradas ou nos pesos, alteraria o valor de saída. Esse sinal é usado para calcular o ajuste dos pesos de cada conexão.

Com o algoritmo de retropropagação, redes neurais artificiais multicamadas começaram a apresentar resultados muito mais confiáveis, uma vez que havia uma previsão mais refinada para tratar erros e usar essa informação para proveito da própria rede. Consequentemente, era mais fácil para ela aprender.

Sendo assim, quanto maior a quantidade de camadas e quão mais profundas elas são, maiores são as capacidades de aprendizagem das redes neurais artificiais. Redes com quatro ou mais camadas podem conseguir realizar aprendizado profundo, o deep learning que nos acostumamos a ouvir.

Se você quer experimentar o poder das redes neurais artificiais na sua empresa, faça contato conosco para conhecer o LIEV: a inteligência artificial que está integrada em todas as nossas soluções. Com ele, sua empresa ganha mais velocidade e eficiência: aumentamos a produtividade do time em até quatro vezes, sem abrir mão da segurança, uma vez que garantimos a privacidade total do código-fonte e dos dados – eles nunca são compartilhados nem utilizados para treinar redes externas.

Quer ver o LIEV funcionando na prática? Acesse nossa playlist no YouTube! Se quiser entender como o LIEV potencializa nossas soluções, transformando a forma como sua empresa trabalha, clique aqui e fale com a gente!