¿Cuál es una explicación intuitiva de la descomposición de Cholesky?

Suponga (según se requiera) que A es una matriz simétrica, definida positiva, n por n. Entonces puede verse como un producto interno en [math] \ mathbf {R} ^ n [/ math] dado por [math] \ langle v, w \ rangle: = v ^ \ mathrm {T} Aw [/ math ] donde v y w se consideran como vectores de columna. La entrada (i, j) de A es el valor del producto interno [math] \ langle e_i, e_j \ rangle [/ math] con respecto a alguna elección de base [math] B = \ {e_1, \ dots , e_n \} [/ math]. Si M es la matriz cuya i-ésima fila está dada por las coordenadas de [math] e_i [/ ​​math], entonces [math] A = MM ^ \ mathrm {T} [/ math]. Para convertir M en una matriz triangular inferior, utilice el proceso de Gram-Schmidt para convertir B en una base ortonormal. La matriz de cambio de base es una matriz triangular L (que si realiza el proceso en el orden correcto se puede elegir como triangular inferior). Por lo tanto, M = LK, donde las filas de K son las coordenadas de la nueva base ortornomal. Por lo tanto, K es una matriz ortogonal, es decir, [matemática] KK ^ \ mathrm {T} [/ math] = I. Entonces, [matemáticas] A = MM ^ \ mathrm {T} = LK (LK) ^ \ mathrm {T} = LKK ^ \ mathrm {T} L ^ \ mathrm {T} = LL ^ \ mathrm {T} [/ matemáticas] según lo deseado.

En otras palabras, la respuesta es que una matriz simétrica definida positiva codifica un producto interno en alguna red en [math] \ mathbf {R} ^ n [/ math]. Puede cambiar la base de esta red utilizando el proceso de Gram-Schmidt para obtener el resultado.

Voy a responder desde el contexto de generar números aleatorios correlacionados (este es el caso de uso más familiar, de todos modos para mí).

El problema es: necesitamos un sorteo aleatorio de una distribución normal multivariada n-dimensional con matriz de covarianza [matemática] A [/ matemática]. Tenemos [math] n [/ math] desviaciones aleatorias independientes extraídas de [math] N (0,1) [/ math]. ¿Qué es una matriz de transformación por la que podemos multiplicar?

Para cualquier matriz de este tipo [math] M [/ math], debemos tener [math] MM ^ T = A [/ math], porque el producto de punto de [math] i ^ {\ rm th} [/ math] y [math] j ^ {\ rm th} [/ math] las filas de [math] M [/ math] siempre deben ser iguales a [math] A_ {ij} [/ math]. Esto proporciona [math] n (n + 1) / 2 [/ math] restricciones, y [math] M [/ math] tiene elementos [math] n ^ 2 [/ math], por lo que hay muchas soluciones.

Una cosa que podemos hacer es proceder inductivamente. Comenzamos con una restricción artificial: la primera salida aleatoria (llámela [math] b_1 [/ math]) debe estar completamente controlada por la primera desviación. Entonces [matemática] M_ {1j} = 0 [/ matemática] para [matemática] j> 1 [/ matemática], y [matemática] M_ {11} ^ 2 = A_ {11} [/ matemática]. Entonces ahora sabemos [matemáticas] M_ {11} [/ matemáticas].

Ahora la covarianza entre [matemáticas] b_1 [/ matemáticas] y [matemáticas] b_2 [/ matemáticas] es exactamente [matemáticas] M_ {11} M_ {21} [/ matemáticas]. Entonces ahora sabemos [matemáticas] M_ {21} [/ matemáticas]. Ahora agregamos otra restricción artificial, que [matemática] M_ {2j} = 0 [/ matemática] para [matemática] j> 2 [/ matemática] (de modo que solo las dos primeras desviaciones contribuyen a [matemática] b_2 [/ matemática] ) Entonces necesitamos [matemáticas] M_ {21} ^ 2 + M_ {22} ^ 2 = A_ {22} [/ matemáticas], y como ya sabemos [matemáticas] M_ {21} [/ matemáticas], ahora sabemos [ matemáticas] M_ {22} [/ matemáticas] también.

Ahora continuamos trabajando hacia adelante a través de sucesivas [math] b_i [/ ​​math], que corresponden a las filas de [math] M [/ math]. En cada fila trabajamos de izquierda a derecha, calculando [matemáticas] M_ {ij} [/ matemáticas] para sucesivas [matemáticas] j i [/ matemática], y elegimos [matemática] M_ {ii } [/ math] para obtener el valor correcto para [math] A_ {ii} [/ math].

Al final de este proceso [matemática] M [/ matemática] es triangular inferior debido a las restricciones artificiales que agregamos en cada fila. Esa es la descomposición de Cholesky.