本日のまとめ
特徴抽出の方法
次元削減による特徴抽出の主な方法は以下の3つ - 教師なしデータ圧縮での主成分分析 - クラスの分離を最大化する教師あり次元削減法としての線形判別分析(LDA) - カーネル主成分分析(KPCA)による非線形次元削減
主成分分析による教師なし次元削減
- データが新しい特徴空間に変換・射影される。
- 主成分分析(Principal Component Analysis:PCA)は、特徴量同士の相関に基づいてデータからパターンを抽出する
- 高次元データにおける、分散が最大となる方向を見つけ出し、元の次元と同じかそれよりも低い次元の新しい部分空間へ射影する。
- PCAを次元削減に使用する場合、d×k次元(d行k列)の変換行列Wを作成する 以下のとき、k << dで、最初の主成分の分散は最大となる。
, \textbf{z} \in \mathbb{R}^{k}
PCAの方向は、データのスケーリングに非常に敏感!!!すべての特徴量に等しい重要度を割り当てたい場合は必ず標準化すること! 単純な手順をまとめると以下の通り (参考)https://qiita.com/animegazer/items/c7d99d6d1dee2f3f936f (参考2)https://qiita.com/Seiji_Tanaka/items/5c8041dbd7da1510fbe9
d次元のデータセットを標準化する
- 標準化したデータセットの共分散行列を作成する(共分散とは、偏差の積に対する平均値で、それらを要素とする行列を共分散行列)。データのバラツキの大きさと向きを表す
- 共分散行列を固有ベクトルと固有値に分解する(向きをとる)
- 固有値を降順でソートして、対応する固有ベクトルをランク付けする
- もっとも大きいkこの固有値に対応するk個の固有ベクトルを選択する(k < d)
- 上位k個の固有ベクトルから射影ベクトルWを作成する
- 射影ベクトルWを使ってd次元の入力データセットXを変換し、新しいk次元の特徴部分空間を取得する
共分散行列の作成
- 特徴量xjと、xkの間の共分散は以下の通り
- 上記から、共分散行列は以下のように記述できる