¿Cuál es la diferencia entre el análisis de componentes principales y el escalado multidimensional?

133

¿En qué se diferencian PCA y MDS clásico? ¿Qué tal MDS versus MDS no métrico? ¿Hay algún momento en el que preferirías uno sobre el otro? ¿Cómo difieren las interpretaciones?

Stephen Turner
fuente

Respuestas:

96

El MDS métrico clásico de Torgerson se realiza transformando distancias en similitudes y realizando PCA (descomposición propia o descomposición de valor singular) en ellas. [El otro nombre de este procedimiento ( distances between objects -> similarities between them -> PCApor el cual las cargas son las coordenadas buscadas) es Análisis de coordenadas principales o PCoA .] Por lo tanto, PCA podría llamarse el algoritmo del MDS más simple.

El MDS no métrico se basa en el algoritmo iterativo ALSCAL o PROXSCAL (o un algoritmo similar a ellos), que es una técnica de mapeo más versátil que PCA y también se puede aplicar al MDS métrico. Mientras PCA retiene m dimensiones importantes para usted, ALSCAL / PROXSCAL ajusta la configuración a m dimensiones (usted define previamente m ) y reproduce las diferencias en el mapa de manera más directa y precisa de lo que PCA normalmente puede (vea la sección de Ilustración a continuación).

Por lo tanto, MDS y PCA probablemente no estén en el mismo nivel para estar en línea o opuestos entre sí. PCA es solo un método, mientras que MDS es una clase de análisis. Como mapeo, PCA es un caso particular de MDS. Por otro lado, PCA es un caso particular de análisis factorial que, al ser una reducción de datos, es más que solo un mapeo, mientras que MDS es solo un mapeo.

En cuanto a su pregunta sobre MDS métrica versus MDS no métrica, hay poco que comentar porque la respuesta es sencilla. Si creo que mis diferencias de entrada están tan cerca de ser distancias euclidianas que una transformación lineal será suficiente para mapearlas en el espacio m-dimensional, preferiré MDS métrico. Si no lo creo, entonces la transformación monotónica es necesaria, lo que implica el uso de MDS no métrico.


Una nota sobre terminología para un lector. El término Clásico (al) MDS (CMDS) puede tener dos significados diferentes en una vasta literatura sobre MDS, por lo que es ambiguo y debe evitarse. Una definición es que CMDS es sinónimo de MDS métrico de Torgerson. Otra definición es que CMDS es cualquier MDS (por cualquier algoritmo; análisis métrico o no métrico) con entrada de matriz única (porque existen modelos que analizan muchas matrices a la vez: modelo "INDSCAL" individual y modelo replicado).


Ilustración a la respuesta . Alguna nube de puntos (elipse) se está mapeando en un mapa mds unidimensional. Un par de puntos se muestra en puntos rojos.

ingrese la descripción de la imagen aquí

DoDm22D o - D m 1Do2Dm21DoDm1

El MDS basado en PCA (Torgerson's o PCoA) no es directo. Minimiza las distancias al cuadrado entre los objetos en el espacio original y sus imágenes en el mapa. Esta no es una tarea MDS genuina; es exitoso, como MDS, solo en la medida en que los ejes principales junior descartados son débiles. Si explica mucha más variación que el primero solo puede reflejar sustancialmente distancias por pares en la nube, especialmente para puntos que se encuentran muy separados a lo largo de la elipse. El MDS iterativo siempre ganará, y especialmente cuando se desea un mapa de muy baja dimensión. El MDS iterativo también tendrá más éxito cuando una elipse en la nube sea delgada, pero completará la tarea mds mejor que PCoA. Por la propiedad de la matriz de doble centrado (descrita aquíP 2D o 2 2 - D m 2 2P1P2) parece que PCoA minimiza , que es diferente de cualquiera de las minimizaciones anteriores.Do22Dm22

Una vez más, PCA proyecta los puntos de la nube en el subespacio de ahorro de todo cuerpo más ventajoso. No proyecta distancias por pares , ubicaciones relativas de puntos en un subespacio más ahorrado a ese respecto, como lo hace el MDS iterativo. Sin embargo, históricamente PCoA / PCA se considera entre los métodos de MDS métrico.

ttnphns
fuente
3
(+1) Me gustaron ambas respuestas, esta probablemente un poco más.
Dmitrij Celov
El enlace del PDF relacionado con PCoA. Se puede encontrar en el Archivo web: web.archive.org/web/20160315120635/http://forrest.psych.unc.edu/…
Pierre
49

Uhm ... muy diferente. En PCA, se le dan los datos continuos multivariados (un vector multivariado para cada sujeto), y está tratando de averiguar si no necesita tantas dimensiones para conceptualizarlos. En MDS (métrico), se le da la matriz de distancias entre los objetos, y está tratando de averiguar cuáles son las ubicaciones de estos objetos en el espacio (y si necesita un espacio 1D, 2D, 3D, etc.). En MDS no métrico, solo sabe que los objetos 1 y 2 están más distantes que los objetos 2 y 3, por lo que intenta cuantificar eso, además de encontrar las dimensiones y ubicaciones.

Con una notable extensión de imaginación, puede decir que un objetivo común de PCA y MDS es visualizar objetos en 2D o 3D. Pero dado lo diferentes que son las entradas, estos métodos no se analizarán como si estuvieran relacionados de forma distante en ningún libro de texto multivariado. Supongo que puede convertir los datos utilizables para PCA en datos utilizables para MDS (por ejemplo, calculando las distancias de Mahalanobis entre los objetos, utilizando la matriz de covarianza de muestra), pero eso inmediatamente daría como resultado una pérdida de información: MDS solo se define a la ubicación y rotación, y los dos últimos se pueden hacer de manera más informativa con PCA.

Si tuviera que mostrar brevemente a alguien los resultados de MDS no métrico y quisiera darles una idea aproximada de lo que hace sin entrar en detalles, podría decir:

Dadas las medidas de similitud o disimilitud que tenemos, estamos tratando de mapear nuestros objetos / sujetos de tal manera que las 'ciudades' que componen tengan distancias entre ellos tan cercanas a estas medidas de similitud como podamos hacerlas. Sin embargo, solo podríamos mapearlos perfectamente en el espacio -dimensional, por lo que estoy representando las dos dimensiones más informativas aquí, algo así como lo que harías en PCA si mostraras una imagen con los dos componentes principales principales.n

StasK
fuente
18
¿No se aplica un PCA en una matriz de correlación equivalente a un MDS con distancias euclidianas calculadas en variables estandarizadas?
chl
Entonces, si tuviera que mostrar brevemente a alguien los resultados de MDS no métricos y quisiera darles una idea aproximada de lo que hace sin entrar en detalles, ¿podría decir "esto hace algo similar a PCA" sin ser engañoso?
Freya Harrison el
66
Yo diría: "Dadas las medidas de similitud o disimilitud que tenemos, estamos tratando de mapear nuestros objetos / sujetos de tal manera que las 'ciudades' que componen tengan distancias entre ellos tan cercanas a estas medidas de similitud como podemos hacerlos. Solo podríamos mapearlos perfectamente en el espacio -dimensional, así que estoy representando las dimensiones más informativas aquí, algo así como lo que harías en PCA si mostraras una imagen con los dos componentes principales ". n
StasK
+1 Genial: para mí, este comentario vincula muy bien tu respuesta. Gracias.
Freya Harrison
47

Dos tipos de MDS métrico

La tarea de escalamiento multidimensional métrico (MDS) se puede formular de manera abstracta de la siguiente manera: dada una matriz de distancias por pares entre puntos, encuentre una incrustación de puntos de datos de baja dimensión en manera que Las distancias euclidianas entre ellos se aproximan a las distancias dadas:D n R kx i - x jD i j .n×nDnRk

xixjDij.

Si "aproximado" aquí se entiende en el sentido habitual de error de reconstrucción, es decir, si el objetivo es minimizar la función de costo llamada "estrés": entonces la solución no es equivalente a PCA. La solución no está dada por ninguna fórmula cerrada, y debe ser calculada por un algoritmo iterativo dedicado.

StressDxixj2,

"MDS clásico", también conocido como "MDS de Torgerson", reemplaza esta función de costo por una relacionada pero no equivalente , llamada "cepa": que busca minimizar el error de reconstrucción de productos escalares centrados en lugar de distancias. Resulta que se puede calcular a partir de (si son distancias euclidianas) y que minimizar el error de reconstrucción de es exactamente lo que hace PCA, como se muestra en la siguiente sección.K c D D K c

StrainKcxi,xj2,
KcDDKc

El MDS clásico (Torgerson) en distancias euclidianas es equivalente a PCA

Deje que los datos se recopilen en matriz de tamaño con observaciones en filas y características en columnas. Sea la matriz centrada con los medios de columna restados.Xn×kXc

Entonces PCA equivale a hacer una descomposición de valores singulares , con las columnas de como componentes principales. Una forma común de obtenerlos es a través de una descomposición propia de la matriz de covarianza , pero otra forma posible es realizar una descomposición propia de la matriz de Gram : los componentes principales son sus vectores propios escalados por las raíces cuadradas de los respectivos valores propios.Xc=USVUS1nXcXcKc=XcXc=US2U

Es fácil ver que , donde es una matriz de . De esto obtenemos inmediatamente que donde es una matriz de Gram de datos no centrados. Esto es útil: si tenemos la matriz Gram de datos no centrados, podemos centrarla directamente, sin volver a sí. Esta operación a veces se llamaXc=(I1n1n)X1nn×n

Kc=(I1nn)K(I1nn)=K1nnKK1nn+1nnK1nn,
K=XXXdoble centrado : observe que equivale a restar las medias de fila y la columna de (y sumar nuevamente la media global que se resta dos veces), de modo que ambas medias de fila y columna de son iguales a cero.KKc

Ahora considere una matriz matriz de distancias euclidianas en pares con. ¿Se puede convertir esta matriz en para realizar PCA? Resulta que la respuesta es sí.n×nDDij=xixjKc

De hecho, por la ley de los cosenos vemos que Entonces difiere de solo por algunas constantes de fila y columna (¡aquí significa cuadrado en cuanto al elemento!). Lo que significa que si lo obtendremos :

Dij2=xixj2=xix¯2+xjx¯22xix¯,xjx¯=xix¯2+xjx¯22[Kc]ij.
D2/2KcD2Kc
Kc=(I1nn)D22(I1nn).

Lo que significa que a partir de la matriz de distancias euclidianas en pares podemos realizar PCA y obtener componentes principales. Esto es exactamente lo que hace el MDS clásico (Torgerson): , por lo que su resultado es equivalente a PCA.DDKcUS

Por supuesto, si se elige cualquier otra medida de distancia en lugar de, entonces el MDS clásico dará como resultado algo más.xixj

Referencia: Los elementos del aprendizaje estadístico , sección 18.5.2.

ameba
fuente
Tengo que admitir que todavía no lo pensé: pero aquí hay una "verificación de plausibilidad" de la que me pregunto: desde las dimensiones de las matrices, ¿no debería su matriz de Gram que es ? XXTn×n
cbeleites
Gracias, @cbeleites, por supuesto que tienes razón, eso es solo un error tipográfico. Lo arreglará ahora. Avíseme si ve otros errores (o siéntase libre de editar directamente).
ameba
1
+1. Y gracias por mostrar con matemáticas lo que se dijo en el primer párrafo de mi respuesta.
ttnphns
2
+1 Desearía que esta fuera la respuesta aceptada / principal. Creo que fácilmente merece serlo.
Zhubarb
35

PCA produce los mismos resultados EXACTOS que los MDS clásicos si se usa la distancia euclidiana.

Cito a Cox y Cox (2001), p 43-44:

Hay una dualidad entre un análisis de componentes principales y PCO [análisis de coordenadas principales, también conocido como MDS clásico] donde las diferencias son dadas por la distancia euclidiana.

La sección en Cox & Cox lo explica con bastante claridad:

  • Imagine que tiene = atributos de productos por dimensiones, centrado en la mediaXnp
  • La PCA se logra al encontrar los vectores propios de la matriz de covarianza ~ (dividida por n-1): llame a los vectores propios y los valores propios .XXξμ
  • MDS se logra convirtiendo primero en matriz de distancia, aquí, distancia euclidiana, es decir, , luego encontrando los vectores propios - llame a los vectores propios , y los valores propios .XXXvλ
  • p 43: "Es un resultado bien conocido que los valores propios de son los mismos que para , junto con un valor adicional np cero cero". Entonces, para , =XXXXi<pμiλi
  • Volviendo a la definición de vectores propios, considere los valores propios . ithXXvi=λivi
  • Premultiply con , obtenemosviX(XX)Xvi=λiXvi
  • También tenemos . Como , obtenemos que para .XXξi=μiξiλi=μiξi=Xvii<p
usuario1705135
fuente
2
Hice un poco de codificación en R, y usé cmdscale como una implementación de MDS clásico y prcomp para PCA; sin embargo, el resultado no es el mismo ... ¿hay algún punto que me falta?
usuario4581
3
same results as classical MDS. Por "MDS clásico" debe significar el MDS de Torgerson aquí. Entonces, la afirmación es cierta, ya que el MDS de Torgerson es en realidad PCA (solo a partir de la matriz de distancia). Si define "MDS clásico" de manera diferente (vea mi respuesta), entonces la afirmación no es verdadera.
ttnphns
77
Espera, ¿cómo demonios XX 'proporciona la distancia euclidiana? XX 'es un producto interno: si la matriz se estandarizara, le daría similitud al coseno. La distancia euclidiana requiere una resta y una raíz cuadrada.
ShainaR
@ user1705135 Estoy confundido por su punto 5. ¿No debería ser ? XXvi=λivi
Michael
4

Comparación: "Metric MDS da el MISMO resultado que PCA" - procedimentalmente - cuando observamos la forma en que se usa SVD para obtener el óptimo. Pero, el criterio conservado de alta dimensión es diferente. PCA usa una matriz de covarianza centrada, mientras que MDS usa una matriz de gramo obtenida por matrices de distancia de doble centrado.

Pondrá la diferencia matemáticamente: PCA puede verse como maximizando sobre bajo restricciones de que es ortogonal, dando así ejes / componentes principales. En escalamiento multidimensional una matriz gramo (una matriz psd que puede ser representado como ) se calcula a partir distancia euclídea entre las filas de y la siguiente se minimiza sobre . minimizar: .XXZTZXY| El | G-YTY| El | 2 FTr(XT(I1neeT)X)XXZTZXY||GYTY||F2

coche fúnebre
fuente