redes competitivas.ppt [modo de compatibilidade] › ~engel › data › media › file › cmp121...

22
Redes Neurais Sistemas Auto-Organizáveis Prof. Paulo Martins Engel Informática UFRGS Prof. Paulo Martins Engel 2 1. Conceitos básicos dos Sistemas Auto-organizáveis Os sistemas auto-organizáveis estão relacionados com aprendizagem não- supervisionada. O objetivo de um algoritmo de aprendizagem não-supervisionada é extrair características significativas dos dados de entrada, sem supervisão de um professor. O algoritmo procura encontrar, de forma autônoma, similaridades entre conjuntos de dados, identificando assim, agrupamentos de dados com características comuns. Nos sistemas neurais auto-organizáveis, os pesos dos neurônios armazenam as características de um protótipo correspondente a um agrupamento de dados de entrada com características similares. O algoritmo de treinamento aplica regras locais de modificação de pesos, ou seja, levando em conta uma vizinhança em torno do neurônio. A estrutura de um sistema auto-organizável pode consistir em apenas uma camada de entrada e uma camada auto-organizável de saída, ou em múltiplas camadas, em que a auto-organização se processa seqüencialmente através das camadas.

Upload: others

Post on 07-Jul-2020

1 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: redes competitivas.ppt [Modo de Compatibilidade] › ~engel › data › media › file › cmp121 › redes compe… · • O objetivo de um algoritmo de aprendizagem não-supervisionada

Redes Neurais

Sistemas Auto-Organizáveis

Prof. Paulo Martins Engel

Informática

UFRGS Prof. Paulo Martins Engel

2

1. Conceitos básicos dos Sistemas Auto-organizáveis

• Os sistemas auto-organizáveis estão relacionados com aprendizagem não-supervisionada.

• O objetivo de um algoritmo de aprendizagem não-supervisionada é extrair características significativas dos dados de entrada, sem supervisão de um professor.

• O algoritmo procura encontrar, de forma autônoma, similaridades entre conjuntos de dados, identificando assim, agrupamentos de dados com características comuns.

• Nos sistemas neurais auto-organizáveis, os pesos dos neurônios armazenam as características de um protótipo correspondente a um agrupamento de dados de entrada com características similares.

• O algoritmo de treinamento aplica regras locais de modificação de pesos, ou seja, levando em conta uma vizinhança em torno do neurônio.

• A estrutura de um sistema auto-organizável pode consistir em apenas uma camada de entrada e uma camada auto-organizável de saída, ou em múltiplas camadas, em que a auto-organização se processa seqüencialmente através das camadas.

Page 2: redes competitivas.ppt [Modo de Compatibilidade] › ~engel › data › media › file › cmp121 › redes compe… · • O objetivo de um algoritmo de aprendizagem não-supervisionada

Informática

UFRGS Prof. Paulo Martins Engel

3

Modelos Descritivos

– Determinação de uma configuração de centróides de agrupamentos dos dados

– Modelo de agrupamento dos dados

ModeloEntradas

• A tarefa de geração de um modelo descritivo consiste (em grande parte) em analisar os dados do domínio (entradas) e sugerir uma partição do domínio, de acordo com similaridades observadas nos dados.

Informática

UFRGS Prof. Paulo Martins Engel

4

Dados para agrupamento de subespécies da planta Iris

Modelocomprimento-sepala

largura-sepalacomprimento-petala

largura-petala

Rótulo de classe natural

Conjunto de medidas

uma amostra do domínio

c_sepala l_sepala c_petala l_petala

5,1 3,8 1,5 0,3

5,4 3,4 1,7 0,2

... ... ... ...

7,0 3,2 4,7 1,4

6,4 3,2 4,5 1,5

... ... ... ...

7,3 2,9 6,3 1,8

6,7 2,5 5,8 1,8

... ... ... ...

Page 3: redes competitivas.ppt [Modo de Compatibilidade] › ~engel › data › media › file › cmp121 › redes compe… · • O objetivo de um algoritmo de aprendizagem não-supervisionada

Informática

UFRGS Prof. Paulo Martins Engel

5

Dados da planta Iris

comprimento-sepala

largura-sepala

comprimento-petala

largura-petala

Informática

UFRGS Prof. Paulo Martins Engel

6

Modelo de agrupamento para os dados da planta Iris

comprimento-petala

largura-petalalargura-sepala

comprimento-sepala

Page 4: redes competitivas.ppt [Modo de Compatibilidade] › ~engel › data › media › file › cmp121 › redes compe… · • O objetivo de um algoritmo de aprendizagem não-supervisionada

Informática

UFRGS Prof. Paulo Martins Engel

7

Avaliação de modelos descritivos

• Questão fundamental: quantos grupos representam mais adequadamente os dados?

• Usualmente, adotam-se métricas estatísticas de qualidade da configuração de agrupamento: média de distâncias intra-grupo e de distâncias inter-grupos.

• A avaliação da qualidade de um modelo descritivo normalmente é problemática se não dispusermos de informação extra (conhecimento de perícia).

• A busca informada pela melhor configuração é muito mais eficiente.

Informática

UFRGS Prof. Paulo Martins Engel

8

Exemplos de tarefas com aprendizagem não-supervisionada

1. Identificação de agrupamentos (clusterização):

Os dados de entrada são agrupados por similaridade das suas características.

Por aprendizagem não-supervisionada, o sistema deve encontrar os agrupamentos inerentes nos dados de entrada.

A saída do sistema fornece o rótulo do agrupamento dos padrões de entrada.

2. Quantização vetorial:

Um espaço contínuo de entrada deve ser discretizado otimamente. Cada vetor contínuo de entrada é atribuído a um vetor protótipo que melhor representa as suas características. A saída do sistema é uma representação discreta do espaço de entrada.

3. Redução de dimensionalidade:

Os dados de entrada são projetados num sub-espaço com uma dimensionalidade menor que a dimensionalidade dos dados. O sistema deve aprender um mapeamento ótimo, em que a variância nos dados de entrada seja preservada nos dados de saída.

4. Extração de características:

O sistema deve extrair as características do sinal de entrada. Em geral, implica redução de dimensionalidade.

Page 5: redes competitivas.ppt [Modo de Compatibilidade] › ~engel › data › media › file › cmp121 › redes compe… · • O objetivo de um algoritmo de aprendizagem não-supervisionada

Informática

UFRGS Prof. Paulo Martins Engel

9

• A identificação de agrupamentos é uma tarefa descritiva que procura agrupar dados utilizando a similaridade dos valores de seus atributos como fator de decisão quanto à sua pertinência num entre vários agrupamentos possíveis.

• Este processo utiliza técnicas de aprendizagem não-supervisionada, pois a similaridade entre os atributos é uma característica intrínseca dos dados, não necessitando de um arquivo de treinamento com classes pré-definidas.

• Em geral, a identificação dos agrupamentos intrínsecos dos dados permite a descrição de cada agrupamento através de um padrão protótipo.

• O processo normalmente é iterativo e interativo, necessitando que o usuário modifique parâmetros e reapresente os dados até encontrar uma configuração satisfatória de agrupamentos.

• A ênfase nesta tarefa é a descrição dos dados e não a previsão de como um novo caso será classificado.

Identificação de agrupamentos

Informática

UFRGS Prof. Paulo Martins Engel

10

• Existe uma variedade de modelos de RN que são usados para a tarefa de identificação de agrupamentos. Todos eles têm em comum algum processo de aprendizagem não-supervisionada, auto-organizável.

• Nós estudaremos inicialmente os conceitos básicos dos sistemas auto-organizáveis, introduzindo a noção de redes competitivas. Aqui, um protótipo de um agrupamento é armazenado como pesos de um neurônio.

• A seguir, será apresentado o Mapa Auto-Organizável (SOM, self-organizing map) proposto por T. Kohonen (1982), que é uma rede competitiva organizada numa grade bidimensional (ou de outra dimensionalidade) onde existe interação entre neurônios dentro de uma vizinhança.

• Por causa desta característica, a rede SOM além de armazenar os protótipos dos agrupamentos, preserva também a topologia original da distribuição dos agrupamentos no espaço de características.

• Finalmente, será apresentado o modelo da rede ART (Adaptive Resonance Theory), de S. Grossberg e G. Carpenter, que é uma rede auto-organizável incremental.

Modelos de RN para identificação de agrupamentos

Page 6: redes competitivas.ppt [Modo de Compatibilidade] › ~engel › data › media › file › cmp121 › redes compe… · • O objetivo de um algoritmo de aprendizagem não-supervisionada

Informática

UFRGS Prof. Paulo Martins Engel

11

2. Aprendizado Competitivo: a rede CPN

• A Rede Counterpropagation (CPN) é um exemplo de rede que implementa aprendizado competitivo. Dado um conjunto de pares de vetores (xi, yi), a rede aprende a associar um vetor x na entrada a um vetor y na saída.

Vetor de entrada x Vetor de entrada y

Camada de entrada

Camada competitiva

Camada de saída

Vetor de saída y’

Informática

UFRGS Prof. Paulo Martins Engel

12

Componentes da rede CPN Camada de entrada

• Realiza a transformação do padrão de entrada num padrão de refletância.

Padrão de entrada: I = [ I1, I2, . . . , In ]T

Intensidade do padrão de entrada: I = i Ii

Padrão de refletância : = [ 1, 2 , . . . , n ]T

com: i = Ii ( i Ii ) –1

• Com isso, o padrão de refletância tem intensidade unitária: i i = 1

• O padrão de refletância é independente da intensidade total do padrão de entrada correspondente.

• O padrão de refletância da imagem de um objeto, por exemplo, seria independente das condições de iluminação ou sombra.

• Com isso se resolve o dilema ruído-saturação.v1 v2 vi vn–1 vn

x1 x2

Ii

xi xn–1 xn

+ – ––– ––I1 In

I1 I2 In–1 In

+ +

– – – –

Page 7: redes competitivas.ppt [Modo de Compatibilidade] › ~engel › data › media › file › cmp121 › redes compe… · • O objetivo de um algoritmo de aprendizagem não-supervisionada

Informática

UFRGS Prof. Paulo Martins Engel

13

3. O Instar

• A camada oculta da CPN é composta de um conjunto de elementos chamados instars.

• O instar é um elemento que agrega todos os sinais de saída da camada de entrada (padrão de refletância). A agregação do padrão de refletância se dá através do cálculo do potencial de ativação do instar:

u = xT . w

y

x

w1

w2

wm

x1

x2

xm

Informática

UFRGS Prof. Paulo Martins Engel

14

• A resposta do instar é calculada de modo escalar como a soma ponderada das entradas pelos pesos respectivos, ou seja:

A funcionalidade do instar

y = wj xjj = 1

m

• Por outro lado, este mesmo valor pode ser obtido pelo produto escalar entre dois vetores: o vetor de entrada x e o vetor de pesos w:

• Uma importante propriedade da representação vetorial é que o produto escalar é proporcional ao alinhamento entre os vetores:

y = xT . w = || x || || w || cos

w1x1

w2

x2

x

w

x1

x2x =

w1

w2w =

xT . w =w1

w2[ x1 x2 ]

Page 8: redes competitivas.ppt [Modo de Compatibilidade] › ~engel › data › media › file › cmp121 › redes compe… · • O objetivo de um algoritmo de aprendizagem não-supervisionada

Informática

UFRGS Prof. Paulo Martins Engel

15

O processo de aprendizagem do instar

• A resposta máxima do instar se dará quando w estiver perfeitamente alinhado com x (colinear).

• O processo de aprendizado do instar visa modificar o vetor de pesos de modo a aproximá-lo do vetor de entrada.

• A aprendizagem do instar se dá por um processo iterativo que, a cada instante de tempo discreto n, diminui a diferença ente os vetores w e x, segundo a expressão:

w(n+1) = w(n) + (x(n) – w(n)) , com 0 < < 1

sendo o parâmetro da taxa de aprendizagem do instar

(x – w )

x – w

w(n)

x

w(n+1)

Informática

UFRGS Prof. Paulo Martins Engel

16

• O instar pode aprender o protótipo de um agrupamento de vetores de entrada, armazenando-o como o seu vetor de pesos, segundo o procedimento a seguir:

1. Selecionar um vetor de entrada xi, ao acaso, de acordo com a distribuição de probabilidade do agrupamento.

2. Atualizar os pesos por w(n+1) = w(n) + ( x(n) – w(n) )

3. Repetir os passos 1 e 2 para um número de vezes igual ao número de vetores de entrada do agrupamento.

4. Repetir o passo 3 várias vezes.

• Com isso, w se modifica em direção à média dos vetores do agrupamento:

Se < w > = 0 então < w > = < x >• Deve-se reduzir com o tempo, pois uma vez que w atingiu a média do

agrupamento, ele não deve mais se modificar.

Aprendizado do protótipo de um agrupamento

< w >

x3

x1

x2

x4

Page 9: redes competitivas.ppt [Modo de Compatibilidade] › ~engel › data › media › file › cmp121 › redes compe… · • O objetivo de um algoritmo de aprendizagem não-supervisionada

Informática

UFRGS Prof. Paulo Martins Engel

17

4. Redes Neurais Competitivas (RNC)

• As redes neurais competitivas (RNC) são formadas por um conjunto de nós processadores do tipo instar que competem entre si, para ser o protótipo de um vetor apresentado na entrada.

• O aprendizado não-supervisionado da RNC é uma extensão do algoritmo de aprendizado do instar.

• O principal objetivo de uma RNC é realizar o agrupamento de padrões.

• Elas servem de modelo para sistemas de descoberta de conhecimento, já que são capazes de descobrir regularidades dos padrões de entrada de forma autônoma.

• Na versão discreta de operação, o processo competitivo é implementado com a ajuda de um juiz externo, que decide qual neurônio é o vencedor, adotando algum critério baseado numa métrica de distância entre o vetor de entrada e o vetor de pesos dos neurônios.

• Na versão contínua, o processo competitivo é autônomo, determinado pelas conexões laterais, cujo comportamento é dado por um sistema de equações diferenciais.

Informática

UFRGS Prof. Paulo Martins Engel

18

Princípios básicos das RNC• Cada neurônio da rede armazena nos seus pesos o valor correspondente ao vetor

protótipo de um agrupamento de vetores de entrada.

• O armazenamento do protótipo de um agrupamento se dá pelo aprendizado não-supervisionado do instar correspondente.

• Para cada vetor de entrada apresentado à rede, o neurônio representante do agrupamento correspondente é escolhido por competição.

• O neurônio vencedor da competição é escolhido como aquele cujo vetor de pesos está mais próximo do vetor de entrada.

• Na fase de aprendizagem, apenas os pesos do instar correspondente ao neurônio vencedor são ajustados.

• Após a competição, a saída do neurônio vencedor é colocada em 1, e a saída de todos os demais neurônios é colocada em 0.

• Com isso, implementa-se uma competição do tipo “o vencedor leva tudo”.

Page 10: redes competitivas.ppt [Modo de Compatibilidade] › ~engel › data › media › file › cmp121 › redes compe… · • O objetivo de um algoritmo de aprendizagem não-supervisionada

Informática

UFRGS Prof. Paulo Martins Engel

19

• Diagrama de Voronoi: poliedros convexos em torno dos centróides, determinados pelas bissetrizes das medianas entre os protótipos.

Partição induzida pelos protótipos

• Como a decisão da pertinência a um dos agrupamentos se dá pelo critério do “vizinho mais próximo”, uma configuração de protótipos de agrupamentos induz uma partição do espaço de características equivalente a um diagrama de Voronoi.

Informática

UFRGS Prof. Paulo Martins Engel

20

Exemplo de RNC

w1, x1

w2, x2

xw1

w2

w3

• A RNC abaixo é formada por uma camada competitiva com três instars.

• A camada de entrada apenas distribui o vetor bidimensional de sinais de entrada normalizados.

• A cada apresentação de um vetor de entrada, apenas um instar (o vencedor de índice k) terá saída yk = 1. Todos os demais terão saída nula.

x1 x2

1 2 3

w11

w12 w22 w32

w31

w21

y1 y2 y3

Page 11: redes competitivas.ppt [Modo de Compatibilidade] › ~engel › data › media › file › cmp121 › redes compe… · • O objetivo de um algoritmo de aprendizagem não-supervisionada

Informática

UFRGS Prof. Paulo Martins Engel

21

Determinação do vencedor

• O neurônio vencedor é aquele que está mais próximo do vetor de entrada.

• Pode-se adotar uma de duas métricas para escolher o vencedor:

– Menor distância euclidiana (menor módulo). Neste caso, o vencedor é aquele cujos vetores estão mais próximos num sentido euclidiano.

– Menor ângulo. Neste caso, a ativação de cada neurônio, correspondente ao ângulo entre os vetores w e x, é usada como métrica de proximidade.

• A ativação y é proporcional ao co-seno do ângulo () entre os vetores x e w

y = xT . w = ||x||.||w||. cos

• O co-seno tem valor máximo igual a 1 quando os vetores são colineares, ou seja, = 0.

• Assim, a métrica do menor ângulo é equivalente à do maior co-seno:

cos =||x||.||w||xT . w

Informática

UFRGS Prof. Paulo Martins Engel

22

Determinação do vencedor

• A distância euclidiana considera o módulo dos vetores.

• Assim, vetores colineares, mas de módulos diferentes, são distintos por esta métrica.

• No caso da ativação, o critério de similaridade é o ângulo entre vetores.

• Neste caso, vetores colineares, de módulos diferentes, são equivalentes.

Page 12: redes competitivas.ppt [Modo de Compatibilidade] › ~engel › data › media › file › cmp121 › redes compe… · • O objetivo de um algoritmo de aprendizagem não-supervisionada

Informática

UFRGS Prof. Paulo Martins Engel

23

Exercício• Considere uma RNC com duas entradas e dois instars, com os pesos conforme

mostrado na figura.

• Considere ainda que temos um arquivo com os seguintes 4 vetores que devem ser agrupados num dos dois agrupamentos representados pelos neurônios:

x1 = [3, 1]T , x2 = [4, 3]T , x3 = [7, 3]T , x4 = [7, 5]T

• Agrupar os dados de entrada pelos seguintes critérios:

1. Menor distância euclidiana;

2. Menor ângulo.

1

2

3

4

5

6

7

1 2 3 4 5 6 7

x2

x1

x1 x2

1 2

y1y2

2

370

Informática

UFRGS Prof. Paulo Martins Engel

24

1

2

3

4

5

6

7

1 2 3 4 5 6 7

x2

x1

x1 x2

1 2

y1y2

2

370

x1 = [3, 1]T , x2 = [4, 3]T , x3 = [7, 3]T , x4 = [7, 5]T

x1

x2 x3

x4

w2

w1

1. Menor distância euclidiana

1

2

3

4

5

6

7

1 2 3 4 5 6 7

x2

x1

w2

w1

c1 = {x3, x4}

c2 = {x1, x2}

2. Menor ângulo.

1

2

3

4

5

6

7

1 2 3 4 5 6 7

x2

x1

w2

w1

c1 = {x1, x3}

c2 = {x2, x4}

Page 13: redes competitivas.ppt [Modo de Compatibilidade] › ~engel › data › media › file › cmp121 › redes compe… · • O objetivo de um algoritmo de aprendizagem não-supervisionada

Informática

UFRGS Prof. Paulo Martins Engel

25

A Camada Competitiva da rede CPN

• A camada competitiva da rede CPN é composta de instars que respondem maximamente a um grupo de vetores de entrada, em uma região diferente do espaço.

• Cada unidade recebe o vetor de entrada I = [I1, I2,..., In ]T

• A i-ésima unidade tem um vetor de pesos associado wi = [wi1, wi2 ,..., win ]T

• O seu valor de potencial é calculado como: vi = IT . wi

• O instar vencedor da competição é aquele que apresenta o maior valor de v

v1 v2 vi vn–1 vn

x1x2

Ii

xi xn–1 xn+––

I1 I2 In–1In

f(xi)

wi1

wii

win

f(x1) f(x2) f(xn 1) f(xn)

– – – ––

Informática

UFRGS Prof. Paulo Martins Engel

26

1 2

I1 I2

x1 x2

++

w11w12

w22

w21

f(x 1) f(x 2)

v 2 + f(x 2) v1 + f(x 1)

Resposta temporal da camada competitiva

2.0

x1(t)[V]

100 200

t [ms]

100 200

t [ms]

4.0

I2(t)[V]

4.0

I1(t)[V]

2.0

x2(t)[V]

Implementação algorítmica da camada competitiva

• A funcionalidade da camada competitiva da rede CPN pode ser implementada por um procedimento de escolha de um único vencedor por juiz externo.

• Neste caso, pode-se usar a distância euclidiana mínima entre os instars e o vetor de entrada como critério para escolha do vencedor.

• A saída do vencedor é então colocada em 1 e a dos demais neurônios em 0.

Page 14: redes competitivas.ppt [Modo de Compatibilidade] › ~engel › data › media › file › cmp121 › redes compe… · • O objetivo de um algoritmo de aprendizagem não-supervisionada

Informática

UFRGS Prof. Paulo Martins Engel

27

• Considere o conjunto de 6 vetores bidimensionais {x1, x2, …, x6} :

x1 = [2, 3]T, x2 = [6, 5]T, x3 = [3, 4]T, x4 = [5, 7]T, x5 = [3, 2]T, x6 = [4, 5]T

• Desejamos treinar uma rede CPN com dois Instars, w1(n) e w2(n), com os seis vetores de treinamento (apenas uma época). Considere:

w1(1) = [1, 1]T e w2(1) = [7, 7]T e = 0,5

Exercício

1 2 3 4 5 6 7

7

6

5

4

3

2

1

x6

x1

x2x3

x4

x5

w1

w2

Informática

UFRGS Prof. Paulo Martins Engel

28

n = 1:

x1 = [2, 3]T, w1(1) = [1, 1]T e w2(1) = [7, 7]T

vencedor w1:

w11(2) = 1 + 0,5(2 – 1) = 1,5

w12(2) = 1 + 0,5(3 – 1) = 2

1 2 3 4 5 6 7

7

6

5

4

3

2

1

x1

w1

w2

w1

n = 2:

x2 = [6, 5]T, w1(2) = [1.5, 2]T e w2(2) = [7, 7]T

vencedor w2:

w21(3) = 7 + 0,5(6 – 7) = 6,5

w22(3) = 7 + 0,5(5 – 7) = 6

1 2 3 4 5 6 7

7

6

5

4

3

2

1

x2

w1

w2

w2

Page 15: redes competitivas.ppt [Modo de Compatibilidade] › ~engel › data › media › file › cmp121 › redes compe… · • O objetivo de um algoritmo de aprendizagem não-supervisionada

Informática

UFRGS Prof. Paulo Martins Engel

29

n = 3:

x3 = [3, 4]T, w1(3) = [1.5, 2]T e w2(3) = [6.5, 6]T

vencedor w1:

w11(4) = 1,5 + 0,5(3 – 1,5) = 2,25

w12(4) = 2 + 0,5(4 – 2) = 3

1 2 3 4 5 6 7

7

6

5

4

3

2

1

x3

w2

w1

n = 4:

x4 = [5, 7]T, w1(4) = [2.25, 3]T e w2(4) = [6.5, 6]T

vencedor w2:

w21(5) = 6,5 + 0,5(5 – 6,5) = 5,75

w22(5) = 6 + 0,5(7 – 6) = 6,5

1 2 3 4 5 6 7

7

6

5

4

3

2

1

x4

w1

w2w2

w1

Informática

UFRGS Prof. Paulo Martins Engel

30

n = 5:

x5 = [3, 2]T, w1(5) = [2.25, 3]T e

w2(5) = [5.75, 6.5]T

vencedor w1:

w11(6) = 2,25 + 0,5(3 – 2,25) = 2,625

w12(6) = 3 + 0,5(2 – 3) = 2,5

1 2 3 4 5 6 7

7

6

5

4

3

2

1x5

w2

w1

n = 6:

x6 = [4, 5]T, w1(6) = [2.625, 2.5]T e

w2(6) = [5.75, 6.5]T

vencedor w2:

w21(7) = 5,75 + 0,5(4 – 5,75) = 4,875

w22(7) = 6,5 + 0,5(5 – 6,5) = 5,75

1 2 3 4 5 6 7

7

6

5

4

3

2

1

x6

w1

w2

w2

w1

Page 16: redes competitivas.ppt [Modo de Compatibilidade] › ~engel › data › media › file › cmp121 › redes compe… · • O objetivo de um algoritmo de aprendizagem não-supervisionada

Informática

UFRGS Prof. Paulo Martins Engel

31

Estimação da função densidade de probabilidade• Uma característica valiosa de uma rede competitiva treinada para modelar um domínio

é que cada unidade da rede vença a competição com igual probabilidade, equivalendo a uma quantização vetorial, que divide o espaço (contínuo) de vetores entrada em regiões discretas, equiprováveis.

• Entretanto, Rumelhart e Zipser notaram que, com o uso da regra de aprendizado competitivo (regra de Kohonen) onde apenas um elemento tem seus pesos ajustados, é possível que alguns de seus elementos nunca vençam a competição.

• A regra de treinamento de Kohonen não garante que os vetores wi treinados sejam aproximadamente equiprováveis (vencedores) em relação aos vetores x apresentados à rede de acordo com a função densidade de probabilidade, , do domínio.

• Se forem equiprováveis, a probabilidade de um vetor x, retirado de Rn de acordo com , estar mais próximo a wi é aproximadamente 1/N, para todo i = 1, 2, ..., N.

• Pela regra original, dependendo de , alguns vetores wi nunca (ou quase nunca) serão vencedores, enquanto que alguns outros terão uma probabilidade de vencer muito maior do que o esperado.

• A regra de Kohonen tende a favorecer regiões de baixa densidade de vetores.

Informática

UFRGS Prof. Paulo Martins Engel

32

Influência da função densidade de probabilidade no aprendizado

Função densidade de probabilidade () mostrando regiões de áreas iguais

Aprendizado de Kohonen. = 0,03 para 32000 iterações.

Rede de 15 neurônios treinada com x unidimensional gerado aleatoriamente entre 0 e 1, segundo a função densidade de probabilidade () mostrada abaixo.

Page 17: redes competitivas.ppt [Modo de Compatibilidade] › ~engel › data › media › file › cmp121 › redes compe… · • O objetivo de um algoritmo de aprendizagem não-supervisionada

Informática

UFRGS Prof. Paulo Martins Engel

33

Influência da função densidade de probabilidade no aprendizado

Função densidade de probabilidade () mostrando regiões de áreas iguais

Aprendizado de Kohonen. = 0,03 para 16000 iterações.Apenas um neurônio conseguiu ultrapassar a lacuna.

Rede de 15 neurônios treinada com x unidimensional gerado aleatoriamente entre 0 e 1, segundo a função (com uma lacuna) mostrada abaixo.

Informática

UFRGS Prof. Paulo Martins Engel

34

Aprendizagem competitiva com mecanismo de consciência

• Uma solução para o problema de sub-sobre-amostragem da regra de Kohonen, proposta por DeSieno, é construir um mecanismo de “consciência” para monitorar a história de “sucesso” de cada unidade da rede.

• Se uma unidade ganha a competição muito mais freqüentemente que 1/N das vezes, então a sua “consciência” a retira da competição por um certo tempo, permitindo que outras unidades nas áreas sobre-amostradas se espalhem para as regiões sub-amostradas.

• O conceito básico deste mecanismo é armazenar (iterativamente) a freqüência pi com que cada wi vence a competição. Este valor é calculado localmente por:

pi(n + 1) = pi(n) + (yi – pi(n))

onde yi é 1 ou 0, dependendo se wi venceu ou não a competição no passo n.

0 < << 1 é uma constante de valor pequeno (tipicamente 0,0001).

Page 18: redes competitivas.ppt [Modo de Compatibilidade] › ~engel › data › media › file › cmp121 › redes compe… · • O objetivo de um algoritmo de aprendizagem não-supervisionada

Informática

UFRGS Prof. Paulo Martins Engel

35

Estimação da função densidade de probabilidade

• A freqüência pi é usada para calcular um bias para o peso wi, que corresponde ao desvio de pi em relação à condição equiprovável (1/N):

yi = 1 se || wi – x ||2 – bi || wj – x ||2 – bj ∀j i

yi = 0 caso contrário

• O vetor de pesos do vencedor é então ajustado pela regra de Kohonen:

wi(n + 1) = wi(n) + (x – wi(n)) yi

ii p

Nb

1

onde � é um fator de bias (tipicamente 10) que determina a distância que um peso perdido pode alcançar para entrar na solução.

• Pela fórmula, unidades que vencem muito freqüentemente têm valores de bias grandesnegativos; unidades que vencem raramente têm bias positivos grandes.

• O processo competitivo leva em conta agora o bias de cada elemento: bias positivo favorece a vitória (diminui a distância efetiva); bias negativo dificulta a vitória.

Informática

UFRGS Prof. Paulo Martins Engel

36

Aprendizado com consciência

Função densidade de probabilidade () mostrando regiões de áreas iguais

Aprendizado de Kohonen com cosciência. = 0,03 para (apenas) 3200 iterações.

Rede de 15 neurônios treinada com x unidimensional gerado aleatoriamente entre 0 e 1, segundo a função densidade de probabilidade () mostrada abaixo.

Page 19: redes competitivas.ppt [Modo de Compatibilidade] › ~engel › data › media › file › cmp121 › redes compe… · • O objetivo de um algoritmo de aprendizagem não-supervisionada

Informática

UFRGS Prof. Paulo Martins Engel

37

Influência da função densidade de probabilidade no aprendizado

Função densidade de probabilidade () mostrando regiões de áreas iguais

Aprendizado de Kohonen com consciência. = 0,03 para 16000 iterações.O mecanismo de consciência não teve dificuldade com este tipo de função.

Rede de 15 neurônios treinada com x unidimensional gerado aleatoriamente entre 0 e 1, segundo a função (com uma lacuna) mostrada abaixo.

Informática

UFRGS Prof. Paulo Martins Engel

38

5. O Outstar

• O outstar é composto de uma unidade da camada competitiva e todas as unidades da camada de saída.

• Ele representa o componente básico da camada de saída da CPN.

z

y’1 y1

y’2 y’nyny2

Vetor de entrada x Vetor de entrada y

Camada de entrada

Camada competitiva

Camada de saída

Vetor de saída y’

Page 20: redes competitivas.ppt [Modo de Compatibilidade] › ~engel › data › media › file › cmp121 › redes compe… · • O objetivo de um algoritmo de aprendizagem não-supervisionada

Informática

UFRGS Prof. Paulo Martins Engel

39

O Outstar como modelo de condicionamento clássico

z

y’y

• Grossberg afirma que o outstar é a arquitetura neural mínima capaz de implementar o condicionamento clássico (Pavlov)

z estímulo condicional EC (audição da campainha);

y estímulo incondicional EIC (visão de comida);

y’ resposta incondicional RIC (salivação);

• Inicialmente assume-se que um estímulo condicional z não é capaz de gerar uma resposta em qualquer das unidades de saída a que ele está conectado.

• Um estímulo incondicional y é capaz de causar uma resposta incondicional.

• Durante o treinamento, se z está presente enquanto y está causando y’ a conexão entre a unidade de z e a unidade de y’ é aumentada.

• Após o treinamento, z será capaz de causar uma resposta condicional y’ mesmo sem a presença de y.

Informática

UFRGS Prof. Paulo Martins Engel

40

Treinamento do outstar

• A saída do outstar pode representar o rótulo (y) de um determinado cluster.

• Neste caso, todas as saídas da rede correspondentes a cada vetor de um mesmo clustersão idênticas, e os pesos do outstar são calculados pela atribuição direta do rótulo:

w = y ou, individualmente, wi = yi

• Cada vetor de entrada (x) de um mesmo cluster pode ser associado a valores de saídas (y) um pouco diferentes (contínuas).

• Neste caso, as saídas da rede não representam o rótulo do cluster mas valores contínuos de saída.

• A rede está realizando o mapeamento de vetores de entrada para vetores de saída.

• Neste caso, o vetor de peso do outstar associado ao cluster dos vetores de entrada deve aprender o valor médio dos vetores de saída correspondentes.

• Para tanto, utilizamos um processo similar ao aprendizado do instar:

wi (t + 1) = wi (t) + ( yi – wi (t) )

onde é o parâmetro da taxa de aprendizado para o outstar.

Page 21: redes competitivas.ppt [Modo de Compatibilidade] › ~engel › data › media › file › cmp121 › redes compe… · • O objetivo de um algoritmo de aprendizagem não-supervisionada

Informática

UFRGS Prof. Paulo Martins Engel

41

• Assuma que dispomos de uma rede CPN treinada e temos um vetor de entrada I e desejamos encontrar o vetor y correspondente. O procedimento corresponde ao seguinte algoritmo:

1. Normalize o vetor de entrada:

2. Aplique o vetor de entrada à porção do vetor x da camada 1. Aplique um vetor zero à porção do vetor y da camada 1.

3. A camada 1 só distribui o vetor de entrada já normalizado para a camada 2.

4. A camada 2 é uma camada competitiva do tipo “o vencedor leva tudo”.

A unidade cujo vetor de peso está mais próximo do vetor de entrada vence a competição e tem a sua saída fixa em 1. Todas as outras unidades têm saída 0.

5. O único neurônio vencedor da camada 2 excita um outstar.

Mapeamento direto da CPN (versão discreta)

nn

ii

I

Ix

2

Informática

UFRGS Prof. Paulo Martins Engel

42

Sinais para o mapeamento direto da CPN (versão discreta)

1 i p

w1 w2 wm

Vetor de entrada x Vetor de entrada y

Camada de entrada 1

Camada competitiva 2

Camada de saída 3

Vetor de saída y’

x1 x2 xn 0 0 0

w1iw2i wmi

0 0

000

011 1

Page 22: redes competitivas.ppt [Modo de Compatibilidade] › ~engel › data › media › file › cmp121 › redes compe… · • O objetivo de um algoritmo de aprendizagem não-supervisionada

Informática

UFRGS Prof. Paulo Martins Engel

43

Treinamento da CPN (versão discreta)

• Assumindo que dispomos de um conjunto de vetores de treinamento adequados, efetuamos o treinamento da camada competitiva da CPN de acordo com o seguinte algoritmo:

1. Selecione um vetor de entrada dentre os vetores de treinamento. A seleção deve ser aleatória correspondente à distribuição de probabilidade dos vetores.

2. Normalize o vetor de entrada e o aplique à camada competitiva.

3. Determine o vencedor calculando o v de cada unidade e selecionando a unidade com o maior valor.

4. Calcule (x – w) apenas para a unidade vencedora e atualize os pesos do vencedor de acordo com a expressão:

w(t + 1) = w(t) + (x – w)

5. Repita passos 1 a 4 até todos os vetores de entrada serem processados uma vez.

6. Repita passo 5 até todos vetores de entrada serem classificados corretamente.

7. Teste a eficiência do treinamento aplicando vetores de várias classes não usados no treinamento. Se ocorrerem erros de classificação deve-se repetir o passo 6.