140 likes | 247 Views
Redes ART. Prof. Júlio Cesar Nievola. ART1. ART (“Adaptive Resonance Theory” — Teoria da Ressonância Adaptativa) é uma série de arquiteturas para aprendizagem não-supervisionada propostas por Gail Carpenter & Steve Grossberg.
E N D
Redes ART Prof. Júlio Cesar Nievola
ART1 • ART (“Adaptive Resonance Theory” — Teoria da Ressonância Adaptativa) é uma série de arquiteturas para aprendizagem não-supervisionada propostas por Gail Carpenter & Steve Grossberg. • Na ART1 os exemplos de treinamento {Ek} são agrupados através de coordenadas discretas, Ejk {1, 0}, onde cada grupo é definido por um protótipo Pi, que pode combinar características de mais de um exemplo de treinamento. • O número de grupos não é definido a priori, sendo criados conforme necessários.
ART1 • As redes ART permitem que um exemplo de treinamento modifique um agrupamento somente se o grupo estiver suficientemente próximo do exemplo de treinamento; caso contrário um novo grupo é criado. • Desta forma, a ART resolve o dilema da estabilidade-plasticidade, ou seja, como fazer um sistema se adaptar, evitando-se ao mesmo tempo que as entradas atuais destruam o treinamento passado. • Na ART1 original o valor 1 indica uma informação, enquanto que o valor 0 indica desconhecimento. Para a rede ART1 o valor de , chamado parâmetro de vigilância, controla a granularidade dos agrupamentos.
ART1 • Teorema (Estabilidade): A rede ART1 atingirá um conjunto estável de protótipos para qualquer conjunto finito de exemplos de treinamento. • Teorema (Acesso Direto): Após a estabilidade ter sido atingida, todo exemplo de treinamento Ek acessará diretamente seu protótipo. • O teorema do acesso direto indica que o primeiro protótipo produzido no passo 3 que maximiza a relação dada satisfará os testes executados nos passos 4 e 4A.
ART1 • A rede ART1 comporta-se simetricamente com relação às entradas 0 e 1, ou seja, pode-se duplicar as entradas e alterar 0’s e 1’s na segunda cópia. • Nomenclatura: número de 1’s em X; Número de 1’s em comum entre X e Y:
Algoritmo ART1 Seja: • pequeno número positivo; • p dimensão dos exemplos de treinamento e protótipos; • parâmetro de vigilância, com 0 1. 1. Iniciar sem vetores protótipos. 2. Realizar iterações até que nenhum dos exemplos de treinamento cause qualquer alteração no conjunto de vetores protótipos; neste momento terminar porque a estabilidade foi atingida. Para cada iteração tomar o próximo exemplo de treinamento Ek, escolhido de maneira cíclica. 3. Encontrar o protótipo Pi (se houver) que não tenha ainda sido tentado nesta iteração, que maximize:
Algoritmo ART1 (cont.) 4. Testar se Pi é suficientemente similar a Ek: 4a. Se não for, ou se não houverem protótipos não tentados nesta iteração então: 4aa. Criar um novo agrupamento com protótipo Ek; 4ab. Finalizar esta iteração e retornar ao passo 2 para o próximo exemplo. 4A. Se for suficientemente similar, então testar para aceitabilidade de vigilância:
Algoritmo ART1 (cont.) 4Aa. Se for aceitável então Ek pertence ao grupo Pi. Modificar Pi para ser mais parecido com Ek: Pi = Pi Ek e ir para o passo 2 para a próxima iteração com o próximo exemplo. 4AA. Se não for aceitável, retornar ao passo 3 e tentar outro protótipo.
ART2 • Carpenter & Grossberg desenvolveram a rede ART2 para agrupamento de dados contínuos. • Na rede ART2 os dados são inicialmente pré-processados através de uma normalização e da supressão de valores abaixo de um determinado limiar, o que tem como efeito escalar os dados e eliminar pequenos ruídos. • Na rede ART2 a atualização dos protótipos ocorre movendo-os de uma fração na direção do novo exemplo de treinamento que recai na classe do protótipo, enquanto que na rede ART1 os protótipos sofriam simplesmente uma interseção com o exemplo de treinamento.
Algoritmo ART2 • Seja: • p dimensão dos exemplos de treinamento e dos protótipos; • número positivo • número positivo pequeno; • parâmetro de normalização, com 0 < < • parâmetro de vigilância, com 0 < 1. 0. Pré-processar todos os exemplos de treinamento usando o limar : 0a. Normalizar todos os Ek; 0b. Substituir todo componente Ejk que seja por 0; 0c. Renormalizar todos os Ek.
Algoritmo ART2 (cont.) 1. Iniciar sem vetores protótipo. 2. Realizar iterações até que nenhum exemplo de treinamento cause qualquer alteração no conjunto de vetores protótipo; neste momento sair pois a estabilidade foi alcançada. Para cada iteração tomar o próximo exemplo de treinamento Ek, escolhido em ordem cíclica. 3. Encontrar o protótipo Pi (se houver) ainda não tentado durante esta iteração que maximiza Pi.Ek. 4. Testar se Pi é suficientemente similar a Ek: 4a. Se não for, então: 4aa. Criar um novo grupo com protótipo Ek. 4ab. Finalizar esta iteração e retornar ao passo 2 para o próximo exemplo.
Algoritmo ART2 (cont.) 4A. Se for suficientemente similar, testar para vigilância de aceitabilidade: 4Aa. Se aceitável, então Ek pertence ao grupo de Pi. Modificar Pi para que se pareça mais com Ek: e ir para o passo 2 para a próxima iteração com o próximo exemplo. 4AA. Se não for aceitável criar um novo grupo com protótipo Ek.
Algoritmo Counterpropagation • É possível adaptar qualquer algoritmo de agrupamento para a realização de aprendizagem supervisionada. Isto pode ser feito nomeando cada grupo com a resposta correta mais comum dos elementos do agrupamento. • O algoritmo de contrapropagação (“counter-propagation algorithm”) é uma combinação de mapeamento com preservação de topologia de Kohonen com o algoritmo instal/outstar de Grossberg.
ARTMAP • Na contrapropagação treina-se uma camada de células usando o mapeamento com preservação de topologia (sem preocupação com as saídas), onde cada célula de saída fornece a saída média desejada para aqueles exemplos de treinamento que resultam mapeados naquela célula em particular. Pode-se calcular esta média de saída diretamente ou iterativamente usando o algoritmo instar/outstar de Grossberg. • A idéia básica da rede ARTMAP consiste na execução da rede ART1 ou ART2 para padrões de entrada, porém mantendo os grupos de protótipos “puros”, aumentando temporariamente a vigilância quando necessário.