40 votos

¿Cómo puedes explicar la Descomposición de Valor Singular a personas que no son especialistas?

En dos días, voy a dar una presentación sobre un motor de búsqueda que he estado desarrollando este verano pasado. Mi investigación involucró el uso de descomposiciones de valores singulares, es decir, $A = U \Sigma V^T$. Tomé un curso de Álgebra Lineal en la preparatoria el año pasado, pero el curso no fue muy detallado, y aunque sé cómo encontrar la SVD de una matriz, no sé cómo explicar lo que tengo entre manos después de que la matriz ha sido descompuesta.

Para alguien que ha tomado álgebra lineal, puedo decir que puedo descomponer una matriz $A$ en la matriz $\Sigma$, cuya diagonal contiene los valores singulares, y las matrices $U$ y $V$ cuyas columnas representan los vectores singulares izquierdo y derecho de la matriz $A$. No estoy seguro de cómo explicar qué es un valor singular o qué son los vectores singulares izquierdo/derecho. Aun así, puedo estar satisfecho si no hay una forma fácil de explicar qué significa esta descomposición, pero siempre prefiero mantener al público lo más informado posible.

0 votos

Wikipedia tiene un gráfico muy bueno que muestra cómo se descompone la forma en que una matriz actúa sobre una forma (toma el círculo) en rotación, cizallamiento, etc. Eso podría ser bueno.

0 votos

@AlexYoucis He visto eso, pero solo es fácil de visualizar en dos dimensiones. Más allá de eso, y definitivamente más allá de miles de dimensiones, será difícil de imaginar.

4 votos

Esto no responde a tu pregunta, pero podría ser una buena idea enfocarse en explicar lo que ya sabes, que es cómo se utiliza la SVD en tu motor de búsqueda, y por qué la elegiste para esa aplicación. Al dar una presentación, siempre es tentador incluir muchos detalles técnicos, pero en mi opinión, esto suele ser un error.

31voto

lhf Puntos 83572

Gran parte del álgebra lineal trata sobre operadores lineales, es decir, transformaciones lineales de un espacio en sí mismo. Un resultado típico es que eligiendo una base adecuada para el espacio, el operador puede expresarse en una forma de matriz simple, por ejemplo, diagonal. Sin embargo, esto no se aplica a todos los operadores.

La descomposición en valores singulares es el único resultado principal sobre transformaciones lineales entre dos espacios diferentes. Indica que al elegir bases adecuadas para los espacios, la transformación se puede expresar en una forma de matriz simple, una matriz diagonal. Y esto funciona para todos las transformaciones lineales. Además, las bases son muy buenas: bases ortogonales.

Geométricamente, la SVD significa que las esferas de la dimensión adecuada en el dominio se transforman en elipsoides en el codominio. Dado que la transformación puede no ser inyectiva, la dimensión del elipsoide es a lo sumo la dimensión de la esfera. Por lo tanto, obtienes cierta distorsión a lo largo de algunos ejes y cierto colapso a lo largo de otros ejes. Y eso es todo lo que hace la transformación. Cada transformación lineal.

0 votos

Diría que todo en matemáticas tiene que ver con operadores y relaciones - estos forman un par dual (ver, por ejemplo: Denecke & Wismath "Álgebra Universal y Aplicaciones en TCS" relacionado con la adjunción de Galois. - Ejemplos de relaciones incluyen la inclusión de subespacios y la invariancia bajo la acción de operadores (lineales).

0 votos

Realmente me gustó esta respuesta, pero también quiero señalar el comentario de valtron arriba, enlazando a puffinwarellc.com/index.php/news-and-articles/articles/… ¡También fue muy útil! ¡Gracias a los dos!

0 votos

¿Podrías explicar cuáles son los dos espacios involucrados en SVD? En la descomposición en eigenvalores, entiendo que $P$ transforma un vector del espacio original con base estándar al espacio con los eigenvectores como base, luego $P^{-1}$ lo transforma de regreso al espacio original. Así que los dos espacios en la descomposición en eigenvalores son el espacio original y el espacio de eigenvectores. ¿Y en SVD? ¿Cuáles son los dos espacios?

16voto

Navid Puntos 21

Esta respuesta intenta dar una intuición algebraica simple. Supongamos que $A$ es una matriz real $m \times n$. Sea $A=U\Sigma V^T$ la descomposición en valores singulares (SVD) de $A$. Supongamos que el rango de $A$ es igual a $r$. Entonces, los primeros $r$ valores singulares serán diferentes de cero, mientras que los valores singulares restantes serán cero.

Si escribimos $U=[u_1 | \cdots | u_n]$ y $V=[v_1| \cdots | v_m]$, donde $u_i$ es la $i-ésima$ columna de $U$ (y de manera similar para $v_j$), entonces $A= \sum_{i=1}^r \sigma_i u_i v_i^T$, donde $\sigma_i$ es el $i-ésimo$ valor singular. Esto muestra que la transformación lineal $A$ puede descomponerse en la suma ponderada de las transformaciones lineales $u_i v_i^T$, cada una de las cuales tiene rango $1$.

Un valor singular grande $\sigma_k$ indicará que la contribución de la correspondiente transformación $u_k v_k^T$ es grande y un valor singular pequeño indicará que la contribución correspondiente a la acción de $A$ es pequeña. Como aplicación de esta intuición, hay casos donde, por ejemplo, $A$ es una matriz cuadrada de rango completo, por lo tanto, no tiene valores singulares cero, sin embargo, se elige un umbral y todos los términos en la suma $A= \sum_{i=1}^r \sigma_i u_i v_i^T$ correspondientes a valores singulares menores que este umbral se descartan. De esta manera, $A$ se aproxima por una matriz más simple $\tilde{A}$, cuyo comportamiento es, para propósitos prácticos, esencialmente el mismo que el de la matriz original.

También puede ser útil visualizar la acción de $A$ sobre un vector $x$ por medio de la fórmula anterior: $Ax = \sum_{i=1}^r (\sigma_i\langle v_i,x\rangle) u_i$. Observa que la imagen de $x$ es una combinación lineal de los vectores $u_i$ y los coeficientes dependen tanto de la magnitud de los valores singulares correspondientes como de las direcciones de los vectores $v_i$ con respecto a $x$. Por ejemplo, si $x$ es ortogonal a todos los $v_i$ para $i$ tal que $\sigma_i \neq 0$, entonces $Ax=0$. Por otro lado, si $x=v_k$ para algún $k$ tal que $\sigma_k \neq 0$, entonces $Av_k = \sigma_k u_k$.

11voto

Christopher A. Wong Puntos 12513
  1. Una forma de explicar la derivación de la SVD, al menos para una audiencia que ya sabe algo de álgebra lineal, es que la SVD de una matriz $A$ (que puede ser no cuadrada) proviene de diagonalizar la matriz cuadrada y hermitiana $$ \begin{bmatrix} O & A \\ A^{\ast} & O \end{bmatrix}, $$ donde $O$ denota una matriz cero del tamaño adecuado. Luego, los autovectores de esta matriz extendida están dados por el par $(u_i, \bar{v}_i)$, con autovalores $\sigma_i$, por lo que $u_i$ y $v_i$ son tus vectores singulares izquierdos y derechos, y así se forma la SVD $A = U \Sigma V^{\ast}$. En particular, los vectores singulares deben cumplir las ecuaciones $$ Av_i = \sigma_i u_i, \quad A^{\ast} u_i = \sigma_i v_i$$

  2. Si quieres explicar lo que significa la SVD intuitivamente, entonces creo que la mejor manera de hacerlo es pensar en los vectores singulares $u,v$ como la base que ortogonaliza el dominio y codominio de la transformación lineal, respectivamente, para que se alinee con la forma en que la matriz $A$ "logra" su rango. El mayor valor singular, $\sigma_1$, corresponde a la forma óptima de aproximar el comportamiento de $A$ mediante una matriz de rango 1, y este comportamiento está dado precisamente por $Av_1 = \sigma_1 u_1$. De manera similar, si quieres aproximar $A$ con una matriz de rango 2, entonces el comportamiento subyacente está dado por $$A(c_1 v_1 + c_2 v_2) = c_1 \sigma_1 u_1 + c_2 \sigma_2 u_2.$$ En general, utilizar los $k$ mayores valores singulares y los vectores singulares correspondientes te da una forma de explicar mejor el comportamiento de $A$ usando solo un operador de rango $k$. Además, el tamaño de los valores singulares te dice cómo $A$ "expande" longitudes a lo largo de diferentes direcciones.

0 votos

¡Respuesta brillante! ¿Pero parece que el eigenvector debería ser ($u_i, v_i$)?

2voto

TheSquad Puntos 185

La mejor manera de explicar SVD a una persona común es que es una forma de combinar información de varios vectores (probablemente) correlacionados, y formar vectores base que están garantizados de ser ortogonales en un espacio dimensional superior y explicar la mayor parte de la varianza en los datos.

Ahora que lo he escrito todo, puede que no sea tan fácil de explicar a alguien :)

0 votos

Lo siento, ha pasado mucho tiempo, pero ¿podrías por favor expandir tu respuesta? Gracias.

1voto

cgicgi Puntos 171

Consulta mi respuesta en Stack Overflow que intenta explicar qué significa la reducción de dimensionalidad para una persona sin conocimientos especializados.

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