1. 学ぶ
  2. /
  3. コース
  4. /
  5. Pythonで学ぶ教師なし学習

Connected

演習

PCAはパーツを学習しません

NMFと異なり、PCAは対象を構成する「パーツ」を学習しません。コンポーネントは(文書でいえば)トピックや、画像に対しても画像の一部分に対応しません。前の演習で扱ったLED数字画像のデータセットにPCAモデルを当てはめ、そのコンポーネントを可視化して自分の目で確かめてみましょう。画像は2次元配列 samples として利用できます。また、値が負の場合にピクセルを赤で表示するように改良された show_as_image() 関数も用意されています。

回答を送信すると、PCAのコンポーネントがLED数字の画像の意味のあるパーツを表していないことに気づくはずです!

指示

100 XP
  • sklearn.decomposition から PCA をインポートします。
  • 成分数を 7 とする PCA インスタンス model を作成します。
  • model の .fit_transform() メソッドを samples に適用し、結果を features に代入します。
  • モデルの各コンポーネント(model.components_ から取得)に対して、ループ内でそのコンポーネントを引数に show_as_image() 関数を適用します。