Cholesky sönderdelning med R exempel
metod för sönderdelning av en positiv bestämd matris. En positiv bestämd matris definieras som en symmetrisk matris där för alla möjliga vektorer \(x\), \(x ’ Axe > 0\). Cholesky sönderdelning och andra sönderdelningsmetoder är viktiga eftersom det inte ofta är möjligt att utföra matrisberäkningar uttryckligen.
Cholesky sönderdelning, även känd som Cholesky faktorisering, är enmetod för sönderdelning av en positiv-definitematrix. Apositiv-bestämd matris definieras som en symmetrisk matris där för allamöjliga vektorer \(x\), \(x ’ Ax > 0\). Cholesky sönderdelning och andradekompositionsmetoder är viktiga eftersom det inte ofta är möjligt att utföra matrisberäkningar uttryckligen. Vissa tillämpningar av Choleskydecompositioninclude lösa system av linjära ekvationer, Monte Carlo simulering, ochkalman filter.
Cholesky sönderdelningsfaktorer en positiv bestämd matris \(A\) i:
hur sönderdelas en matris med Kolesky sönderdelning
det finns många metoder för att beräkna en matrisnedbrytning medcholesky-metoden. Detta inlägg tar ett liknande tillvägagångssätt för dettagenomförande.
stegen i factoring matrisen är följande:
- beräkna \(L_1 = \sqrt{a_{11}}\)
-
för \(k = 2, \ dots, n\):
-
hitta \(L_{k-1} l_k = a_k\) för \(l_k\)
- \(l_{kk} = \sqrt{a_{kk} – l_k^T l_k}\)
- \(L_k =
\ begin{bmatrix} L_{k-1} & 0 \ \ l_k^T & l_{kk} \ end{bmatrix}
\)
ett exempel på Cholesky sönderdelning
Tänk på följande matris \(A\).
matrisen \(A\) ovan är hämtad från övning 2.16 i boken Methods ofMultivariate Analysis av Alvin Rencher.
börja med att hitta \(L_1\).
nästa hittar vi \(l_2\)
då kan \(l_{22}\) beräknas.
vi har nu matrisen \(L_2\):
eftersom matrisen är \(3 \gånger 3\), Vi behöver bara en mer iteration.
med\ (L_2\) beräknad, \ (l_3\) kan hittas:
\(l_{33}\) hittas sedan:
vilket ger oss \(L_3\) matrisen:
\(L_3\) matrisen kan sedan tas som lösningen. Transponering thedecomposition ändrar matrisen till en övre triangulär matris.
Cholesky sönderdelning i R
funktionen chol()
utför Cholesky sönderdelning på apositiv bestämd matris. Vi definierar matrisen \(A\) enligt följande.
A = as.matrix(data.frame(c(3,4,3),c(4,8,6),c(3,6,9)))colnames(A) <- NULLA
## ## 3 4 3## 4 8 6## 3 6 9
faktor sedan matrisen med funktionen chol()
.
A.chol <- chol(A)A.chol
## ## 1.732051 2.309401 1.732051## 0.000000 1.632993 1.224745## 0.000000 0.000000 2.121320
funktionen chol()
returnerar en övre triangulär matris. Transponeringden sönderdelade matrisen ger en lägre triangulär matris som i vårt resultatovan.
t(A.chol)
## ## 1.732051 0.000000 0.00000## 2.309401 1.632993 0.00000## 1.732051 1.224745 2.12132
vårt resultat ovan matchar utgången från funktionen chol()
.
vi kan också visa identiteten \(A = LL^T\) med resultatet.
t(A.chol) %*% A.chol
## ## 3 4 3## 4 8 6## 3 6 9
sammanfattning
Cholesky sönderdelning används ofta när direktberäkning av en matris inte är optimal. Metoden används i en mängd olikaapplikationer såsom multivariat analys på grund av dess relativteffektiv natur och stabilitet.
(2011). Hämtad frånhttp://www.seas.ucla.edu/~vandenbe/103 / föreläsningar / chol.pdf
algoritm för Kolesky sönderdelning. Hämtad frånhttp://www.math.sjsu.edu/~foster / m143m / cholesky.pdf
Cholesky sönderdelning (2016). På Wikipedia. Hämtad frånhttps: / / sv.wikipedia.org / wiki / Cholesky_dekomposition
Rencher, A. C. (2002). Metoder för multivariat analys. New York: J. Wiley.
- kvadratisk diskriminantanalys av flera grupper
- kvadratisk diskriminantanalys av två grupper
- diskriminantanalys av flera grupper
- linjär diskriminantanalys för klassificering av flera grupper
- linjär diskriminantanalys för klassificering av två grupper