LoginSignup
113
82

More than 5 years have passed since last update.

固有値分解、特異値分解のメリット(機械学習の学習 #1)

Posted at

はじめに

機械学習の学習をはじめました。調べたこと学んだことを記録しています。

1.行列の種類と特徴

機械学習の学習で出会ったものをまとめます。学習が進めば編集する予定です。
行列まとめ.png

2.固有値分解

2.1. 固有値と固有ベクトル

正方行列$A$、スカラ$\lambda$、0ベクトルでないベクトル$\vec{x}$に対して以下が成り立つとき、
$$
A\vec{x}=\lambda\vec{x}
$$
$\lambda$を行列$A$の固有値、$\vec{x}$を行列$A$の固有ベクトルといいます。

2.2. 固有値分解

正方行列$A$が固有値$\lambda$、固有ベクトル$\vec{v}$を持つとき、

\begin{align}
A &=V\Lambda V^{-1} \\
\end{align}
\\
ただし、
\Lambda = \begin{pmatrix}
 \lambda_1 & & \\ 
  &\lambda_2 & \\ 
  & & \ddots 
 \end{pmatrix}
   
V = \begin{pmatrix}
 \vec{v_1} & \vec{v_2} & \cdots \\ 
 \end{pmatrix}

と変形することを固有値分解といいます。で、
$A=V\Lambda V^{-1}$は 正方行列=正則行列・対角行列・正則行列 の形になります。

2.3. 固有値分解のメリット

  • 行列の特徴が見えやすくなります。
  • ゼロに近い固有値は行列全体に与える影響が小さいため、この固有値を無視すること(次元削減)で、高精度で近似計算できます。近似することで、計算コストが下げられたり、データ量が減らせたりします。
  • $A^n$の計算がラク。

3.特異値分解

3.1.固有値分解に似せて説明してみる

正方行列$AA^T$が固有値$\sigma$、固有ベクトル$\vec{u}$を持つとき、

AA^T=USS^TU^{-1} \\
\\
ただし、
S = \begin{pmatrix}
 \sigma_1 & & \\ 
  &\sigma_2 & \\ 
  & & \ddots 
 \end{pmatrix}
   
U = \begin{pmatrix}
 \vec{u_1} & \vec{u_2} & \cdots \\ 
 \end{pmatrix}

と変形できます。おなじく、
正方行列$A^TA$が固有値$\sigma$、固有ベクトル$\vec{v}$を持つとき、

A^TA=VS^TSV^{-1} \\
\\
ただし、
S = \begin{pmatrix}
 \sigma_1 & & \\ 
  &\sigma_2 & \\ 
  & & \ddots 
 \end{pmatrix}

V = \begin{pmatrix}
 \vec{v_1} & \vec{v_2} & \cdots \\ 
 \end{pmatrix}

と変形できます。これらを使い、

A=USV^{-1} \\

と変形できます。これを特異値分解といいます。$A$は正方行列である必要はありません。($AA^T$は常に正方行列(対称行列)になります。)で、
$AA^T=USS^TU^{-1}$は 対称行列=直交行列・対角行列・直交行列 の形になります。$A^TA$も同様です。詳細は参考サイトのほうでご確認いただければと思います。$U$、$V$は直交行列なので、
 
  $A =USV^{-1} =USV^T$=直交行列・対角行列・直交行列
 
となります。

3.2.特異値分解のメリット

  • 行列$A$が正方行列でなくても、固有値分解のメリットを享受できます。
  • $AA^T$や$A^TA$が分析対象として意味のある行列のときに、シンプルな形で表現できます。計算機で扱いやすい、といえます。意味のある行列ですが、$AA^T$は分散共分散行列を表せるようです(参考サイト4より)。

4.参考にしたサイト様

1 線形代数レクチャーノート
2 理数アラカルト
3 対角化、固有値分解、特異値分解、そしてジョルダン標準形
4 ダンゴムシでもわかる特異値分解

おわりに

筆者は、数学もQiitaも素人です。いろいろ気を付けて記載しているつもりですが、誤り等指摘していただけると泣いて喜びます。

蛇足

上記はすべて実数の世界で考えています。ネットで調べていると複素数の話が出てくるのですが、難しいのでスルーしています。

113
82
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
113
82