エンジニアを目指す浪人のブログ

情報系に役立ちそうな応用数理をゆるめにメモします

分散共分散行列(と相関行列)は半正定値であることを証明する

応用上よく用いられると思われる,分散共分散行列(covariance matrix)は半正定値(positive semidefinite)である,という事実を証明することにしました.同様に相関行列(correlation matrix)も半正定値であることについて,記事の最後で簡単に触れます.


問題を設定するため,以下の定義を用います.

Horn and Johnson(2013) Definition 4.1.11.から引用します(和訳しています)(Definition 4.1.9.にエルミート行列に対するほぼ同様の定義がありますが本記事では実数における議論で十分なので以下を用います).

定義 4.1.11.   {\displaystyle n \times n } 実対称行列 {\displaystyle A } は,全ての零ベクトルでない {\displaystyle x \in \mathbb{R}^n } について {\displaystyle x^T A x \gt 0 } が成り立つとき正定値(positive definite)という; 全ての零ベクトルでない {\displaystyle x \in \mathbb{R}^n } について {\displaystyle x^T A x \ge 0 } が成り立つとき半正定値(positive semidefinite)という; {\displaystyle y^T A y \lt 0 \lt z^T A z } を満たす {\displaystyle y,z \in \mathbb{R}^n } が存在するとき不定値(indefinite)という. 

 分散共分散行列の2通りの定義( {\displaystyle \Sigma }{\displaystyle Q_X } )は文献[2]にあるものを用います.


以上の設定のもとで,本記事の目的に進みます.証明は文献[3]を参考にしています.{\displaystyle \langle \cdot,\cdot \rangle }{\displaystyle \mathbb{R}^n } あるいは {\displaystyle \mathbb{R}^p } における通常の内積{\displaystyle || \cdot ||_2 ( =  ( \langle \cdot,\cdot \rangle )^{1/2} ) }ユークリッドノルムです.

事実.
分散共分散行列 {\displaystyle \Sigma } は半正定値である.
(中心化したデータ行列から計算される)分散共分散行列 {\displaystyle Q_X } は半正定値である.


証明.
任意の固定された(確率変数でない) {\displaystyle u \in \mathbb{R}^n } について

{\displaystyle u^T \Sigma u }
{\displaystyle = u^T E \left[ (X - E [ X ])(X - E [ X ] )^T \right] u }
{\displaystyle = E \left[ u^T (X - E [ X ])(X - E [ X ] )^T u \right] }
{\displaystyle = E \left[ \langle u ,X - E [X ] \rangle \langle X - E [X ] , u \rangle \right] }
{\displaystyle = E \left[ \left( \langle u ,X - E [X ] \rangle \right)^2 \right] \ge 0  }

である.

同様に,任意の固定された(確率変数でない) {\displaystyle v \in \mathbb{R}^p } について

{\displaystyle v^T Q_X v }
{\displaystyle = v^T \left[ \frac{1}{n-1} (M_X)^T M_X \right] v }
{\displaystyle = \frac{1}{n-1} \left[ v^T (M_X)^T M_X v \right] }
{\displaystyle = \frac{1}{n-1} \left[ (M_X v)^T (M_X v) \right] }
{\displaystyle = \frac{1}{n-1} \left[ \langle M_X v , M_X v \rangle \right] }
{\displaystyle = \frac{1}{n-1} || M_X v ||_2^2 \ge 0 }

であるので,事実は示せた.(証明終わり) 

 

以上,分散共分散行列は半正定値であることを証明しました.中心化したデータ行列のきちんとした定義は例えば 文献[4] 2.1準備 にあります.


相関行列もその定義から半正定値になっています.相関行列の定義は文献[2]の {\displaystyle \mathrm{corr}(X) } を使い,また,(中心化したデータ行列から計算される)相関係数の定義は文献[2]の {\displaystyle Q_X } における {\displaystyle M_X } が(標準偏差により)標準化されているものを使います.データの標準化については 文献[4] 2.4 データの標準化 に説明があります.これら2通りの相関行列が半正定値であることの証明は,上の分散共分散行列の場合とほぼ同様に行うことが可能です.


参考文献
[1] Horn, R.A., and Johnson, C.R. (2013), Matrix Analysis(Second Edition), Cambridge University Press.
[2] Wikipedia Covariance matrixのページ https://en.wikipedia.org/wiki/Covariance_matrix
[3] Toyota Technological Institute at Chicago  David McAllester先生のノート http://ttic.uchicago.edu/~dmcallester/ttic101-07/lectures/Gaussians/Gaussians.pdf
[4] 京都大学 加納 学 先生のノート http://manabukano.brilliant-future.net/document/text-PCA.pdf