1331 votos

El análisis de componentes principales, los vectores propios y los valores propios

En la clase de reconocimiento de patrones de hoy, mi profesor ha hablado de PCA, vectores propios y valores propios.

Entendí las matemáticas de la misma. Si me piden que encuentre valores propios, etc. lo haré correctamente como una máquina. Pero no comprender lo No entendí su propósito. No entendí la sensación de ello.

Creo firmemente en la siguiente cita:

No entiendes realmente algo a menos que puedas explicárselo a tu abuela. -- Albert Einstein

Bueno, no puedo explicar estos conceptos a un profano o a una abuela.

  1. ¿Por qué PCA, vectores propios y valores propios? ¿Cuál fue la Necesito para estos conceptos?
  2. ¿Cómo explicaría esto a un profano?

119 votos

Buena pregunta. Yo también estoy de acuerdo con la cita. Creo que hay muchas personas en la estadística y las matemáticas que son muy inteligentes, y pueden profundizar mucho en su trabajo, pero no entienden profundamente lo que están trabajando. O lo hacen, pero son incapaces de explicarlo a los demás.Me esfuerzo por dar respuestas aquí en inglés sencillo, y hago preguntas que exigen respuestas en inglés plano.

2 votos

Había imaginado una larga demostración con un montón de gráficos y explicaciones cuando me topé con este .

10 votos

Esto se preguntó en el sitio de Matemáticas en julio, pero no tan bien y no obtuvo muchas respuestas (no es sorprendente, dado el enfoque diferente allí). math.stackexchange.com/questions/1146/

1909voto

zowens Puntos 1417

Imagina una gran cena familiar en la que todo el mundo empieza a preguntarte por el PCA. Primero se lo explicas a tu bisabuela; luego a tu abuela; después a tu madre; luego a tu cónyuge; finalmente, a tu hija (que es matemática). Cada vez la siguiente persona es menos lego en la materia. La conversación podría ser la siguiente.

Bisabuela: He oído que estás estudiando "Pee-See-Ay". Me pregunto qué es eso...

A ti: Ah, es sólo un método para resumir algunos datos. Mira, tenemos algunas botellas de vino aquí sobre la mesa. Podemos describir cada vino por su color, por lo fuerte que es, por lo viejo que es, etc. (ver esta visualización muy bonita de las propiedades del vino tomadas desde aquí ). Podemos componer toda una lista de las diferentes características de cada vino de nuestra bodega. Pero muchas de ellas medirán propiedades relacionadas y, por tanto, serán redundantes. Si es así, deberíamos ser capaces de resumir cada vino con menos características. Esto es lo que hace el PCA.

La abuela: ¡Esto es interesante! ¿Así que esto del PCA comprueba qué características son redundantes y las descarta?

A ti: Excelente pregunta, abuelita. No, el ACP no selecciona algunas características y descarta las demás. Por el contrario, construye unas nuevo características que resultan resumir bien nuestra lista de vinos. Por supuesto, estas nuevas características se construyen utilizando las antiguas; por ejemplo, una nueva característica puede calcularse como la edad del vino menos el nivel de acidez del vino o alguna otra combinación como ésta (las llamamos combinaciones lineales ).

De hecho, el PCA encuentra las mejores características posibles, las que resumen la lista de vinos lo mejor posible (entre todas las combinaciones lineales concebibles). Por eso es tan útil.

Madre: Hmmm, esto ciertamente suena bien, pero no estoy segura de entenderlo. A qué se refiere realmente cuando dice que estas nuevas características del ACP "resumen" la lista de vinos?

A ti: Supongo que puedo dar dos respuestas diferentes a esta pregunta. La primera respuesta es que usted busca algunas propiedades del vino (características) que difieren mucho entre los vinos. De hecho, imagínese que da con una propiedad que es la misma para la mayoría de los vinos. Esto no sería muy útil, ¿verdad? Los vinos son muy diferentes, pero su nueva propiedad hace que todos parezcan iguales. Esto sería sin duda un mal resumen. En cambio, el PCA busca propiedades que muestren la mayor variación posible entre los vinos.

La segunda respuesta es que busques las propiedades que te permitan predecir, o "reconstruir", las características originales del vino. Una vez más, imagine que da con una propiedad que no tiene ninguna relación con las características originales; si sólo utiliza esta nueva propiedad, ¡no hay manera de que pueda reconstruir las originales! Esto, de nuevo, sería un mal resumen. Así que PCA busca propiedades que permitan reconstruir las características originales lo mejor posible.

Sorprendentemente, resulta que estos dos objetivos son equivalentes, por lo que el ACP puede matar dos pájaros de un tiro.

Esposa: Pero querida, ¡estos dos "objetivos" del PCA suenan tan diferentes! ¿Por qué habrían de ser equivalentes?

A ti: Hmmm. Tal vez debería hacer un pequeño dibujo (coge una servilleta y empieza a garabatear) . Escojamos dos características del vino, quizás la oscuridad del vino y el contenido de alcohol, no sé si están correlacionadas, pero imaginemos que lo están. Este es el aspecto que podría tener un gráfico de dispersión de diferentes vinos:

PCA exemplary data

Cada punto de esta "nube de vino" muestra un vino concreto. Se ve que las dos propiedades ( $x$ y $y$ en esta figura) están correlacionadas. Se puede construir una nueva propiedad trazando una línea por el centro de esta nube de vino y proyectando todos los puntos sobre esta línea. Esta nueva propiedad vendrá dada por una combinación lineal $w_1 x + w_2 y$ donde cada línea corresponde a algunos valores particulares de $w_1$ y $w_2$ .

Ahora mira aquí con mucho cuidado - aquí es como estas proyecciones se ven para diferentes líneas (los puntos rojos son proyecciones de los puntos azules):

PCA animation: variance and reconstruction error

Como he dicho antes, el PCA encontrará la "mejor" línea según dos criterios diferentes de lo que es la "mejor". En primer lugar, la variación de los valores a lo largo de esta línea debe ser máxima. Preste atención a cómo cambia la "dispersión" (la llamamos "varianza") de los puntos rojos mientras la línea gira; ¿puede ver cuándo alcanza el máximo? En segundo lugar, si reconstruimos las dos características originales (posición de un punto azul) a partir de la nueva (posición de un punto rojo), el error de reconstrucción vendrá dado por la longitud de la línea roja de conexión. Observa cómo cambia la longitud de estas líneas rojas mientras la línea gira; ¿puedes ver cuándo la longitud total alcanza el mínimo?

Si miras fijamente esta animación durante algún tiempo, te darás cuenta de que "la varianza máxima" y "el error mínimo" se alcanzan al mismo tiempo, es decir, cuando la línea apunta a los puntos magenta que marqué a ambos lados de la nube de vino. Esta línea corresponde a la nueva propiedad del vino que será construida por PCA.

Por cierto, PCA significa "análisis de componentes principales" y esta nueva propiedad se llama "primer componente principal". Y en lugar de decir "propiedad" o "característica" solemos decir "rasgo" o "variable".

Hija: ¡Muy bien, papá! Creo que puedo ver por qué los dos objetivos dan el mismo resultado: es esencialmente por el teorema de Pitágoras, ¿no? De todos modos, he oído que el PCA está relacionado de algún modo con los vectores propios y los valores propios; ¿dónde están en esta imagen?

A ti: Brillante observación. Matemáticamente, la dispersión de los puntos rojos se mide como la distancia media al cuadrado desde el centro de la nube de vino a cada punto rojo; como sabes, se llama el desviación . Por otra parte, el error total de reconstrucción se mide como la longitud media al cuadrado de las líneas rojas correspondientes. Pero como el ángulo entre las líneas rojas y la línea negra es siempre $90^\circ$ la suma de estas dos cantidades es igual a la distancia media al cuadrado entre el centro de la nube de vino y cada punto azul; esto es precisamente el teorema de Pitágoras. Por supuesto, esta distancia media no depende de la orientación de la línea negra, por lo que cuanto mayor sea la varianza menor será el error (porque su suma es constante). Este argumento de la mano se puede precisar ( ver aquí ).

Por cierto, puedes imaginar que la línea negra es una barra sólida y cada línea roja es un muelle. La energía del muelle es proporcional a su longitud al cuadrado (esto se conoce en física como la ley de Hooke), por lo que la varilla se orientará de forma que minimice la suma de estas distancias al cuadrado. He hecho una simulación de cómo será, en presencia de alguna fricción viscosa:

PCA animation: pendulum

En cuanto a los vectores propios y los valores propios. Usted sabe lo que es un matriz de covarianza es; en mi ejemplo es un $2\times 2$ matriz que viene dada por $$\begin{pmatrix}1.07 &0.63\\0.63 & 0.64\end{pmatrix}.$$ Esto significa que la varianza de la $x$ es la variable $1.07$ la varianza del $y$ es la variable $0.64$ y la covarianza entre ellos es $0.63$ . Como es una matriz simétrica cuadrada, se puede diagonalizar eligiendo un nuevo sistema de coordenadas ortogonal, dado por sus vectores propios (por cierto, esto se llama teorema espectral ); los valores propios correspondientes se situarán entonces en la diagonal. En este nuevo sistema de coordenadas, la matriz de covarianza es diagonal y tiene este aspecto: $$\begin{pmatrix}1.52 &0\\0 & 0.19\end{pmatrix},$$ lo que significa que la correlación entre los puntos es ahora cero. Queda claro que la varianza de cualquier proyección vendrá dada por una media ponderada de los valores propios (sólo estoy esbozando la intuición aquí). En consecuencia, la máxima varianza posible ( $1.52$ ) se conseguirá si simplemente tomamos la proyección sobre el primer eje de coordenadas. Se deduce que la dirección del primer componente principal viene dada por el primer vector propio de la matriz de covarianza. ( Más detalles aquí. )

También puedes verlo en la figura giratoria: allí hay una línea gris ortogonal a la negra; juntas forman un marco de coordenadas giratorio. Intenta notar cuándo los puntos azules se desvinculan en este marco de rotación. La respuesta, de nuevo, es que ocurre precisamente cuando la línea negra apunta a los puntos magenta. Ahora puedo decirte cómo los encontré: marcan la dirección del primer vector propio de la matriz de covarianza, que en este caso es igual a $(0.81, 0.58)$ .


Por petición popular, he compartido el código Matlab para producir las animaciones anteriores .

114 votos

+1 Bonito cuento e ilustraciones. ...then to your mother; then to your wife; finally, to your daughter (who is a mathematician)... Continuaría: y después de la cena - a ti mismo. Y aquí te quedaste atascado de repente...

82 votos

Me encantan las ilustraciones que haces para estas respuestas.

8 votos

@amoeba - ¡Esto es genial! Sabes, creo que el problema de interiorizar el PCA va más allá de entender la geometría, los vectores propios, la covarianza... Tiene que ver con el hecho de que las variables originales tienen nombre (grado alcohólico, color del vino), pero la transformación de los datos mediante PCA da lugar a componentes que no tienen nombre... Qué se hace con las cosas sin nombre... ¿Dice que los vinos de sus datos son de un rojo embriagador? ¿Inventas cualidades? Si es así, no deberíamos llamarlas "PC1"... los vinos requieren un enfoque más poético...

440voto

Michael Haren Puntos 42641

El manuscrito "Un tutorial sobre el análisis de componentes principales" por Lindsay I Smith realmente me ayudó a entender el PCA. Creo que todavía es demasiado complejo para explicárselo a tu abuela, pero no está mal. Deberías saltarte las primeras partes sobre el cálculo de los eigenes, etc. Ve al ejemplo del capítulo 3 y mira los gráficos.

Tengo algunos ejemplos en los que trabajé con algunos ejemplos de juguete para poder entender la regresión lineal PCA vs. OLS. Voy a tratar de desenterrar esos y publicarlos también.

editar: En realidad no preguntaste por la diferencia entre mínimos cuadrados ordinarios (OLS) y PCA, pero ya que desenterré mis notas hice un entrada del blog sobre ello . La versión muy corta es OLS de y ~ x minimiza el error perpendicular al eje independiente así (las líneas amarillas son ejemplos de dos errores):

alt text

Si se hiciera una regresión de x ~ y (en lugar de y ~ x en el primer ejemplo) se minimizaría el error así:

alt text

y el PCA minimiza efectivamente el error ortogonal al propio modelo, así:

alt text

Y lo que es más importante, como han dicho otros, en una situación en la que se tiene un MONTÓN de variables independientes, el ACP ayuda a averiguar qué combinaciones lineales de estas variables son las más importantes. Los ejemplos anteriores sólo ayudan a visualizar el aspecto del primer componente principal en un caso realmente sencillo.

En la entrada de mi blog tengo el código de R para crear los gráficos anteriores y para calcular el primer componente principal. Podría valer la pena jugar con él para construir su intuición en torno a PCA. Yo tiendo a no propio algo hasta que escriba un código que lo reproduzca.

1 votos

El tutorial ha estado muy bien. ¿Podría sugerir algún otro tutorial como continuación?

11 votos

Buena decisión sobre el manuscrito de Lindsay I Smith - lo acabo de leer hoy; muy útil.

13 votos

Entonces, ¿es el PCA equivalente a los mínimos cuadrados totales si optimiza las distancias ortogonales de los puntos a la línea de ajuste?

162voto

jldugger Puntos 7490

Hagamos primero (2). El PCA ajusta un elipsoide a los datos. Un elipsoide es una generalización multidimensional de las formas esféricas distorsionadas, como los puros, las tortitas y los huevos. Todas ellas se describen claramente mediante las direcciones y longitudes de sus (semi)ejes principales, como el eje del cigarro o del huevo o el plano de la tortita. No importa cómo se gire el elipsoide, los vectores propios apuntan a esas direcciones principales y los valores propios dan las longitudes. Los valores propios más pequeños corresponden a las direcciones más finas y con menor variación, por lo que al ignorarlas (lo que las hace planas) se pierde relativamente poca información: eso es el ACP.

(1) Aparte de la simplificación (arriba), tenemos necesidades de descripción concisa, de visualización y de comprensión. Ser capaz de reducir las dimensiones es una bueno facilita la descripción de los datos y, si tenemos la suerte de reducirlos a tres o menos, nos permite hacer un dibujo. A veces incluso podemos encontrar formas útiles de interpretar las combinaciones de datos representadas por las coordenadas en el dibujo, lo que puede permitirnos comprender el comportamiento conjunto de las variables.


La figura muestra algunas nubes de $200$ puntos cada uno, junto con elipsoides que contienen el 50% de cada nube y ejes alineados con las direcciones principales. En la primera fila, las nubes tienen esencialmente un componente principal, que comprende el 95% de toda la varianza: son las formas de cigarro. En la segunda fila, las nubes tienen esencialmente dos componentes principales, una de ellas aproximadamente el doble de grande que la otra, y juntas comprenden el 95% de toda la varianza: son las formas de panqueque. En la tercera fila, los tres componentes principales son considerables: son las formas de huevo.

Figures

Cualquier nube de puntos 3D que sea "coherente" en el sentido de que no presente racimos o zarcillos o valores atípicos se parecerá a una de estas. Cualquier nube de puntos 3D en absoluto --siempre que no coincidan todos los puntos-- puede describirse mediante una de estas figuras como punto de partida para identificar otras agrupaciones o patrones.

La intuición que se desarrolla al contemplar tales configuraciones puede aplicarse a las dimensiones superiores, aunque sea difícil o imposible visualizarlas.

2 votos

Además, cuando se tienen semiejes (casi) iguales (es decir, el elipsoide tiene un corte (casi) circular), indica que los dos datos correspondientes a esos ejes tienen (casi) dependencia; se puede hablar de ejes principales para una elipse, pero los círculos sólo tienen un radio. :)

6 votos

Yo sería más cauteloso aquí, J.M. En primer lugar, sólo para aclarar, por "cuasi-dependencia" debes querer decir "casi independiente". Esto sería cierto para una variante multinormal, pero en muchos casos el ACP se realiza con datos que son marcadamente no normales. De hecho, los análisis de agrupación que siguen a algunos cálculos de PCA pueden considerarse como una forma de evaluar una forma fuerte de no normalidad. Matemáticamente, los círculos hacer tienen ejes principales, pero no están determinados de forma única: se puede elegir cualquier par ortogonal de radios como sus ejes principales.

1 votos

Sí, lo siento, supongo que "los ejes principales de un círculo son indeterminados" habría sido una mejor manera de decirlo.

128voto

Rytmis Puntos 15848

Hmm, aquí va una opinión completamente no matemática sobre el PCA...

Imagina que acabas de abrir una sidrería. Tienes 50 variedades de sidra y quieres saber cómo distribuirlas en las estanterías, de modo que las sidras de sabor similar estén en el mismo estante. Hay muchos sabores y texturas diferentes en la sidra: dulzor, acidez, amargor, sabor a levadura, sabor a fruta, claridad, efervescencia, etc. Por lo tanto, lo que hay que hacer para clasificar las botellas en categorías es responder a dos preguntas:

1) ¿Qué cualidades son las más importantes para identificar grupos de sidras? Por ejemplo, ¿la clasificación basada en el dulzor facilita la agrupación de las sidras en grupos de sabor similar que la clasificación basada en la frutalidad?

2) ¿Podemos reducir nuestra lista de variables combinando algunas de ellas? Por ejemplo, ¿hay alguna variable que sea una combinación de "levadura y claridad y efervescencia" y que constituya una escala realmente buena para clasificar las variedades?

Esto es esencialmente lo que hace el ACP. Los componentes principales son variables que explican útilmente la variación en un conjunto de datos, en este caso, que diferencian útilmente entre grupos. Cada componente principal es una de sus variables explicativas originales, o una combinación de algunas de sus variables explicativas originales.

4 votos

¿Y los vectores y valores propios?

5 votos

Bien: el valor propio asociado a cada componente principal indica la cantidad de variación del conjunto de datos que explica (en mi ejemplo, la claridad con que separa las botellas en grupos). Suelen expresarse como un porcentaje de la variación total del conjunto de datos. En cuanto a los Eigenvectores, bueno, ahí es donde como dijo claws sigo la salida de un análisis como una máquina ;) En mi cabeza, están relacionados con la forma de rotar el móvil de Vince a su "mejor" orientación, pero puede que esta no sea la forma correcta de pensar en ellos.

20 votos

Los vectores propios no son más que las combinaciones lineales de las variables originales (en el espacio factorial simple o rotado); describen cómo las variables "contribuyen" a cada eje factorial. Básicamente, piense en el ACP como una forma de construir nuevos ejes que apunten a las direcciones de la varianza máxima (en el espacio de la variable original), tal y como se expresa en el valor propio, y cómo se ponderan las contribuciones de las variables o se transforman linealmente en este nuevo espacio.

115voto

patfla Puntos 1

Yo respondería en "términos sencillos" diciendo que el ACP pretende ajustar líneas rectas a los puntos de datos (todo el mundo sabe lo que es una línea recta). A estas líneas rectas las llamamos "componentes principales". Hay tantos componentes principales como variables. El primer componente principal es la mejor línea recta que se puede ajustar a los datos. La segunda componente principal es la mejor recta que se puede ajustar a los errores de la primera componente principal. El tercer componente principal es la mejor línea recta que se puede ajustar a los errores del primer y segundo componente principal, etc., etc.

Si alguien te pregunta a qué te refieres con "mejor" o "errores", esto te indica que no es un "lego", por lo que puede entrar en detalles un poco más técnicos como errores perpendiculares, no sabe dónde está el error en dirección x o y, más de 2 o 3 dimensiones, etc. Además, si se evita hacer referencia a la regresión OLS (que el "lego" probablemente tampoco entenderá) la explicación es más fácil.

Los vectores propios y los valores propios no son conceptos necesarios en sí mismos, sino que resultan ser conceptos matemáticos que ya existían. Cuando se resuelve el problema matemático del ACP, acaba siendo equivalente a encontrar los valores propios y los vectores propios de la matriz de covarianza.

9 votos

+1, esto es realmente en "términos de lego", y sé que podrías derivarlo muy ¡rigurosamente si lo quisieras!

3 votos

La mejor respuesta hasta ahora, diría yo. Y yo uso mucho el PCA.

3 votos

Vaya, esta es una explicación realmente estupenda y sencilla. Gracias.

i-Ciencias.com

I-Ciencias es una comunidad de estudiantes y amantes de la ciencia en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X