Redes Neurais Auto-organizáveis Teresa B. Ludermir Cin - UFPE 25/04/2006 Renato Fernandes Corrêa - CIn-UFPE
Redes Auto-organizáveis 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: 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 25/04/2006 Redes Neurais Auto-Organizáveis Renato Fernandes Corrêa - CIn-UFPE
Redes Auto-organizáveis Existem problemas que: Não utilizam resposta desejada Não recebem punição/recompensa Única informação fornecida está no conjunto de padrões de entrada 25/04/2006 Redes Neurais Auto-Organizáveis Renato Fernandes Corrêa - CIn-UFPE
Redes Auto-organizáveis Propósito de um algoritmo self-organizing Descobrir padrões ou características significativas nos dados de entrada Sem um professor Algoritmo apresenta um conjunto de regras de natureza local 25/04/2006 Redes Neurais Auto-Organizáveis Renato Fernandes Corrêa - CIn-UFPE
Redes Auto-organizáveis Definem os parâmetros da rede por si próprias, sem auxílio externo Descobrem padrões significativos ou características nos dados de entrada Rede forma sua própria classificação dos dados de treinamento Padrões de uma mesma classe compartilham características em comum 25/04/2006 Redes Neurais Auto-Organizáveis Renato Fernandes Corrêa - CIn-UFPE
Redes Auto-organizáveis Aprendizado não supervisionado funciona apenas quando existe redundância na entrada 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 Aprendizado não supervisionado Aprendizado competitivo Aprendizado Hebbiano 25/04/2006 Redes Neurais Auto-Organizáveis Renato Fernandes Corrêa - CIn-UFPE
Redes Auto-organizáveis Aprendizado competitivo Neurônios competem entre si pelo direito de atualizar seus pesos Tarefa Classificação Extração de características (Compressão de dados) Formação de clusters (agrupamentos) Exemplos ART, Kohonen 25/04/2006 Redes Neurais Auto-Organizáveis Renato Fernandes Corrêa - CIn-UFPE
Redes Auto-organizáveis Aprendizado Hebbiano Utilizam procedimento baseado na regra de Hebb para atualizar os pesos Tarefas Extração de características Análise de dados Memória autoassociativa Exemplo Hopfield 25/04/2006 Redes Neurais Auto-Organizáveis Renato Fernandes Corrêa - CIn-UFPE
Redes Neurais Auto-Organizáveis Redes de Kohonen Determinadas áreas do cérebro são responsáveis por funções específicas Fala Visão Controle de movimentos Cada área pode conter sub-áreas Cada sub-área mapeia internamente respostas do órgão sensorial representado por ela Neurônios espacialmente ordenados 25/04/2006 Redes Neurais Auto-Organizáveis Renato Fernandes Corrêa - CIn-UFPE
Redes Neurais Auto-Organizáveis Redes de Kohonen Exemplos: Cortex auditivo: de acordo com a resposta a diferentes freqüências sonoras Cortex visual: de acordo com características visuais primitivas Intensidade de luz Orientação e curvatura de linhas 25/04/2006 Redes Neurais Auto-Organizáveis Renato Fernandes Corrêa - CIn-UFPE
Redes Neurais Auto-Organizáveis Redes de Kohonen Utilizam algoritmo de aprendizado baseado em conceitos de auto-organização biologicamente plausíveis Baseadas no mapeamento realizado pelo cérebro 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 dos vetores de entrada 25/04/2006 Redes Neurais Auto-Organizáveis Renato Fernandes Corrêa - CIn-UFPE
Características básicas Arquitetura Uma camada bi-dimensional Grade plana (reticulado) Cada neurônio Recebe todas as entradas e gera saída Está conectado aos seus vizinhos (feedback) Funciona como classificador de características Pode ser utilizada uma hierarquia de camadas 25/04/2006 Redes Neurais Auto-Organizáveis Renato Fernandes Corrêa - CIn-UFPE
Redes Neurais Auto-Organizáveis Rede de Kohonen 1 25/04/2006 Redes Neurais Auto-Organizáveis Renato Fernandes Corrêa - CIn-UFPE
Características básicas Estados de ativação [0, N] Função de ativação dj = å (xi - wij)2 Baseada em distância Euclidiana Função de saída Função identidade 25/04/2006 Redes Neurais Auto-Organizáveis Renato Fernandes Corrêa - CIn-UFPE
Características básicas Treinamento Não supervisionado Organiza neurônios em vizinhanças locais Neurônios competem entre si Apenas neurônio vencedor e seus vizinhos atualizam seus pesos 25/04/2006 Redes Neurais Auto-Organizáveis Renato Fernandes Corrêa - CIn-UFPE
Características básicas Treinamento 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 25/04/2006 Redes Neurais Auto-Organizáveis Renato Fernandes Corrêa - CIn-UFPE
Características básicas Treinamento Atualização dos pesos (xj Î vizinhança do vencedor) wij(t +1) = wij(t ) + h(t)(xi(t) - wij(t)) 25/04/2006 Redes Neurais Auto-Organizáveis Renato Fernandes Corrêa - CIn-UFPE
Redes Neurais Auto-Organizáveis 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 25/04/2006 Redes Neurais Auto-Organizáveis Renato Fernandes Corrêa - CIn-UFPE
Características básicas Observações Encontra a unidade mais parecida com o padrão de entrada Aumenta sua semelhança e a de seus vizinhos com o padrão de entrada Forma mapa topográfico Neurônios topologicamente próximos respondem de forma semelhante a entradas semelhantes 25/04/2006 Redes Neurais Auto-Organizáveis Renato Fernandes Corrêa - CIn-UFPE
Características básicas Justificativa biológica 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 25/04/2006 Redes Neurais Auto-Organizáveis Renato Fernandes Corrêa - CIn-UFPE
Características básicas Chapéu mexicano + - R3 R2 + R1 25/04/2006 Redes Neurais Auto-Organizáveis Renato Fernandes Corrêa - CIn-UFPE
Características básicas Rede de Kohonen modela córtex Redes interconectadas localmente Adaptação restrita aos neurônios vencedor e seus vizinhos Aspectos centrais do treinamento de Kohonen Conceito de vizinhança dos nós Processo de adaptação dos pesos ou Treinamento 25/04/2006 Redes Neurais Auto-Organizáveis Renato Fernandes Corrêa - CIn-UFPE
Redes Neurais Auto-Organizáveis Vizinhanças Define quais e quantos nós em torno do nó vencedor terão seus pesos ajustados Tamanho modificado dinamicamente durante treinamento Inicialmente grande (ex. todos os nós) Reduzido progressivamente até limite pré-definido Taxa de redução pode ser função linear do número de ciclos 25/04/2006 Redes Neurais Auto-Organizáveis Renato Fernandes Corrêa - CIn-UFPE
Redes Neurais Auto-Organizáveis Vizinhanças Pode ter diferentes formatos Hexágono Retangular Pode ter diferentes funções de vizinhança Bubble Gaussian Cut gaussian Epanechicov 25/04/2006 Redes Neurais Auto-Organizáveis Renato Fernandes Corrêa - CIn-UFPE
Redes Neurais Auto-Organizáveis Vizinhanças Treinamento de rede de Kohonen é afetado por: Taxa de aprendizado Taxa de redução da taxa de aprendizado Formato da região de vizinhança Função de vizinhança Taxa de redução do raio ou tamanho da vizinhança 25/04/2006 Redes Neurais Auto-Organizáveis Renato Fernandes Corrêa - CIn-UFPE
Redes Neurais Auto-Organizáveis Vizinhanças Após treinamento, rede forma agrupamentos Grupos podem ser rotulados para indicar classe que representam Permite classificação de padrões desconhecidos 25/04/2006 Redes Neurais Auto-Organizáveis Renato Fernandes Corrêa - CIn-UFPE
Redes Neurais Auto-Organizáveis Treinamento Processo em dois estágios: Ordenação (Estágio 1) Criação de uma ordenação topológica sobre mapa de nós aleatoriamente orientados Refinamento ou convergência (Estágio 2) Ajuste dos nós de cada sub-área (classe) para os padrões de entrada 25/04/2006 Redes Neurais Auto-Organizáveis Renato Fernandes Corrêa - CIn-UFPE
Redes Neurais Auto-Organizáveis Treinamento Inicialização dos pesos (Estágio 0) 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 25/04/2006 Redes Neurais Auto-Organizáveis Renato Fernandes Corrêa - CIn-UFPE
Redes Neurais Auto-Organizáveis Treinamento Inicialização dos pesos (continuação) 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 25/04/2006 Redes Neurais Auto-Organizáveis Renato Fernandes Corrêa - CIn-UFPE
Redes Neurais Auto-Organizáveis Treinamento Inicialização dos pesos (eliminando tendências) 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 Reduzir vizinhança durante treinamento Solução utilizada por Kohonen 25/04/2006 Redes Neurais Auto-Organizáveis Renato Fernandes Corrêa - CIn-UFPE
Redes Neurais Auto-Organizáveis Treinamento Estágio 1 - Ordenação Busca agrupar os nós do mapa topológico de modo a refletir as diferentes classes Rede descobre quantas classes deve identificar e suas posições relativas no mapa mapeamento grosseiro 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] 25/04/2006 Redes Neurais Auto-Organizáveis Renato Fernandes Corrêa - CIn-UFPE
Redes Neurais Auto-Organizáveis Treinamento Estágio 2 - Refinamento Taxa de aprendizado decrescente: [0.01 0.001] Requer 5 a 10 vezes mais apresentações que no primeiro estágio Normalização dos pesos Não considerar magnitude, apenas orientação do vetor peso Reduz magnitude dos pesos para 1 25/04/2006 Redes Neurais Auto-Organizáveis Renato Fernandes Corrêa - CIn-UFPE
Treinamento de vizinhança localizada 25/04/2006 Redes Neurais Auto-Organizáveis Renato Fernandes Corrêa - CIn-UFPE
Redes Neurais Auto-Organizáveis Redes de Kohonen Pode ser necessário incluir novos padrões em uma rede já treinada Melhorar performance de certos agrupamentos Vetor de quantização de aprendizado (LVQ) Técnica de aprendizado supervisionado Ajusta mapa de características para melhorar sua performance em circunstâncias modificáveis 25/04/2006 Redes Neurais Auto-Organizáveis Renato Fernandes Corrêa - CIn-UFPE
Redes Neurais Auto-Organizáveis 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 25/04/2006 Redes Neurais Auto-Organizáveis Renato Fernandes Corrêa - CIn-UFPE
Redes Neurais Auto-Organizáveis Algoritmo LVQ Utiliza para cada entrada a saída desejada Compara saída produzida com saída desejada Não mexe no raio da vizinhança Atualização dos pesos para nó vencedor wij(t+1) = wij(t) + h(t)(xi(t) - wij(t)) (correta) wij(t+1) = wij(t) - h(t)(xi(t) - wij(t)) (incorreta) 25/04/2006 Redes Neurais Auto-Organizáveis Renato Fernandes Corrêa - CIn-UFPE
Redes Neurais Auto-Organizáveis Aplicações Datilógrafo fonético Conversão de fala em texto datilografado Sistema híbrido Rede utilizada para classificar fonemas Mesmo fonema pode apresentar variações (orador, contexto onde palavra é utilizada) Utiliza LVQ 25/04/2006 Redes Neurais Auto-Organizáveis Renato Fernandes Corrêa - CIn-UFPE
Redes Neurais Auto-Organizáveis Datilógrafo fonético 25/04/2006 Redes Neurais Auto-Organizáveis Renato Fernandes Corrêa - CIn-UFPE
Redes Neurais Auto-Organizáveis Aplicações Classificação de sinais de radar Controle de braços de robôs Segmentação de textura Modelamento do cérebro Tratamento de água Categorização automática de documentos 25/04/2006 Redes Neurais Auto-Organizáveis Renato Fernandes Corrêa - CIn-UFPE
Redes Neurais Auto-Organizáveis Links Interessantes Applet SOM 3D: http://fbim.fh-regensburg.de/~saj39122/jfroehl/diplom/e-sample-applet.html Applet DemoGNG 1.5 com diversas variações do SOM e muitos recursos: http://www.neuroinformatik.ruhr-uni-bochum.de/ini/VDM/research/gsn/DemoGNG/GG_2.html 25/04/2006 Redes Neurais Auto-Organizáveis Renato Fernandes Corrêa - CIn-UFPE