見出し画像

scikit-learn 回帰分析 - ラッソ回帰

前回の続きからなので目次は4から。

4. Lasso Regression - ラッソ回帰

データを呼ぶところから。

画像1

Lasso回帰のcoefficient とlambdaの関係でshrinkageをみる。

画像2

MSEも検証。

画像3

cross-validationでlambdaの最小を求める。

画像4

Lasso Regression結果 : lambda = 0.003, MSE=29.28, r^2=0.700

5. Skip Elastic Net this time - 今回は飛ばす 

Elastic NetはRidgeとLassoのコンビネーションで、L2の正則項(Ridge)とL1の正則項(Lasso)の二つの項が足されている。それぞれにlambdaがあるので、チューンするパラメタは二つになる。どちらかのlambdaが0の時、RidgeかLassoになり、両方0だとOLSになる。

6. Summary - まとめ

sciki-learnのRegression に関し、OLS, Ridge, Lassoをpythonで学んだ。ベストな予測のパラメタlambdaの評価をcross-varidation (Ridge, Lasso)で行った。

結果の比較を下にまとめる。

画像5

結果に差は見られない。(エラーの解析をしていないので、なんとも言えないが、R言語のCVを使うと統計?エラーもすぐ出るのか?)今回のデータではデータ数が少ない事(<100K)、またcollinearityが相関マップでは明らかに見られなかった事から、タイトルのフローチャートにあるように、一番基本的なSGD(Stochastic Gradient Descent 確率的勾配降下法)回帰でよかったようだ。

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