Cholesky ontleding met R voorbeeld

methode voor het ontbinden van een positief-bepaalde matrix. Een positief-bepaalde matrix wordt gedefinieerd als een symmetrische matrix waarbij voor alle mogelijke vectoren \(x\), \(x ‘ Ax > 0\). Cholesky ontleding en andere ontledingsmethoden zijn belangrijk omdat het niet vaak haalbaar is om matrixberekeningen expliciet uit te voeren.Cholesky decompositie, ook bekend als Cholesky factorisatie, is een methode voor het ontbinden van een positief-definitematrix. Apositief-definitieve matrix wordt gedefinieerd als een symmetrische matrix waarbij voor alle mogelijke vectoren \(x\), \(x ‘ Ax > 0\). Cholesky decompositie en andere decompositiemethoden zijn belangrijk omdat het niet vaak haalbaar is om expliciet matrixberekeningen te maken. Sommige toepassingen van Choleskydeposition omvatten het oplossen van systemen van lineaire vergelijkingen, Monte Carlo simulatie, en Kalman filters.

Cholesky-ontledingsfactoren een positief-bepaalde matrix \(A\) in:

$$ a = LL^T$$

hoe een Matrix te ontleden met Cholesky decompositie

er zijn vele methoden voor het berekenen van een matrix decompositie met de colesky benadering. Deze post volgt een vergelijkbare benadering van deze implementatie.

de stappen in factoring van de matrix zijn als volgt:

  1. Bereken \(L_1 = \sqrt{a_{11}}\)
  2. voor \(k = 2, \ dots, n\):

  3. het Vinden van \(L_{k-1} l_k = a_k\) voor \(l_k\)

  4. \(l_{kk} = \sqrt{a_{kk} – l_k^T l_k}\)
  5. \(L_k =
    \begin{bmatrix} L_{k-1} & 0 \\ l_k^T & l_{cc}\end{bmatrix}

    \)

Een Voorbeeld van Cholesky Decompositie

Overweeg de volgende matrix \(A\).

$$a = \begin{bmatrix} 3 & 4 & 3 \\ 4 & 8 & 6 \\ 3 & 6 & 9\end{bmatrix}$$

de matrix \(A\) hierboven is overgenomen uit oefening 2.16 in het boek Methods ofMultivariate Analysis van Alvin Rencher.

begin met \(L_1\) te vinden.

$ $ L_1 = \sqrt{a_{11}} = \sqrt{3} = 1.732051 $$

vervolgens vinden we \(l_2\)

$$ l_2 = \frac{a_{21}} {L_1} = \frac{4}{\sqrt{3}} = 2.309401 $$

dan kan \(l_{22}\) worden berekend.

$$ l_{22} = \sqrt{a_{22} – l_2^T l_2} = \sqrt{8 – 2.309401^2} = 1.632993 $$

We hebben nu de \(L_2\) matrix:

$$L_2 = \begin{bmatrix} L_1 & 0 \\ l_2^T & l_{22}\end{bmatrix} = \begin{bmatrix} 1.732051 & 0 \\ 2.309401 & 1.632993 \ end{bmatrix}$$

omdat de matrix \(3 \maal 3\) is, hebben we nog maar één iteratie nodig.

Met \(L_2\) berekend, \(l_3\) kan worden gevonden:

$$ l_3 = \frac{a_3}{L_2} = a_3 L_2^{-1} = \begin{bmatrix} 1.732051 & 0 \\ 2.309401 & 1.632993\end{bmatrix}^{-1} \begin{bmatrix} 3 \\ 6\end{bmatrix}$$
$$l_3 = \begin{bmatrix} 1.7320508 \\ 1.224745 \end{bmatrix}$$

\(l_{33}\) wordt dan gevonden:

$$ l_{33} = \sqrt{a_{33} – l_3^T l_3} = \sqrt{9 – \begin{bmatrix}1.7320508 & 1.224745\end{bmatrix} \begin{bmatrix}1.7320508 \\ 1.224745\end{bmatrix}} = 2.12132 $$

Dat geeft ons de \(L_3\) matrix:

$$L_3 = \begin{bmatrix} 1.7320508 & 0 & 0 \\ 2.309401 & 1.632993 & 0 \\ 1.7320508 & 1.224745 & 2.12132\end{bmatrix}$$

De \(L_3\) matrix kunnen dan genomen worden als de oplossing. Het omzetten van de samenstelling verandert de matrix in een bovenste driehoekige matrix.

Cholesky-ontleding in R

de functie chol() voert Cholesky-ontleding uit op apositief-definitieve matrix. We definiëren de matrix \(A\) als volgt.

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

factor vervolgens de matrix met de functie 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

de functie chol() geeft een bovenste driehoekige matrix terug. Het transposeren van de ontbonden matrix levert een lagere driehoekige matrix op, zoals in ons resultaat hierboven.

t(A.chol)
## ## 1.732051 0.000000 0.00000## 2.309401 1.632993 0.00000## 1.732051 1.224745 2.12132

ons resultaat hierboven komt overeen met de uitvoer van de chol() functie.

we kunnen ook de identiteit \(A = LL^T\) met het resultaat tonen.

t(A.chol) %*% A.chol
## ## 3 4 3## 4 8 6## 3 6 9

samenvatting

Cholesky ontleding wordt vaak gebruikt wanneer directe berekening van een matrix niet optimaal is. De methode wordt gebruikt in een verscheidenheid van toepassingen, zoals multivariate analyse vanwege zijn relatief efficiënte aard en stabiliteit.

(2011). Geraadpleegd op: http: / / www. seas. ucla.edu/~vandenbe/103/lectures/chol.pdf

algoritme voor Cholesky decompositie. Geraadpleegd op: http: / / www. math. sjsu. edu/ ~ foster / m143m/cholesky. pdf

Cholesky decomposition (2016). In Wikipedia. Opgehaald uit https: / / nl.wikipedia.org / wiki / Cholesky_decomposition

Rencher, A. C. (2002). Methoden van multivariate analyse. New York: J. Wiley.

  • kwadratische Discriminant analyse van verscheidene groepen
  • kwadratische Discriminant analyse van twee groepen
  • Discriminant analyse van verscheidene groepen
  • Lineaire Discriminant analyse voor de classificatie van verscheidene groepen
  • Lineaire Discriminant analyse voor de classificatie van twee groepen