機械学習のお勉強(最小二乗法、最尤推定法、パーセプトロン)
最小二乗法
ex: 観測値と真値の二乗誤差を最小にするようにn次多項式を解く。
データセットがn以上あると解析的に平方根平均二乗誤差が0の多項式を導くことができる。
パラメトリックモデルの解き方 1. パラメータを含むモデルを設定する
パラメータを評価する基準を定める
最良の評価を与えるパラメータを決定する
オーバフィッティングの検証
仮説/検証を行う。
これによってモデルの汎化能力がわかる。
オーバーフィッテイング:トレーニングデータセットだけに特化したチューニングが発生する状況
クロスバリデーションによる汎化性能の検証
参考: 交差確認(交差検証、Cross-Validation)の簡単な説明 - 具体例で学ぶ数学
交差検定(クロスバリデーション)など機械学習の評価方法まとめ : 新規事業のつくり方
最尤推定法
データの背後にある関数に加えて、データに含まれる誤差を併せて推定する手法。
ex: データから多項式の係数と正規分布に基づいているとして標準偏差を求める
尤度関数:「トレーニングデータセットのデータが得られる確率」をパラメータ(ex1:観測値、標準偏差 , ex2:平均、標準偏差)の関数とみなしたもの
この確率が最大になるようにパラメータを決定する方法を最尤推定法と呼ぶ。
多項式の係数の推定値は最小二乗と同じになり、標準偏差の推定値は平方根平均二乗誤差と同じになる。
異なるアプローチをとったにもかかわらず同じ多項式が得られる。つまり、最小二乗法は最尤推定法の中でも、正規分布の誤差を仮定した特別な場合に対応するとみなすことができる。
推定量の一致性と不偏性
- データ数を大きくしていくことで真の値に近づいていくことを一致性と呼ぶ
- 不偏性を持つ推定量はデータが少ない場合、真の母数から外れる可能性があるが、大きい方と小さい方にはずれる場合が均等にあるということを意味する。
参考: 18-3. 推定量の性質 | 統計学の時間 | 統計WEB
パーセプトロン
pandas
Pandas でデータフレームを作ってみよう – Python でデータサイエンス
[Python] pandasの使い方まとめ - Qiita
Pythonでpandasを使う - 計算物理屋の研究備忘録
scipy
【Python入門】絶対に知っとくべきライブラリscipyの基本的な使い方 - Qiita
1.5. Scipy: 高水準の科学技術計算 — Scipy lecture notes
問題を解きながら学ぶ
PFNさんが公開してくださっている機械学習の問題↓
GitHub - pfnet/intern-coding-tasks: Coding tasks for PFN internship