
3.3
PCA
(主成分分析)
77
PCA
は、隠れたパターンを見つけ出してデータを分離できるだけでなく、特徴量数を減ら
すことで、機械学習モデルの学習コストを時間の面でも計算量の面でも削減することができ
る。
MNIST
数字データセットに関しては、学習時間の短縮は多めに見積もっても大したもので
はない。このデータセットが、特徴量数が
784
、観測点数
50,000
と小さいからだ。しかし、
特徴量数が数百万、観測点数が数十億もあるようなデータセットであれば、次元削減による
機械学習パイプラインにおける機械学習アルゴリズムの学習時間の短縮は、非常に大きいも
のになるだろう。
最後に注意すべき点がある。
PCA
は、元の特徴量セットに存在する情報の一部を捨ててし
まうが、その際に最も重要なものを維持しあまり重要でないものを捨てるように、賢く判断
する。それでも、
PCA
で削減したデータセットで学習したモデルの予測精度は、元のすべ
ての特徴量を用いて学習したモデルよりも若干劣るかもしれない。しかし、学習時間も予測
時間もはるかに短縮されるはずだ。これは、機械学習システムに次元削減を組み込むかどう
かを決める際の重要なトレードオフとなる。
3.3.3
インクリメンタル
PCA
メモリに乗り切らないほど大きいデータセットに対しては、メモリに乗るような小さいバッチに分け
て、インクリメンタルに
PCA
を実行することができる。バッチサイズは、手動で設定することもでき
るし、自動的に決定するようにすることもできる。このようなバッチを用いる
PCA ...