正準相関分析     Last modified: Feb 24, 2004

 正準相関分析は重回帰分析の一般形である。

 重回帰分析では 1 個の従属変数と複数個の独立変数の線形合成変数の相関が最大となるような独立変数の重みを求める。

 正準相関分析は,従属変数,独立変数という区別ではなく,それぞれ複数の変数からなる 2 変数群それぞれについて線形合成変数を求め,2 つの合成変数の相関(正準相関)が最も大きくなるような重みを求める。

 合成変数は複数求め得る。2 番目以降の合成変数間の相関は順次小さくなっていく。


 $p$ 個と $q$ 個の変数を含む $2$ つの変数群を $( X_{1}, X_{2}, \dots , X_{p} )$,および $( X_{p + 1}, X_{p + 2}, \dots , X_{p + q} )$,$r = \min ( p, q )$ 種類の重み係数を $ (a_{i1}, a_{i2}, \dots , a_{ip} )$,$( b_{i1}, b_{i2}, \dots , b_{iq} )$,$( i = 1, 2, \dots , r )$ とする。

 この重み係数により新たに作成される合成変量を $u_{i},v_{i}$ とする。 \[ \begin{align*} u_i &= a_{i1}\ X_1 +a_{i2}\ X_2 + \dots + a_{ip}\ X_p\\[5pt] v_i &= b_{i1}\ X_{p+1} +b_{i2}\ X_{p+2} + \dots + b_{iq}\ X_{p+q} \end{align*} \]  このとき,$u_{1}$ と $v_{1}$ の相関が最も高くなるような重み係数が存在する。このような重み係数は $r$ 個存在する。

 $u_{i}$ と $v_{i}$ は第 $i$ 正準変量,$u_{i}$,$v_{i}$ の間の相関係数 $\rho_{i}$ は第 $i$ 正準相関係数と呼ばれ,$\rho_{1} \geqq \rho_{2} \geqq \dots \geqq \rho_{r}$ である。

 また,$u_{i}$ と $v_{j}$ あるいは $u_{j}$ と $v_{i}$ は無相関である( $i \ne j$ )。

 ケース数を $n$ とし,$2$ つの変数群のデータ行列を $\mathbf{X}_{1}$,$\mathbf{X}_{2}$ とする。

 それぞれは $n \times p$,$n \times q$ 行列である。

 分散共分散行列 $\mathbf{S}_{11}$,$\mathbf{S}_{12}$,$\mathbf{S}_{21}$,$\mathbf{S}_{22}$ は次式のようになる。 \[ \mathbf{S}_{ij} = \frac{\mathbf{X}_i'\ \mathbf{X}_j}{n-1}, \ \ i, j=1, 2 \]  $\mathbf{A} = \mathbf{S}_{12}\ \mathbf{S}_{22}^{ - 1}\ \mathbf{S}_{21}$,$\mathbf{B} = \mathbf{S}_{11}$ としたとき,次式の固有方程式を解くことにより,正準変数,正準相関が求められる。 \[ \left | \mathbf{A}-\lambda \mathbf{B} \right | = 0 \]  固有値を $\lambda_{1} \geqq \lambda_{2} \geqq \dots \geqq \lambda_{r}$ とすると,正準相関は \[ \rho_i = \sqrt{\lambda_i} \] である。これに対応する第 $1$ 変数群の正準変量の重みは固有ベクトル($\mathbf{l}_i$)となり,第 $2$ 変数群の正準変量の重みは \[ \mathbf{m}_i = \frac{\mathbf{S}_{22}^{-1}\ \mathbf{S}_{21}\ \mathbf{l}_i}{\rho_i} \] で求められる。


演習問題


応用問題


・ 計算プログラム [R] [Python]
・ 直前のページへ戻る  ・ E-mail to Shigenobu AOKI