Pythonと単回帰分析
単回帰分析は、機械学習の基礎中の基礎であり、Pythonを使って手を動かしながら実行することができます。単回帰分析は、最小二乗法を利用してデータの中心を通る直線(回帰直線)を決め、回帰直線から未知のデータを予測する方法です。
Pythonでの単回帰分析の実装
Pythonのscikit-learn
ライブラリを使用して単回帰分析を実装することができます。以下に、その一例を示します。
from sklearn.linear_model import LinearRegression
# モデルの学習
lr = LinearRegression()
lr.fit(x_train_std, y_train)
# 回帰
pred_lr = lr.predict(x_test_std)
# 評価
# 決定係数(R2)
r2_lr = r2_score(y_test, pred_lr)
# 平均絶対誤差(MAE)
mae_lr = mean_absolute_error(y_test, pred_lr)
print("R2 : %.3f" % r2_lr)
print("MAE : %.3f" % mae_lr)
# 回帰係数
print("Coef = ", lr.coef_)
# 切片
print("Intercept =", lr.intercept_)
このコードは、scikit-learn
のLinearRegression
クラスを使用して単回帰分析を行います。まず、LinearRegression
のインスタンスを作成し、fit
メソッドを使用してモデルを学習します。次に、predict
メソッドを使用してテストデータに対する予測を行います。最後に、r2_score
とmean_absolute_error
関数を使用してモデルの評価を行います。
まとめ
Pythonとscikit-learn
を使用して単回帰分析を行うことは、機械学習の基礎を理解する上で非常に有用です。この記事では、単回帰分析の基本的な概念とPythonでの実装方法を紹介しました。これを基に、さらに複雑な機械学習手法に挑戦してみてください。.