redes art

30
Redes ART

Upload: ila-reed

Post on 30-Dec-2015

37 views

Category:

Documents


1 download

DESCRIPTION

Redes ART. Redes ART (Adaptative Resonance Theory). Diseñadas por Carpenter y Grossberg (1986). Es una teoría no un algoritmo. Existen diferentes implementaciones. Modeliza: La abstracción El aprendizaje sin olvido de lo aprendido anteriormente - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: Redes ART

Redes ART

Page 2: Redes ART

Redes ART (Adaptative Resonance Theory)

• Diseñadas por Carpenter y Grossberg (1986).

• Es una teoría no un algoritmo.

• Existen diferentes implementaciones.

• Modeliza:

• La abstracción

• El aprendizaje sin olvido de lo aprendido anteriormente

• El aprendizaje continuo, no separa aprendizaje de producción

Page 3: Redes ART

Redes ART (Adaptative Resonance Theory)

• Es competitiva (por inhibición lateral).

• Es recursiva.

• Utiliza aprendizaje no supervisado.

• Existen diferentes paradigmas:

- ART1. Binaria.

- ART2. Continua.

- ART3. Jerárquica.

• Es un clasificador de vectores tan eficaz como Kohonen.

Page 4: Redes ART

Gail Carpenter y Stephen Grossberg

Page 5: Redes ART

Arquitectura

z

y

G1

G2

GAIN 2RECOGNITION

LAYER

RESET

COMPARISONLAYER

GAIN 1

x

R

vectorialescalar

Page 6: Redes ART

Arquitectura

• GAIN1, GAIN2 y RESET son bloques de control. Sus salidas son escalares.

• RECOGNITION LAYER y COMPARISON LAYER son bloques de neuronas. Sus salidas son vectores.

• es el patrón de vigilancia, determina cuando dos vectores son suficientemente similares para que pertenezcan al mismo cluster.

Page 7: Redes ART

Funcionamiento Básico

• Para cada vector de entrada se dispara una única neurona del nivel de reconocimiento, la neurona correspondiente al patrón almacenado que más se parezca a la entrada “la ganadora se lo lleva todo”

• Si se dispara más de una neurona, se escoge la primera.

• Las salidas de la capa de reconocimiento serán todas 0 excepto la de la neurona ganadora sólo llega SU vector de pesos a la capa de comparación.

Page 8: Redes ART

Funcionamiento Básico

• La capa de comparación mira si el vector de la entrada y el que llega de la capa de reconocimiento son suficientemente similares (de acuerdo con el coeficiente de vigilancia establecido). Si es así, el vector se clasifica en ese cluster y se adaptan los pesos

• En caso contrario se inhibe la neurona y se busca una nueva candidata.

• Se repite el proceso hasta que se encuentre una clase que permita clasificar el vector de acuerdo con la precisión deseada.

• Si la clasificación no es posible en ninguna de las neuronas ya existentes , se crea un nuevo cluster.

Page 9: Redes ART

Capa de reconocimiento

1

1y

211w

2y my

221w

21mw

2

1y

212w

2y my

222w

22mw

n

1y

21nw

2y my

22nw

2mnw

1z

. . .

2znz

z

)( 21w

)( 2

2w

)( 2nw

Page 10: Redes ART

Capa de comparación

1y 2y my

1 2 m

jNeurona que se dispara de la capa de reconocimiento

1x 2x mx

jz

. . .

1G

11jw

12jw

1jmw )( 1

jw

Page 11: Redes ART

Algoritmo• Paso 0: Inicialización. )2(1 L )9,0(10 m = componentes del vector de entrada

mLwij

1

1)0(0 2

(pesos del nivel de reconocimiento)

1)0(1 ijw (pesos del nivel de comparación)

• Paso 1: Mientras parada = FALSO hacer:

xyz

0• Paso 3:

• Paso 2: Para cada :x

• Paso 4: Calcular:

(en binario es el número de 1’s)

m

iixx

1

Page 12: Redes ART

Algoritmo• Paso 5: Para cada nodo j del nivel de reconocimiento, tal que

(no esté inhibido)

yywnetzm

iiijjj

.

1

2

1jz

• Paso 6: Mientras RESET = CIERTO:

• Paso 7: Encontrar J tal que

1| jjJ zjzz

• Paso 8: Calcular la nueva iy1 · JiJii wzxy

• Paso 9: Calcular y

Page 13: Redes ART

Algoritmo

• Paso 10:

- Si y volver al paso 61/ Jzxy

(Se inhibe la neurona J y se prueba con otra)

- Si ir al paso 11xy

/

• Paso 11: Actualizamos los pesos de J.

iJii

iJ ywyL

yLw

12

1

• Paso 12: Test de condición de parada

Page 14: Redes ART

Ejemplo: Clasificación de letras

(1)

(2)

(3)

(4)

(5)

Page 15: Redes ART

Ejemplo:

26.04 Lm

1)0(1

1)0( 12

ijij w

mw

)}0011(),1000(),0001(),1100{(}{ x

• Paso 0: Inicialización

6.02 L

1)0(2.0)0( 12 ijij ww

Page 16: Redes ART

Ejemplo:• Paso 1: Mientras parada = FALSO hacer:

• Paso 2: Para cada :x

• Paso 3: )1100(y 0 xz

• Paso 4: Calcular: 21

m

iixx

m

iiijjj ywnetz

1

2

• Paso 5: Para cada nodo j del nivel de reconocimiento, tal que

(no esté inhibido)

• Como es la primera cogemos una neurona nueva

1jz

4.0)0(2.0)0(2.0)1(2.0)1(2.01 z

Page 17: Redes ART

Ejemplo:

• Paso 6: Mientras RESET = CIERTO:

• Paso 7: Encontrar J tal que 1| jjJ zjzz

J = 1

• Paso 9: Calcular 2y

• Paso 8: Calcular la nueva iy1 · JiJii wzxy

)1100()1111(,1),1100( 111 ywzx i

6.01/ xy

• Paso 10:

RESET es falso, ir al paso 11

Page 18: Redes ART

Ejemplo:

• Paso 11: Actualizamos los pesos de J (columna de W 2 y fila de W 1).

iJi

iiJ

yw

yL

yLw

1

2

1

0011 ;

0

0

67.0

67.0

12

WW

Page 19: Redes ART

Ejemplo:

• Paso 3:

• Paso 4: Calcular:

• Paso 5: Para cada nodo j del nivel de reconocimiento, tal que (no este inhibido)

• Probamos primero con la única neurona no nueva

)0001(0 xyz

11

m

iixx

m

iiijjj ywnetz

1

2

1jz

0)1(0)0(0)0(67.0)0(67.01 z

- Segundo vector de entrenamiento.

Page 20: Redes ART

Ejemplo:• Paso 6: Mientras RESET = CIERTO:

• Paso 7: Encontrar J tal que

J = 1 Que es la neurona NO NUEVA

•Paso 8: Calcular la nueva yi

• Paso 9: Calcular

•Paso 10:

RESET es cierto, inhibir

1| jjJ zjzz

1JiJii wzxy

0y

6.00/ xy

)0000()1100(,1),0001( 111 ywzx i

1z )1( 1 z

Page 21: Redes ART

Ejemplo:• Paso 6: Mientras RESET = CIERTO:

• Paso 7: Encontrar J tal que

Creamos una neurona nueva J = 2

Paso 8: Calcular la nueva yi

• Paso 9: Calcular

• Paso 10:

RESET es falso, ir al

paso 11.

1| jjJ zjzz

1JiJii wzxy

1y

6.01/ xy

)0001()1111(,1),0001( 122 ywzx i

2.0)1(2.0)0(2.0)0(2.0)0(2.02 z

Page 22: Redes ART

Ejemplo:

• Paso 11: Actualizamos los pesos de J (segunda columna de W 2 y segunda fila de W 1).

iJi

iiJ

yw

yL

yLw

1

2

1

1000

0011 ;

10

00

067.0

067.0

12 WW

Page 23: Redes ART

Ejemplo:

• Paso 3:

• Paso 4: Calcular:

• Paso 5: Para cada nodo j del nivel de reconocimiento, tal que (no este inhibido)

)1000(0 xyz

11

m

iixx

m

iiijjj ywnetz

1

2

1jz

0)0(1)0(0)0(0)1(0

67.0)0(0)0(0)0(67.0)1(67.0

2

1

z

z

- Tercer vector de entrenamiento.

Page 24: Redes ART

Ejemplo:

• Paso 6: Mientras RESET = CIERTO:

• Paso 7: Encontrar J tal que

J = 1 (es la que da la salida mayor)

• Paso 8: Calcular la nueva yi

• Paso 9: Calcular

• Paso 10:

RESET es falso, ir al

paso 11.

1| jjJ zjzz

1JiJii wzxy

1y

6.01/ xy

)1000()1100(,1),1000( 111 ywzx i

Page 25: Redes ART

Ejemplo:• Paso 11: Actualizamos los pesos de J (primera columna de W 2 y primera fila de W 1).

iJi

iiJ

yw

yL

yLw

1

2

1

1000

0001 ;

10

00

00

01

12 WW

Page 26: Redes ART

Ejemplo:

• Paso 3:

• Paso 4: Calcular:

• Paso 5: Para cada nodo j del nivel de reconocimiento, tal que (no este inhibido)

)0011(0 xyz

21

m

iixx

m

iiijjj ywnetz

1

2

1jz

1)1(1)1(0)0(0)0(0

0)1(0)1(0)0(0)0(1

2

1

z

z

- Cuarto vector de entrenamiento.

Page 27: Redes ART

Ejemplo:

• Paso 6: Mientras RESET = CIERTO:

• Paso 7: Encontrar J tal que

J = 2 (es la que da la salida mayor)

• Paso 8: Calcular la nueva yi

• Paso 9: Calcular

• Paso 10:

RESET es cierto, inhibir j = 2

1| jjJ zjzz

1JiJii wzxy

1y

6.05.0/ xy

)0001()0001(,1),0011( 122 ywzx i

Page 28: Redes ART

Ejemplo:

• Paso 6: Mientras RESET = CIERTO:

• Paso 7: Encontrar J tal que

J = 1 (es la que queda)

• Paso 8: Calcular la nueva yi

• Paso 9: Calcular

• Paso 10:

RESET es cierto, inhibir j = 2

1| jjJ zjzz

1JiJii wzxy

0y

6.00/ xy

)0000()1000(,1),0011( 111 ywzx i

Page 29: Redes ART

Ejemplo:

• Paso 6: Mientras RESET = CIERTO:

• Paso 7: Encontrar J tal que

La nueva J es una neurona nueva

• Paso 8: Calcular la nueva yi

• Paso 9: Calcular

• Paso 10:

RESET es falso ir a 11

1| jjJ zjzz

1JiJii wzxy

2y

6.01/ xy

)0011()1111(,3),0011( 13 ywzx iJ

Page 30: Redes ART

Ejemplo:•Paso 11: Actualizamos los pesos

iJi

iiJ

yw

yL

yLw

1

2

1

1100

1000

0001

67.010

67.000

000

001

12 WW