機械学習3|scikit-learn、LinarRegressionを用いて線形回帰モデルを作成する

  • URLをコピーしました!

ここで学習すること

scikit-learnを用いて線形回帰モデルを作成する流れを理解します。

線形回帰

scikit-learnとは回帰や分類といった機械学習を行うためのライブラリです。scikit-learnには下記の機械学習を行うためのモデルを作成するモジュールが組み込まれています。

線形回帰

y=2x+3zのような1次方程式で予測する回帰を線形回帰といいます。

線形短回帰

y=2x+3のような予測したい値yを1つのデータxから計算する回帰分析です。

最小二乗法

y=ax+bの関係があるx、yからa、bを推測します。

実際のyの値と予測値したyの値の差の二乗の総和が最小となるa、bを求める方法です。

二乗とする理由は+とーの誤差がお互いに相殺するのを防ぐためです。

LinarRegressionを用いて線形回帰モデルを作成する

線形回帰モデルを作成するにはscikit-learnのlinear-model内にあるLinarRegressionというモデルを使います。

以下はLinearRegressionを用いて線形回帰モデルを作成しています。

#LinearRegressionをインポートします。

from sklearn.linear_model import LinearRegression

from sklearn.datasets import make_regression

scikit-learnのmodel_selectionにあるtrain_test_splitをインポートします。train_test_splitとはデータセットを学習用と訓練用に分けるツールです。

from sklearn.model_selection import train_test_split

scikit-learnにあるボストン住宅価格データセットをインポートします

from sklearn.datasets import load_boston

インポートしたデータセットを読み込みます

data = load_boston()

データを訓練用、テスト用に分けます

train_X, test_X, train_y, test_y = train_test_split(data.data, data.target,random_state=42)

学習モデルを構築します

model = LinearRegression()

訓練データを用いで学習します

model.fit(train_X, train_y)

テストデータを用いて予測値を表示します

print(model.predict(test_X))

よかったらシェアしてね!
  • URLをコピーしました!
目次