Agrupamiento espectral

Las técnicas de agrupación espectral utilizan el espectro ( valores propios ) de la matriz de similitud de los datos para realizar la reducción de la dimensionalidad antes de la agrupación en espacios de menor dimensión. La matriz de similitud se proporciona como entrada y consiste en estimaciones cuantitativas de la similitud relativa de cada par de puntos en los datos.

Cuando se aplica a la segmentación de imágenes, el agrupamiento espectral se conoce como agrupamiento de características basado en segmentación .

Algoritmos

Dado un conjunto enumerado de puntos de datos, la matriz de similitud se puede definir como una matriz simétrica donde los elementos representan una medida de similitud entre puntos de datos con índices y . El principio general del agrupamiento espectral es usar el método de agrupamiento estándar (existen muchos métodos de este tipo, el método de k-medias se analiza a continuación ) en los vectores propios significativos de la matriz de Kirchhoff de la matriz . Hay muchas formas diferentes de definir la matriz de Kirchhoff, que tiene diferentes interpretaciones matemáticas, por lo que la agrupación también tendrá diferentes interpretaciones. Los vectores propios significativos son aquellos que corresponden a los valores propios más pequeños de la matriz de Kirchhoff, con la excepción de los valores propios 0. Por eficiencia computacional, estos vectores propios a menudo se calculan como vectores propios correspondientes a algunos de los valores propios más grandes de un función de la matriz de Kirchhoff.

Una técnica para el agrupamiento espectral es el algoritmo de sección normalizada (o algoritmo de Shi-Malik ) propuesto por Jiambo Shi y Jitendra Malik [1] , un método ampliamente utilizado para la segmentación de imágenes . El algoritmo divide los puntos en dos conjuntos en función del vector propio correspondiente al segundo valor propio más grande de la matriz de Kirchhoff normalizada simétricamente dada por la fórmula

donde esta la matriz diagonal

El algoritmo matemáticamente equivalente [2] utiliza un vector propio correspondiente al valor propio más grande de la matriz de paseo aleatorio de Kirchhoff normalizada . El algoritmo Meil-Shi ha sido probado en el contexto de mapas de difusión , que se ha encontrado que tienen conexiones con la mecánica cuántica computacional [3] .

Otra posibilidad es utilizar la matriz de Kirchhoff dada por la expresión

en lugar de una matriz de Kirchhoff simétricamente normalizada.

La partición se puede hacer de varias maneras, como calcular la mediana de los componentes del segundo vector propio más pequeño y colocar todos los puntos en , cuyas componentes en son mayores que , el resto de los puntos se colocan en . El algoritmo se puede utilizar para la agrupación jerárquica mediante la partición secuencial de subconjuntos de forma similar.

Si la matriz de similitud aún no se ha construido algebraicamente, la eficiencia del agrupamiento espectral se puede mejorar si la solución del problema correspondiente, la búsqueda de valores propios, se lleva a cabo mediante un método sin matriz (sin manipulación explícita o incluso cálculo de la matriz de similitud), como el algoritmo de Lanczos .

Para gráficos de gran tamaño, el segundo valor propio de la matriz de Kirchhoff (normalizada) del gráfico a menudo está mal condicionado , lo que lleva a una convergencia lenta de los métodos iterativos de búsqueda de valores propios. El preacondicionamiento es una técnica clave para mejorar la convergencia, por ejemplo, en el método LOBPCG sin matriz . El agrupamiento espectral se ha aplicado con éxito a gráficos grandes, primero mediante el reconocimiento de la estructura de una comunidad de red y luego mediante el agrupamiento de la comunidad [4] .

El agrupamiento espectral está estrechamente relacionado con la reducción de la dimensionalidad no lineal y las técnicas de reducción de la dimensionalidad, como el anidamiento localmente lineal, se pueden usar para reducir el error del ruido o el valor atípico en las observaciones [5] .

El software gratuito para implementar el agrupamiento espectral está disponible en grandes proyectos de código abierto como Scikit-learn [6] , MLlib para el agrupamiento basado en pseudovalores propios utilizando el método de iteración de potencia [7] , el lenguaje R [8] .

Relación con k -medias

El problema de k -medias con un núcleo no lineal es una extensión del problema de k -medias en el que los puntos de entrada se asignan de forma no lineal en un espacio de características de alta dimensión mediante una función de núcleo . El problema de k -medias ponderadas con un núcleo no lineal amplía el problema aún más al especificar el peso de cada grupo como un valor inversamente proporcional al número de elementos del grupo,

Sea una matriz de coeficientes normalizados para cada punto de cualquier grupo, donde , si , y 0 en caso contrario. Sea la matriz kernel para todos los puntos. Un problema ponderado de k medias con un núcleo no lineal con n puntos y k conglomerados se define como un problema de maximización

bajo condiciones

Al mismo tiempo Además, hay una restricción en los coeficientes

,

donde es un vector de unidades.

La tarea se puede convertir en

Este problema es equivalente al problema del agrupamiento espectral cuando se relaja la restricción. En particular, un problema de k -medias ponderadas con un núcleo no lineal se puede reformular como un problema de agrupamiento espectral (partición de gráficos) y viceversa. La salida del algoritmo son vectores propios que no satisfacen las restricciones sobre las variables indicadoras definidas por el vector . Por lo tanto, se requiere un procesamiento posterior de los vectores propios para que las tareas sean equivalentes [9] . La transformación del problema de agrupamiento espectral en un problema ponderado de k -medias con un kernel no lineal reduce significativamente los costos computacionales [10] .

Medidas para comparar el agrupamiento

Ravi Kannan, Santosh Vempala y Adrian Wetta [11] propusieron una medida bicriterio para determinar la calidad del agrupamiento. Dicen que un agrupamiento es un agrupamiento (α, ε) si la conductividad de cada grupo es al menos α y el peso de los bordes entre grupos no excede la fracción ε del peso de todos los bordes en el gráfico. En el mismo artículo, también consideran dos algoritmos de aproximación.

Véase también

Notas

  1. Shi, Malik, 2000 .
  2. Meila, Shi, 2001 , pág. 873–879.
  3. Scott, Therani, Wang, 2017 , pág. 1-17.
  4. Zare, Shooshtari, Gupta, Brinkman, 2010 , pág. 403.
  5. Arias-Castro, Chen, Lerman, 2011 , p. 1537-1587
  6. 2.3. Agrupación en clústeres: documentación de scikit-learn 0.20.2 . Consultado el 28 de junio de 2017. Archivado desde el original el 15 de mayo de 2015.
  7. Clustering - API basada en RDD - Documentación de Spark 2.4.0 . Consultado el 28 de junio de 2017. Archivado desde el original el 3 de julio de 2017.
  8. Kernlab del paquete CRAN . Consultado el 28 de junio de 2017. Archivado desde el original el 27 de junio de 2017.
  9. Dhillon, Guan, Kulis, 2004 , pág. 551–556.
  10. Dhillon, Guan, Kulis, 2007 , pág. 1-14.
  11. Kannan, Vempala, Vetta, 2000 , pág. 497–515.

Literatura