[Math] Matrix-Square Root

matricesnumerical linear algebranumerical methods

I was wondering about matrix square roots. What is the procedure to evaluate $(X^{T}X)^{-1/2}$? Is it by a spectral decomposition of $(X^{T}X)^{-1}$ as $U\lambda U^{T}$ followed by the square root $S$ obtained as $U\lambda^{1/2}$? I would like to hear more.

Best Answer

The best way I can think of to calculate this particular matrix square root is to calculate a singular value decomposition of $X$. You should be able to use the LAPACK routine xgesvd, where 'x' is the appropriate choice of s (single), d (double), or z (complex).

Suppose that $X = U\Sigma V^{H}$ is a singular value decomposition of $X$, where the superscript $H$ stands for Hermitian (complex conjugate) transpose, $U$ and $V$ are unitary, and $\Sigma$ is diagonal with nonnegative elements.

Then $X^{H}X$ = $V\Sigma^{2}V^{H}$ is an eigenvalue decomposition. It follows that

$$(X^{H}X)^{-1/2} = V\Sigma^{-1}V^{H}$$

exists iff all of the singular values of $X$ are strictly positive.

Related Question