Baixe o app para aproveitar ainda mais
Prévia do material em texto
O perceptron (Rosenblatt, 1958), é o modelo mais simples e antigo de uma rede neural, que nos permite compreender de maneira simples o funcionamento de uma RNA em termos matemáticos. Em resumo, um perceptron pode ser representado como um único neurônio que recebe várias entradas e produz uma única saída, como mostra a Figura 1. Esta configuração também é conhecida pelo modelo de McCulloch-Pitts, que será aprofundado em módulos posteriores. Perceptron de Camada Simples Figura 1: Representação matemática de um perceptron. Como na Figura 1, vamos imaginar um Perceptron de camada simples com apenas três entradas (inputs), denominados por x1, x2 e x3. Ao determinarmos um parâmetro de importância a cada uma das entradas (pesos estatísticos), podemos determinar a soma ponderada das entradas como na seguinte equação: em que pj (em outros módulos denotamos w) representa o peso associado a xj. A partir de um valor limite (threshold), definimos o valor binário do output, que será dado por sendo b o threshold. O valor representado por b recebe o nome de bias (viés), e pode ser interpretado como uma grandeza que mede a facilidade de ativarmos o Perceptron (output = 1). Note que, no caso citado, o Perceptron pode ser utilizado como uma função lógica em programação. Este tipo de função engloba os operadores booleanos, como a função AND ou OR. Perceptron de Múltipla Camada (PMC) Um Perceptron de múltiplas camadas pode ser definido como uma RNA com uma ou mais camadas ocultas que tenham n neurônios (Figura 2). Ao contrário do Perceptron de camada simples que possui um único neurônio de saída, o PMC é capaz de correlacionar o sinal de saída de diversos neurônios da camada de saída. Linguagem de Programação Python Figura 2: Exemplo de PMC, em que n representa o número de átomos e m o número de camadas ocultas Atualmente existem diversas ferramentas capazes de lidar com a construção de redes neurais. Entre essas muitas ferramentas, a que mais se destaca no cenário atual é a linguagem de programação Python. Por quê? Entre todas as linguagens de programação, o Python é de longe a ferramenta que mais possui recursos implementados, que são capazes de atacar problemas de natureza estatística. Estas ferramentas são implementadas em pacotes como o SciPy, NumPy, Matplotlib, entre outras, que, além de versáteis, são de fácil compreensão e gratuitas. Além das qualidades já citadas, o Python possui uma extensa comunidade de usuários, que participam ativamente na criação e aprimoramento de ferramentas e bibliotecas. Link para acessar dados da disciplina nas práticas: https://drive.google.com/drive/folders/1CfCX6G-8y7CHTHGMc8T- 2xG068EXmFdQ?usp=sharing Link para acessar todas as práticas e programas durante a disciplina: https://drive.google.com/drive/folders/1zhcDYkPFUWyls27N_PJfgj9- 5VMgqKD9?usp=sharing Atividade Extra https://drive.google.com/drive/folders/1CfCX6G-8y7CHTHGMc8T-2xG068EXmFdQ?usp=sharing https://drive.google.com/drive/folders/1zhcDYkPFUWyls27N_PJfgj9-5VMgqKD9?usp=sharing Recomendo o seguinte artigo que se encontra no link abaixo: https://www.deeplearningbook.com.br/o-perceptron-parte-1/ Referência Bibliográfica HAYKIN, S. "Neural Networks. A Comprehensive Foundation". 2 ed. New Jersey: Prentice Hall, 2001. LEK, S.; PARK, Y.P. “Artificial Neural Network”. Springer. 2008. GOODFELLOW, I. “Deep Learning”. The Mit Press. 2016. Ir para questão https://www.deeplearningbook.com.br/o-perceptron-parte-1/
Compartilhar