3 votos

Distancia de Mahalanobis y álgebra lineal

No estoy muy al día en mis conocimientos de álgebra lineal y estoy teniendo algunos problemas para entender una explicación del libro Pattern Recognition and Machine Learning, (Bishop).

Dice, considera la distancia de Mahalnobis, $\Delta^{2}=(x-\mu)^{T}\Sigma^{-1}(x-\mu)$

Donde $\Sigma$ es una matriz simétrica real (la matriz de covarianza de la varianza).

"Porque $\Sigma$ es real y simétrica, sus valores propios serán reales y sus vectores propios pueden ser elegidos para formar un conjunto ortonormal, por lo que ..."

$u_{i}^{T}u_{j}=I_{ij}$

y $\Sigma$ puede escribirse como

$$\Sigma= \sum_{i=1}^{D} \lambda_{i} u_{i}u_{i}^{T}$$

y $$\Sigma^{-1}=\sum_{i=1}^{D} \frac{1}{\lambda_{i}}u_{i}u_{i}^{T}$$

así que $$\Delta^{2}=\sum_{i=1}^{D} \frac{y_{i}^{2}}{\lambda_{i}}$$

donde $$y_{i}=u_{i}^{T}(x-\mu)$$

Sólo busco entender mejor estos pasos. No entiendo cómo se consigue. Entiendo lo básico como que el teorema espectral real nos dice que tenemos una diagonlización con una matriz ortogonal, pero no entiendo cómo usan eso para calcular $\Sigma$ , $\Sigma^{-1}$ y la elección de $y_{i}$ . Me interesa más la interpretación real. La geometría y cómo se puede utilizar.

Gracias a quien pueda ayudar.

2voto

icurays1 Puntos 9121

En primer lugar, la distancia de Mahalanobis se define realmente como $\sqrt{\Delta^2} = \sqrt{(x-\mu)^\intercal \Sigma^{-1}(x-\mu)}$ . Piensa por analogía en la distancia "euclidiana" (la distancia "habitual" entre dos puntos), que es la raíz cuadrada de la suma de cuadrados.

La idea principal del uso de los vectores propios es que estás eligiendo una base para $\Bbb{R}^D$ que es "más adecuado" para la aplicación de la matriz $\Sigma$ y su inversa. La mejor base es la que consiste en los vectores propios (ortonormalizados) de $\Sigma$ .

¿Por qué es una base "mejor", te preguntarás? Bueno, por varias razones:

  1. Si $u_j$ es un vector propio de $\Sigma$ tenemos $\Sigma u_j = \lambda_j u_j$ . En otras palabras, aplicar la transformación lineal es realmente fácil para los vectores propios: sólo los escalamos.
  2. Porque $\Sigma$ es semidefinido positivo, podemos hacer una ortonormal base de vectores propios. Las bases ortonormales son particularmente buenas porque expresar un vector arbitrario en esa base es fácil. Digamos que $y\in \Bbb{R}^D$ . Entonces, diciendo $\{u_j\}$ es una base ortonormal equivale a decir que

$$ y = \sum_{j=1}^D (y^\intercal u_j) u_j = \sum_{j=1}^Du_j(u_j^\intercal y) $$ ¿Por qué es útil esta identidad? Si aplicamos $\Sigma$ y utilizar el hecho de que $\Sigma u_j = \lambda_j u_j$ inmediatamente vemos por qué:

$$ \Sigma y = \sum_{j=1}^D\Sigma u_j (u_j^\intercal y)= \sum_{j=1}^D\lambda_j u_j (u_j^\intercal y) \tag{1} $$ Otra forma de escribir esto es simplemente

$$ \Sigma = \sum_{j=1}^D\lambda_j u_ju_j^\intercal \tag{2} $$ (Aplicar ambos lados a $y$ para ver por qué (1) y (2) son lo mismo). Obsérvese que (2) es completamente equivalente a la "descomposición espectral" de $\Sigma$ que suele escribirse como

$$ \Sigma = U\Lambda U^\intercal \tag{3} $$ donde $U$ es la matriz de vectores propios, que satisface $U^\intercal U = I$ y $\Lambda$ es la matriz diagonal de valores propios.

  1. No sólo es fácil de aplicar $\Sigma$ si cambiamos la base por $\{u_j\}$ pero también es fácil aplicar la inversa. Supongamos que queremos resolver la ecuación

$$ \Sigma x = y $$ Utilizando la expresión matricial (3), podemos escribirla como

$$ U\Lambda U^\intercal x = y $$ Ahora, sabemos que $U^\intercal U = I$ , por lo que podemos aplicar $U^\intercal$ a ambos lados de la ecuación:

$$ U^\intercal U\Lambda U^\intercal x = U^\intercal y $$ y así

$$ \Lambda U^\intercal x = U^\intercal y \tag{4} $$ lo que dice esta ecuación, por cierto, es que el coeficientes de $x$ en la base $\{u_j\}$ están relacionados con el coeficientes de $y$ en la base $\{u_j\}$ por una matriz diagonal $\Lambda$ . Asumiendo que $\lambda_j>0$ , también podemos resolver la ecuación (4) fácilmente:

$$ U^\intercal x = \Lambda^{-1}U^\intercal y $$ La inversa de una matriz diagonal es simplemente la matriz diagonal con $1/\lambda_j$ Por cierto. Por último, podemos aplicar $U$ a ambos lados para obtener

$$ x = U\Lambda^{-1}U^\intercal y $$ Otra forma de escribir esto es

$$ x = \Sigma^{-1}y = \sum_{j=1}^D \frac{1}{\lambda_j} u_j u_j^\intercal y \tag{5} $$ O, lo que es lo mismo,

$$ \Sigma^{-1} = \sum_{j=1}^D \frac{1}{\lambda_j}u_ju_j^\intercal $$ Por último, ¿cómo utilizamos estas expresiones para obtener la distancia de Mahalanobis en la base del vector propio? Bien, supongamos primero que queremos calcular $\Sigma^{-1}(x - \mu)$ . Podemos aplicar simplemente la expresión (5):

$$ \Sigma^{-1}(x-\mu) = \sum_{j=1}^D\frac{1}{\lambda_j}u_ju_j^\intercal (x-\mu) =\sum_{j=1}^D\frac{u_j^\intercal (x-\mu) }{\lambda_j}u_j $$ Ahora, para calcular $\Delta^2$ multiplicamos ambos lados por $(x-\mu)^\intercal$ Utiliza la linealidad de las sumas y la simetría del producto punto:

$$ \Delta^2 = (x-\mu)^\intercal \sum_{j=1}^D\frac{u_j^\intercal (x-\mu) }{\lambda_j}u_j = \sum_{j=1}^D\frac{u_j^\intercal (x-\mu) }{\lambda_j}(x-\mu)^\intercal u_j = \sum_{j=1}^D \frac{y_j^2}{\lambda_j} $$ donde $y_j = (x-\mu)^\intercal u_j$ .

Geométricamente, lo que hace $y_j = (x-\mu)^\intercal u_j$ ¿Representar? Bueno, piensa en $x$ como un punto de datos; restar la media simplemente hace que el origen $\mu$ en lugar de $0$ . Entonces, $(x-\mu)^\intercal u_j$ es la componente del punto de datos (recentrado) en la dirección del vector propio $u_j$ . Este vector propio suele llamarse componente principal en la literatura estadística; así, $(x-\mu)^\intercal u_j$ es la "cantidad" del punto de datos (recentrado) en la dirección del $j$ componente principal.

Entonces, ¿por qué la distancia de Mahalanobis es una "distancia"? ¿Existe una interpretación geométrica? De hecho, estamos cambiando nuestra base a la base de componentes principales (vectores propios) y, a continuación, simplemente calculamos un ponderado distancia euclidiana entre nuestro punto de datos $x$ y la media $\mu$ . Los pesos son los valores propios (inversos) $\lambda_j$ . ¿Por qué elegir estos pesos? Bueno, los valores propios más pequeños de $\Sigma$ corresponden a correlaciones más débiles; queremos normalizar las correlaciones antes de calcular la distancia.

Otra buena manera de pensar en ello es que estamos realizando una blanqueamiento antes de calcular las distancias: si definimos

$$ z = \Sigma^{-1/2}(x-\mu) $$ Entonces, tenemos

$$ \Delta^2 = z^\intercal z $$ Se llama transformación de blanqueo porque convierte vectores aleatorios en "ruido blanco", es decir, vectores con media $0$ y la covarianza $I_{D\times D}$ . Esto es como la transformación de la "puntuación Z" que se aprende en Stat 101:

$$ Z = \frac{x-\mu}{\sigma} $$

Espero que eso ayude. Normalmente haría dibujos pero no tengo tiempo. Debe haber algunos videos de YouTube por ahí en Mahalanobis y PCA que puede ayudar.

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