Técnica de aprendizaje automático útil para la reducción de dimensionalidad
Un mapa autoorganizado ( SOM ) o mapa de características autoorganizado ( SOFM ) es una técnica de aprendizaje automático no supervisado que se utiliza para producir una representación de baja dimensión (normalmente bidimensional) de un conjunto de datos de mayor dimensión, conservando al mismo tiempo la estructura topológica de los datos. Por ejemplo, un conjunto de datos con variables medidas en observaciones podría representarse como grupos de observaciones con valores similares para las variables. Estos grupos podrían visualizarse luego como un "mapa" bidimensional de modo que las observaciones en los grupos proximales tengan valores más similares que las observaciones en los grupos distales. Esto puede hacer que los datos de alta dimensión sean más fáciles de visualizar y analizar.
Un SOM es un tipo de red neuronal artificial pero se entrena utilizando aprendizaje competitivo en lugar del aprendizaje de corrección de errores (por ejemplo, retropropagación con descenso de gradiente ) utilizado por otras redes neuronales artificiales. El SOM fue introducido por el profesor finlandés Teuvo Kohonen en la década de 1980 y, por lo tanto, a veces se lo llama mapa de Kohonen o red de Kohonen . [1] [2] El mapa o red de Kohonen es una abstracción computacionalmente conveniente que se basa en modelos biológicos de sistemas neuronales de la década de 1970 [3] y modelos de morfogénesis que datan de Alan Turing en la década de 1950. [4]
Los SOM crean representaciones internas que recuerdan al homúnculo cortical [ cita requerida ] , una representación distorsionada del cuerpo humano , basada en un "mapa" neurológico de las áreas y proporciones del cerebro humano dedicado al procesamiento de funciones sensoriales , para diferentes partes del cuerpo.
Descripción general
Los mapas autoorganizados, como la mayoría de las redes neuronales artificiales, funcionan en dos modos: entrenamiento y mapeo. En primer lugar, el entrenamiento utiliza un conjunto de datos de entrada (el "espacio de entrada") para generar una representación de menor dimensión de los datos de entrada (el "espacio del mapa"). En segundo lugar, el mapeo clasifica datos de entrada adicionales utilizando el mapa generado.
En la mayoría de los casos, el objetivo del entrenamiento es representar un espacio de entrada con p dimensiones como un espacio de mapa con dos dimensiones. Específicamente, se dice que un espacio de entrada con p variables tiene p dimensiones. Un espacio de mapa consta de componentes llamados "nodos" o "neuronas", que se organizan como una cuadrícula hexagonal o rectangular con dos dimensiones. [5] El número de nodos y su disposición se especifican de antemano en función de los objetivos más amplios del análisis y la exploración de los datos .
Cada nodo en el espacio del mapa está asociado con un vector de "peso", que es la posición del nodo en el espacio de entrada. Mientras que los nodos en el espacio del mapa permanecen fijos, el entrenamiento consiste en mover los vectores de peso hacia los datos de entrada (reduciendo una métrica de distancia como la distancia euclidiana ) sin estropear la topología inducida a partir del espacio del mapa. Después del entrenamiento, el mapa se puede utilizar para clasificar observaciones adicionales para el espacio de entrada al encontrar el nodo con el vector de peso más cercano (métrica de distancia más pequeña) al vector del espacio de entrada.
Algoritmo de aprendizaje
El objetivo del aprendizaje en el mapa autoorganizado es hacer que las distintas partes de la red respondan de manera similar a determinados patrones de entrada. Esto está motivado en parte por la forma en que se procesa la información visual, auditiva u otra información sensorial en distintas partes de la corteza cerebral del cerebro humano . [6]
Los pesos de las neuronas se inicializan ya sea con valores aleatorios pequeños o se toman muestras de manera uniforme del subespacio abarcado por los dos vectores propios de componentes principales más grandes . Con la última alternativa, el aprendizaje es mucho más rápido porque los pesos iniciales ya dan una buena aproximación de los pesos de SOM. [7]
La red debe recibir una gran cantidad de vectores de ejemplo que representen, lo más fielmente posible, los tipos de vectores esperados durante el mapeo. Los ejemplos se administran normalmente varias veces como iteraciones.
donde s es el índice de paso, t es un índice en la muestra de entrenamiento, u es el índice de la BMU para el vector de entrada D ( t ), α ( s ) es un coeficiente de aprendizaje decreciente monótonamente ; θ ( u , v , s ) es la función de vecindad que da la distancia entre la neurona u y la neurona v en el paso s . [8] Dependiendo de las implementaciones, t puede escanear el conjunto de datos de entrenamiento sistemáticamente ( t es 0, 1, 2... T -1, luego repetir, T siendo el tamaño de la muestra de entrenamiento), extraerse aleatoriamente del conjunto de datos ( muestreo bootstrap ), o implementar algún otro método de muestreo (como jackknifing ).
La función de vecindad θ ( u , v , s ) (también llamada función de interacción lateral ) depende de la distancia de la cuadrícula entre la BMU (neurona u ) y la neurona v . En la forma más simple, es 1 para todas las neuronas lo suficientemente cercanas a la BMU y 0 para las demás, pero las funciones gaussiana y de sombrero mexicano [9] también son opciones comunes. Independientemente de la forma funcional, la función de vecindad se encoge con el tiempo. [6] Al principio, cuando el vecindario es amplio, la autoorganización tiene lugar a escala global. Cuando el vecindario se ha encogido a solo un par de neuronas, los pesos convergen a estimaciones locales. En algunas implementaciones, el coeficiente de aprendizaje α y la función de vecindad θ disminuyen de manera constante al aumentar s , en otras (en particular aquellas en las que t escanea el conjunto de datos de entrenamiento) disminuyen de manera escalonada, una vez cada T pasos.
Este proceso se repite para cada vector de entrada durante una cantidad (normalmente grande) de ciclos λ . La red termina asociando nodos de salida con grupos o patrones en el conjunto de datos de entrada. Si se pueden nombrar estos patrones, los nombres se pueden adjuntar a los nodos asociados en la red entrenada.
Durante el mapeo, habrá una única neurona ganadora : la neurona cuyo vector de peso se encuentre más cerca del vector de entrada. Esto se puede determinar simplemente calculando la distancia euclidiana entre el vector de entrada y el vector de peso.
Si bien en este artículo se ha hecho hincapié en la representación de los datos de entrada como vectores, cualquier tipo de objeto que pueda representarse digitalmente, que tenga asociada una medida de distancia apropiada y en el que sean posibles las operaciones necesarias para el entrenamiento, puede utilizarse para construir un mapa autoorganizativo. Esto incluye matrices, funciones continuas o incluso otros mapas autoorganizativos.
Algoritmo
Aleatorizar los vectores de peso de los nodos en un mapa
Para
Elija aleatoriamente un vector de entrada
Busque el nodo en el mapa más cercano al vector de entrada. Este nodo es la unidad de mejor coincidencia (BMU). Denotelo por
Para cada nodo , actualice su vector acercándolo al vector de entrada:
Los nombres de las variables significan lo siguiente, con vectores en negrita,
es la iteración actual
es el límite de iteración
es el índice del vector de datos de entrada de destino en el conjunto de datos de entrada
es un vector de datos de entrada de destino
es el índice del nodo en el mapa
es el vector de peso actual del nodo
es el índice de la mejor unidad coincidente (BMU) en el mapa
es la función de vecindad,
es el cronograma de tasa de aprendizaje.
Las opciones de diseño clave son la forma del SOM, la función de vecindad y el programa de tasa de aprendizaje. La idea de la función de vecindad es hacer que la BMU se actualice más, sus vecinos inmediatos se actualicen un poco menos, y así sucesivamente. La idea del programa de tasa de aprendizaje es hacer que las actualizaciones del mapa sean grandes al principio y dejen de actualizarse gradualmente.
Por ejemplo, si queremos aprender un SOM usando una cuadrícula cuadrada, podemos indexarlo usando where both . La función de vecindad puede hacer que la BMU se actualice por completo, los vecinos más cercanos se actualicen a la mitad y sus vecinos se actualicen nuevamente a la mitad, etc. Y podemos usar un programa de tasa de aprendizaje lineal simple .
Obsérvese en particular que la tasa de actualización no depende de dónde se encuentra el punto en el espacio euclidiano, sino solo de dónde se encuentra en el propio SOM. Por ejemplo, los puntos están cerca en el SOM, por lo que siempre se actualizarán de manera similar, incluso cuando estén muy separados en el espacio euclidiano. Por el contrario, incluso si los puntos terminan superponiéndose entre sí (por ejemplo, si el SOM parece una toalla doblada), no se actualizan de manera similar.
Algoritmo alternativo
Aleatorizar los vectores de peso de los nodos del mapa
Recorrer cada vector de entrada en el conjunto de datos de entrada
Recorre cada nodo del mapa
Utilice la fórmula de la distancia euclidiana para encontrar la similitud entre el vector de entrada y el vector de peso del nodo del mapa
Realizar un seguimiento del nodo que produce la distancia más pequeña (este nodo es la unidad de mejor coincidencia, BMU)
Actualice los nodos en el vecindario de la BMU (incluida la propia BMU) acercándolos al vector de entrada
Aumente y repita desde el paso 2 mientras
Opciones de inicialización
La selección de pesos iniciales como buenas aproximaciones de los pesos finales es un problema bien conocido para todos los métodos iterativos de redes neuronales artificiales, incluidos los mapas autoorganizados. Kohonen propuso originalmente la iniciación aleatoria de pesos. [10] (Este enfoque se refleja en los algoritmos descritos anteriormente). Más recientemente, la inicialización de componentes principales, en la que los pesos iniciales del mapa se eligen del espacio de los primeros componentes principales, se ha vuelto popular debido a la reproducibilidad exacta de los resultados. [11]
Sin embargo, una comparación cuidadosa de la inicialización aleatoria con la inicialización de componentes principales para un mapa unidimensional reveló que las ventajas de la inicialización de componentes principales no son universales. El mejor método de inicialización depende de la geometría del conjunto de datos específico. La inicialización de componentes principales era preferible (para un mapa unidimensional) cuando la curva principal que aproximaba el conjunto de datos podía proyectarse de manera univalente y lineal sobre el primer componente principal (conjuntos cuasilineales). Sin embargo, para conjuntos de datos no lineales, la iniciación aleatoria tuvo un mejor desempeño. [12]
Interpretación
Hay dos maneras de interpretar un SOM. Debido a que en la fase de entrenamiento los pesos de todo el vecindario se mueven en la misma dirección, los elementos similares tienden a excitar a las neuronas adyacentes. Por lo tanto, el SOM forma un mapa semántico donde las muestras similares se mapean juntas y las diferentes separadas. Esto se puede visualizar mediante una matriz U (distancia euclidiana entre vectores de peso de células vecinas) del SOM. [14] [15] [16]
La otra forma es pensar en los pesos neuronales como indicadores del espacio de entrada. Forman una aproximación discreta de la distribución de las muestras de entrenamiento. Más neuronas apuntan a regiones con alta concentración de muestras de entrenamiento y menos a aquellas donde las muestras son escasas.
El SOM puede considerarse una generalización no lineal del análisis de componentes principales (PCA). [17] Se ha demostrado, utilizando datos geofísicos tanto artificiales como reales, que el SOM tiene muchas ventajas [18] [19] sobre los métodos de extracción de características convencionales , como las funciones ortogonales empíricas (EOF) o el PCA.
Originalmente, SOM no fue formulado como una solución a un problema de optimización. Sin embargo, ha habido varios intentos de modificar la definición de SOM y formular un problema de optimización que dé resultados similares. [20] Por ejemplo, los mapas elásticos utilizan la metáfora mecánica de la elasticidad para aproximarse a las variedades principales : [21] la analogía es una membrana y una placa elásticas.
Ejemplos
Priorización y selección de proyectos [22]
Análisis de facies sísmicas para la exploración de petróleo y gas [23]
Encontrar datos representativos en grandes conjuntos de datos
especies representativas de comunidades ecológicas [25]
Días representativos de los modelos de sistemas energéticos [26]
Enfoques alternativos
El mapa topográfico generativo (GTM) es una alternativa potencial a los SOM. En el sentido de que un GTM requiere explícitamente un mapeo suave y continuo desde el espacio de entrada al espacio del mapa, preserva la topología. Sin embargo, en un sentido práctico, esta medida de preservación topológica es insuficiente. [27]
El mapa autoorganizado creciente (GSOM, por sus siglas en inglés) es una variante creciente del mapa autoorganizado. El GSOM se desarrolló para abordar la cuestión de identificar un tamaño de mapa adecuado en el SOM. Comienza con una cantidad mínima de nodos (normalmente cuatro) y hace crecer nuevos nodos en el límite según una heurística. Al utilizar un valor llamado factor de propagación , el analista de datos tiene la capacidad de controlar el crecimiento del GSOM. [28]
El enfoque del mapa conforme utiliza el mapeo conforme para interpolar cada muestra de entrenamiento entre los nodos de la cuadrícula en una superficie continua. Con este enfoque es posible realizar un mapeo suave uno a uno. [29] [30]
La red de mapas autoorganizados adaptativos en el tiempo (TASOM) es una extensión del SOM básico. El TASOM emplea tasas de aprendizaje adaptativas y funciones de vecindad. También incluye un parámetro de escala para hacer que la red sea invariable al escalamiento, la traslación y la rotación del espacio de entrada. El TASOM y sus variantes se han utilizado en varias aplicaciones, incluidas la agrupación adaptativa, la umbralización multinivel, la aproximación del espacio de entrada y el modelado de contorno activo. [31] Además, se ha propuesto un TASOM de árbol binario o BTASOM, que se asemeja a un árbol natural binario que tiene nodos compuestos por redes TASOM, donde el número de sus niveles y el número de sus nodos son adaptativos con su entorno. [32]
El mapa orientado y escalable (OS-Map) generaliza la función de vecindad y la selección del ganador. [34] La función de vecindad gaussiana homogénea se reemplaza con la exponencial matricial. De esta manera, se puede especificar la orientación en el espacio del mapa o en el espacio de datos. SOM tiene una escala fija (=1), de modo que los mapas "describen óptimamente el dominio de observación". Pero ¿qué sucede con un mapa que cubre el dominio dos veces o en n pliegues? Esto implica el concepto de escala. El OS-Map considera la escala como una descripción estadística de cuántos nodos de mejor coincidencia tiene una entrada en el mapa.
Kohonen, Teuvo (enero de 2013). "Fundamentos del mapa autoorganizado". Redes neuronales . 37 : 52–65. doi :10.1016/j.neunet.2012.09.018. PMID 23067803. S2CID 17289060.
Kohonen, Teuvo (2001). Mapas autoorganizados: con 22 tablas . Springer Series in Information Sciences (3.ª ed.). Berlín Heidelberg: Springer. ISBN 978-3-540-67921-9.
Kohonen, Teuvo (1988). "Autoorganización y memoria asociativa". Springer Series in Information Sciences . 8 . doi :10.1007/978-3-662-00784-6. ISBN 978-3-540-18314-3. ISSN 0720-678X.
Kaski, Samuel, Jari Kangas y Teuvo Kohonen. "Bibliografía de artículos sobre mapas autoorganizados (SOM): 1981-1997". Neural computing surveys 1.3&4 (1998): 1-176.
Oja, Merja, Samuel Kaski y Teuvo Kohonen. "Bibliografía de artículos sobre mapas autoorganizados (SOM): apéndice 1998-2001". Encuestas de computación neuronal 3.1 (2003): 1-156.
^ Kohonen, Teuvo (1982). "Formación autoorganizada de mapas de características topológicamente correctos". Cibernética biológica . 43 (1): 59–69. doi :10.1007/bf00337288. S2CID 206775459.
^ Von der Malsburg, C (1973). "Autoorganización de células sensibles a la orientación en la corteza estriada". Kybernetik . 14 (2): 85–100. doi :10.1007/bf00288907. PMID 4786750. S2CID 3351573.
^ Turing, Alan (1952). "La base química de la morfogénesis". Phil. Trans. R. Soc . 237 (641): 37–72. Bibcode :1952RSPTB.237...37T. doi :10.1098/rstb.1952.0012.
^ Jaakko Hollmen (9 de marzo de 1996). "Mapa autoorganizado (SOM)". Universidad Aalto .
^ ab Haykin, Simon (1999). "9. Mapas autoorganizados". Redes neuronales: una base integral (2.ª ed.). Prentice-Hall. ISBN978-0-13-908385-3.
^ Kohonen, Teuvo (2005). "Introducción a SOM". Caja de herramientas SOM . Consultado el 18 de junio de 2006 .
^ Vrieze, DO (1995). "Red Kohonen" (PDF) . Redes neuronales artificiales . Apuntes de conferencias sobre informática. vol. 931. Universidad de Limburgo, Maastricht. págs. 83-100. doi :10.1007/BFb0027024. ISBN978-3-540-59488-8. Recuperado el 1 de julio de 2020 . {{cite book}}: |website=ignorado ( ayuda )
^ Kohonen, T. (2012) [1988]. Autoorganización y memoria asociativa (2.ª ed.). Springer. ISBN978-3-662-00784-6.
^ Ciampi, A.; Lechevallier, Y. (2000). "Agrupamiento de grandes conjuntos de datos de múltiples niveles: un enfoque basado en mapas autoorganizados de Kohonen". En Zighed, DA; Komorowski, J.; Zytkow, J. (eds.). Principios de minería de datos y descubrimiento de conocimiento: 4.ª Conferencia Europea, PKDD 2000 Lyon, Francia, 13-16 de septiembre de 2000 Actas . Apuntes de clase en informática. Vol. 1910. Springer. págs. 353-358. doi : 10.1007/3-540-45372-5_36 . ISBN3-540-45372-5.
^ Akinduko, AA; Mirkes, EM; Gorban, AN (2016). "SOM: inicialización estocástica versus componentes principales". Ciencias de la información . 364–365: 213–221. doi :10.1016/j.ins.2015.10.013.
^ La ilustración se preparó utilizando software libre: Mirkes, Evgeny M.; Análisis de componentes principales y mapas autoorganizados: subprograma, Universidad de Leicester, 2011
^ Ultsch, Alfred; Siemon, H. Peter (1990). "Mapas de características autoorganizadas de Kohonen para análisis exploratorio de datos". En Widrow, Bernard; Angeniol, Bernard (eds.). Actas de la Conferencia Internacional de Redes Neuronales (INNC-90), París, Francia, 9-13 de julio de 1990. Vol. 1. Dordrecht, Países Bajos: Kluwer. pp. 305-308. ISBN978-0-7923-0831-7.
^ Ultsch, Alfred (2003). U*-Matrix: una herramienta para visualizar clusters en datos de alta dimensión (informe técnico). Departamento de Ciencias de la Computación, Universidad de Marburgo. pp. 1–12. 36.
^ Saadatdoost, Robab; Sim, Alex Tze Hiang; Jafarkarimi, Hosein (2011). "Aplicación de mapas autoorganizados para el descubrimiento de conocimiento basado en datos de educación superior". Investigación e Innovación en Sistemas de Información (ICRIIS), Conferencia Internacional de 2011 sobre . IEEE. doi :10.1109/ICRIIS.2011.6125693. ISBN978-1-61284-294-3.
^ Yin, Hujun. "Aprendizaje de variedades principales no lineales mediante mapas autoorganizados". Gorban et al. 2008 .
^ Liu, Yonggang; Weisberg, Robert H (2005). "Patrones de variabilidad de las corrientes oceánicas en la plataforma occidental de Florida utilizando el mapa autoorganizado". Revista de investigación geofísica . 110 (C6): C06003. Código Bibliográfico :2005JGRC..110.6003L. doi : 10.1029/2004JC002786 .
^ Liu, Yonggang; Weisberg, Robert H.; Mooers, Christopher NK (2006). "Evaluación del rendimiento del mapa autoorganizado para la extracción de características". Revista de investigación geofísica . 111 (C5): C05018. Código Bibliográfico :2006JGRC..111.5018L. doi : 10.1029/2005jc003117 .
^ Heskes, Tom (1999). "Funciones energéticas para mapas autoorganizados". En Oja, Erkki; Kaski, Samuel (eds.). Mapas de Kohonen . Elsevier. págs. 303–315. doi :10.1016/B978-044450270-4/50024-3. ISBN .978-044450270-4.
^ Gorban, Alexander N. ; Kégl, Balázs; Wunsch, Donald C.; Zinovyev, Andrei, eds. (2008). Variedades principales para visualización de datos y reducción de dimensión. Apuntes de clase en informática e ingeniería. Vol. 58. Springer. ISBN978-3-540-73749-0.
^ Zheng, G.; Vaishnavi, V. (2011). "Un enfoque de mapa perceptual multidimensional para la priorización y selección de proyectos". AIS Transactions on Human-Computer Interaction . 3 (2): 82–103. doi : 10.17705/1thci.00028 .
^ Taner, MT; Walls, JD; Smith, M.; Taylor, G.; Carr, MB; Dumas, D. (2001). "Caracterización de yacimientos mediante calibración de grupos de mapas autoorganizados". Resúmenes ampliados del programa técnico SEG 2001. Vol. 2001. págs. doi :10.1190/1.1816406. S2CID 59155082.
^ Chang, Wui Lee; Pang, Lie Meng; Tay, Kai Meng (marzo de 2017). "Aplicación de mapas autoorganizados a la metodología de análisis de modos y efectos de falla" (PDF) . Neurocomputing . 249 : 314–320. doi :10.1016/j.neucom.2016.04.073.
^ Park, Young-Seuk; Tison, Juliette; Lek, Sovan; Giraudel, Jean-Luc; Coste, Michel; Delmas, François (1 de noviembre de 2006). "Aplicación de un mapa autoorganizado para seleccionar especies representativas en análisis multivariados: un estudio de caso que determina los patrones de distribución de diatomeas en Francia". Informática ecológica . 4.ª Conferencia internacional sobre informática ecológica. 1 (3): 247–257. Bibcode :2006EcInf...1..247P. doi :10.1016/j.ecoinf.2006.03.005. ISSN 1574-9541.
^ Yilmaz, Hasan Ümitcan; Fouché, Edouard; Dengiz, Thomas; Krauß, Lucas; Keles, Dogan; Fichtner, Wolf (1 de abril de 2019). "Reducción de series temporales de energía para modelos de sistemas energéticos mediante mapas autoorganizados". It - Tecnología de la información . 61 (2–3): 125–133. doi :10.1515/itit-2019-0025. ISSN 2196-7032. S2CID 203160544.
^ Kaski, Samuel (1997). "Exploración de datos mediante mapas autoorganizados". Acta Polytechnica Scandinavica . Serie Matemáticas, informática y gestión en ingeniería. 82. Espoo, Finlandia: Academia finlandesa de tecnología. ISBN978-952-5148-13-8.
^ Alahakoon, D.; Halgamuge, SK; Sirinivasan, B. (2000). "Mapas dinámicos autoorganizados con crecimiento controlado para el descubrimiento de conocimiento". IEEE Transactions on Neural Networks . 11 (3): 601–614. doi :10.1109/72.846732. PMID 18249788.
^ Liou, C.-Y.; Tai, W.-P. (2000). "Conformidad en la red de autoorganización". Inteligencia artificial . 116 (1–2): 265–286. doi :10.1016/S0004-3702(99)00093-4.
^ Liou, C.-Y.; Kuo, Y.-T. (2005). "Mapa autoorganizado conforme para una variedad de género cero". The Visual Computer . 21 (5): 340–353. doi :10.1007/s00371-005-0290-6. S2CID 8677589.
^ Shah-Hosseini, Hamed; Safabakhsh, Reza (abril de 2003). "TASOM: Un nuevo mapa autoorganizado adaptativo al tiempo". IEEE Transactions on Systems, Man, and Cybernetics - Parte B: Cibernética . 33 (2): 271–282. doi :10.1109/tsmcb.2003.810442. PMID 18238177.
^ Shah-Hosseini, Hamed (mayo de 2011). "Mapa autoorganizado adaptativo temporal de árbol binario". Neurocomputing . 74 (11): 1823–1839. doi :10.1016/j.neucom.2010.07.037.
^ Gorban, AN; Zinovyev, A. (2010). "Variedades principales y grafos en la práctica: de la biología molecular a los sistemas dinámicos]". Revista Internacional de Sistemas Neuronales . 20 (3): 219–232. arXiv : 1001.1122 . doi :10.1142/S0129065710002383. PMID 20556849. S2CID 2170982.
^ Hua, H (2016). "Procesamiento de imágenes y geometría con mapas orientados y escalables". Redes neuronales . 77 : 1–6. doi :10.1016/j.neunet.2016.01.009. PMID 26897100.
Enlaces externos
Medios relacionados con Mapas autoorganizados en Wikimedia Commons