Você está na página 1de 29

RNs no sup

SOM

1 / 29

SOM - Mapas Auto-Organizveis de Kohonen


y1

1 Estrutura da Rede

w1
y2

w2

Camada de Kohonen

wm
Unidimensional
u0

w1

w2

w6
INPUT LAYER

Unidimensional
P neurnios em linha

x
Bidimensional
Arranjo de P x Q neurnios

ym
y0

RNs no sup

SOM

2 / 29

Bidimensional

Fundamental: No treinamento de Kohonem existem dois espaos considerar:

O espao das entradas X


as entradas x e as sinapses w so

w11

w12

w16 w56

definidas neste espao


as distncias d neste espao sero d = |x w|

O espao de competio M , o mapa auto organizvel de Kohonen


As distncias m entre os neurnios so definidas neste espao
Neurnios Ni e Nj

m = |i j|

RNs no sup

SOM

3 / 29

1.1 - Distncias
Distncia entre entradas e/ou sinapses no espao de entrada

w
w11

w12

w16 w56

x
w = [2, 2]
x = [3, 1]

r r
d ( x , w) =

(3 2)2 + (1 2)2

= 2

Distncia entre neurnios no espao competitivo


Mapa unidimensional

m=3

m(N2,N5) = |2 5| = 3

Mapa bi-dimensional

m( N 22 N 64 ) =

(2 6)2 + (2 4)2

= 20

RNs no sup

SOM

4 / 29

2 Treinamento
2.1 Treinamento de Kohonen - Objetivo
INPUT LAYER

Objetivo:
Sinapses wi e wj prximas entre si
(proximidade medida no espao de entrada, d(|wi , wj) = |wi wj| pequeno)
alimentam neurnios Ni e Nj prximos entre si
(proximidade medida no mapa de Kohonen, m(Ni , Nj) = |i j| pequeno)
isto :
Similaridade nas sinapses (os padres levantados) corresponde
Similaridade na posio dos respectivos neurnios no mapa, e vice-versa.

2.2 - Treinamento de Kohonen - Fases

O treinamento de Kohonen passa por duas fases:

Fase de auto-organizao ou ordenao

- nesta fase inicial ocorre a ordenao topolgica dos vetores sinapse


- a fase mais crtica
- os neurnios treinam em conjunto com seus vizinhos imediatos
- leva usualmente cerca de 1000 passos de treinamento
- nesta fase manter .01 .1 para permitir uma movimentao
(alterao) eficiente das sinapses.

RNs no sup

SOM

5 / 29

Fase de Convergncia

- nesta fase feita a sintonia fina dos neurnios do mapa, os neurnios


adquirem os detalhes das estruturas das entradas
- pode ser longa, leva tipicamente 500 vezes o nmero de neurnios,
P passos para mapas unidimensionais ou 500 PQ passos para mapas
bidimensionais
-cada neurnio opera de nodo praticamente independente ou com uma
vizinhana muito pequena. R2 (n) 1 nesta fase

2.3 - Treinamento de Kohonen Aes

O Treinamento de Kohonen envolve trs tipos de aes:


2.3.1 - Ao 1 - Competio:
apresentada uma entrada x e os neurnios competem entre si. declarado
Neurnio vencedor
o neurnio Ni cujo vetor sinapse wi o mais prximo de x , isto

r r
i = arg Min x w j
j

RNs no sup

SOM

6 / 29

Ex: Camada unidimensional com 8 neurnios


entrada (e sinapses) unidimensionais
Ni,

wi

.2

.5

.8

.9

.1

.5

.6

.2

apresentada a entrada x=.65.


N7 o vencedor porque

r r
r r
x w7 < x w j j 7
note que a competio ocorre na camada de entrada
(e no na chamada camada competitiva !)

2.3.2 - Ao 2- Cooperao

Durante a fase de auto-organizao cada neurnio vencedor treina tambm seus


vizinhos prximos. Este processo que garante a continuidade do mapa, o
agrupamento de entradas similares alimentando neurnios vizinhos no mapa e a
transio suave entre classes no mapa.

Para a aplicao deste conceito necessrio definir uma vizinhana para os


neurnios, e uma forma de varia-la no tempo.

RNs no sup

SOM

7 / 29

Vizinhana - Distncia na Camada Competitiva Uni e Bidimensional


Raio de Vizinhana R (distncia entre neurnios, no mapa)
Neurnio vencedor

Funo de Vizinhana h(mi)


Um neurnio ativado afeta mais intensamente seus vizinhos mais prximos
na camada competitiva

mi = distncia do neurnio Ni ao neurnio vencedor


m2 = 3
Funo de Vizinhana
Gaussiana

mi2
h(mi ) = exp( 2 )
2

N2

mij

RNs no sup

SOM

8 / 29

Exemplos de h(mi) Gaussiana:

Mapa unidimensional, P = 100


Vencedor: N50
c) 20
d) 1

Mapa bidimensional, P = Q = 10
Vencedor: N5,5
3

Valor inicial e taxa de decaimento da largura da vizinhana


No incio do treinamento a vizinhana deve cobrir praticamente toda a camada
competitiva, e a medida que o treinamento decorre deve ir diminuindo at que ao fim da
fase de auto-organizao deve estar reduzida a praticamente um neurnio (h arbitrado
tal que (1000) = 1). Podemos ento utilizar:

m 2j

h j (n) = exp
2 2 (n)

m 2j = N j N vencedor

= (n) = 0 exp

0.2 P para _ mapa _ uni dim ensional


max_ dim_ grade
0
=
5

2
2
0.2 P + Q para _ mapa _ bi dim ensional

h =

1000
ln 0

Formas tpicas de h para n pequenos esto apresentados nos exemplos de funo de


vizinhana gaussiana acima.

RNs no sup

SOM

9 / 29

Ou, de forma recursiva

max_ dim_ grade 0.2 P para _ mapa _ uni dim ensional


=
5
0.2 P 2 + Q 2 para _ mapa _ bi dim ensional

( 0) = 0

z (0) = exp(

1
2

(n + 1) 1

2
0

m 2j = N j N vencedor

1000
ln 0

1
( n)
h

z (n + 1) z (n) 1
2

h ( n)

h =

h j (n ) = [z (n)]

m 2ji

2.3.3 - Ao 3 Aprendizado, alterao do valor das sinapses.

Valores iniciais das sinapses


Como no sabemos como o mapa ir se organizar necessrio que os valores iniciais
sejam pequenos e randmicos, para no polarizar o processo em um mnimo local. Se o
escalamento das variveis de entrada foi feito conforme ser discutido na seo de prprocessamento, o valor rms do rudo em cada dimenso ser unitrio. Neste caso
razovel iniciar as sinapses com valores randmicos na faixa (-1, +1).

Treinamento
Ao longo de todo o treinamento a rede aprende, isto , tem suas sinapses modificadas
em direo a uma entrada. A velocidade do treinamento necessita variar, deve ser mais
rpida na fase de auto-organizao, que requer maiores mudanas, e mais lenta na de
convergncia, para permitir que uma boa sintonia fina, i.e., o minimante da funo
objetivo, seja alcanado com preciso.

RNs no sup

SOM

10 / 29

A atualizao seletiva de uma sinapse feita movendo-a na direo da entrada

r
r
r r
w j ( n + 1) = w j ( n ) + { x w j ( n )}
Valor inicial e taxa de decaimento do passo
Durante o treinamento o passo deve iniciar no entorno de 0,1 decair aproximadamente
10 vezes em 1000 passos de treinamento (na fase de auto-organizao do mapa, os
primeiros 1000 passos aproximadamente, .1 .01 , o que implica em ~ 500).
Podemos ento utilizar:

(n) = 0 exp
ou de forma recursiva

(0) = .1

0 = .1

500

(n + 1) = .998 (n)

onde n o passo de treinamento atual.

Atualizao completa das sinapses

r
r
r r
w j ( n + 1) = w j (n) + ( n) h j (n){ x w j (n)}

(n) = 0 exp

m 2j

h j (n) = exp
2 2 (n)

0 = .1

= 500

m 2j = N j N vencedor

(n) = 0 exp

0.2 P para _ mapa _ uni dim ensional


max dim grade
0
=
5

0.2 P 2 + Q 2 para _ mapa _ bi dim ensional

h =

1000
ln 0

RNs no sup

SOM

11 / 29

ou, de forma recursiva


r
r
r r
w j ( n + 1) = w j ( n) + ( n) h j ( n){ x w j ( n)}

(0) = .1

(n + 1) = .998 (n)

max_ dim_ grade 0.2 P para _ mapa _ uni dim ensional


=
2
2
5
0.2 P + Q para _ mapa _ bi dim ensional

( 0) = 0

z (0) = exp(

(n + 1) = 1

)
2

m 2j = N j N vencedor

1000
ln 0

1
( n)
h

z (n + 1) = z ( n) 1 +
2

(
n
)

2 0

h =

h j (n ) = [z ( n)]

m 2j

2.4 - Treinamento de Kohonen - resumo

entrada x(n)
Passo (ao) 1 - verificar o neurnio Ni ganhador, u i > u j j i
a competio feita no domnio de entrada (no no mapa !)

Passo(ao) 2 verificar os vizinhos de Ni com funo de vizinhana no nula


Ni R , Ni R +1 , ... , Ni-1 , Ni , Ni +1 , .... , Ni + R-1 , Ni + R
a similaridade medida no mapa (no no domnio das entradas !)

RNs no sup

SOM

12 / 29

Passo (ao) 3 atualizar as sinapses dos neurnios vizinhos

r
r
r r
w j ( n + 1) = w j ( n) + ( n) h j ( n){ x w j ( n)}

a atualizao feita no domnio da entrada

medida que o treinamento progride as equaes:

- vo reduzindo

- vo reduzindo

2.5 - Exemplo de um passo de treinamento:


y1

x unidimensional

w1
y2

mapa unidimensional, P = 8 neurnios

w2

x
havamos iniciado com
0 = 0 .2 P = 1 .6
0 = 0 .1

wm

1000
h =
2000
ln 0

ym

u0

= 1000

y0

No passo n= 100 as sinapses tem os valores indicados abaixo


Ni, i =

wi (100)=

.2

.5

.8

.9

.1

.5

.6

.2

e apresentada a entrada x=.65

RNs no sup

SOM

13 / 29

clculos auxiliares:
para n=100

n
100
= 1.6 exp
= 1.59

2000

(100) = 0 exp

m 2j
1

= exp
h j (100) = exp
2 (1.59) 2
2 2 (n)

m 2j

= (.82)

m 2j

mj = 0

1.0

.82
.45

=
.16
.04

mj =1
mj = 2
mj = 3
mj = 4
mj 5

n
100
= 0.1exp
= 0.09

1000

(100) = 0 exp

Passo (ao) 1 - Competio no espao de entrada: x = .65

Ni, i =

wi (100)=

.2

.5

.8

.9

.1

.5

.6

.2

ui = | x wi |2

u7 > u j j = 1,2,3,4,5,6,8

N7 vencedor

Passo (ao) 2 Valores de m e h para os vizinhos de N5 no mapa


Ni

mi

hi

.45

.82

.82

.04 .16

RNs no sup

SOM

14 / 29

Passo (ao) 3 - Atualizao das sinapses no espao de entrada

r
r
r r
w j (101) = w j (100 ) + (100 ) h j (100 ){ x w j ( n)}

Ni

wi antigo

.2

.5

.8

.9

.1

.5

.6

.2

wi novo

.2

.5

.795

.864

.323

.611

.645

.532

Note que:
- todas as sinapses alteradas se aproximaram da entrada x = .65 e entre si.
- sinapses prximas do neurnio vencedor so mais afetadas
- sinapses (e estruturas) distantes praticamente no se alteram

2.6 - Treinamento em Batelada


Na poca n, para toda entrada xk , k = 1, 2, ..., K calcule os acrscimos a serem
aplicados em cada neurnio

r
r
r
w j ( n, k ) = ( n) h j ( n){ xk w j ( n)}

Aplique o acrscimo mdio nas sinapses

r
r
r
w j ( n + 1) = w j ( n) + w j ( n)

r
1
w j ( n ) = ( n ) h j ( n )
K

{x
K

k =1

r
k

r
w j ( n)}

Idntico, mas o acrscimo em cada neurnio o valor mdio do acrscimo calculado


para cada entrada.

RNs no sup

SOM

3 Exemplos / Aplicaes
3.1 Evoluo do mapa:

Entrada

Mapa:

15 / 29

RNs no sup

SOM

16 / 29

3.1.1 - Problemas na evoluo do mapa:

3.2 Regies da entrada com densidades populacionais diferentes:

De novo, regies da entrada com densidades populacionais diferentes:

RNs no sup

SOM

3.3 Reduo de dimenso de representao:

17 / 29

RNs no sup

SOM

18 / 29

3.4 Aplicao: agrupamento (classificao) de animais por seus atributos


Entradas

r
x falco

Mapa de Kohonen
mamferos x aves
predadores x no
pequenos x grandes
...

SOM

4 - Dimensionando o Mapa
P x Q neurnios

(P Q)

Definio da Granularidade

19 / 29

Q neurnios

RNs no sup

2r0

(no mapa)

No espao de entrada:

P neurnios

p(d)

Na direo de mximo espalhamento


(1 PCA) Do histograma p(d) das distncias
entre as entradas

r r
d = xi x j

p(d)

Estimamos o dimetro da classe nica

= Max d
e a direo em que este dimetro ocorre

RNs no sup

SOM

r r
r
xi xi
d = r r
xi xi

onde

20 / 29

r r
r r
xi , xi = arg Max xi xi

Por outro lado, se o escalamento foi feito de modo a tornar o valor rms (desvio
padro) do rudo em cada direo unitrio o valor de r0 ser escolhido entre 1 e 3,
conforme o percentual de elementos da classe que queremos englobar (ver escolha de r0
para ART). O dimetro das clases dado por 2 r0 .
O nmero de classes (e de neurnios) na direo do maior dimetro ser ento:

2r0

Para obter o nmero de neurnios na direo Q do mapa repetir com a direo da


entrada que gera o segundo maior dimetro
Como obter este segundo maior dimetro

? A direo

r
d

do maior dimetro

conhecida, da confeco do histograma. Eliminar as componentes das entradas


nesta direo usando como novas entradas:

r r r tr r
x = x d x d

Calcular o maior dimetro


para as entradas x . Ento:
Q

2r0

RNs no sup

SOM

21 / 29

uma alternativa calcular a relao P/Q atravs das componentes PCA.

SOM e PCA so representaes com dimensionalidade reduzida

PCA Compactao linear

SOM Compactao no linear

P Varincia1 PCA

Q Varincia 2 a PCA
a

5 - Determinao no supervisionada dos clusters

Matriz das Distncias - U-Matrix

u ij =

r
r
w vizinho wij

r
r
wvizinho wij

picos (separaes) e
vales (agrupamentos)

RNs no sup

SOM

22 / 29

RNs no sup

SOM

23 / 29

Nomeando os clusters
Quem quem ?

6 - Comentrios:
6.1 SOM vs PCA
PCA Compactao linear
SOM Compactao no linear, elimina espaos vazios

PCA

SOM

RNs no sup

SOM

24 / 29

RNs no sup

SOM

25 / 29

6.2 Diferena do processo anterior (Kohonen simplificada, h=0)


Kohonen simplificada: padres similares no ficam juntos
Kohonen: Padres similares ficam juntos,
h uma transio suave entre classes

6.3 - Outras mtricas para definir vizinhana na camada competitiva:


Estrutura retangular
P colunas x Q linhas

Mtrica quadrada

Fazendo
espaamento entre colunas = 1
espaamento entre linhas = 1

distncia Euclidiana entre vizinhos mais prximos = 1 ou 2


distncia quadrada no mapa entre vizinhos mais prximos m = 1

RNs no sup

colunas
linhas

SOM

26 / 29

k = 1, 2, ... , P
l = 1, 2, ... , Q

posio dos neurnios (k, l)

Vizinhos com distncia m no mapa

Distncia m (medida pela mtrica dos quadrados)


de um neurnio (k, l) ao neurnio vencedor (kv , lv )
m = Max { | k kv | , | l lv | }

6.4 Outra Estrutura Bidimensional de neurnios


Hexagonal P colunas x Q linhas
distncias iguais,
maiores possibilidades de vizinhanas

Fazendo
espaamento entre colunas = 0,5
espaamento entre linhas = 3 2

hexgonos regulares e
distncia Euclidiana entre vizinhos mais prximos = 1
distncia m no mapa entre vizinhos mais prximos = 1

RNs no sup

colunas
linhas

SOM

k = 1, 2, ... , P
l = 1, 2, ... , Q

posio dos neurnios (k, l)

(k-par, l-impar)
ou
(k-impar, l-par)
h neurnios em apenas
metade das posies (k, l) !

6.4.1 - Mtricas possveis:

Euclidiana

Hexagonal

27 / 29

RNs no sup

SOM

28 / 29

6.5 - Outras funes de vizinhana h

mij

mij

6.6 Efeito de Borda

Grades neurais bidimensionais (a) retangular (b) hexagonal (c) SOM

Mapas fechados

RNs no sup

SOM

Mapas Esfricos Domo geodsico - GEOSOM

Slidos Platnicos e domos geodsicos

29 / 29

Você também pode gostar