転ばぬ先の備忘録

記事を書くための活性化エネルギーになかなか到達しない

正準相関分析(Canonical Correlation Analysis; CCA)における固有ベクトルの直交性

正準相関分析とは

正準相関分析(Canonical Correlation Analysis; CCA,多変量解析の一手法)は,2組の変数ベクトル  \boldsymbol{x} \in \mathbb{R}^p, \boldsymbol{y} \in \mathbb{R}^q で構成される観測データ  (\boldsymbol{x} _ 1, \boldsymbol{y} _ 1), (\boldsymbol{x} _ 2, \boldsymbol{y} _ 2), \cdots (\boldsymbol{x} _ N, \boldsymbol{y} _ N) に対して,線形変換:

 \displaystyle u = \boldsymbol{a}^{\mathrm{T}}\boldsymbol{x}, v = \boldsymbol{b}^{\mathrm{T}}\boldsymbol{y} \tag{1}

を行い,変換後の  N 個ずつの変数(正準相関変数) u, v 間の相関係数を最大化するもの.参考:原著*1,解説記事(例)*2,多変量解析について(例)*3.色々な分野(話題のものだと機械学習系,部分空間同定など)で適用されてきたらしい.

CCAと固有値問題

(1) の  u, v 間の相関係数を最大化する変換係数ベクトル  \boldsymbol{a}, \boldsymbol{b} を求める問題は,次の一般化固有値問題に帰着される(中略).

 \displaystyle \begin{bmatrix}
O & V _ {xy} \\
V _ {yx} & O \\
\end{bmatrix}
\begin{bmatrix}
\boldsymbol{a} \\
\boldsymbol{b} \\
\end{bmatrix} = 
\lambda \begin{bmatrix}
V _ {xx} & O \\
O & V _ {yy} \\
\end{bmatrix}
\begin{bmatrix}
\boldsymbol{a} \\
\boldsymbol{b} \\
\end{bmatrix}
 \tag{2}

ただし, V _ {xx}, V _ {xy}, V _ {yx}, V _ {yy} はサンプル分散共分散行列であり,固有値  \lambda u, v 間の相関係数と一致する(説明は略). \lambda m = \mathrm{min} (p,q) 個あり,

 \displaystyle 1 \geq \lambda _ 1 \geq \lambda _ 1 \geq \cdots \geq \lambda _ m \geq 0 \tag{3}

を満たす.今回の記事は,(2) の固有値問題で異なる固有値  \lambda _ i, \lambda _ j に対する固有ベクトル  (\boldsymbol{a} _ i, \boldsymbol{b} _ i), (\boldsymbol{a} _ j, \boldsymbol{b} _ j) について, \boldsymbol{a} _ i, \boldsymbol{a} _ j および  \boldsymbol{b} _ i, \boldsymbol{b} _ j はそれぞれ直交するという性質を示す.

ここまで読んで,(これってPCA, MLRみたいな,線形写像によるデータの次元削減だよね,固有ベクトル直交するの自明だよね)って思った方はYoutubeでかわいい動物やVtuberの動画を探すほうが有意義な時間を過ごせます.そこそこ探しても直交性を確かめている文献が無かった気がしたので...

式変形タイム

(2) を以下の固有値問題の形式に書き直す:

 \displaystyle V _ {xx} ^ {-1} V _ {xy} V _ {yy} ^ {-1} V _ {yx} \boldsymbol{a} = \lambda ^ 2 \boldsymbol{a}, \quad V _ {yy} ^ {-1} V _ {yx} V _ {xx} ^ {-1} V _ {xy} \boldsymbol{b} = \lambda ^ 2 \boldsymbol{b} \tag{3}

これに対して,固有ベクトル  \boldsymbol{a} _ i, \boldsymbol{a} _ j は以下を満たす.

 \displaystyle V _ {xx} ^ {-1} V _ {xy} V _ {yy} ^ {-1} V _ {yx} \boldsymbol{a} _ i = \lambda _ i ^ 2 \boldsymbol{a} _ i, \quad V _ {xx} ^ {-1} V _ {xy} V _ {yy} ^ {-1} V _ {yx} \boldsymbol{a} _ j = \lambda _ j ^ 2 \boldsymbol{a} _ j \tag{4}

この第一式両辺左側から  \boldsymbol{a} _ j ^ {\mathrm{T}} V _ {xx} を,第二式の両辺を転置して右側から  V _ {xx} \boldsymbol{a} _ i を作用させると,

 \displaystyle \left\{ \begin{split}
( \boldsymbol{a} _ j ^ {\mathrm{T}} V _ {xx} ) V _ {xx} ^ {-1} V _ {xy} V _ {yy} ^ {-1} V _ {yx} \boldsymbol{a} _ i = \lambda _ i ^ 2 ( \boldsymbol{a} _ j ^ {\mathrm{T}} V _ {xx} ) \boldsymbol{a} _ i, \\ \boldsymbol{a} _ j ^ {\mathrm{T}} V _ {xy} V _ {yy} ^ {-1} V _ {yx} V _ {xx} ^ {-1} ( V _ {xx} \boldsymbol{a} _ i ) = \lambda _ j ^ 2 \boldsymbol{a} _ j ^ {\mathrm{T}} ( V _ {xx} \boldsymbol{a} _ i )
\end{split} \right.
 \displaystyle \Rightarrow \left\{ \begin{split}
\boldsymbol{a} _ j ^ {\mathrm{T}} V _ {xy} V _ {yy} ^ {-1} V _ {yx} \boldsymbol{a} _ i = \lambda _ i ^ 2 \boldsymbol{a} _ j ^ {\mathrm{T}} V _ {xx} \boldsymbol{a} _ i, \\ \boldsymbol{a} _ j ^ {\mathrm{T}} V _ {xy} V _ {yy} ^ {-1} V _ {yx} \boldsymbol{a} _ i = \lambda _ j ^ 2 \boldsymbol{a} _ j ^ {\mathrm{T}} V _ {xx} \boldsymbol{a} _ i
\end{split} \right.

 \displaystyle \Rightarrow \lambda _ i ^ 2 \boldsymbol{a} _ j ^ {\mathrm{T}} V _ {xx} \boldsymbol{a} _ i = \lambda _ j ^ 2 \boldsymbol{a} _ j ^ {\mathrm{T}} V _ {xx} \boldsymbol{a} _ i \tag{5}

が得られる.(5) において, \lambda _ j \neq \lambda _ j を考慮すると,

 \displaystyle \boldsymbol{a} _ j ^ {\mathrm{T}} V _ {xx} \boldsymbol{a} _ i = 0 \tag{6}

が得られる.これに (2) の一般化固有値問題を導出する過程で入れる制約(詳細は略):

 \displaystyle \boldsymbol{a} _ i ^ {\mathrm{T}} V _ {xx} \boldsymbol{a} _ i = 1 \tag{7}

を加えることで,

 \displaystyle \boldsymbol{a} _ j ^ {\mathrm{T}} \boldsymbol{a} _ i = 0 \tag{8}

が導出される.これは 固有ベクトル  \boldsymbol{a} _ i, \boldsymbol{a} _ j の直交性そのもの.また, \boldsymbol{b} _ i, \boldsymbol{b} _ j の直交性については (3) ~ (8) の変形を同様に行うことで導出できる.

コメント

(略)が多いけれども注釈に挙げた資料に載っているのでとりあえず割愛.後日気が向けば書くかも?実装についてはこちらの記事

qiita.com

が分かりやすいです.

*1:H.Hotelling, "Relations between two sets of variables," 1936.

*2:赤穂, "正準相関分析入門", 2013.

*3:杉山・藤越・小椋, "多変量データ解析(浅倉書店)", 2014.