以下のサイトを参考に、重回帰分析をやってみました。
https://aiacademy.jp/media/?p=236
今回やりたいこと
直径とトッピングの数から、ピザの値段を予測
実装手順
- 学習データを用意
- データの分割
- 学習
- 予測
実装内容
学習データを用意
from sklearn.linear_model import LinearRegression
x = [[12,2],[16,1],[20,0],[28,2],[36,0]]
y = [[700],[900],[1300],[1750],[1800]]
model = LinearRegression()
model.fit(x, y)
データの分割
x_test = [[16,2],[18,0],[22,2],[32,2],[24,0]]
y_test = [[1100],[850],[1500],[1800],[1100]]
学習
prices = model.predict(x_test)
for i, price in enumerate(prices):
print('Predicted:%s, Target:%s'%(price,y_test[i]))
予測
score = model.score(x_test, y_test)
print("r-squared:",score)
まとめ
学習データが少なく、ミニマムな機械学習を手動で行ってという印象を受けた。「すべては基礎から。」にもあるように、データ量が大きくなってよくわからなくなったら、今回やったものに立ち返って整理したいとおもう。