【数学】矩阵白化原理及推导

矩阵白化目的

如对于任意一个矩阵\(X\),对其求协方差,得到的协方差矩阵\(cov(X)\)并不一定是一个单位阵(对角阵);【注意:协方差矩阵是对称矩阵,但不一定是对角阵】而矩阵白化就是找到一个变换矩阵\(P\),使得\(Y=PX\)的协方差矩阵\(cov(Y)\)是一个单位阵(对角阵)。因为通过矩阵白化后,协方差是个对角阵(单位阵),那么就代表着矩阵Y的各个向量(向量是列向量还是行向量要根据求协方差时\(cov(X)=XX^T还是X^TX来判断\))之间就不相关了。或者说,矩阵白化的目的就是让被变换的矩阵经过变换后其向量的方差相同(因为是单位阵)那么该怎么找到这个变换矩阵\(P\)呢?

矩阵白化推导

对于矩阵\(X\),其协方差矩阵\(cov(X)=XX^T\)并不一定为对角矩阵,但是对于实对称的协方差矩阵可以有如下的特征值分解:详见【特征值分解】

\[cov(X)=Q\Lambda Q^{T} \]

其中的\(\Lambda\)为由特征值组成的对角矩阵,\(Q\)为对应的特征向量,是一个正交矩阵。现在我们要找到线性变换矩阵P,使得\(Y=PX\)的协方差矩阵可以是单位阵,即

\[cov(Y)=YY^T=PX(PX)^T=PXX^TP^T=Pcov(X)P^T=E(单位阵) \]

现在令\(P=\Lambda^{-1/2} Q^T(矩阵开根号就是其中的每个元素开根号)\),那么有

\[\begin{aligned} cov(Y)&=Pcov(x)P^T\\ &=\Lambda^{-1/2} Q^TQ\Lambda Q^{T}(\Lambda^{-1/2}Q^T)^T \\ &=\Lambda^{-1/2} Q^TQ\Lambda Q^{T}Q\Lambda^{-1/2}\\ (因为Q是正交矩阵,即QQ^T=E) &=\Lambda^{-1/2}\Lambda \Lambda^{-1/2}\\ &=E \end{aligned} \]

所以说当\(P=\Lambda^{-1/2} Q^T\)时,可以使得\(Y=PX\)的协方差矩阵为单位阵(对角阵)。

因此 ,通过矩阵白化后,矩阵Y的各个向量(列向量还是行向量根据上文确定)之间就不相关了.

posted @ 2020-09-03 17:07  LENMOD  阅读(3682)  评论(0编辑  收藏  举报