Perceptrons
Na aula que assisti agora há pouco, o Geoffrey Hinton ensinou sobre os perceptrons.
Primeiro, o contexto.
Frank Rosenblatt popularizou os perceptrons com um livro no início dos anos 1960.
Em 1969, Minsky e Papert publicaram um artigo discutindo os perceptrons e suas limitações. Eles não mostraram que as redes neurais tem uma limitação de um modo geral, apenas as limitações dos perceptrons. Mas, com essa interpretação errada, muitos pesquisadores deixaram de investir em redes neurais.
Bom, sobre os perceptrons.
Como estrutura, eles são basicamente o neurônio de McCulloch e Pitt, que já discutimos. Eles tem feature units que são criadas a partir das input units e, no fim, uma decision unit.
As feature units são conectadas com a decision units com os pesos e só essas unidades aprendem.
Lembremos que a resposta seria 0 ou 1 desse neurônio de McCulloch e Pitt.
E um detalhe, o bias fica como parte dos pesos, ligando-se uma input unit adicionada com o valor 1.
Mas, então, como os perceptrons aprendem?
O procedimento pode ser resumido em três condições.
Se, para uma dada entrada, a resposta do perceptron está correta, deixa-se os pesos em paz.
Se, para uma dada entrada, a resposta do perceptron está incorreta e prediz 0, soma-se os input vectors aos weight vectors.
Se, para uma dada entrada, a resposta do perceptron está incorreta e prediz 1, subtrai-se os input vectors dos weight vectors.
Simples assim.
Bom, realizaremos a implementação no micrograd 2.0, do perceptron e do procedimento dele de aprendizado.