データを使って予測をしたい
やること
- データセットを作る
- データを特徴量、ターゲットに分割
- 特徴量
- 予測に必要なデータ
- ターゲット
- 予測したいデータ
- 特徴量
- モデルの作成
- モデルの学習
- 特定の物件のデータを投入して価格の予測
コード
必要最小限のものに絞る
import pandas as pd
from sklearn.linear_model import LinearRegression
import joblib
# オリジナルの物件データセットを作成
data = {
'専有面積': [70, 80, 100, 120, 150],
'築年数': [5, 10, 8, 15, 20],
'価格': [3000, 4000, 5000, 5500, 6000]
}
df = pd.DataFrame(data)
# 特徴量とターゲット変数の分割
X = df[['専有面積', '築年数']]
y = df['価格']
# モデルの作成と学習
model = LinearRegression()
model.fit(X, y)
# 特定の物件情報を入力して価格を予測
new_property = pd.DataFrame({'専有面積': [90], '築年数': [12]})
predicted_price = model.predict(new_property)
print(f'予測価格: {predicted_price[0]}')
# 学習したモデルを出力
joblib.dump(model, 'linear_regression_model.joblib')
学習したモデルを読みこんで予測をする
import joblib
# 保存したモデルを読み取り
loaded_model = joblib.load('linear_regression_model.joblib')
# 特定の物件情報を入力して価格を予測
new_property = pd.DataFrame({'専有面積': [90], '築年数': [12]})
predicted_price = loaded_model.predict(new_property)
print(f'予測価格: {predicted_price[0]}')
まとめ
機械学習って何?ってよくわからなかったが、手を動かしてやってみることで「ああ、そういう感じ?」みたいな感覚がつかめた。