科学の箱

科学・IT・登山の話題

機械学習

線形回帰とリッジ回帰を比較する

投稿日:

リッジ回帰はL2ノルムの正則項を導入することで、過学習を防ぐ。この場合過学習を防ぐとは、重みを0の方向に動かすという意味である。実際に線形回帰とリッジ回帰を比べてみて、どのようにモデルが変わるかを確認する。

線形回帰

アイスクリームの売り上げを考えて、1~37度に対してランダムの売り上げデータを生成する。

import matplotlib.pyplot as plt
import seaborn as sns;
import numpy as np
%matplotlib inline
import random

rng = np.random.RandomState(1)

x = 37 * rng.rand(50) + 1 # 1度から3度
y = 500 * x - 5000 * rng.randn(50) # 売り上げデータはおよそ気温の500倍想定、ただしノイズを組みこむ

 

次に線形回帰を行う。

# 線形回帰
from sklearn.linear_model import LinearRegression
model_lr = LinearRegression(fit_intercept=True)

model_lr.fit(x[:, np.newaxis], y)

xfit = np.linspace(0, 50, 1000)
yfit_lr = model.predict(xfit[:, np.newaxis])

plt.scatter(x, y)
plt.plot(xfit, yfit_lr,color="red", label="LinearRegression");

 

リッジ回帰

リッジ回帰はRidgeを用いる。

sklearn.linear_model.Ridge — scikit-learn 0.21.3 documentation

Ridge(alpha=1.0, fit_intercept=True, normalize=False, copy_X=True, max_iter=None, tol=0.001, solver=’auto’, random_state=None)

もっとも重要なのがalphaである。alphaは正則項の強さを指定する。

# リッジ回帰
from sklearn.linear_model import Ridge
model_r = Ridge(alpha=1000)
model_r.fit(x[:, np.newaxis], y)

yfit_r = model_r.predict(xfit[:, np.newaxis])

plt.scatter(x, y)
plt.plot(xfit, yfit_lr,color="red", label="LinearRegression");
plt.plot(xfit, yfit_r, color="yellow", label="Ridge alpha=1000")
plt.legend()

 

リッジ回帰のモデルは重みづけが小さくなっていることがわかる。

メタ情報

inarticle



メタ情報

inarticle



-機械学習

執筆者:


comment

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

関連記事

no image

Pythonではじめる機械学習 – Chap05 – Model Evaluation and Improvement

Chapter 5. Model Evaluation and Improvement 学習モデルの評価 定量的なモデルの評価は教師付きモデルが主になる。 教師なしモデルは定性的なアプローチで評価する …

no image

データ分析の基本と業務

開発生産性は調和平均で計算する。 安全性の在庫の計算には正規分布を利用できる。 標準偏差=5であることを利用すると何が言えるか。 Z=1.96で95%をカバーする。 よって 5 x 1.96でほぼ10 …

no image

データサイエンス超入門

シンプソンのパラドックス レコメンドエンジン コンテンツベースフィルタリング 強調 アイテム ユーザー ビジネスにおけるデータ分析の手順 課題→ビジネスケース→仮説→分析→用途 データ分析の手順 デー …

no image

SVMでグリッドサーチ

IrisデータについてSVMで分類をしてみた。さて、今回はSVMモデルのパラメータをいじってみてより精度が高いモデルを作ってみる。 すべての学習モデルはハイパーパラメータと呼ばれる学習モデルに影響を与 …

no image

モンベルダウンジャケットについて売れ筋商品を分析してみる。

幾何平均が値付けに利用されているという話を聞いたので実際の商品を例にして分析してみる。 調査の目的 適切なダウンジャケットを選ぶことで冬季にあるいは夏季の3000m級の高山で気持ちよく過ご巣ことができ …

2019年10月
« 9月   11月 »
 123456
78910111213
14151617181920
21222324252627
28293031  

side bar top



アーカイブ

カテゴリー