410 likes | 513 Views
Redes Neurais Auto-organizáveis. Teresa B. Ludermir 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:
E N D
Redes Neurais Auto-organizáveis Teresa B. Ludermir Cin - UFPE Redes Neurais Auto-Organizáveis
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 Redes Neurais Auto-Organizáveis
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 Redes Neurais Auto-Organizáveis
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 Redes Neurais Auto-Organizáveis
Redes Auto-organizáveis • 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 Redes Neurais Auto-Organizáveis
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 Redes Neurais Auto-Organizáveis
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 Redes Neurais Auto-Organizáveis
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 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 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 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 Redes Neurais Auto-Organizáveis
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 Redes Neurais Auto-Organizáveis
Rede de Kohonen 0 1 0 Redes Neurais Auto-Organizáveis
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 Redes Neurais Auto-Organizáveis
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 Redes Neurais Auto-Organizáveis
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 Redes Neurais Auto-Organizáveis
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)) 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 Redes Neurais Auto-Organizáveis
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 Redes Neurais Auto-Organizáveis
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 Redes Neurais Auto-Organizáveis
Características básicas Chapéu mexicano + - R3 R2 + R1 Redes Neurais Auto-Organizáveis
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 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 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 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 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 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 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 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 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 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] 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 Redes Neurais Auto-Organizáveis
Treinamento de vizinhança localizada Redes Neurais Auto-Organizáveis
Exexmplo → • Examplo: Conjunto de dados paraníveis de pobreza dos diferentespaises. • Conjunto de dados podetervariasestatisticasparacadapais. • SOM nãomostra o nível de pobreza de cadapais, mostra a similaridade de pobreza dos paises.(Similar color = similar data sets). 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 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 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) 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 Redes Neurais Auto-Organizáveis
Datilógrafo fonético 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 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 Redes Neurais Auto-Organizáveis