【このページは現在作成中です】
第7回:教師なし学習・次元削減,機械学習の実践的アプローチ†
7.1 教師なし学習・次元削減【中村】†
次元削減 (Dimensionality Reduction) とは†
- データの変数(列)間の関係を学習し,次元数を減らすこと
- より少ない特徴量でデータを説明する
- なるべく情報量を落とさないように,複数の特徴量をまとめた新しい特徴量を作る
図1:教師あり学習と教師なし学習のイメージ(再掲)
なぜ次元を削減するのか?†
- データの理解・可視化
- 次元を削減することで,データの理解・可視化がやりやすくなる
- 人間が理解できる表現方法はせいぜい3次元まで
- 1次元:サンプル同士を直接値で比較できる
- 2次元:サンプルを2軸で説明できる
- 3次元:サンプルを空間上で可視化できる
- 4次元以上: 1つの図では可視化不可能
- データの圧縮
- 高次元のデータを低次元に圧縮することで,計算処理を効率化できる
- 次元の呪いへの対処
- 次元が増えるほど訓練に十分なデータが指数的に増える (少ないままだと過学習が起こる)ので,減らしたい
次元削減の手法の例†
- 主成分分析 (Principal Component Analysis, PCA)
- 非負値行列因子分解(Non-negative Matric Factorization, NMF)
- t-SNE ( t-distributed Stochastic Neighbor Embedding)
- データポイントの距離を可能な限り維持する2次元表現を見つけようとする
PCA†
次元削減によるデータの説明†
次元削減によるデータの圧縮†
次元削減による特徴量抽出†
7.2 特徴量エンジニアリング【中村】†
7.3 モデルのチューニング【伊藤】†
関数化†
検証用データ†
- これまでは,元データを,訓練,テストの2つに分けていた
- チューニングしていくにあたり,テストデータに合わせたチューニングになってしまうのが問題
- なので,元データを,訓練,検証,テストの3つにわけるべし
クロスバリデーション†
グリッドサーチ†
最適化†
7.4 アプリケーション【陳】†
作成したモデルをAPI化する†
訓練済みモデルの利用†