Mapas auto-organizativosinfofich.unl.edu.ar/upload/455df52ffe97fb21947fc8c6672d82db3042bc77.pdf ·...

63
Mapas auto-organizativos Diego Milone y Leonardo Rufiner Inteligencia Computacional Departamento de Inform ´ atica FICH-UNL

Transcript of Mapas auto-organizativosinfofich.unl.edu.ar/upload/455df52ffe97fb21947fc8c6672d82db3042bc77.pdf ·...

Page 1: Mapas auto-organizativosinfofich.unl.edu.ar/upload/455df52ffe97fb21947fc8c6672d82db3042bc77.pdf · Cuantizacion vectorial con aprendizaje´ Algoritmo LVQ1 LVQ1: velocidad de aprendizaje.

Mapas auto-organizativos

Diego Milone y Leonardo Rufiner

Inteligencia ComputacionalDepartamento de Informatica

FICH-UNL

Page 2: Mapas auto-organizativosinfofich.unl.edu.ar/upload/455df52ffe97fb21947fc8c6672d82db3042bc77.pdf · Cuantizacion vectorial con aprendizaje´ Algoritmo LVQ1 LVQ1: velocidad de aprendizaje.

Introduccion Arquitectura de la red Entrenamiento LVQ

OrganizacionIntroduccion

Auto-organizacionInspiracion biologica

Arquitectura de la redSOM 2DEntornos y realimentacion lateral

Entrenamiento de un SOMCaracterısticas principalesAlgoritmo de entrenamientoConvergencia y consideraciones practicasFormacion de mapas topologicos

Cuantizacion vectorial con aprendizajeAlgoritmo LVQ1LVQ1: velocidad de aprendizaje

Page 3: Mapas auto-organizativosinfofich.unl.edu.ar/upload/455df52ffe97fb21947fc8c6672d82db3042bc77.pdf · Cuantizacion vectorial con aprendizaje´ Algoritmo LVQ1 LVQ1: velocidad de aprendizaje.

Introduccion Arquitectura de la red Entrenamiento LVQ

OrganizacionIntroduccion

Auto-organizacionInspiracion biologica

Arquitectura de la redSOM 2DEntornos y realimentacion lateral

Entrenamiento de un SOMCaracterısticas principalesAlgoritmo de entrenamientoConvergencia y consideraciones practicasFormacion de mapas topologicos

Cuantizacion vectorial con aprendizajeAlgoritmo LVQ1LVQ1: velocidad de aprendizaje

Page 4: Mapas auto-organizativosinfofich.unl.edu.ar/upload/455df52ffe97fb21947fc8c6672d82db3042bc77.pdf · Cuantizacion vectorial con aprendizaje´ Algoritmo LVQ1 LVQ1: velocidad de aprendizaje.

Introduccion Arquitectura de la red Entrenamiento LVQ

Auto-organizacion

• Autoorganizacion: es el proceso en el cual, por medio deinteracciones locales, se obtiene ordenamiento global(Turing, 1952).

• Ejemplo 1: evolucion de la ubicacion de los alumnosasisten a un curso...

• Ejemplo 2: las celulas del cerebro se auto-organizan engrupos de acuerdo a la informacion que reciben...

Page 5: Mapas auto-organizativosinfofich.unl.edu.ar/upload/455df52ffe97fb21947fc8c6672d82db3042bc77.pdf · Cuantizacion vectorial con aprendizaje´ Algoritmo LVQ1 LVQ1: velocidad de aprendizaje.

Introduccion Arquitectura de la red Entrenamiento LVQ

Auto-organizacion

• Autoorganizacion: es el proceso en el cual, por medio deinteracciones locales, se obtiene ordenamiento global(Turing, 1952).

• Ejemplo 1: evolucion de la ubicacion de los alumnosasisten a un curso...

• Ejemplo 2: las celulas del cerebro se auto-organizan engrupos de acuerdo a la informacion que reciben...

Page 6: Mapas auto-organizativosinfofich.unl.edu.ar/upload/455df52ffe97fb21947fc8c6672d82db3042bc77.pdf · Cuantizacion vectorial con aprendizaje´ Algoritmo LVQ1 LVQ1: velocidad de aprendizaje.

Introduccion Arquitectura de la red Entrenamiento LVQ

SOM: Inspiracion biologicaCorteza motora y sensorial

Ante estımulos provenientes de sensores proximos entre sı, se estimulanneuronas del cerebro pertenecientes a una misma zona.

Page 7: Mapas auto-organizativosinfofich.unl.edu.ar/upload/455df52ffe97fb21947fc8c6672d82db3042bc77.pdf · Cuantizacion vectorial con aprendizaje´ Algoritmo LVQ1 LVQ1: velocidad de aprendizaje.

Introduccion Arquitectura de la red Entrenamiento LVQ

OrganizacionIntroduccion

Auto-organizacionInspiracion biologica

Arquitectura de la redSOM 2DEntornos y realimentacion lateral

Entrenamiento de un SOMCaracterısticas principalesAlgoritmo de entrenamientoConvergencia y consideraciones practicasFormacion de mapas topologicos

Cuantizacion vectorial con aprendizajeAlgoritmo LVQ1LVQ1: velocidad de aprendizaje

Page 8: Mapas auto-organizativosinfofich.unl.edu.ar/upload/455df52ffe97fb21947fc8c6672d82db3042bc77.pdf · Cuantizacion vectorial con aprendizaje´ Algoritmo LVQ1 LVQ1: velocidad de aprendizaje.

Introduccion Arquitectura de la red Entrenamiento LVQ

SOM: Arquitectura• Arquitectura SOM 2D

x→ wj → sj

• Salidas: se activa solo la ganadora j∗

j∗(n) = G(x(n)) = arg mınj{‖x(n)− wj(n)‖}

Page 9: Mapas auto-organizativosinfofich.unl.edu.ar/upload/455df52ffe97fb21947fc8c6672d82db3042bc77.pdf · Cuantizacion vectorial con aprendizaje´ Algoritmo LVQ1 LVQ1: velocidad de aprendizaje.

Introduccion Arquitectura de la red Entrenamiento LVQ

SOM: Arquitectura• Arquitectura SOM 2D

x→ wj → sj

• Salidas: se activa solo la ganadora j∗

j∗(n) = G(x(n)) = arg mınj{‖x(n)− wj(n)‖}

Page 10: Mapas auto-organizativosinfofich.unl.edu.ar/upload/455df52ffe97fb21947fc8c6672d82db3042bc77.pdf · Cuantizacion vectorial con aprendizaje´ Algoritmo LVQ1 LVQ1: velocidad de aprendizaje.

Introduccion Arquitectura de la red Entrenamiento LVQ

Entornos de influencia o vecindades• Formas basicas:

• Alcance ΛG:• Entornos fijos• Entornos variables

• Excitacion asociadas al entorno:• Excitatorias puras• Inhibitorias puras• Funciones generales de excitacion/inhibicion

Page 11: Mapas auto-organizativosinfofich.unl.edu.ar/upload/455df52ffe97fb21947fc8c6672d82db3042bc77.pdf · Cuantizacion vectorial con aprendizaje´ Algoritmo LVQ1 LVQ1: velocidad de aprendizaje.

Introduccion Arquitectura de la red Entrenamiento LVQ

Entornos de influencia o vecindades• Formas basicas:

• Alcance ΛG:• Entornos fijos• Entornos variables

• Excitacion asociadas al entorno:• Excitatorias puras• Inhibitorias puras• Funciones generales de excitacion/inhibicion

Page 12: Mapas auto-organizativosinfofich.unl.edu.ar/upload/455df52ffe97fb21947fc8c6672d82db3042bc77.pdf · Cuantizacion vectorial con aprendizaje´ Algoritmo LVQ1 LVQ1: velocidad de aprendizaje.

Introduccion Arquitectura de la red Entrenamiento LVQ

Entornos de influencia o vecindades• Formas basicas:

• Alcance ΛG:• Entornos fijos• Entornos variables

• Excitacion asociadas al entorno:• Excitatorias puras• Inhibitorias puras• Funciones generales de excitacion/inhibicion

Page 13: Mapas auto-organizativosinfofich.unl.edu.ar/upload/455df52ffe97fb21947fc8c6672d82db3042bc77.pdf · Cuantizacion vectorial con aprendizaje´ Algoritmo LVQ1 LVQ1: velocidad de aprendizaje.

Introduccion Arquitectura de la red Entrenamiento LVQ

Funciones de excitacion/inhibicion lateral

• Uniforme (entorno simple):

ΛG(n) = 2⇒{

hG,i = β(n) si |G− i| ≤ 2hG,i = 0 si |G− i| > 2

siendo β(n) adaptable en funcion de las iteraciones n.

• Gaussiana:

hG,i = β(n)e− |G−i|2

2σ2(n)

• Sombrero Mejicano: campos receptivos retina, inhibicionlateral

Page 14: Mapas auto-organizativosinfofich.unl.edu.ar/upload/455df52ffe97fb21947fc8c6672d82db3042bc77.pdf · Cuantizacion vectorial con aprendizaje´ Algoritmo LVQ1 LVQ1: velocidad de aprendizaje.

Introduccion Arquitectura de la red Entrenamiento LVQ

Funciones de excitacion/inhibicion lateral

• Uniforme (entorno simple):

ΛG(n) = 2⇒{

hG,i = β(n) si |G− i| ≤ 2hG,i = 0 si |G− i| > 2

siendo β(n) adaptable en funcion de las iteraciones n.• Gaussiana:

hG,i = β(n)e− |G−i|2

2σ2(n)

• Sombrero Mejicano: campos receptivos retina, inhibicionlateral

Page 15: Mapas auto-organizativosinfofich.unl.edu.ar/upload/455df52ffe97fb21947fc8c6672d82db3042bc77.pdf · Cuantizacion vectorial con aprendizaje´ Algoritmo LVQ1 LVQ1: velocidad de aprendizaje.

Introduccion Arquitectura de la red Entrenamiento LVQ

Funciones de excitacion/inhibicion lateral

• Uniforme (entorno simple):

ΛG(n) = 2⇒{

hG,i = β(n) si |G− i| ≤ 2hG,i = 0 si |G− i| > 2

siendo β(n) adaptable en funcion de las iteraciones n.• Gaussiana:

hG,i = β(n)e− |G−i|2

2σ2(n)

• Sombrero Mejicano: campos receptivos retina, inhibicionlateral

Page 16: Mapas auto-organizativosinfofich.unl.edu.ar/upload/455df52ffe97fb21947fc8c6672d82db3042bc77.pdf · Cuantizacion vectorial con aprendizaje´ Algoritmo LVQ1 LVQ1: velocidad de aprendizaje.

Introduccion Arquitectura de la red Entrenamiento LVQ

OrganizacionIntroduccion

Auto-organizacionInspiracion biologica

Arquitectura de la redSOM 2DEntornos y realimentacion lateral

Entrenamiento de un SOMCaracterısticas principalesAlgoritmo de entrenamientoConvergencia y consideraciones practicasFormacion de mapas topologicos

Cuantizacion vectorial con aprendizajeAlgoritmo LVQ1LVQ1: velocidad de aprendizaje

Page 17: Mapas auto-organizativosinfofich.unl.edu.ar/upload/455df52ffe97fb21947fc8c6672d82db3042bc77.pdf · Cuantizacion vectorial con aprendizaje´ Algoritmo LVQ1 LVQ1: velocidad de aprendizaje.

Introduccion Arquitectura de la red Entrenamiento LVQ

Entrenamiento de un SOM

Caracterısticas principales:

• Entrenamiento NO-supervisado

• Aprendizaje competitivo

Page 18: Mapas auto-organizativosinfofich.unl.edu.ar/upload/455df52ffe97fb21947fc8c6672d82db3042bc77.pdf · Cuantizacion vectorial con aprendizaje´ Algoritmo LVQ1 LVQ1: velocidad de aprendizaje.

Introduccion Arquitectura de la red Entrenamiento LVQ

Entrenamiento de un SOM

Caracterısticas principales:

• Entrenamiento NO-supervisado

• Aprendizaje competitivo

Page 19: Mapas auto-organizativosinfofich.unl.edu.ar/upload/455df52ffe97fb21947fc8c6672d82db3042bc77.pdf · Cuantizacion vectorial con aprendizaje´ Algoritmo LVQ1 LVQ1: velocidad de aprendizaje.

Introduccion Arquitectura de la red Entrenamiento LVQ

Algoritmo de entrenamiento1. Inicializacion:

• pequenos valores aleatorios con wji ∈ [−0,5, · · · ,+0,5] otambien

• eligiendo aleatoriamente wj(0) = x` (` ∈ [1, · · · ,L])

2. Seleccion del ganador:

G(x(n)) = arg mın∀j{‖x(n)− wj(n)‖}

3. Adaptacion de los pesos:

wj(n + 1) ={

wj(n) + η(n) (x(n)− wj(n)) si yj ∈ ΛG(n)wj(n) si yj /∈ ΛG(n)

4. Volver a 2 hasta no observar cambios significativos.

Page 20: Mapas auto-organizativosinfofich.unl.edu.ar/upload/455df52ffe97fb21947fc8c6672d82db3042bc77.pdf · Cuantizacion vectorial con aprendizaje´ Algoritmo LVQ1 LVQ1: velocidad de aprendizaje.

Introduccion Arquitectura de la red Entrenamiento LVQ

Algoritmo de entrenamiento1. Inicializacion:

• pequenos valores aleatorios con wji ∈ [−0,5, · · · ,+0,5] otambien

• eligiendo aleatoriamente wj(0) = x` (` ∈ [1, · · · ,L])

2. Seleccion del ganador:

G(x(n)) = arg mın∀j{‖x(n)− wj(n)‖}

3. Adaptacion de los pesos:

wj(n + 1) ={

wj(n) + η(n) (x(n)− wj(n)) si yj ∈ ΛG(n)wj(n) si yj /∈ ΛG(n)

4. Volver a 2 hasta no observar cambios significativos.

Page 21: Mapas auto-organizativosinfofich.unl.edu.ar/upload/455df52ffe97fb21947fc8c6672d82db3042bc77.pdf · Cuantizacion vectorial con aprendizaje´ Algoritmo LVQ1 LVQ1: velocidad de aprendizaje.

Introduccion Arquitectura de la red Entrenamiento LVQ

Algoritmo de entrenamiento1. Inicializacion:

• pequenos valores aleatorios con wji ∈ [−0,5, · · · ,+0,5] otambien

• eligiendo aleatoriamente wj(0) = x` (` ∈ [1, · · · ,L])

2. Seleccion del ganador:

G(x(n)) = arg mın∀j{‖x(n)− wj(n)‖}

3. Adaptacion de los pesos:

wj(n + 1) ={

wj(n) + η(n) (x(n)− wj(n)) si yj ∈ ΛG(n)wj(n) si yj /∈ ΛG(n)

4. Volver a 2 hasta no observar cambios significativos.

Page 22: Mapas auto-organizativosinfofich.unl.edu.ar/upload/455df52ffe97fb21947fc8c6672d82db3042bc77.pdf · Cuantizacion vectorial con aprendizaje´ Algoritmo LVQ1 LVQ1: velocidad de aprendizaje.

Introduccion Arquitectura de la red Entrenamiento LVQ

Algoritmo de entrenamiento1. Inicializacion:

• pequenos valores aleatorios con wji ∈ [−0,5, · · · ,+0,5] otambien

• eligiendo aleatoriamente wj(0) = x` (` ∈ [1, · · · ,L])

2. Seleccion del ganador:

G(x(n)) = arg mın∀j{‖x(n)− wj(n)‖}

3. Adaptacion de los pesos:

wj(n + 1) ={

wj(n) + η(n) (x(n)− wj(n)) si yj ∈ ΛG(n)wj(n) si yj /∈ ΛG(n)

4. Volver a 2 hasta no observar cambios significativos.

Page 23: Mapas auto-organizativosinfofich.unl.edu.ar/upload/455df52ffe97fb21947fc8c6672d82db3042bc77.pdf · Cuantizacion vectorial con aprendizaje´ Algoritmo LVQ1 LVQ1: velocidad de aprendizaje.

Introduccion Arquitectura de la red Entrenamiento LVQ

Entrenamiento de un SOM

Consideraciones practicas:

• ΛG(n) es generalmente cuadrado

• hG,i(n) uniforme en i, decreciente con n• 0 < η(n) < 1 decreciente con n

¿Como varıan ΛG(n) y η(n)?

Page 24: Mapas auto-organizativosinfofich.unl.edu.ar/upload/455df52ffe97fb21947fc8c6672d82db3042bc77.pdf · Cuantizacion vectorial con aprendizaje´ Algoritmo LVQ1 LVQ1: velocidad de aprendizaje.

Introduccion Arquitectura de la red Entrenamiento LVQ

Entrenamiento de un SOM

Consideraciones practicas:

• ΛG(n) es generalmente cuadrado• hG,i(n) uniforme en i, decreciente con n

• 0 < η(n) < 1 decreciente con n

¿Como varıan ΛG(n) y η(n)?

Page 25: Mapas auto-organizativosinfofich.unl.edu.ar/upload/455df52ffe97fb21947fc8c6672d82db3042bc77.pdf · Cuantizacion vectorial con aprendizaje´ Algoritmo LVQ1 LVQ1: velocidad de aprendizaje.

Introduccion Arquitectura de la red Entrenamiento LVQ

Entrenamiento de un SOM

Consideraciones practicas:

• ΛG(n) es generalmente cuadrado• hG,i(n) uniforme en i, decreciente con n• 0 < η(n) < 1 decreciente con n

¿Como varıan ΛG(n) y η(n)?

Page 26: Mapas auto-organizativosinfofich.unl.edu.ar/upload/455df52ffe97fb21947fc8c6672d82db3042bc77.pdf · Cuantizacion vectorial con aprendizaje´ Algoritmo LVQ1 LVQ1: velocidad de aprendizaje.

Introduccion Arquitectura de la red Entrenamiento LVQ

Entrenamiento de un SOM

Consideraciones practicas:

• ΛG(n) es generalmente cuadrado• hG,i(n) uniforme en i, decreciente con n• 0 < η(n) < 1 decreciente con n

¿Como varıan ΛG(n) y η(n)?

Page 27: Mapas auto-organizativosinfofich.unl.edu.ar/upload/455df52ffe97fb21947fc8c6672d82db3042bc77.pdf · Cuantizacion vectorial con aprendizaje´ Algoritmo LVQ1 LVQ1: velocidad de aprendizaje.

Introduccion Arquitectura de la red Entrenamiento LVQ

Etapas del entrenamiento

1. Ordenamiento global (o topologico)• ΛG(n) grande (≈ medio mapa)• η(n) grande (entre 0.9 y 0.7)• Duracion 500 a 1000 epocas

2. Transicion• ΛG(n) se reduce linealmente hasta 1• η(n) se reduce lineal o exponencialmente hasta 0.1• Duracion ≈1000 epocas

3. Ajuste fino (o convergencia)• ΛG(n) = 0 (solo se actualiza la ganadora)• η(n) = cte (entre 0.1 y 0.01)• Duracion: hasta convergencia (≈ 3000 epocas)

Page 28: Mapas auto-organizativosinfofich.unl.edu.ar/upload/455df52ffe97fb21947fc8c6672d82db3042bc77.pdf · Cuantizacion vectorial con aprendizaje´ Algoritmo LVQ1 LVQ1: velocidad de aprendizaje.

Introduccion Arquitectura de la red Entrenamiento LVQ

Etapas del entrenamiento

1. Ordenamiento global (o topologico)• ΛG(n) grande (≈ medio mapa)• η(n) grande (entre 0.9 y 0.7)• Duracion 500 a 1000 epocas

2. Transicion• ΛG(n) se reduce linealmente hasta 1• η(n) se reduce lineal o exponencialmente hasta 0.1• Duracion ≈1000 epocas

3. Ajuste fino (o convergencia)• ΛG(n) = 0 (solo se actualiza la ganadora)• η(n) = cte (entre 0.1 y 0.01)• Duracion: hasta convergencia (≈ 3000 epocas)

Page 29: Mapas auto-organizativosinfofich.unl.edu.ar/upload/455df52ffe97fb21947fc8c6672d82db3042bc77.pdf · Cuantizacion vectorial con aprendizaje´ Algoritmo LVQ1 LVQ1: velocidad de aprendizaje.

Introduccion Arquitectura de la red Entrenamiento LVQ

Etapas del entrenamiento

1. Ordenamiento global (o topologico)• ΛG(n) grande (≈ medio mapa)• η(n) grande (entre 0.9 y 0.7)• Duracion 500 a 1000 epocas

2. Transicion• ΛG(n) se reduce linealmente hasta 1• η(n) se reduce lineal o exponencialmente hasta 0.1• Duracion ≈1000 epocas

3. Ajuste fino (o convergencia)• ΛG(n) = 0 (solo se actualiza la ganadora)• η(n) = cte (entre 0.1 y 0.01)• Duracion: hasta convergencia (≈ 3000 epocas)

Page 30: Mapas auto-organizativosinfofich.unl.edu.ar/upload/455df52ffe97fb21947fc8c6672d82db3042bc77.pdf · Cuantizacion vectorial con aprendizaje´ Algoritmo LVQ1 LVQ1: velocidad de aprendizaje.

Introduccion Arquitectura de la red Entrenamiento LVQ

Formacion de mapas topologicos

• Ejemplo 1: R1 → R1, 2 neuronas

• Ejemplo 2: R2 → R1, 4 neuronas• Ejemplo 3: R2 → R2, 4 neuronas• Ejemplo 4: RN → R2, M neuronas• Ejemplo 5: el “phonetic typewriter” (Kohonen)• Ejemplo 6: el experimento de los paıses (Kohonen)• Ejemplo 7: ejemplos demo Matlab

Page 31: Mapas auto-organizativosinfofich.unl.edu.ar/upload/455df52ffe97fb21947fc8c6672d82db3042bc77.pdf · Cuantizacion vectorial con aprendizaje´ Algoritmo LVQ1 LVQ1: velocidad de aprendizaje.

Introduccion Arquitectura de la red Entrenamiento LVQ

Formacion de mapas topologicos

• Ejemplo 1: R1 → R1, 2 neuronas• Ejemplo 2: R2 → R1, 4 neuronas

• Ejemplo 3: R2 → R2, 4 neuronas• Ejemplo 4: RN → R2, M neuronas• Ejemplo 5: el “phonetic typewriter” (Kohonen)• Ejemplo 6: el experimento de los paıses (Kohonen)• Ejemplo 7: ejemplos demo Matlab

Page 32: Mapas auto-organizativosinfofich.unl.edu.ar/upload/455df52ffe97fb21947fc8c6672d82db3042bc77.pdf · Cuantizacion vectorial con aprendizaje´ Algoritmo LVQ1 LVQ1: velocidad de aprendizaje.

Introduccion Arquitectura de la red Entrenamiento LVQ

Formacion de mapas topologicos

• Ejemplo 1: R1 → R1, 2 neuronas• Ejemplo 2: R2 → R1, 4 neuronas• Ejemplo 3: R2 → R2, 4 neuronas

• Ejemplo 4: RN → R2, M neuronas• Ejemplo 5: el “phonetic typewriter” (Kohonen)• Ejemplo 6: el experimento de los paıses (Kohonen)• Ejemplo 7: ejemplos demo Matlab

Page 33: Mapas auto-organizativosinfofich.unl.edu.ar/upload/455df52ffe97fb21947fc8c6672d82db3042bc77.pdf · Cuantizacion vectorial con aprendizaje´ Algoritmo LVQ1 LVQ1: velocidad de aprendizaje.

Introduccion Arquitectura de la red Entrenamiento LVQ

Formacion de mapas topologicos

• Ejemplo 1: R1 → R1, 2 neuronas• Ejemplo 2: R2 → R1, 4 neuronas• Ejemplo 3: R2 → R2, 4 neuronas• Ejemplo 4: RN → R2, M neuronas

• Ejemplo 5: el “phonetic typewriter” (Kohonen)• Ejemplo 6: el experimento de los paıses (Kohonen)• Ejemplo 7: ejemplos demo Matlab

Page 34: Mapas auto-organizativosinfofich.unl.edu.ar/upload/455df52ffe97fb21947fc8c6672d82db3042bc77.pdf · Cuantizacion vectorial con aprendizaje´ Algoritmo LVQ1 LVQ1: velocidad de aprendizaje.

Introduccion Arquitectura de la red Entrenamiento LVQ

Formacion de mapas topologicos

• Ejemplo 1: R1 → R1, 2 neuronas• Ejemplo 2: R2 → R1, 4 neuronas• Ejemplo 3: R2 → R2, 4 neuronas• Ejemplo 4: RN → R2, M neuronas• Ejemplo 5: el “phonetic typewriter” (Kohonen)

• Ejemplo 6: el experimento de los paıses (Kohonen)• Ejemplo 7: ejemplos demo Matlab

Page 35: Mapas auto-organizativosinfofich.unl.edu.ar/upload/455df52ffe97fb21947fc8c6672d82db3042bc77.pdf · Cuantizacion vectorial con aprendizaje´ Algoritmo LVQ1 LVQ1: velocidad de aprendizaje.

Introduccion Arquitectura de la red Entrenamiento LVQ

Formacion de mapas topologicos

• Ejemplo 1: R1 → R1, 2 neuronas• Ejemplo 2: R2 → R1, 4 neuronas• Ejemplo 3: R2 → R2, 4 neuronas• Ejemplo 4: RN → R2, M neuronas• Ejemplo 5: el “phonetic typewriter” (Kohonen)• Ejemplo 6: el experimento de los paıses (Kohonen)

• Ejemplo 7: ejemplos demo Matlab

Page 36: Mapas auto-organizativosinfofich.unl.edu.ar/upload/455df52ffe97fb21947fc8c6672d82db3042bc77.pdf · Cuantizacion vectorial con aprendizaje´ Algoritmo LVQ1 LVQ1: velocidad de aprendizaje.

Introduccion Arquitectura de la red Entrenamiento LVQ

Formacion de mapas topologicos

• Ejemplo 1: R1 → R1, 2 neuronas• Ejemplo 2: R2 → R1, 4 neuronas• Ejemplo 3: R2 → R2, 4 neuronas• Ejemplo 4: RN → R2, M neuronas• Ejemplo 5: el “phonetic typewriter” (Kohonen)• Ejemplo 6: el experimento de los paıses (Kohonen)

• Ejemplo 7: ejemplos demo Matlab

Page 37: Mapas auto-organizativosinfofich.unl.edu.ar/upload/455df52ffe97fb21947fc8c6672d82db3042bc77.pdf · Cuantizacion vectorial con aprendizaje´ Algoritmo LVQ1 LVQ1: velocidad de aprendizaje.

Introduccion Arquitectura de la red Entrenamiento LVQ

Formacion de mapas topologicos

• Ejemplo 1: R1 → R1, 2 neuronas• Ejemplo 2: R2 → R1, 4 neuronas• Ejemplo 3: R2 → R2, 4 neuronas• Ejemplo 4: RN → R2, M neuronas• Ejemplo 5: el “phonetic typewriter” (Kohonen)• Ejemplo 6: el experimento de los paıses (Kohonen)• Ejemplo 7: ejemplos demo Matlab

Page 38: Mapas auto-organizativosinfofich.unl.edu.ar/upload/455df52ffe97fb21947fc8c6672d82db3042bc77.pdf · Cuantizacion vectorial con aprendizaje´ Algoritmo LVQ1 LVQ1: velocidad de aprendizaje.

Introduccion Arquitectura de la red Entrenamiento LVQ

Agrupamiento y clasificacion

¿Como utilizar un SOM para clasificar patrones?

• Entrenamiento no-supervisado• Etiquetado de neuronas• Clasificacion por mınima distancia

¿Cual es la diferencia principal entre el SOM y otros metodosde agrupamiento no-supervisado?

Page 39: Mapas auto-organizativosinfofich.unl.edu.ar/upload/455df52ffe97fb21947fc8c6672d82db3042bc77.pdf · Cuantizacion vectorial con aprendizaje´ Algoritmo LVQ1 LVQ1: velocidad de aprendizaje.

Introduccion Arquitectura de la red Entrenamiento LVQ

Agrupamiento y clasificacion

¿Como utilizar un SOM para clasificar patrones?• Entrenamiento no-supervisado

• Etiquetado de neuronas• Clasificacion por mınima distancia

¿Cual es la diferencia principal entre el SOM y otros metodosde agrupamiento no-supervisado?

Page 40: Mapas auto-organizativosinfofich.unl.edu.ar/upload/455df52ffe97fb21947fc8c6672d82db3042bc77.pdf · Cuantizacion vectorial con aprendizaje´ Algoritmo LVQ1 LVQ1: velocidad de aprendizaje.

Introduccion Arquitectura de la red Entrenamiento LVQ

Agrupamiento y clasificacion

¿Como utilizar un SOM para clasificar patrones?• Entrenamiento no-supervisado• Etiquetado de neuronas

• Clasificacion por mınima distancia

¿Cual es la diferencia principal entre el SOM y otros metodosde agrupamiento no-supervisado?

Page 41: Mapas auto-organizativosinfofich.unl.edu.ar/upload/455df52ffe97fb21947fc8c6672d82db3042bc77.pdf · Cuantizacion vectorial con aprendizaje´ Algoritmo LVQ1 LVQ1: velocidad de aprendizaje.

Introduccion Arquitectura de la red Entrenamiento LVQ

Agrupamiento y clasificacion

¿Como utilizar un SOM para clasificar patrones?• Entrenamiento no-supervisado• Etiquetado de neuronas• Clasificacion por mınima distancia

¿Cual es la diferencia principal entre el SOM y otros metodosde agrupamiento no-supervisado?

Page 42: Mapas auto-organizativosinfofich.unl.edu.ar/upload/455df52ffe97fb21947fc8c6672d82db3042bc77.pdf · Cuantizacion vectorial con aprendizaje´ Algoritmo LVQ1 LVQ1: velocidad de aprendizaje.

Introduccion Arquitectura de la red Entrenamiento LVQ

Agrupamiento y clasificacion

¿Como utilizar un SOM para clasificar patrones?• Entrenamiento no-supervisado• Etiquetado de neuronas• Clasificacion por mınima distancia

¿Cual es la diferencia principal entre el SOM y otros metodosde agrupamiento no-supervisado?

Page 43: Mapas auto-organizativosinfofich.unl.edu.ar/upload/455df52ffe97fb21947fc8c6672d82db3042bc77.pdf · Cuantizacion vectorial con aprendizaje´ Algoritmo LVQ1 LVQ1: velocidad de aprendizaje.

Introduccion Arquitectura de la red Entrenamiento LVQ

Demostraciones online...

• Caracteres: http://fbim.fh-regensburg.de/˜saj39122/begrolu/kohonen.html

• 1D: http://www.cis.hut.fi/research/javasomdemo/demo1.html

• 2D: http://www.cis.hut.fi/research/javasomdemo/demo2.html

• Otro 2D:http://www.neuroinformatik.ruhr-uni-bochum.de/VDM/research/gsn/DemoGNG/GNG.html

• 3D: http://www.sund.de/netze/applets/som/som1/index.htm

• Buscador WEB: http://www.gnod.net/

Page 44: Mapas auto-organizativosinfofich.unl.edu.ar/upload/455df52ffe97fb21947fc8c6672d82db3042bc77.pdf · Cuantizacion vectorial con aprendizaje´ Algoritmo LVQ1 LVQ1: velocidad de aprendizaje.

Introduccion Arquitectura de la red Entrenamiento LVQ

OrganizacionIntroduccion

Auto-organizacionInspiracion biologica

Arquitectura de la redSOM 2DEntornos y realimentacion lateral

Entrenamiento de un SOMCaracterısticas principalesAlgoritmo de entrenamientoConvergencia y consideraciones practicasFormacion de mapas topologicos

Cuantizacion vectorial con aprendizajeAlgoritmo LVQ1LVQ1: velocidad de aprendizaje

Page 45: Mapas auto-organizativosinfofich.unl.edu.ar/upload/455df52ffe97fb21947fc8c6672d82db3042bc77.pdf · Cuantizacion vectorial con aprendizaje´ Algoritmo LVQ1 LVQ1: velocidad de aprendizaje.

Introduccion Arquitectura de la red Entrenamiento LVQ

Cuantizacion vectorial con aprendizaje (LVQ)Conceptos basicos:• Cuantizador escalar: senales cuantizadas

• Cuantizador vectorial:• centroides o prototipos• diccionario o code-book• el proceso de cuantizacion: de vectores a numeros enteros

• Ideas de como entrenarlo:• algoritmo k-means etiquetado para clasificacion• SOM etiquetado como clasificador...• algoritmo supervizado LVQ

Page 46: Mapas auto-organizativosinfofich.unl.edu.ar/upload/455df52ffe97fb21947fc8c6672d82db3042bc77.pdf · Cuantizacion vectorial con aprendizaje´ Algoritmo LVQ1 LVQ1: velocidad de aprendizaje.

Introduccion Arquitectura de la red Entrenamiento LVQ

Cuantizacion vectorial con aprendizaje (LVQ)Conceptos basicos:• Cuantizador escalar: senales cuantizadas• Cuantizador vectorial:

• centroides o prototipos• diccionario o code-book• el proceso de cuantizacion: de vectores a numeros enteros

• Ideas de como entrenarlo:• algoritmo k-means etiquetado para clasificacion• SOM etiquetado como clasificador...• algoritmo supervizado LVQ

Page 47: Mapas auto-organizativosinfofich.unl.edu.ar/upload/455df52ffe97fb21947fc8c6672d82db3042bc77.pdf · Cuantizacion vectorial con aprendizaje´ Algoritmo LVQ1 LVQ1: velocidad de aprendizaje.

Introduccion Arquitectura de la red Entrenamiento LVQ

Cuantizacion vectorial con aprendizaje (LVQ)Conceptos basicos:• Cuantizador escalar: senales cuantizadas• Cuantizador vectorial:

• centroides o prototipos• diccionario o code-book• el proceso de cuantizacion: de vectores a numeros enteros

• Ideas de como entrenarlo:• algoritmo k-means etiquetado para clasificacion• SOM etiquetado como clasificador...• algoritmo supervizado LVQ

Page 48: Mapas auto-organizativosinfofich.unl.edu.ar/upload/455df52ffe97fb21947fc8c6672d82db3042bc77.pdf · Cuantizacion vectorial con aprendizaje´ Algoritmo LVQ1 LVQ1: velocidad de aprendizaje.

Introduccion Arquitectura de la red Entrenamiento LVQ

Algoritmo LVQ11. Inicializacion aleatoria

2. Seleccion:

c(n) = arg mıni{‖x(n)−mi(n)‖}

3. Adaptacion:

mc(n + 1) = mc(n) + s(c, d, n)α [x(n)−mc(n)]

s(c, d, n) ={

+1 si c(n) = d(n)−1 si c(n) 6= d(n)

4. Volver a 2 hasta satisfacer error de clasificacion

Page 49: Mapas auto-organizativosinfofich.unl.edu.ar/upload/455df52ffe97fb21947fc8c6672d82db3042bc77.pdf · Cuantizacion vectorial con aprendizaje´ Algoritmo LVQ1 LVQ1: velocidad de aprendizaje.

Introduccion Arquitectura de la red Entrenamiento LVQ

Algoritmo LVQ11. Inicializacion aleatoria2. Seleccion:

c(n) = arg mıni{‖x(n)−mi(n)‖}

3. Adaptacion:

mc(n + 1) = mc(n) + s(c, d, n)α [x(n)−mc(n)]

s(c, d, n) ={

+1 si c(n) = d(n)−1 si c(n) 6= d(n)

4. Volver a 2 hasta satisfacer error de clasificacion

Page 50: Mapas auto-organizativosinfofich.unl.edu.ar/upload/455df52ffe97fb21947fc8c6672d82db3042bc77.pdf · Cuantizacion vectorial con aprendizaje´ Algoritmo LVQ1 LVQ1: velocidad de aprendizaje.

Introduccion Arquitectura de la red Entrenamiento LVQ

Algoritmo LVQ11. Inicializacion aleatoria2. Seleccion:

c(n) = arg mıni{‖x(n)−mi(n)‖}

3. Adaptacion:

mc(n + 1) = mc(n) + s(c, d, n)α [x(n)−mc(n)]

s(c, d, n) ={

+1 si c(n) = d(n)−1 si c(n) 6= d(n)

4. Volver a 2 hasta satisfacer error de clasificacion

Page 51: Mapas auto-organizativosinfofich.unl.edu.ar/upload/455df52ffe97fb21947fc8c6672d82db3042bc77.pdf · Cuantizacion vectorial con aprendizaje´ Algoritmo LVQ1 LVQ1: velocidad de aprendizaje.

Introduccion Arquitectura de la red Entrenamiento LVQ

Algoritmo LVQ11. Inicializacion aleatoria2. Seleccion:

c(n) = arg mıni{‖x(n)−mi(n)‖}

3. Adaptacion:

mc(n + 1) = mc(n) + s(c, d, n)α [x(n)−mc(n)]

s(c, d, n) ={

+1 si c(n) = d(n)−1 si c(n) 6= d(n)

4. Volver a 2 hasta satisfacer error de clasificacion

Page 52: Mapas auto-organizativosinfofich.unl.edu.ar/upload/455df52ffe97fb21947fc8c6672d82db3042bc77.pdf · Cuantizacion vectorial con aprendizaje´ Algoritmo LVQ1 LVQ1: velocidad de aprendizaje.

Introduccion Arquitectura de la red Entrenamiento LVQ

LVQ1: observaciones• Interpretacion grafica

• Caso de clasificacion correcta• Caso de clasificacion incorrecta

• No hay arquitectura neuronal• Se puede ver al cuantizador como SOM lineal, sin entorno

y supervisado• Velocidad de aprendizaje

• ¿Existe un αc optimo para cada centroide?• ¿Se debe considerar un αc(n) optimo para cada instante de

tiempo?

Page 53: Mapas auto-organizativosinfofich.unl.edu.ar/upload/455df52ffe97fb21947fc8c6672d82db3042bc77.pdf · Cuantizacion vectorial con aprendizaje´ Algoritmo LVQ1 LVQ1: velocidad de aprendizaje.

Introduccion Arquitectura de la red Entrenamiento LVQ

LVQ1: observaciones• Interpretacion grafica

• Caso de clasificacion correcta• Caso de clasificacion incorrecta

• No hay arquitectura neuronal

• Se puede ver al cuantizador como SOM lineal, sin entornoy supervisado

• Velocidad de aprendizaje• ¿Existe un αc optimo para cada centroide?• ¿Se debe considerar un αc(n) optimo para cada instante de

tiempo?

Page 54: Mapas auto-organizativosinfofich.unl.edu.ar/upload/455df52ffe97fb21947fc8c6672d82db3042bc77.pdf · Cuantizacion vectorial con aprendizaje´ Algoritmo LVQ1 LVQ1: velocidad de aprendizaje.

Introduccion Arquitectura de la red Entrenamiento LVQ

LVQ1: observaciones• Interpretacion grafica

• Caso de clasificacion correcta• Caso de clasificacion incorrecta

• No hay arquitectura neuronal• Se puede ver al cuantizador como SOM lineal, sin entorno

y supervisado

• Velocidad de aprendizaje• ¿Existe un αc optimo para cada centroide?• ¿Se debe considerar un αc(n) optimo para cada instante de

tiempo?

Page 55: Mapas auto-organizativosinfofich.unl.edu.ar/upload/455df52ffe97fb21947fc8c6672d82db3042bc77.pdf · Cuantizacion vectorial con aprendizaje´ Algoritmo LVQ1 LVQ1: velocidad de aprendizaje.

Introduccion Arquitectura de la red Entrenamiento LVQ

LVQ1: observaciones• Interpretacion grafica

• Caso de clasificacion correcta• Caso de clasificacion incorrecta

• No hay arquitectura neuronal• Se puede ver al cuantizador como SOM lineal, sin entorno

y supervisado• Velocidad de aprendizaje

• ¿Existe un αc optimo para cada centroide?• ¿Se debe considerar un αc(n) optimo para cada instante de

tiempo?

Page 56: Mapas auto-organizativosinfofich.unl.edu.ar/upload/455df52ffe97fb21947fc8c6672d82db3042bc77.pdf · Cuantizacion vectorial con aprendizaje´ Algoritmo LVQ1 LVQ1: velocidad de aprendizaje.

Introduccion Arquitectura de la red Entrenamiento LVQ

LVQ1: velocidad de aprendizajemc(n + 1) = mc(n) + s(n)α(n) [x(n)−mc(n)]

mc(n + 1) = mc(n) + s(n)α(n)x(n)− s(n)α(n)mc(n)

mc(n + 1) = [1− s(n)α(n)] mc(n) + s(n)α(n)x(n)

mc(n + 1) =

= [1− s(n)α(n)]{mc(n− 1) + s(n− 1)α(n− 1) [x(n− 1)−mc(n− 1)]}+s(n)α(n)x(n)

x(n− 1) es afectado dos veces por α

Page 57: Mapas auto-organizativosinfofich.unl.edu.ar/upload/455df52ffe97fb21947fc8c6672d82db3042bc77.pdf · Cuantizacion vectorial con aprendizaje´ Algoritmo LVQ1 LVQ1: velocidad de aprendizaje.

Introduccion Arquitectura de la red Entrenamiento LVQ

LVQ1: velocidad de aprendizajemc(n + 1) = mc(n) + s(n)α(n) [x(n)−mc(n)]

mc(n + 1) = mc(n) + s(n)α(n)x(n)− s(n)α(n)mc(n)

mc(n + 1) = [1− s(n)α(n)] mc(n) + s(n)α(n)x(n)

mc(n + 1) =

= [1− s(n)α(n)]{mc(n− 1) + s(n− 1)α(n− 1) [x(n− 1)−mc(n− 1)]}+s(n)α(n)x(n)

x(n− 1) es afectado dos veces por α

Page 58: Mapas auto-organizativosinfofich.unl.edu.ar/upload/455df52ffe97fb21947fc8c6672d82db3042bc77.pdf · Cuantizacion vectorial con aprendizaje´ Algoritmo LVQ1 LVQ1: velocidad de aprendizaje.

Introduccion Arquitectura de la red Entrenamiento LVQ

LVQ1: velocidad de aprendizajemc(n + 1) = mc(n) + s(n)α(n) [x(n)−mc(n)]

mc(n + 1) = mc(n) + s(n)α(n)x(n)− s(n)α(n)mc(n)

mc(n + 1) = [1− s(n)α(n)] mc(n) + s(n)α(n)x(n)

mc(n + 1) =

= [1− s(n)α(n)]{mc(n− 1) + s(n− 1)α(n− 1) [x(n− 1)−mc(n− 1)]}+s(n)α(n)x(n)

x(n− 1) es afectado dos veces por α

Page 59: Mapas auto-organizativosinfofich.unl.edu.ar/upload/455df52ffe97fb21947fc8c6672d82db3042bc77.pdf · Cuantizacion vectorial con aprendizaje´ Algoritmo LVQ1 LVQ1: velocidad de aprendizaje.

Introduccion Arquitectura de la red Entrenamiento LVQ

LVQ1: velocidad de aprendizajemc(n + 1) = mc(n) + s(n)α(n) [x(n)−mc(n)]

mc(n + 1) = mc(n) + s(n)α(n)x(n)− s(n)α(n)mc(n)

mc(n + 1) = [1− s(n)α(n)] mc(n) + s(n)α(n)x(n)

mc(n + 1) =

= [1− s(n)α(n)]{mc(n− 1) + s(n− 1)α(n− 1) [x(n− 1)−mc(n− 1)]}+s(n)α(n)x(n)

x(n− 1) es afectado dos veces por α

Page 60: Mapas auto-organizativosinfofich.unl.edu.ar/upload/455df52ffe97fb21947fc8c6672d82db3042bc77.pdf · Cuantizacion vectorial con aprendizaje´ Algoritmo LVQ1 LVQ1: velocidad de aprendizaje.

Introduccion Arquitectura de la red Entrenamiento LVQ

LVQ1: velocidad de aprendizaje

Siendo α < 1 la importancia relativa de los primeros patronesde entrenamiento siempre sera menor que la de los ultimos.

Si queremos que α afecte por igual a todos los patronesdeberemos hacerlo decrecer con el tiempo.

Se debe cumplir que:

αc(n) = [1− s(n)αc(n)]αc(n− 1)

Page 61: Mapas auto-organizativosinfofich.unl.edu.ar/upload/455df52ffe97fb21947fc8c6672d82db3042bc77.pdf · Cuantizacion vectorial con aprendizaje´ Algoritmo LVQ1 LVQ1: velocidad de aprendizaje.

Introduccion Arquitectura de la red Entrenamiento LVQ

LVQ1: velocidad de aprendizaje

Siendo α < 1 la importancia relativa de los primeros patronesde entrenamiento siempre sera menor que la de los ultimos.

Si queremos que α afecte por igual a todos los patronesdeberemos hacerlo decrecer con el tiempo.

Se debe cumplir que:

αc(n) = [1− s(n)αc(n)]αc(n− 1)

Page 62: Mapas auto-organizativosinfofich.unl.edu.ar/upload/455df52ffe97fb21947fc8c6672d82db3042bc77.pdf · Cuantizacion vectorial con aprendizaje´ Algoritmo LVQ1 LVQ1: velocidad de aprendizaje.

Introduccion Arquitectura de la red Entrenamiento LVQ

LVQ1: velocidad de aprendizaje

Siendo α < 1 la importancia relativa de los primeros patronesde entrenamiento siempre sera menor que la de los ultimos.

Si queremos que α afecte por igual a todos los patronesdeberemos hacerlo decrecer con el tiempo.

Se debe cumplir que:

αc(n) = [1− s(n)αc(n)]αc(n− 1)

Page 63: Mapas auto-organizativosinfofich.unl.edu.ar/upload/455df52ffe97fb21947fc8c6672d82db3042bc77.pdf · Cuantizacion vectorial con aprendizaje´ Algoritmo LVQ1 LVQ1: velocidad de aprendizaje.

Introduccion Arquitectura de la red Entrenamiento LVQ

LVQ1-O: velocidad de aprendizaje

Demostrar que:

αc(n) =αc(n− 1)

1 + s(n)αc(n− 1)

(no sobrepasar α > 1)