redes neuronales artificiales autoorganizadas. autoorganización autoorganización es el proceso en...

21
Redes Neuronales Artificiales Autoorganizadas

Upload: catalina-armenteros

Post on 22-Jan-2016

218 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Redes Neuronales Artificiales Autoorganizadas. Autoorganización Autoorganización es el proceso en el cual, por medio de interacciones locales, se obtiene

Redes Neuronales Artificiales Autoorganizadas

Page 2: Redes Neuronales Artificiales Autoorganizadas. Autoorganización Autoorganización es el proceso en el cual, por medio de interacciones locales, se obtiene

AutoorganizaciónAutoorganización es el proceso en el cual, por medio de interacciones locales, se obtiene ordenamiento global.

El aprendizaje no supervisado puede ser aplicado solo si hay redundancia presente en el input.

Redundancia: diferencia entre la máxima cantidad de información que puede ser enviada por el canal de en-trada y el contenido de información actual del canal.

Page 3: Redes Neuronales Artificiales Autoorganizadas. Autoorganización Autoorganización es el proceso en el cual, por medio de interacciones locales, se obtiene

CapacidadesLas redes neuronales artificiales con aprendizaje no supervisado pueden realizar lo siguiente:•Análisis de similaridad. Una neurona puede decirnos exactamente cuan similar es un nuevo patrón de entrada con respecto a un patrón típico que ha sido visto antes.• Análisis de componente principal. Extendiendo lo anterior a varias neuronas, se puede desarrollar un conjunto de ejes coordenados, por medio del cual se aplica este análisis. Cuando se proyectan los patrones de entrada sobre estos ejes, la discrepancia entre el conjunto inicial y el proyectado será tan pequeña como sea posible.

Page 4: Redes Neuronales Artificiales Autoorganizadas. Autoorganización Autoorganización es el proceso en el cual, por medio de interacciones locales, se obtiene

Capacidades (continuación)•Agrupación (clustering). Un conjunto de neuronas con sali-das binarias, de las cuales solo una está activa en cada ins-tante, nos puede decir a qué categoria pertenece la entrada actual.• Prototipado. La salida de la red es un ejemplo prototípico de la correspondiente categoría.• Codificación. La salida de la red puede representar versio-nes codificadas del patrón de entrada usando un menor nú-mero de símbolos (p.ej. bits) tratando de retener el mayor detalle posible de la entrada. • Mapas topográficos. Si las neuronas tienen un ordenamien-to geométrico fijo (p.ej. rejilla bidimensional) y si hay solo una neurona activa en cada instante, diferentes patrones de entrada pueden activar diferentes neuronas y patrones de en-trada similares pueden activar neuronas vecinas.

Page 5: Redes Neuronales Artificiales Autoorganizadas. Autoorganización Autoorganización es el proceso en el cual, por medio de interacciones locales, se obtiene

Aprendizaje Hebbiano no supervisado

Por simplicidad consideremos una neurona. Asumamos que se tiene un conjunto de vectores de entrada {I} obtenido de una distribución de entrada P(I). En cada instante un vector I se obtiene de la distribución P(I) y se presenta a la red. Después de un tiempo la red nos podrá decir en qué grado cierto patrón de entrada forma parte de la distribución de entrada.

wi .IiwT . I

es la medida escalar de similaridad: mayores valores de indican mayor probabilidad de que la entrada actual I perte-nezca a P(I).

Page 6: Redes Neuronales Artificiales Autoorganizadas. Autoorganización Autoorganización es el proceso en el cual, por medio de interacciones locales, se obtiene

Regla de aprendizaje de Oja

Introduce un término de decaimiento de peso: Wj . Esto da como resultado que cada Wj converja a un valor final.

Wj = (Ii - Wj)

El vector de pesos W =[Wj] converge a un vector de longitud unidad cuya dirección corresponde al maximo vector principal (eigenvector) de la matriz de correla-ción.

Page 7: Redes Neuronales Artificiales Autoorganizadas. Autoorganización Autoorganización es el proceso en el cual, por medio de interacciones locales, se obtiene

Análisis de componente principal (ACP)El objetivo es encontrar M vectores ortogonales de longi-tud unidad que modelicen la mayor parte posible de la variabilidad de los datos. Típicamente M N de modo tal que este análisis implementa reducción de dimensio-nalidad que preserva la mayor información de en-trada posible. Usando la regla de Oja, podemos en-contrar el primer compo-nente principal sin necesi-dad de usar la matriz de correlación.

Page 8: Redes Neuronales Artificiales Autoorganizadas. Autoorganización Autoorganización es el proceso en el cual, por medio de interacciones locales, se obtiene

Análisis de componente principal (contin.)

Para encontrar el segundo, tercer,...componente principal:Regla de aprendizaje de Sanger:

i

Wij = i (Ij - k Wkj) k=1

Regla de aprendizaje de Oja: M

Wij = i (Ij - k Wkj) k=1

Ambas reglas de aprendizaje convergen a vectores unitarios ortogonales. En la regla de Sanger los vectores peso corres-ponden a los M más importantes componentes principales.

Page 9: Redes Neuronales Artificiales Autoorganizadas. Autoorganización Autoorganización es el proceso en el cual, por medio de interacciones locales, se obtiene

Análisis de componente principal (cont.)Importancia práctica de las reglas Hebbianas

• Permiten calcular ACP sin resolver la matriz de correla-ción.• Permiten que la red adapte sus vectores peso a una distribución de entrada que pueda ser cambiante. Esto es importante y necesario cuando la entrada proviene de sensores, cuyas características varían con el tiempo.

Importancia de ACP en las redes neuronales: • Compresión de datos.• Reducción de la dimensionalidad.

Page 10: Redes Neuronales Artificiales Autoorganizadas. Autoorganización Autoorganización es el proceso en el cual, por medio de interacciones locales, se obtiene

Análisis de componente principal (cont.)Compresión de datos

La varianza de la salida de cada neurona es una medida de la contribución de la neurona a la calidad de los datos compri-midos en comparación con los originales.

Reducción de dimensionalidad

Permite descubrir agrupamientos de datos más fácilmente. Si la dimensionalidad es muy alta se hace más dificultoso entrenar una red: cuanto más grande la dimensionalidad del espacio de entrada mayor es el número de ejemplos de entrenamiento necesarios (p.ej.al entrenar multicapas de perceptrones).

Page 11: Redes Neuronales Artificiales Autoorganizadas. Autoorganización Autoorganización es el proceso en el cual, por medio de interacciones locales, se obtiene

Aprendizaje competitivo no supervisadoRegla de aprendizaje para redes neuronales que tiene por objetivo formar categorías (temporalmente). Solo una neurona de salida está activa en cualquier momento: las neuronas de salida tienen interacciones inhibitorias.

Conex.excitatoria

Conex.inhibitoria

Page 12: Redes Neuronales Artificiales Autoorganizadas. Autoorganización Autoorganización es el proceso en el cual, por medio de interacciones locales, se obtiene

Forma simple de aprendizaje competitivo y agrupamientoEn general la función i/o es del tipo hard limiter, debido a esto la neurona ganadora será “1” y las salidas de las otras neuronas serán todas “0”

Conex.excitatoria

Conex.inhibitoria

Page 13: Redes Neuronales Artificiales Autoorganizadas. Autoorganización Autoorganización es el proceso en el cual, por medio de interacciones locales, se obtiene

Forma simple de aprendizaje competitivo (cont.)

La neurona ganadora i* es la neurona de salida con el mayor

input neto hi = j Wij Ij para el vector actual de entrada IEn consecuencia:

Wi* . I Wi .I, iSi los vectores peso son normalizados, la definición de gana-dora es equivalente a:

Wi* - I Wi - I , i

y la regla de aprendizaje es: Wij = i (Ij

- Wij)

Page 14: Redes Neuronales Artificiales Autoorganizadas. Autoorganización Autoorganización es el proceso en el cual, por medio de interacciones locales, se obtiene

Forma simple de aprendizaje competitivo (cont.)

Ejemplo de clustering en 3D con vectores normalizados, por lo que estan sobre la esfera unidad. Los tres vectores peso son rotados hacia los centros de gravedad de los tres clusters de entrada.

Page 15: Redes Neuronales Artificiales Autoorganizadas. Autoorganización Autoorganización es el proceso en el cual, por medio de interacciones locales, se obtiene

AplicacionesCuantización de vectores. Usada para obtener una compre-sión de datos. En general es usada para el almacenamiento y la transmisión de información tal como imágenes y habla. Se particiona un conjunto de vectores de entrada {I} o una dis-tribución P(I) de vectores de entrada en M categorías para representar cada vector de en-trada con un índice (número). Luego con el índice de cate-goría podemos reconstruír el vector de entrada original. Los vectores peso representan los vectores prototipo.

Page 16: Redes Neuronales Artificiales Autoorganizadas. Autoorganización Autoorganización es el proceso en el cual, por medio de interacciones locales, se obtiene

Formación de mapa topográfico (Kohonen)

Si podemos ordenar los vectores peso en el espacio de entrada de manera tal que neuronas activas vecinas (en el espacio de salida), se correspondan con vectores de entrada vecinos ( en el espacio de entrada), decimos que la red forma un mapa topográfico del espacio de entrada.

Algoritmo de Kohonen

Regla de aprendizaje: Wij = (i,i*) (Ij

- Wij)Donde (i,i*) es la función vecindario

Page 17: Redes Neuronales Artificiales Autoorganizadas. Autoorganización Autoorganización es el proceso en el cual, por medio de interacciones locales, se obtiene

Formación de mapa topográfico (cont.)

Sombrero mexicano. Interacción lateral alrededor de la neurona ganadora como función de la distancia: excitación de las neuronas más cercanas, inhibición de las lejanas.

Page 18: Redes Neuronales Artificiales Autoorganizadas. Autoorganización Autoorganización es el proceso en el cual, por medio de interacciones locales, se obtiene

Formación de mapa topográfico (cont.)

Convergencia de un mapa conservador de la topología:Evolución de una grilla bidimensional de 8x8 neuronas entrenada con una distribución de entrada uniforme y cuadrada.

Page 19: Redes Neuronales Artificiales Autoorganizadas. Autoorganización Autoorganización es el proceso en el cual, por medio de interacciones locales, se obtiene

Aplicaciones

• Regresión. Puede realizarse si el número de entradas al problema de regresión es igual a la dimensionalidad de la grilla. El algoritmo de Kohonen permite colocar la grilla de neuronas en el espacio de entrada de manera tal que el error (cuadrático) entre los vectores peso y los puntos de la distribución de entrada es mínimo.• Agrupamiento (clustering). Ej. a partir de 16 animales diferentes con una red de 10x10 neuronas. La idea central es que durante el entrenamiento la parte de los atributos domine sobre la del nombre del animal.• Análisis de agrupamiento con información incompleta. Ej. de la riqueza y nivel de vida en distintos países.

Page 20: Redes Neuronales Artificiales Autoorganizadas. Autoorganización Autoorganización es el proceso en el cual, por medio de interacciones locales, se obtiene

Aplicaciones

Page 21: Redes Neuronales Artificiales Autoorganizadas. Autoorganización Autoorganización es el proceso en el cual, por medio de interacciones locales, se obtiene

Algunos consejos• Inicialización.

• Forma de la grilla de neuronas.

• Apredizaje con un número pequeño de ejemplos.

• Incremento de importancia de casos raros.

• Escalado de componentes del vector.

• Forzado de la representación en ciertas posiciones en el mapa.

• Seguimiento de la calidad del aprendizaje.