Dando continuidade ao assunto dos artigos anteriores sobre Redes Neurais, iremos explorar a Rede Perceptron de uma única camada. O Perceptron foi criado em 1958 por Rosenblatt, sendo a forma mais simples da configuração de uma rede neural artificial, uma vez que é constituída de uma única camada neural e de um único neurônio. A figura 1 ilustra a rede Perceptron de única camada, onde podemos ter N entradas, mas apenas uma única saída com um valor de 0 e 1 ou de -1 e 1.
O Perceptron de uma única camada é utilizado para dividir duas classes linearmente separáveis (figura 2), apresentando erro para classes não linearmente separáveis (figura 3), onde se recomenda usar a rede Perceptron Multicamadas, que falaremos a respeito posteriormente. Devemos recordar que para cada entrada adicionada à fronteira de separação será representada por um plano ou hiperplanos.
O funcionamento da rede Perceptron é muito simples, as entradas (Xi) representam as informações do processo que desejamos mapear, sendo que cada uma das entradas terá um peso sináptico ponderado (Wi) que representa a importância de cada entrada em relação ao valor de saída desejado (y). O resultado da somatória das entradas ponderadas será somado ao limiar de ativação (θ) e então repassado como argumento da função de ativação g(.), a qual terá como resultado a saída desejada. Normalmente a função de ativação costuma ser do tipo função degrau ou degrau bipolar. Representando matematicamente teremos:
Onde:
Simbologia:
- Xi – Entradas – Valor real ou binário
- Wi – Pesos Sinápticos – Valor Real aleatório
- θ – Limiar de Ativação – Valor Real aleatório
- y – Saída – Valor Binário
- g(.) – Função de Ativação – Degrau ou Degrau Bipolar
Os pesos sinápticos, assim como o limiar do Perceptron, serão corrigidos através do processo de treinamento supervisionado por meio da regra de aprendizado de Hebb, para cada amostra dos sinais de entrada. Se a saída produzida coincidir com a saída desejada, os pesos sinápticos e os limiares serão incrementados proporcionalmente aos valores de seus sinais de entrada. Do contrário, caso a saída seja diferente, seus valores serão decrementados. Este processo irá se repetir sequencialmente para todas as amostras de treinamento, até que a saída final seja similar à desejada, conforme as equações a seguir:
e
Onde:
- η representa a taxa de aprendizado ou a velocidade com que o processo de treinamento converge rumo à estabilidade, sendo que o valor de η deverá estar compreendido entre 0 < η < 1;
- K representa a k-ésima amostra.
Já a saída do Perceptron assumirá dois valores possíveis. Supondo que desejemos trabalhar com a função sinal, teríamos:
ou
Vídeo demostrativo e código
A seguir é apresentado um vídeo demonstrativo do Perceptron:
Você pode baixar o código de treinamento aqui.
Referências








