Hello there, ('ω')ノ
🔮 ステップ④:モデル構築と予測
ここではまず、初心者向けで最もシンプルな「線形回帰モデル」を使って、住宅価格(SalePrice)を予測してみます。
🎯 目的
- 入力:前処理済みの特徴量
X_train - 出力:住宅価格
y - モデル:線形回帰(Linear Regression)
🧪 線形回帰モデルの構築・学習・予測
from sklearn.linear_model import LinearRegression # モデルの作成 model = LinearRegression() # モデルの学習 model.fit(X_train, y) # テストデータに対して予測 predictions = model.predict(X_test)
📦 結果を提出用ファイルとして出力
Kaggleに提出するためには、submission.csv という形式で保存する必要があります。
# 提出用のDataFrameを作成 submission = pd.DataFrame({ "Id": test_ID, "SalePrice": predictions }) # CSVファイルとして保存 submission.to_csv("submission.csv", index=False)
Kaggleノートブック右側の「Output」タブに submission.csv が生成されていれば成功です!
✅ ここまでの流れ(復習)
| ステップ | 内容 |
|---|---|
| ① データの読み込み | train/test データを読み込みました |
| ② 分布の可視化 | SalePrice の分布をヒストグラムで確認しました |
| ③ 前処理 | 欠損値処理、カテゴリ変数の変換 |
| ④ モデル構築 | 線形回帰で予測モデルを作成 |
| 🎉 最終ステップ | submission.csv を作成して提出可能に! |
🧠 学んだポイント(初心者向けまとめ)
pd.get_dummies()で文字を数値に変換することが大事- 欠損値はそのままでは学習できない → 平均や最頻値で埋める
- 線形回帰はシンプルだけど、精度はほどほど(入門にはぴったり)
🚀 次に進みたい?
「もっと精度を上げたい!」という場合は、次のような選択肢があります:
| モデル | 特徴 |
|---|---|
| RandomForestRegressor | 複数の決定木で予測。汎用性が高く、そこそこ強い |
| XGBoost | 精度重視でKaggleでも人気。やや中級者向け |
| LightGBM | 高速・高精度。大規模データにも対応 |
Best regards, (^^ゞ