ここでは主成分分析の仕組みやメリット、
そして主成分分析でできることや、
固有値、寄与率、主成分得点などについて話していきます。
主成分分析とは
主成分分析とは、複数の変数を1つにまとめるといった変数や次元を減らすための手法になります。
簡単にいうと相関関係のある変数同士は1つにまとめることをします。
画像でも1つ1つのピクセルには様々な確率変数があります。このピクセルでは色が青だけど、多少赤が混じってたり、、
なので、そういったものをいらない変数はある程度排除することで、次元を減らしたり複数の変数にまとめたりすることで、画像生成するといった手法を取ることができます。
分散を最大化
分散の最大化なので、写像をした状態で分散が最大となる\(w_{1}\),\(w_{2}\)を求めます。
まず各データの写像後のデータ\(y = w_{1}x_{1}^{(1)} + w_{2}x_{2}^{(1)}\)の値から分散を求めてみます。
まず数式をある程度今後のために簡略化するために、以下のようにデータや傾きベクトルを定義します。
写像後のデータ\(y = (y_{1}, y_{2})\)、
傾きベクトル\(w = (w_{1}, w_{2})\)、
各データ\(x = (x_{1}, x_{2})\)、
としたとき、
\(y = w_{1}x_{1} + w_{2}x_{2} = (w_{1}, w_{2})^{T} (x_{1}, x_{2}) = w^{T}x\)と表現ができます。
そして、この時写像後のデータ\(y\)の分散を最大化するので、まず\(y\)の分散を求めると、
まず標本平均\(\bar{y_{}}\)は、
\begin{eqnarray}
\bar{y_{}}
&=& \frac{1}{n} \sum_{i=1}^{n} y_{i} \\
&=& \frac{1}{n} \sum_{i=1}^{n}(w_{1}x_{i1} + w_{2}x_{i2}) \\
&=& \frac{1}{n} \sum_{i=1}^{n}w_{1}x_{i1} + \frac{1}{n} \sum_{i=1}^{n} w_{2}x_{i2} \\
&=& w_{1}(\frac{1}{n} \sum_{i=1}^{n}x_{i1}) + w_{2}(\frac{1}{n} \sum_{i=1}^{n} x_{i2}) \\
&=& w_{1}\bar{x_{1}} + w_{2}\bar{x_{2}} \\
&=& (w_{1}, w_{2})(\bar{x_{1}}, \bar{x_{2}}) \\
&=& w^{T}\bar{x_{}} \\
\end{eqnarray}
よって、標本分散\(S_{y}^{2}\)は、
\begin{eqnarray}
S_{y}^{2}
&=& \frac{1}{n} \sum_{i=1}^{n} (y_{i}-\bar{y_{}})^{2} \\
&=& \frac{1}{n} \sum_{i=1}^{n} \{ (w_{1}x_{1i} + w_{2}x_{2i}) - (w_{1}\bar{x_{1i}} + w_{2}\bar{x_{2i}}) \}^{2} \\
&=& \frac{1}{n} \sum_{i=1}^{n} \{ w_{1}x_{1i} + w_{2}x_{2i} - w_{1}\bar{x_{1i}} - w_{2}\bar{x_{2i}} \}^{2} \\
&=& \frac{1}{n} \sum_{i=1}^{n} \{ w_{1}(x_{1i}-\bar{x_{1i}}) + w_{2}(x_{2i}-\bar{x_{2i}}) \}^{2} \\
&=& \frac{1}{n} \sum_{i=1}^{n} \{ w_{1}^{2}(x_{1i}-\bar{x_{1i}})^{2} + 2w_{1}w_{2}(x_{1i}-\bar{x_{1i}})(x_{2i}-\bar{x_{2i}}) + w_{2}^{2}(x_{2i}-\bar{x_{2i}})^{2} \}^{2} \\
&=& \frac{1}{n} w_{1}^{2} \sum_{i=1}^{n} (x_{1i}-\bar{x_{1i}})^{2} + 2\frac{1}{n} w_{1}w_{2} \sum_{i=1}^{n} (x_{1i}-\bar{x_{1i}})(x_{2i}-\bar{x_{2i}}) + \frac{1}{n} w_{2}^{2} \sum_{i=1}^{n}(x_{2i}-\bar{x_{2i}})^{2} \}^{2} \\
&=& w_{1}^{2}{S_{x_{1}}}^{2} + 2w_{1}w_{2}S_{x_{1}x_{2}} + w_{2}^{2}{S_{x_{2}}}^{2} \\
&=& w_{T}Sw
\end{eqnarray}
分散の最大化
これで、分散を求めることができました。
なので次はこの分散の最大化を考えます。
傾きベクトルに対して大きさを定めます。大きさを1にします。つまり\(w^{T}w = 1\)と仮定します。この条件の時に分散が最大となる傾き\(w\)を求めます。
ラグランジュの未定乗数法を用いると、以下のような式で表現でき、
\begin{eqnarray}
L(w, \lambda)
&=& S_{y}^{2} + \lambda(w^{T}w - 1)
&=& w_{T}Sw + \lambda(w^{T}w - 1)
\end{eqnarray}
と関数を定めます。この時、\(\lambda\)は定数です。
これに対して、\(w\)と\(\lambda\)で偏微分します。
\begin{eqnarray}
\frac{\partial}{\partial w} L(w, \lambda)
&=& \frac{\partial}{\partial w} w_{T}Sw + \frac{\partial}{\partial w}\lambda(w^{T}w - 1) \\
&=& Sw - \lambda w \\
&=& 0
\end{eqnarray}
そうすると、
\begin{eqnarray}
Sw - \lambda w &=& 0 \\
Sw &=& \lambda w ・・・①
\end{eqnarray}
となり、これは\(\lambda\)の固有方程式となります。
これに対して、左から\(w^{T}\)をかけると、\(w^{T}w = 1\)ということからも
\begin{eqnarray}
w^{T}Sw &=& \lambda (w^{T}w) \\
w^{T}Sw &=& \lambda
\end{eqnarray}
となり、\(\lambda\)は\(y\)の分散に一致します。
したがって、①の固有方程式はそもそも\(y\)の最大となる傾きを求める式であることから、
最大化となる傾きベクトルは①の固有ベクトルとなり、そして分散の最大値は\(y\)の分散式と一致した\(\lambda\)となります。
第二主成分
第二主成分は、第一主成分に垂直となる主成分になります。
そしてこの第二主成分でも第一主成分と同様に、分散の最大化を求めます。
まず写像しても結局yの式は同じなので、省きます。
あと今回は第1主成分と第二主成分で垂直という関係があるので、それについては条件を追加します。
なので、第一主成分の傾きベクトルを\(w_{1}\)とすると、垂直なので\(w^{T}w_{1} = 0\)になります。
ラグランジュの未定乗数法から、
\begin{eqnarray}
L(w, \lambda)
&=& w_{T}Sw + \lambda(w^{T}w - 1) + \gamma w^{T}w_{1}
\end{eqnarray}
これに対して、\(w\)と\(\lambda\)で偏微分します。
\begin{eqnarray}
\frac{\partial}{\partial w} L(w, \lambda)
&=& \frac{\partial}{\partial w} w_{T}Sw + \frac{\partial}{\partial w}\lambda(w^{T}w - 1) + \frac{\partial}{\partial w}\gamma w^{T}w_{1} \\
&=& Sw - \lambda w + \gamma w_{1}\\
&=& 0
\end{eqnarray}
左から\(w^{T}\)をかけて、\(w^{T}w_{1} = 0, w^{T}w = 1\)ということからも
\begin{eqnarray}
w^{T}Sw - \lambda w^{T}w + \gamma w^{T}w_{1} &=& 0 \\
w^{T}Sw &=& \lambda w^{T}w \\
w^{T}Sw &=& \lambda \\
\end{eqnarray}
となり、第一主成分同様に、第二主成分でも固有値\(\lambda\)が最大値となります。
そして第二主成分の分散を最大化する傾きは固有ベクトル\(w\)となります。
主成分得点
主成分得点とは、上で求めた結果を用いて実際のデータを入れて計算をした値のこと。