因子負荷量と主成分負荷量はどう違うのか、疑問に思ったことを整理します。
負荷量は、機械を動かして実際にさせる仕事の量であり、
(主成分負荷量)×(主成分) は、その主成分が各変数に及ぼした影響量
(因子負荷量)×(因子) は、その因子が各変数に及ぼした影響量
例えば、父・母を因子とし、兄・弟を目的変数とする因子分析で、
(兄)=0.8(父親)+0.6(母親) 、(弟)=0.6(父親)+0.8(母親) とすると、
(父親)という主成分・因子の兄弟への負荷量は \(\begin{pmatrix}
0.8\\
0.6
\end{pmatrix}\)
(母親)という主成分・因子の兄弟への負荷量は \(\begin{pmatrix}
0.6\\
0.8
\end{pmatrix}\)
父親は兄への影響が大きく、母親は弟への影響が大きいいことを示しています。
父親 | 母親 | |
兄 | 0.8 | 0.6 |
弟 | 0.6 | 0.8 |
この表が、主成分負荷行列・因子負荷行列ということになり、表をもとにパス図を描くことができます。
負荷量
[主成分負荷量]Principal component loading
主成分得点が測定変数に与える影響の程度を表す数値、主成分得点と測定変数との相関係数。
1つの主成分負荷量ベクトル=固有ベクトル*固有値のルート
主成分負荷量ベクトルの大きさは、その固有ベクトルの固有値である。
[因子負荷量]Factor loading
因子が測定変数に与える影響の程度を表す数値、因子と測定変数との相関係数。
1つの因子負荷量ベクトル=固有ベクトル*固有値のルート
因子負荷量ベクトルの大きさは、その固有ベクトルの固有値である。
観測変数がn個であれば、負荷量ベクトルはn次元であり、負荷量ベクトル大きさが観測変数への影響力を表す。固有値を用いた分析では、
(負荷量ベクトルの大きさ)=(固有値) となる。
最も基本的な主成分負荷量について、固有値、寄与率との関係を整理する。
次元圧縮は行わない。
主成分係数とは
3変量の場合で考える。
[x,y,z が標準化されているとき]
標準化された変数 x,y,z で、相関行列によって主成分分析を行い、新しい変数 \(u_{(1)},u_{(2)},u_{(3)}\) を得たとする。分散はそれぞれ、 \(\lambda_{(1)},\lambda_{(2)},\lambda_{(3)}\) である。即ち、
\(\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}
\)
新変量 \(u_{(1)},u_{(2)},u_{(3)}\) の分散共分散行列は固有値 \(\lambda_{(1)},\lambda_{(2)},\lambda_{(3)}\) を対角成分にもつ対角行列である。
第1主成分は \(
u_{(1)}
=a_{1(1)}\cdot x+a_{2(1)}\cdot y+a_{3(1)}\cdot z
\)
主成分を構成する係数は、分散共分散行列(相関行列)の 固有ベクトルの成分であり、これを主成分係数(Principal component coefficient)という。つまり、主成分係数とは変量から主成分を求める係数のことである。
新変数の影響力は分散で表され、固有値に等しい。
主成分負荷量とは
主成分係数は直交行列の成分、どの主成分の係数ベクトルも大きさは1であり、係数に新変数の影響力の強さは現れてこない。そこで、新変数 \(u_{(1)},u_{(2)},u_{(3)}\) の分散を1に直すという工夫をすると、係数に変数 x,y,z への影響力が現れる。
\(\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}
x\\
y\\
z
\end{pmatrix}
=
u_{(1)}
\begin{pmatrix}
a_{1(1)}\\
a_{2(1)}\\
a_{3(1)}
\end{pmatrix}
+u_{(2)}
\begin{pmatrix}
a_{1(2)}\\
a_{2(2)}\\
a_{3(2)}
\end{pmatrix}
+u_{(3)}
\begin{pmatrix}
a_{1(3)}\\
a_{2(3)}\\
a_{3(3)}
\end{pmatrix}\)
\(u_{(1)},u_{(2)},u_{(3)}\) の分散は、\(\lambda_{(1)},\lambda_{(2)},\lambda_{(3)}\) だから、標準化した主成分を \(z_{(1)},z_{(2)},z_{(3)}\) とおくと、
\(\begin{pmatrix}
x\\
y\\
z
\end{pmatrix}
=
\dfrac{u_{(1)}}{\sqrt{\lambda_{(1)}}}
\begin{pmatrix}
\sqrt{\lambda_{(1)}}a_{1(1)}\\
\sqrt{\lambda_{(1)}}a_{2(1)}\\
\sqrt{\lambda_{(1)}}a_{3(1)}
\end{pmatrix}
+\dfrac{u_{(2)}}{\sqrt{\lambda_{(2)}}}
\begin{pmatrix}
\sqrt{\lambda_{(2)}}a_{1(2)}\\
\sqrt{\lambda_{(2)}}a_{2(2)}\\
\sqrt{\lambda_{(2)}}a_{3(2)}
\end{pmatrix}
+\dfrac{u_{(3)}}{\sqrt{\lambda_{(3)}}}
\begin{pmatrix}
\sqrt{\lambda_{(3)}}a_{1(3)}\\
\sqrt{\lambda_{(3)}}a_{2(3)}\\
\sqrt{\lambda_{(3)}}a_{3(3)}
\end{pmatrix}
\)
\(\therefore
\begin{pmatrix}
x\\
y\\
z
\end{pmatrix}
=
z_{(1)}
\begin{pmatrix}
\sqrt{\lambda_{(1)}}a_{1(1)}\\
\sqrt{\lambda_{(1)}}a_{2(1)}\\
\sqrt{\lambda_{(1)}}a_{3(1)}
\end{pmatrix}
+z_{(2)}
\begin{pmatrix}
\sqrt{\lambda_{(2)}}a_{1(2)}\\
\sqrt{\lambda_{(2)}}a_{2(2)}\\
\sqrt{\lambda_{(2)}}a_{3(2)}
\end{pmatrix}
+z_{(3)}
\begin{pmatrix}
\sqrt{\lambda_{(3)}}a_{1(3)}\\
\sqrt{\lambda_{(3)}}a_{2(3)}\\
\sqrt{\lambda_{(3)}}a_{3(3)}
\end{pmatrix}
\)
\(z_{(1)}\) の \(\begin{pmatrix}
x\\
y\\
z
\end{pmatrix}\) に対する主成分負荷量は、 \(
\begin{pmatrix}
\sqrt{\lambda_{(1)}}a_{1(1)}\\
\sqrt{\lambda_{(1)}}a_{2(1)}\\
\sqrt{\lambda_{(1)}}a_{3(1)}
\end{pmatrix}
=
\begin{pmatrix}
cov\left(x,z_{(1)}\right)\\
cov\left(y,z_{(1)}\right)\\
cov\left(z,z_{(1)}\right)
\end{pmatrix}
=
\begin{pmatrix}
cor\left(x,z_{(1)}\right)\\
cor\left(y,z_{(1)}\right)\\
cor\left(z,z_{(1)}\right)
\end{pmatrix}
\)
これは標準化した主成分得点と観測変数との相関係数であり、主成分負荷量が大きいほど、その主成分は変数と強く相関し、主成分をよく説明する変数であるといえる。
\(
A
=
\begin{pmatrix}
\sqrt{\lambda_{(1)}}a_{1(1)}&\sqrt{\lambda_{(2)}}a_{1(2)}&\sqrt{\lambda_{(3)}}a_{1(3)}\\
\sqrt{\lambda_{(1)}}a_{2(1)}&\sqrt{\lambda_{(2)}}a_{2(2)}&\sqrt{\lambda_{(3)}}a_{2(3)}\\
\sqrt{\lambda_{(1)}}a_{3(1)}&\sqrt{\lambda_{(2)}}a_{3(2)}&\sqrt{\lambda_{(3)}}a_{3(3)}
\end{pmatrix}
\) 主成分負荷行列(因子負荷行列)
このとき、 \(AA'=R\) (相関行列)となる。実際、
\(AA'=\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}
\sqrt{\lambda_{(1)}}&0&0\\
0&\sqrt{\lambda_{(2)}}&0\\
0&0&\sqrt{\lambda_{(3)}}
\end{pmatrix}
\begin{pmatrix}
\sqrt{\lambda_{(1)}}&0&0\\
0&\sqrt{\lambda_{(2)}}&0\\
0&0&\sqrt{\lambda_{(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}\)
よって、\(AA'=\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}
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)}\\
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}
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}
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}
\) であるから、
\(AA'=R\) となる。
また、
\(
x
=
z_{(1)}
\begin{pmatrix}
\sqrt{\lambda_{(1)}}a_{1(1)}
\end{pmatrix}
+z_{(2)}
\begin{pmatrix}
\sqrt{\lambda_{(2)}}a_{1(2)}
\end{pmatrix}
+z_{(3)}
\begin{pmatrix}
\sqrt{\lambda_{(3)}}a_{1(3)}
\end{pmatrix}
\)
xの分散は1だから、
\(\left(\sqrt{\lambda_{(1)}}a_{1(1)} \right)^2+
\left(\sqrt{\lambda_{(2)}}a_{1(2)}\right)^2+
\left(\sqrt{\lambda_{(3)}}a_{1(3)}\right)^2
=1\)
y,zについても同様のことが言える。
主成分負荷行列では、行ベクトルの大きさは1、列ベクトルの大きさは固有値である。
行ベクトルを主成分負荷ベクトル(因子負荷ベクトル)という。
寄与率
\(z_{(1)}\) | \(z_{(2)}\) | \(z_{(3)}\) | 平方和 | |
\(x\) | \(\sqrt{\lambda_{(1)}} a_{1(1)}\) | \(\sqrt{\lambda_{(2)}} a_{1(2)}\) | \(\sqrt{\lambda_{(3)}} a_{1(3)}\) | 1 |
\(y\) | \(\sqrt{\lambda_{(1)}} a_{2(1)}\) | \(\sqrt{\lambda_{(2)}} a_{2(2)}\) | \(\sqrt{\lambda_{(3)}} a_{2(3)}\) | 1 |
\(z\) | \(\sqrt{\lambda_{(1)}} a_{3(1)}\) | \(\sqrt{\lambda_{(2)}} a_{3(2)}\) | \(\sqrt{\lambda_{(3)}} a_{3(3)}\) | 1 |
平方和 | \(\lambda_{(1)}\) | \(\lambda_{(2)}\) | \(\lambda_{(3)}\) | 3 |
主成分係数は単位ベクトルであることから影響力の比較が難しかったが、主成分負荷量では成分が固有値の平方根倍されているので、影響力の強さが現れる。
・列ベクトルは主成分負荷量、その因子の各変数への影響力を表す。
・行ベクトルは因子負荷ベクトル、その変数における各因子の割合を表す(各因子との相関係数)。
ここまでは、次元を圧縮せずにきた。即ち、
変量 \(x,y,z\) が新変量 \(z_{(1)},z_{(2)},z_{(3)}\) に変換されただけで、3次元のままである。
新変量は無相関であり、分散共分散行列は半正定値行列であるから固有値は0以上。
\(\lambda_{(1)}\geq\lambda_{(2)}\geq\lambda_{(3)}\) 固有値を降順にしておく。
新変量の全影響力は、 \(\lambda_{(1)}+\lambda_{(2)}+\lambda_{(3)}=3\) (変量の個数であり、分散の合計である)
もし、 \(\lambda_{(1)}+\lambda_{(2)}=2.7\) であれば、\(z_{(1)},z_{(2)}\) の影響力は、\(\dfrac{2.7}{3}=0.9\)
2つの変量で全体の90%が説明できると考えられる。この90%を寄与率という。
詳しく言うと、
\(z_{(1)}\) の寄与率 \(H_1\) は、 \(z_{(1)}\) がこのモデルにどのくらい影響を及ぼしているかを表すもので、
\(H_{1}=
\dfrac{\lambda_{1}}{\lambda_{1}+\lambda_{2}+\lambda_{3}}
\) 同様に、\(z_{(2)}\) の寄与率は \(H_{2}=
\dfrac{\lambda_{2}}{\lambda_{1}+\lambda_{2}+\lambda_{3}}
\)
累積寄与率は変量を増やしたときの寄与率の合計で、
\(z_{(1)}\) に加えて \(z_{(2)}\) を変量とすれば、累積寄与率は \(
\dfrac{\lambda_{1}+\lambda_{2}}{\lambda_{1}+\lambda_{2}+\lambda_{3}}
\)
\(z_{(3)}\) まで変量を増やせば、累積寄与率は \(
\dfrac{\lambda_{1}+\lambda_{2}+\lambda_{3}}{\lambda_{1}+\lambda_{2}+\lambda_{3}}=100
\)
%
\(z_{(1)},z_{(2)},z_{(3)}\) で全てが説明できることになる。
実用上は、累積寄与率 90%で十分と考え、 \(z_{(1)},z_{(2)}\) を新変量として採用する。
このように、相関行列の分散(固有値)は降順にし、寄与率を考慮して因子の数を決定する。