Introduction to the Cholesky Decomposition.
Cholesky Decomposition is used for its superior efficiency in linear calculation, such as affine function, $Ax = b$. Among many applications of Cholesky Decomposition, I will discuss about how the multivariate normal random numbers are generated with Cholesky Decomposition.
$\large{Definition}$:
Every positive definite matrix $A \in \mathcal{R}^{n \times n}$,
The Cholesky Decomposition is a form of
$$A = LL^{T}$$
where $L$ is the lower triangular matrix with real and positive diagonal elements. $L$ is called Cholesky factor of $A$ and it can be interpreted as the square root of a positive definite matrix.
$\large{Algorithm}$:
This algorithm is used in this link, and there are many apporaches to decompose a matrix with Cholesky Decomposition.
- Compute $L_{1} = \sqrt{a_{11}}$
- For $k = 2, … ,n$, find $L_{k-1}l_{k} = a_{k} for 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}$
then $L_{k}$ is the lower triangular matrix of Cholesky Decomposition.
Other approaches;
$\large{Generating}$ $\large{Multivariate}$ $\large{Normal}$ $\large{Random}$ $\large{Number}$ $\large{with}$ $\large{Cholesky}$ $\large{Decomposition}$
If we have $X$ that follows Normal Distribution,
then
$$X \sim \mathcal{N}(\mu, \Sigma)$$
Let $Z$ follows standard normal distribution with mean 0 and variance 1.
Then,
$$Z \sim \mathcal{N}(0,I)$$
Then, we can express the $X$ with $Z$ as the following;
$$X = A+BZ$$
then $X$ will follow normal distribution as the following;
$$X \sim \mathcal{N}(A,BB’)$$
Here, $\mu$ is the $A$, and $\Sigma$ is the $BB’$. The $B$ is the lower triangular matrix of the decomposed $X$, which is the Cholesky factor.
Therefore, If we have a Cholesky factor, $B$, of covariance matrix of $X$, then the product of $B$ and standard normal random number matrix will generate the multivariate normal random number associated with the mean $\mu$ and covariance $\Sigma$ of $X$.
Reference:
Cholesky Decomposition
Cholesky Factorization
Cholesky Decomposition with R example
link
Bivariate Normal Distribution