Coursera Machine Learning week2 その1
- 重回帰分析 (multivariate linear regression)
- フィーチャースケーリング(Feature Scaling)とmean normalization
- 最急降下法の学習効率の選び方について
- データのフィットさせる仮説関数の形式の選択肢はたくさんある
- 正規方程式
重回帰分析 (multivariate linear regression)
単回帰分析(Linear regression with one variable)には以下の通り一つしか変数がないが、
これが複数ある場合のデータセットでの分析を行える関数があるこれを重回帰分析と呼ぶ
新しく提示された定義
i件目の学習データのj番目のフィーチャ(変数)の値
i件目の学習データのフィーチャ(変数)ベクトル
学習用のデータセットの数
フィーチャ(変数)の数
1として扱う
上記の関数はweek1で教わった行列を使った形に置き換え可能
重回帰分析の場合の目的関数
変数がいくつ増えても以下の式で表すことができる
フィーチャースケーリング(Feature Scaling)とmean normalization
最急降下法(Gradient Descent)の収束パフォーマンスを上げることができる
学習データとして与えたもののレンジが違いすぎる場合、最急降下法のパフォーマンスに影響が出る。その改善として
学習データのレンジを またはになるように変換すると早く収束するようになる。
Feature Scaling
最大値で割る
mean normalization
平均が0に近づくように調整する
最急降下法の学習効率の選び方について
大きすぎると収束せず、遅すぎると時間がかかる
Andrew先生のおすすめは0.001から初めて3倍ずつ増やしていき、
収束しない学習効率の一つ手前のものを利用する方法。
0.003→0.01→0.03
データのフィットさせる仮説関数の形式の選択肢はたくさんある
1時関数、2時間数、3時間数、対数
などのグラフのどれがデータに会うかは開発者が選ぶことができる。
今後自動でどの数式が最適か判別するアルゴリズムを紹介すると行っていたが、今は「選べる」ことを理解して入ればいい。
ただし、3時間数などを選んだ場合はよりフィーチャースケーリングが大事になってくる。
(値の範囲はn乗のオーダーで膨らんでいくため。)