因子分析は、未定係数法と次元圧縮です。
まず、3つの変数 (x,y,z) を2因子 (F,G) の一次式で表すことを考えます。
(参考資料)
2因子3変数の場合
\(\begin{pmatrix}
x \\
y \\
z
\end{pmatrix}=\begin{pmatrix}
a_{x} & b_{x} \\
a_{y} & b_{y} \\
a_{z} & b_{z}
\end{pmatrix}\begin{pmatrix}
F \\
G
\end{pmatrix}+\begin{pmatrix}
\varepsilon _{x} \\
\varepsilon _{y} \\
\varepsilon _{z}
\end{pmatrix}\)
因子分析は、データ \((x,y,z)\) を潜在変数 で\((F,G)\) 表そうとするものである。例えば、
\(\begin{cases}x=a_{x}F+b_{x}G+\varepsilon _{x}\\
y=a_{y}F+b_{y}G+\varepsilon _{y}\\
z=a_{z}F+b_{z}G+\varepsilon _{z}\end{cases}\)
データは \((x,y,z)\) の3次元であるが、 \((F,G)\) という2次元で捉えることによりデータの図示が可能になる。(\(\varepsilon_x,\varepsilon_y,\varepsilon_z\) は誤差を表し、 \(F,G\) とは独立とする )
以下、 \((x,y,z)\) \((F,G)\) は標準化されているものとする。
係数を求めるには未定係数法を用いる。
F,Gの相関係数を \(r\) とすると \(r=E(FG)\) であり、
\(E\left( x^{2}\right) =a_{x}^{2}+b_{x}^{2}+2a_{x}b_{x}r\)
\(E\left( xy\right) =a_{x}a_{y}+b_{x}b_{y}+a_{x}b_{y}r+a_{y}b_{x}r\)
のように計算できるが、行列を用いると簡略に表すことができる。即ち、
\(X=\begin{pmatrix}
x \\
y \\
z
\end{pmatrix},
A=\begin{pmatrix}
a_{x} & b_{x} \\
a_{y} & b_{y} \\
a_{z} & b_{z}
\end{pmatrix},
\epsilon=\begin{pmatrix}
\epsilon_x \\
\epsilon_y \\
\epsilon_z
\end{pmatrix},
U=\begin{pmatrix}
F \\
G
\end{pmatrix}
\) とおくと、 \(X=AU+\varepsilon\)
これを構造方程式という。
相関行列は
\(XX'=\left\{ A\begin{pmatrix}
F \\
G
\end{pmatrix}+\begin{pmatrix}
\varepsilon _{x} \\
\varepsilon _{y} \\
\varepsilon _{z}
\end{pmatrix}\right\} \times \left\{ \left( FG\right) A'+\left( \varepsilon
_{x}\varepsilon _{y}\varepsilon _{z}\right) \right\} \) の期待値を計算したものになり、
相関行列をRとすると、
\(R=A\times
E\left(
\begin{pmatrix}
F \\
G
\end{pmatrix}\times
\left( FG\right)
\right)
\times A'+
E\begin{pmatrix}
\varepsilon _{x}^{2} & 0 & 0 \\
0 & \varepsilon _{y}^{2} & 0 \\
0 & 0 & \varepsilon _{z}^{2}
\end{pmatrix}
\)
因子間相関行列を \(M=E\left(
\begin{pmatrix}
F \\
G
\end{pmatrix}\times
\left( FG\right)
\right)
\) 、誤差を \(D=\begin{pmatrix}
e_{x}^{2} & 0 & 0 \\
0 & e_{y}^{2} & 0 \\
0 & 0 & e_{z}^{2}
\end{pmatrix}\) とおくと
\(R=AMA'+D\) と表される(因子分析の基本方程式)。
この式は、
\(R-D=AMA'\) または、\(R-diag\left( I-AMA'\right) =AMA'\)
と表すこともできる。
左辺の対角成分、即ち、変数の分散1から誤差分散を引いたものを x,y,z の共通性という。
共通性については以下で説明する。
共通性
因子分解の基本方程式は、
因子間相関があれば、 \(R-D=AMA'\)
因子間相関がなければ \(R-D=AA'\)
\(R-D=
\begin{pmatrix}
1-e_{x}^{2} & r_{xy} & r_{xz} \\
r_{xy} & 1-e_{y}^{2} & r_{yz} \\
r_{xz} & r_{yz} & 1-e_{z}^{2}
\end{pmatrix}\)
因子間相関がある場合 \(M
=\begin{pmatrix}
1 & r \\
r & 1
\end{pmatrix}\) とし、\(AMA'=
\begin{pmatrix}
a_{x} & b_{x} \\
a_{y} & b_{y} \\
a_{z} & b_{z}
\end{pmatrix}
\begin{pmatrix}
1 & r \\
r & 1
\end{pmatrix}
\begin{pmatrix}
a_{x} & a_{y} & a_{z} \\
b_{x} & b_{y} & b_{z}
\end{pmatrix}
\) を計算すると、
\(AMA'
=
\begin{pmatrix}
a_{x}^2+b_{x}^2+2ra_xb_x & a_{x}a_{y}+b_{x}b_{y}+ra_xb_y+ra_yb_x & a_{x}a_z+b_{x}b_{z}+ra_xb_z+ra_zb_x\\
a_{x}a_{y}+b_{x}b_{y}+ra_xb_y+ra_yb_x & a_{y}^2+b_{y}^2+2ra_yb_y & a_{y}a_z+b_{y}b_{z}+ra_yb_z+ra_zb_y\\
a_{x}a_z+b_{x}b_{z}+ra_xb_z+ra_zb_x & a_{y}a_z+b_{y}b_{z}+ra_yb_z+ra_zb_y & a_{z}^2+b_{z}^2+2ra_zb_z
\end{pmatrix}
\)
対角成分を取り出すと、
\(\begin{cases}1-e_x^2=a_{x}^2+b_{x}^2+2ra_xb_x\\
1-e_y^2=a_{y}^2+b_{y}^2+2ra_yb_y\\
1-e_z^2=a_{z}^2+b_{z}^2+2ra_zb_z\end{cases}\)
これが共通性である。
因子間相関がない場合 \(r=0\) だから、
\(AA'=
\begin{pmatrix}
a_{x} & b_{x} \\
a_{y} & b_{y} \\
a_{z} & b_{z}
\end{pmatrix}
\begin{pmatrix}
a_{x} & a_{y} & a_{z} \\
b_{x} & b_{y} & b_{z}
\end{pmatrix}
=
\begin{pmatrix}
a_{x}^2+b_{x}^2 & a_{x}a_{y}+b_{x}b_{y} & a_{x}a_z+b_{x}b_{z}\\
a_{x}a_{y}+b_{x}b_{y} & a_{y}^2+b_{y}^2 & a_{y}a_z+b_{y}b_{z}\\
a_{x}a_z+b_{x}b_{z} & a_{y}a_z+b_{y}b_{z} & a_{z}^2+b_{z}^2
\end{pmatrix}
\)
対角成分を取り出すと、
\(1-e_{x}^2=a_{x}^2+b_{x}^2\) \(a_{x}^2+b_{x}^2\)をx の共通性、 \(e_{x}^2\) をxの独自性という。
y,z の共通性、独自性も同様に定義される。
\(\begin{cases}1-e_x^2=a_{x}^2+b_{x}^2\\
1-e_y^2=a_{y}^2+b_{y}^2\\
1-e_z^2=a_{z}^2+b_{z}^2\end{cases}\) 変数の分散 1 から誤差分散を引いたものが共通性である。
これらは、行列を用いると \(diag(R-D)=diag(AMA')\) と簡潔に表される。
次のことは、主成分分析のところで詳しく説明する
\(a_{x}^2+a_{y}^2+a_{z}^2=\lambda_{1}\) 、\(b_{x}^2+b_{y}^2+b_{z}^2=\lambda_{2}\) は、分散共分散行列の第一の固有値、第二の固有値。
(主因子法の初期解は、固有ベクトルに固有値の平方根をかけたものだから、上式が成立)
\(\lambda_{1}+\lambda_{2}\) を総共通性と言う。
結局のところ、\(R-D=AMA'\) 、 \(R-D=AA'\) を満たすAを求める問題になる。
Aを因子負荷行列という。
トレース
行列のトレースは、その行列の固有値の和である。 https://mathtrain.jp/trace (高校数学の美しい物語様)
相関行列の対角成分は1であるのでトレースは3。固有値の和は3である。
固有値の合計は変数の個数と一致する。
図形的な意味
\(\begin{pmatrix}
x \\
y \\
z
\end{pmatrix}=
F
\begin{pmatrix}
a_{x}\\
a_{y}\\
a_{z}
\end{pmatrix}
+
G
\begin{pmatrix}
b_{x}\\
b_{y}\\
b_{z}
\end{pmatrix}
+
\varepsilon
\)
基底を \(\begin{pmatrix}
a_{x}\\
a_{y}\\
a_{z}
\end{pmatrix}
\) 、\(\begin{pmatrix}
b_{x}\\
b_{y}\\
b_{z}
\end{pmatrix}\) と考えると、座標は、 \((F,G)\) となる。
さて、次元圧縮された(F,G)と因子負荷量(ax,bx),(ay,by),(az,bz)の図形的意味を考える。
\(\varepsilon =\begin{pmatrix}
\varepsilon _{x} \\
\varepsilon _{y} \\
\varepsilon _{z}
\end{pmatrix}\) とおくと、構造方程式は、\(X=A\begin{pmatrix}
F \\
G
\end{pmatrix}+\varepsilon \)
構造方程式をみたす因子負荷行列Aは一通りではない。
即ち、
\(X=A\begin{pmatrix}
F \\
G
\end{pmatrix}+\varepsilon =\left\{ AT\right\} \times \left\{ T^{-1}\begin{pmatrix}
F \\
G
\end{pmatrix}\right\} +\varepsilon \)
\(AT=\begin{pmatrix}
a_{x}' & b_{x}' \\
a_{y}' & b_{y}' \\
a_{z}' & b_{z}'
\end{pmatrix}\) とおくと、\(\begin{pmatrix}
a_{x}' & a_{y}' & a_{z}' \\
b_{x}' & b_{y}' & b_{z}'
\end{pmatrix}=T^{-1}\begin{pmatrix}
a_{x} & a_{y} & a_{z} \\
b_{x} & b_{y} & b_{z}
\end{pmatrix}\)
これは、\(T^{-1}\) で表される一次変換によって、
\(\left( F,G\right) \rightarrow \left( F',G'\right) \)
\(\begin{aligned}\left( a_{x},b_{x}\right) \rightarrow \left( a_{x}',b_{x}'\right)
\\
\end{aligned}\) \(\left( a_{y},b_{y}\right) \rightarrow \left( a_{y}',b_{y}'\right) \) \(\left( a_{z},b_{z}\right) \rightarrow \left( a_{z}',b_{z}'\right) \)
因子スコアを一次変換すると、因子負荷ベクトルも同じ一次変換がなされることが分かる。
Tが直交行列であれば一次変換は回転である。この場合、バリマックス回転と呼ぶ。
一般の一次変換は固有値方向の固有値倍の拡大縮小であるので斜交回転となり、この場合、プロマックス 回転と呼ぶ。
データを回転しても相関行列は変わらない
\(X=\begin{pmatrix}
x \\
y \\
z
\end{pmatrix}\) 、直交行列Tに対し、 \(Y=TX\) とすると、
\(YY'=TXX'T'\)
簡単のため因子間相関のない場合を考えると、
\(R=AMA'+D\)
\(A=
\begin{pmatrix}
a_{x} & b_{x} \\
a_{y} & b_{y} \\
a_{z} & b_{z}
\end{pmatrix}\) が因子分解の基本方程式を満たせば、 \(AT
=
\begin{pmatrix}
a_{x}' & b_{x}' \\
a_{y}' & b_{y}' \\
a_{z}' & b_{z}'
\end{pmatrix}\) も同じ基本方程式を満たす。
実際、\(AT(AT)'
=ATT'A'=AA'\) となっている。
主成分分析との関係
共通性・独自性は回転の種類によらず一定。
因子負荷量、因子スコア 同じ回転になる。
回転前の因子スコアは主成分スコアのような概括評価に近い。
バリマックス回転後の因子スコアはちょうど因子の含有量を表す値のように解釈できる。
プロマックス回転後は各因子を独立に評価できなくなり解釈が複雑、あまり合理的ではない。
因子スコアは平均値が0で標準偏差がほぼ1であり、しかも斜交回転をしないのならほぼ無相関。