目次
モデル学習の基本
データの準備
import pandas as pd
from sklearn.tree import DecisionTreeClassifier as DT
# CSVファイルの読み込み
data = pd.read_csv('定期貯金契約データ.csv')
# 説明変数と目的変数の分離
X = data[['年齢', '世帯年収', '預入期間']] # 説明変数
y = data['契約継続'] # 目的変数
モデルの学習
# モデルの初期化
model = DT(max_depth=3, random_state=42)
# モデルの学習
model.fit(X, y)
重要ポイントの解説
fit関数の仕組み
料理に例えると:
- 説明変数(X)= 材料(年齢、年収、預入期間)
- 目的変数(y)= 完成品(契約継続するかどうか)
- fit()関数 = 調理過程(レシピの習得)
学習済みモデルとは
例えば:
- 年齢が65歳以上で
- 世帯年収が800万円以上で
- 預入期間が5年以上なら
→ 契約継続の確率が高い
といったパターンを自動的に見つけ出します。
実践的なコード例
# より詳細なモデル学習の例
model = DT(
max_depth=3,
min_samples_leaf=50,
random_state=42
)
# モデルの学習
model.fit(X, y)
# モデルの学習結果を確認
from sklearn.tree import plot_tree
import matplotlib.pyplot as plt
plt.figure(figsize=(15,10))
plot_tree(model,
feature_names=['年齢', '世帯年収', '預入期間'],
class_names=['継続なし', '継続'],
filled=True)
plt.show()
学習時の注意点
- データの品質確認
- 欠損値の有無
- 異常値のチェック
- 説明変数の選択
- 目的変数との関連性
- 不要な変数の除外
- モデルの評価
- 過学習していないか
- 予測精度は十分か
コメント