• Nenhum resultado encontrado

2.2.1 Modelo do Neurónio Artificial

As redes neuronais artificiais são constituídas por pequenas unidades processadoras, normalmente conhecidas por neurónios. O neurónio ou neurónio artificial (como por vezes é referido evidenciando as sua diferenças face ao neurónio biológico) é o elemento chave de uma RNA.

O primeiro modelo de um neurónio artificial foi proposto por McCulloch e Pitts em 1943 e surgiu como uma tentativa de reproduzir, de uma forma simplificada, o funcionamento do neurónio biológico. No entanto, as diferenças entre o neurónio biológico e o neurónio artificial são significativas, estando este último longe de representar o real funcionamento do primeiro. Ao longo do tempo este modelo tem sofrido sucessivas melhorias dando origem a novos modelos, mais sofisticados e eficientes.

O modelo do neurónio generalizado consiste num conjunto de n entradas (inputs), X1, X2, ..., Xn, que representam as sinapses, e uma saída Y (output). Cada input Xi é

ponderado, antes de chegar ao corpo principal do elemento de processamento (neurónio), por um factor de peso Wi. À semelhança do neurónio biológico, este peso Wi, pode ser

2.2 Modelo de um Neurónio 17

positivo ou negativo, dependendo das suas capacidades inibidoras ou excitantes.

Um neurónio biológico reproduz um sinal quando a soma dos seus impulsos ultra- passa um determinado potencial de activação. No neurónio artificial o corpo do neurónio é reproduzido por um mecanismo simples que corresponde à soma das entradas associ- adas aos respectivos pesos, ou seja, a soma dos valores Xi × Wi (combinação linear).

Esta soma é comparada com um limite θ (threshold) que quando ultrapassado produz um sinal R. A este sinal R é aplicado numa função F designada por função de activação, re- produzindo o output Y . No modelo original de McCulloch e Pitts a activação do neurónio é obtida pela aplicação de uma função de activação limiar, ou seja, se Pn

i Xi× Wi > θ

o neurónio produz um sinal de saída igual a um, caso contrário, a saída é igual a zero (figura 2.7).

No modelo do neurónio artificial generalizado os valores de saída podem ser diferentes de zero ou um e ter funções de activação diferentes da limiar. A função de activação é também conhecida por squashing function uma vez que limita (squashes) a amplitude do intervalo de valores permitidos para a saída. Normalmente este intervalo de amplitude é [0, 1] ou em alternativa [−1, +1].

Figura 2.7: Neurónio Artificial. Adaptado de [Kartalopoulos, 1996]

O modelo referido na figura 2.7 inclui também o bias B. O bias pode ser visto como um peso que tem entrada constante igual a um e que nos permite introduzir pequenas transformações nos dados de entrada, aumentando ou diminuindo o efeito causado pelos mesmos.

Em termos matemáticos podemos descrever um neurónio i de uma rede neuronal artificial da seguinte forma [Kartalopoulos, 1996]:

Yi = Fi n X k Xik× Wjk ! com n X k Xik× Wjk ≥ θi

onde Xi1, Xi2, ..., Xin são as entradas (inputs), Wj1, Wj2, ..., Wjn são os pesos asso-

ciados às respectivas entradas, B1, B2, ..., Bno bias e Fia função activação. Yi é a saída

(output) do neurónio i. A figura 2.8 exemplifica o funcionamento de um neurónio artificial.

Figura 2.8: Exemplificação do funcionamento de um neurónio artificial. Adaptado de [Kartalopoulos, 1996]

2.2.2 Função de Activação

O objectivo da função de activação F (x) é assegurar que a resposta do neurónio seja limitada, isto é, que a resposta do neurónio como resultado de um pequeno ou grande estímulo seja condicionada, ou amortecida, e portanto controlável.

No mundo biológico, o condicionamento dos estímulos é feito continuamente por todas as entradas sensoriais. Por exemplo, para atingir um som duas vezes mais alto é neces- sário um aumento real na amplitude do som de cerca de dez vezes, esta é a resposta algorítmica do ouvido. Os neurónios artificias condicionam as suas saídas de uma ma- neira semelhante, o que torna este conceito consistente com o neurónio biológico, no en- tanto a função de activação não linear está muito longe de ser uma réplica da do neurónio biológico, sendo muitas vezes usada por conveniência matemática [Kartalopoulos, 1996]. Existem diferentes funções de activação não lineares que são usadas dependendo do paradigma e do algoritmo usado. Geralmente a função de activação é uma função monótona não decrescente. As funções de activação mais usuais são: Função Linear, Função Rampa, Função Degrau e Função Sigmóide.

Função Linear

A função de activação Linear (linear function) é definida pela seguinte equação:

2.2 Modelo de um Neurónio 19

A função linear é muito utilizada na camada de saída das redes multi-camada.

Função Rampa

A função linear pode ser restringida para reproduzir valores constantes em determinados intervalos, passando a designar-se Função Rampa ou Linear por partes (piecewise-linear function): F (x) =        +ǫ se x ≤ ǫ x se x = ǫ −ǫ se x ≥ −ǫ Função Degrau

A função degrau (step function) é semelhante à função rampa:

F (x) = (

+ǫ se x > 0 −ǫ se x ≤ 0

É uma função não monótona (tem uma descontinuidade na origem) e assim não é facilmente diferenciável, no entanto é linear entre os seus limites, superior e inferior. Por- tanto, enquanto o neurónio operar dentro dos seus limites a sua derivada é constante: F′

(x) = k.

Função Sigmóide

Uma das funções de activação mais populares é a função sigmóide (sigmoid function), também conhecida por função S-Shape. A função sigmoide é uma função real R → (0, 1) definida pela seguinte expressão:

F (x) = 1 1 + e−bx

A constante b pode ser seleccionada arbitrariamente e o seu inverso 1/b é normal- mente conhecido como parâmetro de temperatura em redes neuronais estocásticas. O formato da função sigmóide altera em função do valor de b, como podemos observar na figura 2.9. Valores mais elevados de b aproximam a forma da sigmóide à da função degrau.

A função sigmóide é muito popular essencialmente por ser uma função monótona (estritamente crescente), limitada e por ter uma derivada simples, o que facilita a sua

aplicação em algoritmos de aprendizagem, como é o caso do algoritmo retropropagação.

Figura 2.9: Funções de Activação