主成分分析と因子分析の関係

・主成分分析は、変数の間の相関関係を用いて、無相関の合成変数を求めることで多くの変数を少ない変数に縮約する。
(新変数は無相関)

・因子分析は、変数の間の相関関係から共通因子を求めることで、変数を少数個の共通因子にまとめて説明することを目的としている。(新変数には相関がありうる)

どちらの方法も、最終段階で次元圧縮を行い、少ない変数で現象を説明しようとする。しかし、データの情報が失われるので、最初の段階では次元圧縮は行わないほうがよい。ここでは次元を圧縮しない状態で、新しい変数を作ることを考える。

(参考資料) 涌井良幸・涌井貞美 「Excelで学ぶ多変量解析」

まず、線形代数の基本事項として、次のことを確認する。

[行列の相似変換]

正方行列 \(A\) 、正則行列 \(P\) に対し、 \(P^{-1}AP\) を \(A\) の相似変換という。( \(P\) は基底の取り替え行列)

相似変換は階数、トレース、行列式、固有値を保存する。即ち、

\(A,P^{-1}AP\) は、同じ一次変換の別の基底による表現なので、固有値、トレース、行列式は一致する。

(詳しい説明は、本サイト「行列のトレース」を参照)


主成分分析

分散共分散行列を直交行列により対角化したとき、

・固有ベクトルが主成分への変換式の係数、固有値は新変数の分散

・新しい変量の分散共分散行列は固有値を対角成分にもつ対角行列

新しい変数は無相関であり、第1主成分は新しい変量で分散が最大のものである。

浅野晃先生の解説をもとに、2変量の場合で

    [元の分散共分散行列]→[新しい分散共分散行列]   の具体例を見る。

     http://racco.mikeneko.jp/Kougi/10s/AS/AS05pr.pdf
     http://racco.mikeneko.jp/Kougi/10s/AS/AS06pr.pdf

今、変量 x1, x2 の散布図があるとする。

元の変量 x1, x2 軸でみた x1 の分散を \(s_{11}\) 、x2 の分散を \(s_{22}\) 、x1 と x2 の共分散を \(s_{12}\) とすると、

     \(\begin{pmatrix}
x_{1}\\
x_{2}
\end{pmatrix}
\) の分散共分散行列は、 \(
\begin{pmatrix}
s_{11} & s_{12}\\
s_{12}& s_{22}
\end{pmatrix}
\)

対称行列は直交行列で対角化できる。即ち、

     \(
\begin{pmatrix}
s_{11} & s_{12}\\
s_{12}& s_{22}
\end{pmatrix}

\begin{pmatrix}
a_{1}\\
a_{2}
\end{pmatrix}
=
\lambda
\begin{pmatrix}
a_{1}\\
a_{2}
\end{pmatrix}\)  から得られる、

2つの固有値のうち大きいほうを \(\lambda_{(1)}\) 、そのときの固有ベクトルを \(
\begin{pmatrix}
a_{1(1)}\\
a_{2(1)}
\end{pmatrix}
\)

2つの固有値のうち小さいほうを \(\lambda_{(2)}\) 、そのときの固有ベクトルを \(
\begin{pmatrix}
a_{1(2)}\\
a_{2(2)}
\end{pmatrix}
\) とすると、

     \(
\begin{pmatrix}
s_{11} & s_{12}\\
s_{12}& s_{22}
\end{pmatrix}
\begin{pmatrix}
a_{1(1)}&a_{1(2)}\\
a_{2(1)}&a_{2(2)}
\end{pmatrix}
=
\begin{pmatrix}
a_{1(1)}&a_{1(2)}\\
a_{2(1)}&a_{2(2)}
\end{pmatrix}
\begin{pmatrix}
\lambda_{(1)}&0\\
0&\lambda_{(2)}
\end{pmatrix}
\)

     \(\therefore
\begin{pmatrix}
a_{1(1)}&a_{1(2)}\\
a_{2(1)}&a_{2(2)}
\end{pmatrix}
^{-1}
\begin{pmatrix}
s_{11} & s_{12}\\
s_{12}& s_{22}
\end{pmatrix}
\begin{pmatrix}
a_{1(1)}&a_{1(2)}\\
a_{2(1)}&a_{2(2)}
\end{pmatrix}
=
\begin{pmatrix}
\lambda_{(1)}&0\\
0&\lambda_{(2)}
\end{pmatrix}
\)

\(T=
\begin{pmatrix}
a_{1(1)}&a_{1(2)}\\
a_{2(1)}&a_{2(2)}
\end{pmatrix}\) を基底の取り替え行列として、 \(
\begin{pmatrix}
s_{11} & s_{12}\\
s_{12}& s_{22}
\end{pmatrix}
\) は \(\begin{pmatrix}
\lambda_{(1)}&0\\
0&\lambda_{(2)}
\end{pmatrix}\) と相似である。

変量の変換は、 \(z=T^{-1}x\) で表され、分散の合計は行列のトレースであるから不変である。

\(\begin{pmatrix}
z_{(1)}\\
z_{(2)}
\end{pmatrix}
=
\begin{pmatrix}
a_{1(1)} & a_{2(1)}\\
a_{1(2)} & a_{2(2)}
\end{pmatrix}

\begin{pmatrix}
x_{1}\\
x_{2}
\end{pmatrix}
\) とすると、

     \(\begin{pmatrix}
z_{(1)}\\
z_{(2)}
\end{pmatrix}\) の分散共分散行列は、 \(\begin{pmatrix}
\lambda_{(1)}&0\\
0&\lambda_{(2)}
\end{pmatrix}
\) となる。

\(z_{(1)}\) が第1主成分であり、\(\lambda_{(1)}\) はその分散。 \(z_{(2)}\) が第2主成分であり、\(\lambda_{(2)}\) はその分散。

\(z_{(1)}\) 、\(z_{(2)}\) は無相関となる。実際、

     \(\begin{pmatrix}
z_{(1)}\\
z_{(2)}
\end{pmatrix}

\begin{pmatrix}
z_{(1)}& z_{(2)}
\end{pmatrix}
=

\begin{pmatrix}
a_{1(1)} & a_{2(1)}\\
a_{1(2)} & a_{2(2)}
\end{pmatrix}

\begin{pmatrix}
x_{1}\\
x_{2}
\end{pmatrix}
\begin{pmatrix}
x_{1}& x_{2}
\end{pmatrix}

\begin{pmatrix}
a_{1(1)} & a_{2(1)}\\
a_{1(2)} & a_{2(2)}
\end{pmatrix}^{-1}
\)

簡単のため変数の平均を0とすると、上式の期待値が分散共分散行列であり

     \(\begin{pmatrix}
x_{1}\\
x_{2}
\end{pmatrix}
\) の分散共分散行列は、 \(E \left(\begin{pmatrix}
x_{1}\\
x_{2}
\end{pmatrix}
\begin{pmatrix}
x_{1}& x_{2}
\end{pmatrix} \right)
=
\begin{pmatrix}

s_{11} & s_{12}\\
s_{12}& s_{22}
\end{pmatrix}
\) だから、

\(\begin{pmatrix}
z_{(1)}\\
z_{(2)}
\end{pmatrix}\) の分散共分散行列は、\(\begin{pmatrix}
a_{1(1)} & a_{2(1)}\\
a_{1(2)} & a_{2(2)}
\end{pmatrix}

\begin{pmatrix}
s_{11} & s_{12}\\
s_{12}& s_{22}
\end{pmatrix}

\begin{pmatrix}
a_{1(1)} & a_{2(1)}\\
a_{1(2)} & a_{2(2)}
\end{pmatrix}^{-1}
=
\begin{pmatrix}
\lambda_{(1)}&0\\
0&\lambda_{(2)}
\end{pmatrix}\)

新しい変量の分散共分散行列は固有値を対角成分にもつ対角行列となっている。

 

次に、3変量の場合で、[元の分散共分散行列]→[新しい分散共分散行列]の例を見る。

[標準化されていないとき]

変量x,y,z の分散共分散行列 \(\begin{pmatrix}
s_{x}^2\ & s_{xy}\ &s_{xz}\\
s_{xy}\ & s_{y}^2\ &s_{yz}\\
s_{xz}\ & s_{yz}\ &s_{z}^2
\end{pmatrix}
\) → \(\begin{pmatrix}
\lambda_{(1)}&0&0\\
0&\lambda_{(2)}&0\\
0&0&\lambda_{(3)}
\end{pmatrix}\)

対称行列を直交行列で変換しても、分散の和は不変である。(行列の相似による)

分散は対角成分の和、即ちトレースであるから、(相似な行列のトレースは不変)

     \(s_x^2+s_y^2+s_z^2
=
\lambda_{(1)}+\lambda_{(2)}+\lambda_{(3)}\)

\(\begin{pmatrix}
s_{x}^2\ & s_{xy}\ &s_{xz}\\
s_{xy}\ & s_{y}^2\ &s_{yz}\\
s_{xz}\ & s_{yz}\ &s_{z}^2
\end{pmatrix}

\begin{pmatrix}
a_{1}\\
a_{2}\\
a_{3}
\end{pmatrix}
=\lambda
\begin{pmatrix}
a_{1}\\
a_{2}\\
a_{3}
\end{pmatrix}
\) を満たす大きさ1の固有ベクトルを \(
\begin{pmatrix}
a_{1(1)}\\
a_{2(1)}\\
a_{3(1)}
\end{pmatrix}
\) 、\(
\begin{pmatrix}
a_{1(2)}\\
a_{2(2)}\\
a_{3(2)}
\end{pmatrix}
\) 、\(\begin{pmatrix}
a_{1(3)}\\
a_{2(3)}\\
a_{3(3)}
\end{pmatrix}
\)

固有値を \(\lambda_{(1)}\) 、\(\lambda_{(2)}\) 、\(\lambda_{(3)}\) とすると、新変数 の分散は \(\lambda_{(1)}\) 、\(\lambda_{(2)}\) 、\(\lambda_{(3)}\)

変量の変換は、

     \(\begin{pmatrix}
u_{(1)}\\
u_{(2)}\\
u_{(3)}
\end{pmatrix}
=
\begin{pmatrix}
a_{1(1)}&a_{2(1)}&a_{3(1)}\\
a_{1(2)}&a_{2(2)}&a_{3(2)}\\
a_{1(3)}&a_{2(3)}&a_{3(3)}
\end{pmatrix}

\begin{pmatrix}
x\\
y\\
z
\end{pmatrix}
\)

固有ベクトルが主成分への変換式の係数となっている。

[標準化されているとき]

標準化されていれば、分散共分散行列は、 \(\begin{pmatrix}
1\ & r_{xy}\ &r_{xz}\\
r_{xy}\ & 1\ &r_{yz}\\
r_{xz}\ & r_{yz}\ &1
\end{pmatrix}
\) (相関行列)となる。

相関行列と分散共分散行列の関係は、https://mathtrain.jp/correlationmatrix より

     \(\begin{pmatrix}
1\ & r_{xy}\ &r_{xz}\\
r_{xy}\ & 1\ &r_{yz}\\
r_{xz}\ & r_{yz}\ &1
\end{pmatrix}

=\begin{pmatrix}\dfrac{1}{s_x}&0&0\\
0&\dfrac{1}{s_y}&0\\
0&0&\dfrac{1}{s_z}
\end{pmatrix}

\begin{pmatrix}
s_{x}^2\ & s_{xy}\ &s_{xz}\\
s_{xy}\ & s_{y}^2\ &s_{yz}\\
s_{xz}\ & s_{yz}\ &s_{z}^2
\end{pmatrix}


\begin{pmatrix}\dfrac{1}{s_x}&0&0\\
0&\dfrac{1}{s_y}&0\\
0&0&\dfrac{1}{s_z}
\end{pmatrix}\)

(標準化してある場合と標準化していない場合とでは、固有値や固有ベクトルは異なる)

標準化された変数で、相関行列によって主成分分析を行い、新しい変数 \(u_{(1)}\) 、\(u_{(2)}\) 、\(u_{(3)}\) を得たとする。分散はそれぞれ \(\lambda_{(1)}\) 、\(\lambda_{(2)}\) 、\(\lambda_{(3)}\) である。即ち、

変量x,y,z の分散共分散行列 \(\begin{pmatrix}
1\ & r_{xy}\ &r_{xz}\\
r_{xy}\ & 1\ &r_{yz}\\
r_{xz}\ & r_{yz}\ &1
\end{pmatrix}
\) → \(\begin{pmatrix}
\lambda_{(1)}&0&0\\
0&\lambda_{(2)}&0\\
0&0&\lambda_{(3)}
\end{pmatrix}\)

     \(\begin{pmatrix}
a_{1(1)}&a_{1(2)}&a_{1(3)}\\
a_{2(1)}&a_{2(2)}&a_{2(3)}\\
a_{3(1)}&a_{3(2)}&a_{3(3)}
\end{pmatrix}
^{-1}

\begin{pmatrix}
1\ & r_{xy}\ &r_{xz}\\
r_{xy}\ & 1\ &r_{yz}\\
r_{xz}\ & r_{yz}\ &1
\end{pmatrix}

\begin{pmatrix}
a_{1(1)}&a_{1(2)}&a_{1(3)}\\
a_{2(1)}&a_{2(2)}&a_{2(3)}\\
a_{3(1)}&a_{3(2)}&a_{3(3)}
\end{pmatrix}
=

\begin{pmatrix}
\lambda_{(1)}&0&0\\
0&\lambda_{(2)}&0\\
0&0&\lambda_{(3)}
\end{pmatrix}
\)

     \(\begin{pmatrix}
x\\
y\\
z
\end{pmatrix}
=
\begin{pmatrix}
a_{1(1)}&a_{1(2)}&a_{1(3)}\\
a_{2(1)}&a_{2(2)}&a_{2(3)}\\
a_{3(1)}&a_{3(2)}&a_{3(3)}
\end{pmatrix}

\begin{pmatrix}
u_{(1)}\\
u_{(2)}\\
u_{(3)}
\end{pmatrix}

\) 、  \(\begin{pmatrix}
u_{(1)}\\
u_{(2)}\\
u_{(3)}
\end{pmatrix}
=
\begin{pmatrix}
a_{1(1)}&a_{2(1)}&a_{3(1)}\\
a_{1(2)}&a_{2(2)}&a_{3(2)}\\
a_{1(3)}&a_{2(3)}&a_{3(3)}
\end{pmatrix}

\begin{pmatrix}
x\\
y\\
z
\end{pmatrix}
\)

新しい変量の分散共分散行列は固有値を対角成分にもつ対角行列となっている。

 

主成分分析から因子分析へ

標準化された変量の主成分分析は、相関行列の固有値・固有ベクトルを用いて変量を無相関の変量に変換して分散を最大化し、データを解釈しやすくする。

新変量の分散は固有値に等しく、標準化されてはいない。

主成分分析をさらに進めて因子分析とするには、新変量の標準化が必要である。

即ち、分散が1になるよう変換しなければならない。

3変量の場合で、主成分分析から因子分析を考える。

[変量Xの成分は標準化されているとする]

\(\begin{pmatrix}
x&y&z
\end{pmatrix}\) は、最も分散の大きい第1主成分 F、それと直交する第2、第3の成分 G、Hに
直交行列 T によって変換される。

分散共分散行列は、 \(R=E(XX')=
\begin{pmatrix}
1\ & r_{xy}\ &r_{xz}\\
r_{xy}\ & 1\ &r_{yz}\\
r_{xz}\ & r_{yz}\ &1
\end{pmatrix}
\) (対称行列)

Rの大きさ1の固有ベクトルを \(
\begin{pmatrix}
a_x\\
a_y\\
a_z
\end{pmatrix}
\) 、\(
\begin{pmatrix}
b_x\\
b_y\\
b_z
\end{pmatrix}
\) 、\(
\begin{pmatrix}
c_x\\
c_y\\
c_z
\end{pmatrix}
\)、固有値を \(\alpha\) 、\(\beta\) 、\(\gamma\) とする。

     \(
\begin{pmatrix}
1\ & r_{xy}\ &r_{xz}\\
r_{xy}\ & 1\ &r_{yz}\\
r_{xz}\ & r_{yz}\ &1
\end{pmatrix}

\begin{pmatrix}
a_{x} & b_{x} & c_{x}\\
a_{y} & b_{y} & c_{y}\\
a_{z} & b_{z} & c_{z}
\end{pmatrix}
=

\begin{pmatrix}
a_{x} & b_{x} & c_{x}\\
a_{y} & b_{y} & c_{y}\\
a_{z} & b_{z} & c_{z}
\end{pmatrix}

\begin{pmatrix}
\alpha&0&0\\
0&\beta&0\\
0&0&\gamma
\end{pmatrix}
\)

     \(
\begin{pmatrix}
a_{x} & b_{x} & c_{x}\\
a_{y} & b_{y} & c_{y}\\
a_{z} & b_{z} & c_{z}
\end{pmatrix}
^{-1}

\begin{pmatrix}
1\ & r_{xy}\ &r_{xz}\\
r_{xy}\ & 1\ &r_{yz}\\
r_{xz}\ & r_{yz}\ &1
\end{pmatrix}

\begin{pmatrix}
a_{x} & b_{x} & c_{x}\\
a_{y} & b_{y} & c_{y}\\
a_{z} & b_{z} & c_{z}
\end{pmatrix}
=
\begin{pmatrix}
\alpha&0&0\\
0&\beta&0\\
0&0&\gamma
\end{pmatrix}
\)

\(\begin{pmatrix}
F \\
G\\
H
\end{pmatrix}
=
\begin{pmatrix}
a_{x} & b_{x} & c_{x}\\
a_{y} & b_{y} & c_{y}\\
a_{z} & b_{z} & c_{z}
\end{pmatrix}
^{-1}

\begin{pmatrix}
x \\
y \\
z
\end{pmatrix}
=
\begin{pmatrix}
a_xx+a_yy+a_zz \\
b_xx+b_yy+b_zz \\
c_xx+c_yy+c_zz
\end{pmatrix}\)とすると、

     \(\begin{pmatrix}
F \\
G\\
H
\end{pmatrix}

\begin{pmatrix}
F&G&H
\end{pmatrix}

=
\begin{pmatrix}
a_{x} & b_{x} & c_{x}\\
a_{y} & b_{y} & c_{y}\\
a_{z} & b_{z} & c_{z}
\end{pmatrix}
'

\begin{pmatrix}
x \\
y \\
z
\end{pmatrix}

\begin{pmatrix}
x&y&z
\end{pmatrix}

\begin{pmatrix}
a_{x} & b_{x} & c_{x}\\
a_{y} & b_{y} & c_{y}\\
a_{z} & b_{z} & c_{z}
\end{pmatrix}\) だから、

\(\begin{pmatrix}
F&G&H
\end{pmatrix}\) の分散共分散行列 L は

     \(L=
\begin{pmatrix}
a_{x} & b_{x} & c_{x}\\
a_{y} & b_{y} & c_{y}\\
a_{z} & b_{z} & c_{z}
\end{pmatrix}
'
\begin{pmatrix}
1\ & r_{xy}\ &r_{xz}\\
r_{xy}\ & 1\ &r_{yz}\\
r_{xz}\ & r_{yz}\ &1
\end{pmatrix}

\begin{pmatrix}
a_{x} & b_{x} & c_{x}\\
a_{y} & b_{y} & c_{y}\\
a_{z} & b_{z} & c_{z}
\end{pmatrix}
=
\begin{pmatrix}
\alpha&0&0\\
0&\beta&0\\
0&0&\gamma
\end{pmatrix}
\)

\(P=
\begin{pmatrix}
a_{x} & b_{x} & c_{x}\\
a_{y} & b_{y} & c_{y}\\
a_{z} & b_{z} & c_{z}
\end{pmatrix}\) とおけば \(P\) は直交行列で、

     \(P'RP=
\begin{pmatrix}
\alpha&0&0\\
0&\beta&0\\
0&0&\gamma
\end{pmatrix}\)  即ち、 \(R=
P
\begin{pmatrix}
\alpha&0&0\\
0&\beta&0\\
0&0&\gamma
\end{pmatrix}
P'\)

F,G,Hは無相関で、分散は \(\alpha\) 、\(\beta\) 、\(\gamma\) である。つまり、

\(\begin{pmatrix}
F \\
G\\
H
\end{pmatrix}
=
\begin{pmatrix}
a_{x} & b_{x} & c_{x}\\
a_{y} & b_{y} & c_{y}\\
a_{z} & b_{z} & c_{z}
\end{pmatrix}
^{-1}

\begin{pmatrix}
x \\
y \\
z
\end{pmatrix}
=
\begin{pmatrix}
a_xx+a_yy+a_zz \\
b_xx+b_yy+b_zz \\
c_xx+c_yy+c_zz
\end{pmatrix}\) によって、

\(\begin{pmatrix}
x&y&z
\end{pmatrix}\) は、互いに無相関な変量 \(\begin{pmatrix}
F&G&H
\end{pmatrix}\) に変換されたことになる。

立場を変えると、

     \(\begin{pmatrix}
x \\
y\\
z
\end{pmatrix}
=
\begin{pmatrix}
a_{x} & b_{x} & c_{x}\\
a_{y} & b_{y} & c_{y}\\
a_{z} & b_{z} & c_{z}
\end{pmatrix}

\begin{pmatrix}
F \\
G \\
H
\end{pmatrix}
=
\begin{pmatrix}
a_xF+b_xG+c_xH \\
a_yF+b_yG+c_yH \\
a_zF+b_zG+c_zH
\end{pmatrix}\)

これを因子分析につなげるには、変量 \(\begin{pmatrix}
F&G&H
\end{pmatrix}\) を標準化する必要がある。

     \(
\begin{pmatrix}
x \\
y\\
z
\end{pmatrix}
=
\begin{pmatrix}
a_{x} & b_{x} & c_{x}\\
a_{y} & b_{y} & c_{y}\\
a_{z} & b_{z} & c_{z}
\end{pmatrix}

\begin{pmatrix}
\sqrt{\alpha}&0&0\\
0&\sqrt{\beta}&0\\
0&0&\sqrt{\gamma}
\end{pmatrix}

\begin{pmatrix}
1/\sqrt{\alpha}&0&0\\
0&1/\sqrt{\beta}&0\\
0&0&1/\sqrt{\gamma}\end{pmatrix}

\begin{pmatrix}
F \\
G \\
H
\end{pmatrix}\)

\(\begin{pmatrix}
F&G&H
\end{pmatrix}\) は無相関だから、その定数倍も無相関。

     \(
\begin{pmatrix}
x \\
y\\
z
\end{pmatrix}
=
\begin{pmatrix}
\sqrt{\alpha}a_{x} & \sqrt{\beta}b_{x} & \sqrt{\gamma}c_{x}\\
\sqrt{\alpha}a_{y} & \sqrt{\beta}b_{y} & \sqrt{\gamma}c_{y}\\
\sqrt{\alpha}a_{z} & \sqrt{\beta}b_{z} & \sqrt{\gamma}c_{z}
\end{pmatrix}

\begin{pmatrix}
F/\sqrt{\alpha} \\
G/\sqrt{\beta} \\
H/\sqrt{\gamma}

\end{pmatrix}\)

\(\begin{pmatrix}
x&y&z
\end{pmatrix}\) 、\(\begin{pmatrix}
F/\sqrt{\alpha}&
G/\sqrt{\beta}&
H/\sqrt{\gamma}

\end{pmatrix}\) は標準化されており、 \(X=AU\) の形であるので、上式は因子分析における構造方程式のひとつである。

\(A=
\begin{pmatrix}
\sqrt{\alpha}a_{x} & \sqrt{\beta}b_{x} & \sqrt{\gamma}c_{x}\\
\sqrt{\alpha}a_{y} & \sqrt{\beta}b_{y} & \sqrt{\gamma}c_{y}\\
\sqrt{\alpha}a_{z} & \sqrt{\beta}b_{z} & \sqrt{\gamma}c_{z}
\end{pmatrix}\) とおけば、(因子負荷行列)

     \(AA'
=
\begin{pmatrix}
a_{x} & b_{x} & c_{x}\\
a_{y} & b_{y} & c_{y}\\
a_{z} & b_{z} & c_{z}
\end{pmatrix}

\begin{pmatrix}
\sqrt{\alpha}&0&0\\
0&\sqrt{\beta}&0\\
0&0&\sqrt{\gamma}
\end{pmatrix}

\begin{pmatrix}
\sqrt{\alpha}&0&0\\
0&\sqrt{\beta}&0\\
0&0&\sqrt{\gamma}
\end{pmatrix}

\begin{pmatrix}
a_{x} & b_{x} & c_{x}\\
a_{y} & b_{y} & c_{y}\\
a_{z} & b_{z} & c_{z}
\end{pmatrix}
'
\)

\(AA'
=
\begin{pmatrix}
a_{x} & b_{x} & c_{x}\\
a_{y} & b_{y} & c_{y}\\
a_{z} & b_{z} & c_{z}
\end{pmatrix}

\begin{pmatrix}
\sqrt{\alpha}&0&0\\
0&\sqrt{\beta}&0\\
0&0&\sqrt{\gamma}
\end{pmatrix}

\begin{pmatrix}
\sqrt{\alpha}&0&0\\
0&\sqrt{\beta}&0\\
0&0&\sqrt{\gamma}
\end{pmatrix}

\begin{pmatrix}
a_{x} & b_{x} & c_{x}\\
a_{y} & b_{y} & c_{y}\\
a_{z} & b_{z} & c_{z}
\end{pmatrix}
'
\)

     \(\therefore
AA'
=
P\begin{pmatrix}
\alpha&0&0\\
0&\beta&0\\
0&0&\gamma
\end{pmatrix}
P'
=R\)     Aは、因子分析の基本方程式 \(R=AA'\) をみたす。

これは、因子間相関がない場合であり、A は因子負荷行列である。

[因子負荷行列]

表で表すと

\(u_{1}\) \(u_{2}\) \(u_{3}\)
\(x\) \(\sqrt{\alpha} a_x\) \(\sqrt{\beta} b_x\) \(\sqrt{\gamma} c_x\)
\(y\) \(\sqrt{\alpha} a_y\) \(\sqrt{\beta} b_y\) \(\sqrt{\gamma} c_y\)
\(z\) \(\sqrt{\alpha} a_z\) \(\sqrt{\beta} b_z\) \(\sqrt{\gamma} c_z\)

固有ベクトルに固有値の平方根をかけて得られる主成分負荷量を列ベクトルとする行列 \(A\) は、\(u_{(1)}\) 、\(u_{(2)}\) 、\(u_{(3)}\) を因子としたときの因子負荷行列になる。

基底の変換

次元圧縮を行わない主成分分析は、座標軸を固有ベクトル方向に変換する手法であり、データそのものを変える訳ではない。

固有値方向を軸としたときのデータ座標が主成分得点である。

2次元で説明する。

\(\begin{pmatrix}
x\\y
\end{pmatrix}\) を基底 \(\begin{pmatrix}
a\\b
\end{pmatrix}
\:\:
\begin{pmatrix}
c\\d
\end{pmatrix}\) で表現した座標を \(\begin{pmatrix}
u\\v
\end{pmatrix}\) とすると、

     \(\begin{pmatrix}
x\\y
\end{pmatrix}
=u
\begin{pmatrix}
a\\b
\end{pmatrix}+
v
\begin{pmatrix}
c\\d
\end{pmatrix}\) このとき、\(\begin{pmatrix}
x\\y
\end{pmatrix}
=
\begin{pmatrix}
a&c\\b&d
\end{pmatrix}
\begin{pmatrix}
u\\v
\end{pmatrix}\)

新座標を得る変換は、

     \(\begin{pmatrix}
u\\v
\end{pmatrix}
=
\begin{pmatrix}
a&c\\b&d
\end{pmatrix}^{-1}
\begin{pmatrix}
x\\y
\end{pmatrix}\)

基底 \(\begin{pmatrix}
a\\b
\end{pmatrix}
\:\:
\begin{pmatrix}
c\\d
\end{pmatrix}\) を列ベクトルとして構成される行列を \(A\) とすると、新座標は

     \(\begin{pmatrix}
u\\v
\end{pmatrix}
=
A^{-1}
\begin{pmatrix}
x\\y
\end{pmatrix}\) によって与えられることになる。

このことを主成分分析で見てみよう。

元の変量を3次元ベクトル \(x\) 、新しい変量を3次元ベクトル \(u\) で表すことにする。

\(x\) の分散共分散行列 \(\Sigma\) は固有ベクトルを列ベクトルとして構成される行列 \(P\) で対角化され、

     \(P^{-1}\Sigma P=\begin{pmatrix}
\lambda_{(1)}&0&0\\
0&\lambda_{(2)}&0\\
0&0&\lambda_{(3)}
\end{pmatrix}\)

\(P\) を基底の取り替え行列と考えると、固有ベクトルを基底とした新しい変量は

     \(u=P^{-1}x\)  によって与えられることになる。

つまり主成分 \(u\) は 固有ベクトルを基底とした座標ということになる。

\(u\) の分散共分散行列は \(E(uu')=E(P'xx'P)=P'E(xx')P=P^{-1}\Sigma P=\begin{pmatrix}
\lambda_{(1)}&0&0\\
0&\lambda_{(2)}&0\\
0&0&\lambda_{(3)}
\end{pmatrix}\)

主成分の分散は固有値であり、主成分どうしは無相関であることが分かる。

ところで、主成分分析を相関行列で行うべきか分散共分散行列で行うべきかという疑問がある。

上の式に登場するのは分散共分散行列である。つまり主成分分析は分散共分散行列で考えるから固有値が主成分の分散になっている訳である。

整理すると、

・標準化されていない変量の主成分分析には分散共分散行列を用いる。
・標準化された変量の主成分分析にも分散共分散行列を用いるが、それは相関行列になっている。

つまり、どちらの行列を用いるかという選択があるわけではなく、変量を標準化するかしないかという選択が行われる、と考えるべきと思う。

[参考サイト]
教えてgoo様 「主成分分析における出発行列の違い」
        https://oshiete.goo.ne.jp/qa/531412.html

 

バリマックス回転(直交回転)

\(
\begin{pmatrix}
x \\
y\\
z
\end{pmatrix}
=
\begin{pmatrix}
\sqrt{\alpha}a_{x} & \sqrt{\beta}b_{x} & \sqrt{\gamma}c_{x}\\
\sqrt{\alpha}a_{y} & \sqrt{\beta}b_{y} & \sqrt{\gamma}c_{y}\\
\sqrt{\alpha}a_{z} & \sqrt{\beta}b_{z} & \sqrt{\gamma}c_{z}
\end{pmatrix}

\begin{pmatrix}
F/\sqrt{\alpha} \\
G/\sqrt{\beta} \\
H/\sqrt{\gamma}
\end{pmatrix}\) であるが、2因子にすると \(
\begin{pmatrix}
x \\
y\\
z
\end{pmatrix}
\fallingdotseq
\begin{pmatrix}
\sqrt{\alpha}a_{x} & \sqrt{\beta}b_{x}\\
\sqrt{\alpha}a_{y} & \sqrt{\beta}b_{y}\\
\sqrt{\alpha}a_{z} & \sqrt{\beta}b_{z}
\end{pmatrix}

\begin{pmatrix}
F/\sqrt{\alpha} \\
G/\sqrt{\beta}
\end{pmatrix}
\)

\(A=
\begin{pmatrix}
\sqrt{\alpha}a_{x} & \sqrt{\beta}b_{x}\\
\sqrt{\alpha}a_{y} & \sqrt{\beta}b_{y}\\
\sqrt{\alpha}a_{z} & \sqrt{\beta}b_{z}
\end{pmatrix}
\:\:,\:\:
\begin{pmatrix}
u_{(1)}\\
u_{(2)}
\end{pmatrix}
=
\begin{pmatrix}
F/\sqrt{\alpha} \\
G/\sqrt{\beta}
\end{pmatrix}
\) とすると \(
\begin{pmatrix}
x \\
y\\
z
\end{pmatrix}
\fallingdotseq
\begin{pmatrix}
\sqrt{\alpha}a_{x} & \sqrt{\beta}b_{x}\\
\sqrt{\alpha}a_{y} & \sqrt{\beta}b_{y}\\
\sqrt{\alpha}a_{z} & \sqrt{\beta}b_{z}
\end{pmatrix}

\begin{pmatrix}
u_{(1)}\\
u_{(2)}
\end{pmatrix}
\)

\(A\) は2因子の場合の因子負荷行列であり、

     \(x\) の因子負荷量プロットは、\(\left(\sqrt{\alpha}a_{x}\:\:, \:\:\sqrt{\beta}b_{x}\right)\)

     \(y\) の因子負荷量プロットは、\(\left(\sqrt{\alpha}a_{y}\:\:, \:\:\sqrt{\beta}b_{y}\right)\)

     \(z\) の因子負荷量プロットは、\(\left(\sqrt{\alpha}a_{z}\:\:, \:\:\sqrt{\beta}b_{z}\right)\)

因子負荷量プロットは、各変量について、主成分の構成割合を図示したものである。

2因子の場合は平面に図示できるのでイメージしやすい。

 

3因子に説明を戻そう。

\(\begin{pmatrix}
u_{(1)}\\
u_{(2)}\\
u_{(3)}
\end{pmatrix}\) を基底変換したベクトルを \(\begin{pmatrix}
v_{(1)}\\
v_{(2)}\\
v_{(3)}
\end{pmatrix}\) とし、基底の変換行列を \(T\) とすると、\(\begin{pmatrix}
v_{(1)}\\
v_{(2)}\\
v_{(3)}
\end{pmatrix}
=T^{-1}
\begin{pmatrix}
u_{(1)}\\
u_{(2)}\\
u_{(3)}
\end{pmatrix}\)

構造方程式を、 \(\begin{pmatrix}
x\\
y\\
z
\end{pmatrix}
=
X

\begin{pmatrix}
u_{(1)}\\
u_{(2)}\\
u_{(3)}
\end{pmatrix}
\) とする。ただし、\(X=
\begin{pmatrix}
a_{1(1)}&a_{1(2)}&a_{1(3)}\\
a_{2(1)}&a_{2(2)}&a_{2(3)}\\
a_{3(1)}&a_{3(2)}&a_{3(3)}
\end{pmatrix}\)

     \(\begin{pmatrix}
x\\
y\\
z
\end{pmatrix}
=
X
T
T^{-1}
\begin{pmatrix}
u_{(1)}\\
u_{(2)}\\
u_{(3)}
\end{pmatrix}
=
X
T
\begin{pmatrix}
v_{(1)}\\
v_{(2)}\\
v_{(3)}
\end{pmatrix}\)

\(
\begin{pmatrix}
a_{1(1)}'&a_{1(2)}'&a_{1(3)}'\\
a_{2(1)}'&a_{2(2)}'&a_{2(3)}'\\
a_{3(1)}'&a_{3(2)}'&a_{3(3)}'
\end{pmatrix}
=XT\) が 新変数 \(\begin{pmatrix}
v_{(1)}\\
v_{(2)}\\
v_{(3)}
\end{pmatrix}\) に対する因子負荷行列である。

転置すると

     \(\begin{pmatrix}
a_{1(1)}'&a_{2(1)}'&a_{3(1)}'\\
a_{1(2)}'&a_{2(2)}'&a_{3(2)}'\\
a_{1(3)}'&a_{2(3)}'&a_{3(3)}'
\end{pmatrix}
=T'
\begin{pmatrix}
a_{1(1)}&a_{2(1)}&a_{3(1)}\\
a_{1(2)}&a_{2(2)}&a_{3(2)}\\
a_{1(3)}&a_{2(3)}&a_{3(3)}
\end{pmatrix}
\)

これにより、

     \(\begin{pmatrix}
a_{1(1)}'\\
a_{1(2)}'\\
a_{1(3)}'
\end{pmatrix}
=T'
\begin{pmatrix}
a_{1(1)}\\
a_{1(2)}\\
a_{1(3)}
\end{pmatrix}\) 、\(\begin{pmatrix}
a_{2(1)}'\\
a_{2(2)}'\\
a_{2(3)}'
\end{pmatrix}
=T'
\begin{pmatrix}
a_{2(1)}\\
a_{2(2)}\\
a_{2(3)}
\end{pmatrix}\) 、 \(\begin{pmatrix}
a_{3(1)}'\\
a_{3(2)}'\\
a_{3(3)}'
\end{pmatrix}
=T'
\begin{pmatrix}
a_{3(1)}\\
a_{3(2)}\\
a_{3(3)}
\end{pmatrix}\)

因子負荷ベクトルが、 \(T'\) によって移ることを表している。

\(T\) が直交行列なら、

     \(\begin{pmatrix}
a_{1(1)}'\\
a_{1(2)}'\\
a_{1(3)}'
\end{pmatrix}
=T^{-1}
\begin{pmatrix}
a_{1(1)}\\
a_{1(2)}\\
a_{1(3)}
\end{pmatrix}\) 、\(\begin{pmatrix}
a_{2(1)}'\\
a_{2(2)}'\\
a_{2(3)}'
\end{pmatrix}
=T^{-1}
\begin{pmatrix}
a_{2(1)}\\
a_{2(2)}\\
a_{2(3)}
\end{pmatrix}\) 、 \(\begin{pmatrix}
a_{3(1)}'\\
a_{3(2)}'\\
a_{3(3)}'
\end{pmatrix}
=T^{-1}
\begin{pmatrix}
a_{3(1)}\\
a_{3(2)}\\
a_{3(3)}
\end{pmatrix}\)

因子負荷量プロットと主成分プロットが共に \(T^{-1}\) によって移ることを意味するので、グラフでの理解が容易になる。このとき、 \(T^{-1}\) は直交回転を表すのでバリマックス回転という。

プロマックス回転(斜交回転)

斜交回転を行なった場合、因子間相関が出てくる。


© hyoccori-toukei 2021