機械学習の手法を俯瞰してみる
『Pythonによる深層強化学習入門』で書かれている"機械学習の種類(一例)"を参考にして作成。
どの系統に属するものなのか、まとめておく。
分類 | 概要 | 手法 | 例 |
---|---|---|---|
教師あり学習 | 入力データと、それに対する答え(教師データ)がセットになったデータを学習する | ニューラルネットワーク | 手書き文字認識 |
サポートベクタマシン (SVM) |
OpenCV dlib |
||
決定木 (decision tree) |
音声認識トライフォンモデル作成 | ||
条件付き確率場 (CRF: Conditional Random Field) |
MeCab Viterbiアルゴリズム Forward-Backwardアルゴリズムによるパラメータ更新 |
||
線形判別分析 (LDA: Linear Discriminant Analysis) |
特徴量の無相関化 特徴量変換用のパラメータ更新 |
||
教師なし学習 | 入力データに含まれる何かしら要素を計算することで自動的に分類する | 主成分分析 (PCA: Principal Component Analysis) |
次元削減 |
クラスタ分析 | hclust関数(R言語) | ||
k-means法 ハードクラスタリング |
kmeans関数(R言語) | ||
混合ガウスモデル ソフトクラスタリング |
混合正規分布モデルのHMM EMアルゴリズムによるパラメータ更新 |
||
自己組織化マップ (SOM: Self-Organizing Map) |
som関数(R言語) | ||
潜在的ディリクレ配分法 (LDA: Latent Dirichlet Allocation) |
Gensim(Pythonライブラリ) | ||
オートエンコーダ (AE: Auto Encoder) |
Encoder-Decoder | ||
敵対的生成ネットワーク (GAN: Generative Adversarial Networks) |
イメージ生成 | ||
半教師あり学習 | 「うまくいっている」もしくは「うまくいっていない」という情報を使って学習する | 強化学習 | ボールキャッチゲーム |
変分オートエンコーダ (VAE: Variational AutoEncode) |
イメージ生成 |