¿Cuál es el mejor algoritmo para descubrir características bien correlacionadas?

Otro método de aprendizaje no supervisado llamado mapa autoorganizado (SOM) también está adaptado a su problema (http://en.wikipedia.org/wiki/Sel…). El SOM es una red neuronal que tiene interesantes propiedades de agrupamiento, proyección y visualización.

Hay un buen ejemplo en el artículo de Wikipedia:
“Mapa autoorganizado que muestra los patrones de votación del Congreso de EE. UU. Visualizados en Synapse. Los dos primeros cuadros muestran agrupaciones y distancias, mientras que los restantes muestran el componente Aviones . Rojo significa un voto de sí mientras que azul significa un voto de no en los planos componentes … “

Una clara ventaja de este método es que es fácil de interpretar visualmente en un espacio de baja dimensión. Te ayudará a:

  • visualizar los racimos
  • Identifique qué características están correlacionadas en función de la similitud visual de sus planos componentes:


Esta cifra proviene de “Mejora de la búsqueda de correlaciones en una gran cantidad de planos de componentes SOM” (http://slidesha.re/h6SjC6). Vale la pena echarle un vistazo, especialmente si tiene demasiados planos componentes.

Tal vez intente el análisis factorial, que se usa para agrupar características en grupos, pero también se puede usar para encontrar correlaciones entre los factores. Es más común la psicometría, pero puede ser útil aquí, IIRC.

No me preocuparía tanto por la cantidad de grupos desconocidos. Hay formas de evitar esto … ajusta tu modelo varias veces y usa algún tipo de descenso de gradiente para elegir el número de grupos usando chi-cuadrado, AIC, etc. como medida de ajuste. También hay métodos adaptativos de k-means que intentan seleccionar el número de clústeres. También hay algunas cosas en la literatura de saltos reversibles que pueden ayudar con esto.