Capítulo 2 : Rede neural (aprendizado de máquina)
Uma rede neural, também conhecida como rede neural artificial ou rede neural, e conhecida por suas abreviaturas ANN ou NN, é um modelo que é usado em aprendizado de máquina. Este modelo é inspirado na forma e função das redes neurais biológicas observadas em cérebros animais.
Os neurônios artificiais que compõem uma rede neural artificial (RNA) são unidades conectadas ou nós que são modelados a partir dos neurônios que são encontrados no cérebro. As arestas que os conectam são uma representação das sinapses que são encontradas no cérebro. Depois de receber sinais de outros neurônios que estão conectados a ele, cada neurônio artificial processa esses sinais e, em seguida, transmite-os para outros neurônios que estão conectados a ele. O "sinal" é um número real, e a função de ativação é uma função não linear que opera no total das entradas para cada neurônio. Esta função é responsável por calcular a saída de cada neurônio. Durante o processo de aprendizagem, um peso é usado para determinar a força do sinal em cada link. Este peso é ajustado e ajustado conforme necessário.
Numa situação típica, os neurónios são agrupados em camadas. É possível que várias camadas realizem uma transformação única em suas respetivas entradas. É possível que os sinais passem por inúmeras camadas intermediárias, também conhecidas como camadas ocultas, pois passam da primeira camada, que é a camada de entrada, para a última camada, que é a camada de saída. Quando uma rede inclui pelo menos duas camadas ocultas, é muitas vezes referida como uma rede neural profunda para descrever a rede.
Existem várias aplicações para redes neurais artificiais, incluindo modelagem preditiva, controle adaptativo e resolução de problemas em inteligência artificial. Existem também muitas outras aplicações. Têm a capacidade de adquirir conhecimentos através da experiência e podem tirar ilações a partir de um conjunto de factos que parecem não estar relacionados entre si.
Na maioria das vezes, as redes neurais são treinadas através do processo de limitação empírica de risco. Esta abordagem baseia-se no conceito de otimização dos parâmetros da rede, a fim de minimizar a diferença, também conhecida como risco empírico, entre a saída prevista e os valores-alvo reais num determinado conjunto de dados. A estimativa dos parâmetros da rede é frequentemente realizada pela utilização de abordagens baseadas em gradiente, como a retropropagação. As redes neurais artificiais (RNAs) aprendem com dados de treinamento rotulados durante a fase de treinamento, alterando iterativamente seus parâmetros para minimizar uma função de perda que foi definida. Usando essa estratégia, a rede é capaz de generalizar para dados que não encontrou anteriormente.
Há mais de dois séculos, os primeiros trabalhos em estatística lançaram as bases para as redes neurais profundas que são usadas hoje. O tipo mais básico de rede neural feedforward (FNN) é uma rede linear. Este tipo de rede é composto por uma única camada de nós de saída que têm funções de ativação linear. As entradas são enviadas diretamente para as saídas através de uma série de pesos. Os cálculos são realizados em cada nó para determinar o total dos produtos dos pesos e das entradas. Com o objetivo de minimizar os erros quadrados médios que ocorrem entre essas saídas estimadas e os valores de meta que foram fornecidos, foi criado um ajuste nos pesos. Tanto o método dos mínimos quadrados como a regressão linear são nomes que têm sido usados para se referir a esta técnica há mais de dois séculos. Legendre (1805) e Gauss (1795) utilizaram-no como um método para determinar um ajuste linear aproximado decente a um conjunto de pontos, a fim de fazer previsões sobre o movimento dos planetas.
A operação de computadores digitais, como a arquitetura von Neumann, tem sido tradicionalmente realizada através da execução de instruções explícitas, com a memória sendo acessada por uma série de processadores discretos. Certas redes neurais, por outro lado, foram inicialmente desenvolvidas como resultado de uma tentativa de descrever o processamento de informações que ocorre em sistemas biológicos utilizando a estrutura do conexionismo. A computação conexionista, ao contrário da abordagem de von Neumann, não divide memória e processamento em duas categorias distintas.
Em 1943, Warren McCulloch e Walter Pitts examinaram a possibilidade de conceber um modelo computacional para redes neurais que não incluísse a aprendizagem. A pesquisa pôde ser dividida em duas metodologias distintas como resultado deste modelo. O primeiro método concentrou-se em processos biológicos, enquanto o segundo método foi centrado na utilização de redes neurais no campo da ciência da inteligência artificial.
D. nasceu no final da década de 1940. A aprendizagem hebbiana é uma hipótese de aprendizagem que foi proposta por O. Hebb. Esta hipótese foi fundada no mecanismo da plasticidade cerebral e desenvolveu-se numa teoria. Numerosas redes neurais antigas, como o perceptron de Rosenblatt e a rede Hopfield, fizeram uso dele em suas operações. Em 1954, Farley e Clark realizaram uma simulação de uma rede hebbiana utilizando dispositivos de computação. Rochester, Holland, Habit, e Duda (1956) foram os que criaram mais máquinas computacionais de redes neurais.
O Escritório de Pesquisa Naval dos Estados Unidos forneceu financiamento para o desenvolvimento do perceptron, que foi uma das primeiras redes neurais artificiais a ser desenvolvida. O percetivo foi descrito pelo psicólogo Frank Rosenblatt no ano de 1958.
Um dispositivo semelhante ao perceptron ainda anterior foi desenvolvido por Farley e Clark, de acordo com R. D. Joseph (1960). Ele escreve que "Farley e Clark do MIT Lincoln Laboratory realmente precederam Rosenblatt no desenvolvimento de um dispositivo semelhante ao perceptron." No entanto, "abandonaram o assunto".
Como resultado do perceptron, o interesse público em pesquisas relacionadas a redes neurais artificiais aumentou, o que levou a um aumento significativo no financiamento do governo dos Estados Unidos. A "Era de Ouro da IA" foi alimentada pelas afirmações otimistas feitas por cientistas da computação sobre a capacidade dos perceptrons de replicar a inteligência humana. Esta circunstância ajudou ao desenvolvimento da inteligência artificial.
Não era possível que os perceptrons iniciais tivessem unidades ocultas adaptativas. No entanto, Joseph (1960) também abordou perceptrons multicamadas que incluíam uma camada oculta adaptável em sua estrutura. Esses conceitos foram citados e utilizados por Rosenblatt (1962), que também deu crédito ao trabalho realizado por H. Tanto D. Block quanto B. O Cavaleiro, W. Os primeiros esforços que foram feitos não resultaram, no entanto, em um algoritmo de aprendizagem capaz de trabalhar para unidades ocultas, também conhecido como deep learning.
Nas décadas de 1960 e 1970, a pesquisa fundamental sobre redes neurais artificiais (RNAs) foi realizada. A técnica de tratamento de dados do Grupo, desenvolvida em 1965 na Ucrânia por Alexey Ivakhnenko e Lapa, foi o primeiro algoritmo de aprendizagem profunda que teve sucesso no propósito pretendido. Era uma maneira de treinar redes neurais que eram arbitrariamente profundas. De acordo com sua interpretação, era um tipo de regressão polinomial ou uma generalização da análise percetiva de Rosenblatt. Este método, que se baseia no treinamento de camadas por camadas através de análise de regressão, foi relatado em um estudo publicado em 1971. A rede profunda que foi desenvolvida usando este método incluiu oito camadas. Através da utilização de um conjunto de validação distinto, unidades ocultas desnecessárias são eliminadas. Devido ao fato de que as funções de ativação dos nós são calculadas usando polinômios de Kolmogorov-Gabor, estas também foram as primeiras redes profundas a conter unidades multiplicativas, às vezes conhecidas como "portas".
O primeiro perceptron multicamadas de aprendizagem profunda que foi aprendido usando descida gradiente estocástica foi publicado por Shun'ichi Amari no ano de 1967. Durante os experimentos de computador que foram realizados por Saito, um aluno de Amari, um perceptron multicamadas (MLP) com cinco camadas e duas camadas que poderiam ser modificadas aprendeu representações internas para identificar classes de padrões não linearmente separáveis. Como resultado de melhorias adicionais no hardware e ajustes de hiperparâmetros, a descida de gradiente estocástico de ponta a ponta emergiu como a técnica de treinamento mais popular no momento.
Foi em 1969 que Kunihiko Fukushima apresentou pela primeira vez a função de ativação ReLU, que significa a unidade linear retificada. Já é bem reconhecido que o retificador é a função de ativação mais utilizada para deep learning.
No entanto, a pesquisa parou nos Estados Unidos até o trabalho de Minsky e Papert (1969), que observaram que os perceptrons básicos eram incapazes de processar o circuito exclusivo. No caso das redes profundas propostas por Ivakhnenko (1965) e Amari (1967), esse entendimento era completamente irrelevante.
Arquiteturas de aprendizagem profunda para redes neurais convolucionais (CNNs) com camadas convolucionais e camadas de redução de resolução e replicação de peso foram desenvolvidas pela primeira vez por Kunihiko Fukushima em 1979 com o Neocognitron. No entanto, a retropropagação não foi usada para treinar o Neocognitron.
No contexto de redes constituídas por nós diferenciáveis, a retropropagação é uma aplicação...