quando uma saída de um elemento influencia de algum modo a entrada para esse mesmo elemento, criando-se assim um ou mais circuitos fechados. Quando se incluem uma ou mais conexões cíclicas numa rede, esta passa a ter um comportamento não linear, de natureza espacial e/ou temporal. Estas redes podem formar topologias arbitrárias.
Capítulo 4 – Modelos e Técnicas de Data Mining 85 1 5 2 4 6 3 Entradas Saídas
Figura 4.8 Arquitectura de uma Rede Recorrente.
Uma das propriedades das RNA é a sua capacidade para aprender a partir do seu ambiente. O processo de aprendizagem envolve a seguinte sequência de eventos:
A RNA é estimulada por um dado ambiente;
Alguns parâmetros livres (e.g., pesos das conexões) são alterados em resultado do estímulo recebido;
A RNA responde de uma nova forma ao ambiente em virtude das alterações na sua estrutura interna.
A aprendizagem é executada a partir de um algoritmo de aprendizagem. Este consiste num conjunto de regras bem definidas para resolver um problema de aprendizagem. Os algoritmos de aprendizagem relacionam-se com o ambiente, e neste contexto está-se a falar de um paradigma (i.e., o modelo do ambiente em que a rede opera).
Existem três paradigmas fundamentais de aprendizagem: (i) Supervisionada, (ii) De Reforço e, (iii) Não Supervisionada (Figura 4.9).
O paradigma de aprendizagem Supervisionada (i) é bastante popular envolvendo a presença de um “professor”, sendo fornecidas respostas correctas à rede. Perante uma configuração que é apresentada a RNA produz uma resposta, que é comparada com a resposta correcta. A rede aprende a partir de um conjunto de padrões (P), onde cada exemplo ou caso de
86
treino é composto por um vector de entrada e por um vector de resposta ou saída. Durante o processo de aprendizagem é efectuada uma comparação entre o valor desejado com o valor de saída da rede, originando um erro. O erro é utilizado para ajustar os pesos das conexões, de forma a que o erro seja reduzido. Cada iteração do algoritmo de treino é composta por ajustamentos para os casos de treino. A aprendizagem é conseguida quando o erro é minimizado. Idealmente a RNA sabe mais sobre o seu ambiente após cada iteração.
1 3 2 6 7 5 4 X
Entrada Saída Prevista
Saída Desejada Erro 1 3 2 6 7 5 4 Entrada Aprendizagem Supervisionada
Aprendizagem Não Supervisionada
Capítulo 4 – Modelos e Técnicas de Data Mining
87
O paradigma de aprendizagem De Reforço (ii), envolve tal como o anterior a presença de um “professor”. No entanto, a resposta correcta não é apresentada à rede. Apenas se fornece uma indicação sobre se a resposta da rede é correcta ou errada. A partir desta informação a rede ajusta-se por forma a melhorar a sua eficácia. Um prémio é dado pelo reforço dos pesos das conexões que dão uma resposta correcta e uma penalidade é dada na situação oposta.
O paradigma (iii) de aprendizagem não supervisionada, segue uma abordagem diferente, onde não é fornecida ao sistema uma indicação externa acerca da resposta correcta. A aprendizagem é realizada através da identificação de características nos dados de entrada, adaptando-se a regularidades estatísticas ou agrupamentos de padrões dos exemplos de treino (e.g., Redes de Kohonen).
A escolha da arquitectura e do método de aprendizagem é influenciada pela tarefa de aprendizagem a ser desempenhada pela RNA sendo as categorias principais as seguintes: memória associativa, diagnóstico, reconhecimento de padrões, regressão/previsão, controlo, optimização e, filtragem/compressão de dados.
Existem várias classes de RNA, tendo as primeiras surgido nos anos 50. As redes do tipo Perceptron (Figura 4.10) são redes feedforward com apenas uma camada de nodos com várias entradas e saídas. Cada nodo calcula a soma pesada das suas entradas, sendo o valor de saída do tipo binário (0 ou 1) de acordo com determinado limite. A função de activação deste tipo de redes é a função Step.
Estas redes Perceptron destacam-se pela simplicidade de utilização, derivada de um número reduzido de parâmetros a ajustar, e ao facto do conjunto de padrões (P) de entrada não necessitar de um pré-processamento elaborado. Devido a estas características a aplicação
resume-se contudo a padrões de complexidade não muito elevada, linearmente separáveis 2.
88 . . . . . . . . . o1 o2 op x1 x2 x3 xn
Figura 4.10 Rede Perceptron.
No final da década de 60 Minsky e Papert demostraram que uma rede feedforward com duas camadas pode solucionar muitas das restrições até aí encontradas na utilização das redes do tipo Perceptron. Contudo não apresentaram nenhuma solução para o problema do ajustamento dos pesos para as camadas escondidas. Só em 1986, Rumelhart, Hinton e Williams apresentaram uma solução para este problema, o algoritmo de Back-Propagation (Retropropagação).
As Redes Feedforward Multicamada (RMFC), ou Redes Perceptrão Multicamada, constituem uma das mais importantes e populares classes de RNA, sendo utilizadas em múltiplos domínios de aplicação, em problemas de memória associativa, classificação, reconhecimento de padrões, optimização e regressão. A não linearidade, a existência de nodos intermédios e o alto grau de conectividade tornam esta arquitectura muito poderosa como máquina de aprendizagem. No entanto estas características dificultam uma análise teórica ao processo de aprendizagem.
As RFMC são compostas por:
um conjunto de nodos de entrada, onde surgem os estímulos do ambiente; um conjunto de nodos intermédios, unidades internas de processamento que
aumentam a capacidade de aprendizagem de tarefas complexas, através da extracção progressiva de mais características;
Capítulo 4 – Modelos e Técnicas de Data Mining
89
um conjunto de funções de activação, normalmente do tipo não linear e diferenciável sendo a função logística uma das mais utilizadas.
O sinal de entrada propaga-se para a frente através da rede, camada por camada, não existindo ciclos. O primeiro algoritmo de aprendizagem por correcção de erros e aprendizagem supervisionada foi desenvolvido por Widrow e Hoff, sendo conhecido por Delta Rule, Least
Mean Square (LMS) ou Adaptive Linear Neuron. Trata-se de uma generalização do Perceptron,
estendendo a técnica para entradas e saídas contínuas, apresentando uma única camada de neurónios. O erro é calculado como a diferença entre a resposta desejada e a resposta produzida pela RNA, ajustando-se o peso de forma a que se torne zero.
O algoritmo mais popular usado na aprendizagem supervisionada é o algoritmo de Back-Propagation, ou os seus derivados, uma variação da regra de Widrow-Hoff. Trata-se de um algoritmo de referênca, já que constitui um método eficiente de computação para o treino de RFMCs, procurando o mínimo da função de erro no espaço de procura dos pesos, baseando-se em métodos de gradiente descendente. A combinação dos pesos que minimiza a função do erro é considerada a solução para o problema de aprendizagem.
O algoritmo de Back-Propagation utiliza dois passos [Cortez, 2000]: