Redes Neurais Autoorganizveis Teresa B Ludermir Cin UFPE
Redes Neurais Auto-organizáveis Teresa B. Ludermir Cin - UFPE Redes Neurais Auto-Organizáveis 1
Redes Auto-organizáveis l l Em várias aplicações é desejável que a rede organize por si mesma padrões semelhantes gerando sua própria classificação dos dados de treinamento Para isso é necessário que: n n Padrões pertencentes a mesma classe possuam valores próximos ou iguais para um número de características A rede consiga identificar estas características Ÿ Critério para agrupar os dados Redes Neurais Auto-Organizáveis 2
Redes Auto-organizáveis l Existem problemas que: Não utilizam resposta desejada n Não recebem punição/recompensa n Única informação fornecida está no conjunto de padrões de entrada n Redes Neurais Auto-Organizáveis 3
Redes Auto-organizáveis l Propósito de um algoritmo self-organizing n Descobrir padrões ou características significativas nos dados de entrada ŸSem um professor n Algoritmo apresenta um conjunto de regras de natureza local Redes Neurais Auto-Organizáveis 4
Redes Auto-organizáveis l Redes Auto-organizáveis Definem os parâmetros da rede por si próprias, sem auxílio externo n Descobrem padrões significativos ou características nos dados de entrada n Rede forma sua própria classificação dos dados de treinamento n ŸPadrões de uma mesma classe compartilham características em comum Redes Neurais Auto-Organizáveis 5
Redes Auto-organizáveis l Aprendizado não supervisionado funciona apenas quando existe redundância na entrada n n Redundância fornece conhecimento Ausência de redundância Ÿ Impossível encontrar padrões ou características nos dados Ÿ Dados seriam semelhantes a ruídos aleatórios l Aprendizado não supervisionado n n Aprendizado competitivo Aprendizado Hebbiano Redes Neurais Auto-Organizáveis 6
Redes Auto-organizáveis l Aprendizado competitivo Neurônios competem entre si pelo direito de atualizar seus pesos n Tarefa n ŸClassificação ŸExtração de características (Compressão de dados) ŸFormação de clusters (agrupamentos) n Exemplos ŸART, Kohonen Redes Neurais Auto-Organizáveis 7
Redes Auto-organizáveis l Aprendizado Hebbiano Utilizam procedimento baseado na regra de Hebb para atualizar os pesos n Tarefas n ŸExtração de características ŸAnálise de dados ŸMemória autoassociativa n Exemplo ŸHopfield Redes Neurais Auto-Organizáveis 8
Redes de Kohonen l Determinadas áreas do cérebro são responsáveis por funções específicas n n n l Fala Visão Controle de movimentos Cada área pode conter sub-áreas n Cada sub-área mapeia internamente respostas do órgão sensorial representado por ela Ÿ Neurônios espacialmente ordenados Redes Neurais Auto-Organizáveis 9
Redes de Kohonen l Exemplos: Cortex auditivo: de acordo com a resposta a diferentes freqüências sonoras n Cortex visual: de acordo com características visuais primitivas n ŸIntensidade de luz ŸOrientação e curvatura de linhas Redes Neurais Auto-Organizáveis 10
Redes de Kohonen l l Utilizam algoritmo de aprendizado baseado em conceitos de auto-organização biologicamente plausíveis Baseadas no mapeamento realizado pelo cérebro n n Permite representação de dados n-dimensionais em um espaço m-dimensional (m << n) Utiliza técnica de quantização de vetores para comprimir dados vetores de entrada Redes Neurais Auto-Organizáveis 11
Características básicas l Arquitetura n Uma camada bi-dimensional ŸGrade plana (reticulado) n Cada neurônio ŸRecebe todas as entradas e gera saída ŸEstá conectado aos seus vizinhos (feedback) ŸFunciona como classificador de características n Pode ser utilizada uma hierarquia de camadas Redes Neurais Auto-Organizáveis 12
Rede de Kohonen 0 1 0 Redes Neurais Auto-Organizáveis 13
Características básicas l Estados de ativação n l [0, N] Função de ativação dj = å (xi - wij)2 n Baseada em distância Euclidiana n l Função de saída n Função identidade Redes Neurais Auto-Organizáveis 14
Características básicas l Treinamento Não supervisionado n Organiza neurônios em vizinhanças locais n Neurônios competem entre si n ŸApenas neurônio vencedor e seus vizinhos atualizam seus pesos Redes Neurais Auto-Organizáveis 15
Características básicas l Treinamento n Atualização dos pesos ŸAtualiza neurônio vencedor e seus vizinhos dentro de um certo raio ŸRaio e taxa de aprendizado são decrementados durante treinamento Ÿwij(t +1) = wij(t ) + h(t)(xi(t) - wij(t)) Ÿ(neurônio j vizinhança do vencedor) ŸCria regiões que respondem a um grupo de entradas semelhantes Redes Neurais Auto-Organizáveis 16
Características básicas l Treinamento n Atualização dos pesos (xj vizinhança do vencedor) Ÿwij(t +1) = wij(t ) + h(t)(xi(t) - wij(t)) Redes Neurais Auto-Organizáveis 17
Algoritmo de Kohonen 1. Iniciar conexões com pequenos valores aleatórios; 2. Definir raio e taxa de aprendizado iniciais 3. Repita Para cada padrão de treinamento x Para cada neurônio nj Calcular a saída dj; Selecionar neurônio nk com menor dk; Atualizar pesos de nk e seus vizinhos; Reduzir taxa de aprendizado Reduzir raio Até raio < raio_mínimo Redes Neurais Auto-Organizáveis 18
Características básicas l Observações Encontra a unidade mais parecida com o padrão de entrada n Aumenta sua semelhança e a de seus vizinhos com o padrão de entrada n Forma mapa topográfico n ŸNeurônios topologicamente próximos respondem de forma semelhante a entradas semelhantes Redes Neurais Auto-Organizáveis 19
Características básicas l Justificativa biológica n Córtex cerebral ŸNeurônios ativos apresentam conexões mais fortes para neurônios fisicamente mais próximos ŸA partir de uma certa distância, conexões se tornam inibitórias (chapéu mexicano) ŸParte da razão para mapeamento topológico no cérebro Redes Neurais Auto-Organizáveis 20
Características básicas Chapéu mexicano + R 3 R 2 R 1 + Redes Neurais Auto-Organizáveis 21
Características básicas l Rede de Kohonen modela córtex n n l Redes interconectadas localmente Adaptação restrita aos neurônios vencedor e seus vizinhos Aspectos centrais do treinamento de Kohonen n n Conceito de vizinhança dos nós Processo de adaptação dos pesos ou Treinamento Redes Neurais Auto-Organizáveis 22
Vizinhanças l l Define quais e quantos nós em torno do nó vencedor terão seus pesos ajustados Tamanho modificado dinamicamente durante treinamento n Inicialmente grande (ex. todos os nós) n Reduzido progressivamente até limite prédefinido ŸTaxa de redução pode ser função linear do número de ciclos Redes Neurais Auto-Organizáveis 23
Vizinhanças l Pode ter diferentes formatos Hexágono n Retangular Pode ter diferentes funções de vizinhança n Bubble n Gaussian n Cut gaussian n Epanechicov n l Redes Neurais Auto-Organizáveis 24
Vizinhanças l Treinamento de rede de Kohonen é afetado por: n Taxa de aprendizado n Taxa de redução da taxa de aprendizado n Formato da região de vizinhança n Função de vizinhança n Taxa de redução do raio ou tamanho da vizinhança Redes Neurais Auto-Organizáveis 25
Vizinhanças l Após treinamento, rede forma agrupamentos n Grupos podem ser rotulados para indicar classe que representam Ÿ Permite classificação de padrões desconhecidos Redes Neurais Auto-Organizáveis 26
Treinamento Processo em dois estágios: l Ordenação (Estágio 1) l n l Criação de uma ordenação topológica sobre mapa de nós aleatoriamente orientados Refinamento ou convergência (Estágio 2) n Ajuste dos nós de cada sub-área (classe) para os padrões de entrada Redes Neurais Auto-Organizáveis 27
Treinamento l Inicialização dos pesos (Estágio 0) n Aleatória Valores de pequena magnitude Ÿ Cuidados devem ser tomados para evitar Ÿ ò ò ò Que vetores de pesos sejam muito diferentes dos padrões de entrada Nós não utilizáveis para separar classes adequadamente Não convergência ou ciclos muito lentos Redes Neurais Auto-Organizáveis 28
Treinamento l Inicialização dos pesos (continuação) n Inicializar todos os pesos com mesmo valor ŸTornar padrões de treinamento inicialmente semelhantes ŸAdicionar ruído aos vetores de entrada nos primeiros estágios de treinamento Redes Neurais Auto-Organizáveis 29
Treinamento l Inicialização dos pesos (eliminando tendências) n Utilizar um threshold para cada nó (consciência) Ÿ Nós regularmente selecionados têm seu threshold aumentado Ÿ Reduz sua chance de ser selecionado Ÿ Permite utilização de nós redundantes n Reduzir vizinhança durante treinamento Ÿ Solução utilizada por Kohonen Redes Neurais Auto-Organizáveis 30
Treinamento l Estágio 1 - Ordenação Busca agrupar os nós do mapa topológico de modo a refletir as diferentes classes n Rede descobre quantas classes deve identificar e suas posições relativas no mapa n Ÿmapeamento grosseiro n Ocorrem grandes mudanças nos pesos ŸTaxa de aprendizado decrescente: h(t) [0. 1 0. 01) ŸRaio de vizinhança decrescente: [raio do mapa 1] Redes Neurais Auto-Organizáveis 31
Treinamento l Estágio 2 - Refinamento Taxa de aprendizado decrescente: [0. 01 0. 001] n Requer 5 a 10 vezes mais apresentações que no primeiro estágio n l Normalização dos pesos Não considerar magnitude, apenas orientação do vetor peso n Reduz magnitude dos pesos para 1 n Redes Neurais Auto-Organizáveis 32
Treinamento de vizinhança localizada Redes Neurais Auto-Organizáveis 33
Exexmplo → l Examplo: Conjunto de dados para níveis de pobreza dos diferentes paises. n n Conjunto de dados pode ter varias estatisticas para cada pais. SOM não mostra o nível de pobreza de cada pais, mostra a similaridade de pobreza dos paises. (Similar color = similar data sets). Redes Neurais Auto-Organizáveis 34
Redes de Kohonen l Pode ser necessário incluir novos padrões em uma rede já treinada n l Melhorar performance de certos agrupamentos Vetor de quantização de aprendizado (LVQ) Técnica de aprendizado supervisionado n Ajusta mapa de características para melhorar sua performance em circunstâncias modificáveis n Redes Neurais Auto-Organizáveis 35
Algoritmo LVQ 1. Selecionar vetores de treinamento com classificação conhecida 2. Definir raio e taxa de aprendizado iniciais 3. Repita Para cada padrão de treinamento com classificação conhecida Para cada neurônio nj Calcular a saída dj; Selecionar neurônio nk com menor dk; Atualizar pesos de nk e seus vizinhos; Reduzir taxa de aprendizado Até erro < erro_mínimo Redes Neurais Auto-Organizáveis 36
Algoritmo LVQ Utiliza para cada entrada a saída desejada l Compara saída produzida com saída desejada l Não mexe no raio da vizinhança l Atualização dos pesos para nó vencedor l wij(t+1) = wij(t) + h(t)(xi(t) - wij(t)) (correta) n wij(t+1) = wij(t) - h(t)(xi(t) - wij(t)) (incorreta) n Redes Neurais Auto-Organizáveis 37
Aplicações l Datilógrafo fonético Conversão de fala em texto datilografado n Sistema híbrido n Rede utilizada para classificar fonemas n ŸMesmo fonema pode apresentar variações (orador, contexto onde palavra é utilizada) ŸUtiliza LVQ Redes Neurais Auto-Organizáveis 38
Datilógrafo fonético Redes Neurais Auto-Organizáveis 39
Aplicações Classificação de sinais de radar l Controle de braços de robôs l Segmentação de textura l Modelamento do cérebro l Tratamento de água l Categorização automática de documentos l Redes Neurais Auto-Organizáveis 40
Links Interessantes l Applet SOM 3 D: http: //fbim. fhregensburg. de/~saj 39122/jfroehl/diplom/e-sampleapplet. html l Applet Demo. GNG 1. 5 com diversas variações do SOM e muitos recursos: http: //www. neuroinformatik. ruhr-unibochum. de/ini/VDM/research/gsn/Demo. GNG/GG _2. html Redes Neurais Auto-Organizáveis 41
- Slides: 41