機械学習の数理①(機械学習の捉え方)
はじめに
授業の復習用に勉強したことをまとめていきます。
1. 機械学習の捉え方
1.1 機械学習の捉え方
学習は以下の7つの要素の組み合わせと考えることができます。
- データのタイプ
- 教師あり or 教師なし
- プロセスの型(Batch or Online)
- 知識表現
- 学習の目的
- 学習アルゴリズム
- 学習成功の評価基準
それぞれの要素についてどのようなものがあるのか見ていきます。
データのタイプ
教師ありかなしか
プロセスの型
バッチ学習 が一括で与えられ、を用いて、を推定
オンライン学習 データが逐次的に与えられ、各時刻に置いて、推定結果を逐次的に更新する。
知識表現
教師なし学習
ヒストグラム密度、各種統計モデル、状態空間モデル、混合分布、トピックモデル(LDA)、関係データモデル、混合メンバーシップモデル(MMM), 確率ブロックモデル(SBM), 非負値値行列因子分解モデル(NMF), 制約付きボルツマンマシン(RBM), ベイジアンネットワーク etc.教師あり学習
論理関数(DNF)、決定木、決定リスト、回帰モデル、サポートベクトルマシン、ニューラルネットワーク(NN)、深層学習モデル(パーセプトロン、多層NN, Convolutional NN)、カーネル法 etc.
全ての知識表現(モデル)は確率分布として表現できる。
教師なし学習では、
教師あり学習では、
知識表現=モデルクラス=仮説空間(hypothesis class)
:モデルに付随する実パラメーター空間
潜在表現モデル
- 用語
:顕在変数、:潜在変数(状態変数)、:周辺化モデル、:完全変数モデル
Ex. 混合分布、 トピックモデル、関係データモデル、状態空間モデル、NMF、RBM, ニューラルネットワーク etc.
★周辺化モデルには非正則性がある(パラメータが一意に決定しない)が、完全変数モデルは正則
機械学習で用いる重要知識表現は多くが潜在変数モデル
学習の目的関数
推定...未知の真の分布を当てる
の推定をパラメーター推定、の推定をモデル推定という。
予測...将来のデータの出方(予測分布)を求める
:時刻における予測分布、ただし 必ずしもパラメーター推定やモデル選択は必要ではない。(Baysiam averaging)
経験損失関数
学習アルゴリズム
学習目的関数の最小化を効率的に解くための手続き、収束の速さ、計算効率、解の精度で良し悪しを評価
パラメーター推定
解析解を求めることが難しいことが多いので、連続最適化を行う。
連続最適化のアルゴリズムはモデル依存
- EMアルゴリズム
- マルコフ連鎖モンテカルロ法
- Simulated or Deterministic Annealing
変分ベイズ法
トピックモデルLASSO
スパース最適化バックプロパゲーション
NNContrastive divergence法
RBM
etc.
モデル推定、状態推定
数え上げが難しい場合が多い
- 離散最適化
動的計画法
変分ベイズ法
枚挙法
連続緩和
etc.
集団学習による精度強化
- Boosting
- Bagging
- Aggregation
- Random Forest
- etc
学習成功の評価基準
学習目的関数を最適化することは一体何を学習しているのか?メタな視点から学習アルゴリズムを評価する必要がある。
- 可読性が高い知識表現(決定木、トピックモデル、etc)が学習精度が高いとはかぎらない。
- 学習精度の高い知識表現(CNN、RNN、etc)は一般に可読性が低い。
- 可読性の高い or 学習精度の高い知識表現ほど一般に学習時間がかかる。
理論的評価フレームワーク
- Batch学習
- PAC(Probably Approximately Correct)学習
- 汎化損失、統計的リスク
- On-line学習
- 累積予測損失 L:損失関数
- リグレット
いかに小さく抑えられるか?、モデルクラスに依存。
実験的評価フレームワーク
学習結果の性能を、訓練データと同じ情報源から発生する異なるテストデータに対して経験的に評価する。
- ROC(Receiver Operating Characteristic)曲線
- Precision-Recall曲線