はじめに
ポケモンのステータスの中でも、「攻撃(Attack)」と「素早さ(Speed)」はバトルに直結する重要な指標です。本記事では、この2変数を使って回帰や分類の代表的なモデルを理論的に整理します。
対象:
- 機械学習の手法を整理したい方
- ポケモンデータで遊びたい方
- モデル選定に迷う初学者の方
✅ 回帰モデル(Attack を予測)
1. 単回帰分析(Simple Linear Regression)
式:
$$
y = w_1 x + b
$$
-
メリット
- シンプルでわかりやすい
- 計算が軽い
-
デメリット
- 線形関係しか扱えない
- 外れ値に弱い
2. リッジ回帰(Ridge Regression)
式:
$$
\min_w \left| y - Xw \right|^2 + \lambda |w|^2
$$
-
メリット
- 多重共線性への耐性
- 過学習を抑制
-
デメリット
- λ(正則化パラメータ)の調整が必要
3. ラッソ回帰(Lasso Regression)
式:
$$
\min_w \left| y - Xw \right|^2 + \lambda |w|_1
$$
-
メリット
- 特徴量の選択が可能(スパース性)
-
デメリット
- 相関の強い特徴量の選択が不安定
4. 多項式回帰(Polynomial Regression)
式例(2次):
$$
y = w_1 x + w_2 x^2 + b
$$
-
メリット
- 曲線的な関係も扱える
-
デメリット
- 次数を上げすぎると過学習しやすい
5. 決定木回帰(Decision Tree Regression)
-
メリット
- 非線形でも使える
- 前処理が少ない
-
デメリット
- 過学習しやすい
- 分岐に敏感
6. ランダムフォレスト回帰(Random Forest Regression)
-
メリット
- 高精度
- 過学習しにくい
-
デメリット
- 解釈しにくい
- モデルが重い
7. 勾配ブースティング(XGBoost / LightGBM / CatBoost)
-
メリット
- 高精度で安定
- 欠損値処理も強い
-
デメリット
- ハイパーパラメータ調整が複雑
- 実装が重め
8. k近傍回帰(k-NN Regression)
-
メリット
- シンプルかつ非線形対応
-
デメリット
- 計算コスト大(テスト時)
- スケーリング必須
9. サポートベクター回帰(SVR)
式:
$$
\min_{w,b} \frac{1}{2} |w|^2 \quad \text{s.t.} \quad |y - w^T x - b| \leq \varepsilon
$$
-
メリット
- 外れ値に強い
- 高次元に強い
-
デメリット
- 遅い
- パラメータ調整が必要
10. ニューラルネットワーク(MLPRegressor)
-
メリット
- 複雑な関係を学習できる
-
デメリット
- ブラックボックス
- 訓練に時間がかかる
✅ 分類モデル(タイプ分類や速度カテゴリなど)
| モデル名 | 特徴 |
|---|---|
| ロジスティック回帰 | 線形分類、確率出力あり |
| 決定木 | 解釈性が高いが過学習しやすい |
| ランダムフォレスト | 高精度、過学習に強い |
| 勾配ブースティング | 精度◎、ただし実装重い&チューニング必要 |
| k-NN | 非線形対応、距離ベース、計算重い |
| SVM | マージン最大化、線形/非線形両対応 |
| ニューラルネット(MLP) | 汎用性◎、複雑な分類もOK、ブラックボックス |
まとめ
- 線形か非線形か、説明性か精度か、などで使い分けが必要。
- まずは単回帰/決定木/ランダムフォレストから入るのがおすすめ。
- ハイパーパラメータや正則化の重要性にも注意。