機械学習の基礎
学習の 3 要素#
| 要素 | 内容 |
|---|---|
| モデル | 仮説の集合 |
| 損失 | 良し悪しの尺度 |
| 最適化 | 損失を小さくする の探し方 |
この 3 つを決めれば学習が定義される。 深層学習でもこの構造は変わらない。
汎化という目的#
訓練データでの誤差を 0 にすることは簡単(全部覚えればよい)。 難しいのは未知のデータで良い性能を出すこと。
そのため必ずデータを分ける。
| 分割 | 用途 |
|---|---|
| 訓練 | パラメータの学習 |
| 検証 | ハイパーパラメータの選択、早期終了 |
| テスト | 最終評価。1 回だけ使う |
テストデータを見てモデルを選ぶと、 テスト誤差が汎化誤差の推定として使えなくなる。 p ハッキングと同じ構図。
ノーフリーランチ#
あらゆる問題で最良の学習アルゴリズムは存在しない。 すべての可能な問題を平均すれば、どのアルゴリズムも同じ性能になる。
したがって有効なアルゴリズムは必ず何かを仮定している (帰納バイアス)。
| モデル | 帰納バイアス |
|---|---|
| 線形モデル | 関係が線形 |
| CNN | 局所性、平行移動不変性 |
| Transformer | 要素間の関係が重要 |
問題の構造とバイアスが合っているかがモデル選択の実質。
参考文献#
- Trevor Hastie, Robert Tibshirani, Jerome Friedman. The Elements of Statistical Learning, 2nd ed. Springer, 2009.(全文公開) https://hastie.su.domains/ElemStatLearn/
- Ian Goodfellow, Yoshua Bengio, Aaron Courville. Deep Learning. MIT Press, 2016.(全文公開) https://www.deeplearningbook.org/
- David H. Wolpert. The Lack of A Priori Distinctions Between Learning Algorithms. Neural Computation 8(7), 1996. https://doi.org/10.1162/neco.1996.8.7.1341