ラビットチャレンジ_機械学習2

・非線形回帰モデル

 ・教師あり学習の1つで、予測問題を解く際に使用する。
 ・線形回帰との違いは、モデルのxがφ(x)に変わったもの
  ⇒φ(x):基底関数とよぶ。例:sin(x) cos(x) logx ガウス型基底など
 ※xがφ(x)に変化しても学習するパラメーターωは線形
 
・未学習:学習データに対して、十分小さな誤差が得られないモデル
     対策:モデルの改良が必要
・過学習:小さな誤差は得られたが、テスト集合誤差との差が大きいモデル
     対策:学習データの数を増やす←困難
        不要な基底関数を削除して表現力を抑止←困難
        正則化法を利用して表現力を抑止←★よく使う
・正則化法:モデルの複雑さに伴って、その値が大きくなる
      正則化項(罰則化項)を課した関数を最小化する方法
 正則化項の役割
   ・無し:最小二乗法
   ・L1ノルムを利用:Ridge推定量
   ・L2ノルムを利用:Lasso推定量 ←パラメータが0になりやすい
   ※L1ノルム:マンハッタン距離 L2ノルム:ユークリッド距離
・汎化性能
  ・訓練誤差とテスト誤差には基本的に同じ関数を使用する
・テストデータの分け方
  ・ホールドアウト法:学習用とテスト用の2つに分ける
   ⇒大量にデータがない場合は、NG
  ・交差検証法:学習用とテスト用に分割し、全パターンで精度を計測
         全パターンの平均をCV値と呼ぶ(汎化性能)
   ⇒大量のデータが準備できない場合に使用する(基本こっちを使用)  
・ハイパーパラメーターの決め方
  ・グリッドサーチ:全てのチューニングパラメーターの組み合わせで
           評価値を算出する
  ※ニューラルネットでは「ベイズ最適化」を利用している

 演習
  データ:z = 1-48*x+218*x**2-315*x**3+145*x**4 
      ⇒上記の式にノイズを加えたもの

画像1

 このデータに対して線形回帰を行った場合
 結果:スコア0.243とモデルとしてよくないことが分かる

画像2

 このデータに対して非線形回帰(ガウスカーネルモデル)を行った場合
 結果:スコア0.863と線形回帰と比較しまあまあ予測できるモデルに改善
    できたことが分かる

画像3


この記事が気に入ったらサポートをしてみませんか?