回帰とは、連続的な数値(売上金額、気温、物件価格など)を予測する機械学習タスクです。分類が「どのカテゴリか」を当てるのに対し、回帰は「いくらか」「どれだけか」を予測します。この記事では、Qast が自動比較する代表的な回帰アルゴリズムを解説します。
線形回帰 — すべての基本となるシンプルな手法
線形回帰は、特徴量と予測値の間に「直線的な関係がある」と仮定し、y = w₁x₁ + w₂x₂ + … + b のような式でモデルを学習します。計算が高速で結果を解釈しやすいのが強みですが、データが直線では表現できない複雑な関係を持つ場合は精度が出にくくなります。
Ridge / Lasso / ElasticNet — 正則化で過学習を防ぐ
線形回帰に「正則化」と呼ばれるペナルティを加えたバリエーションです。特徴量が多い場合や、互いに相関の高い特徴量がある場合に有効です。
- 1
Ridge 回帰(L2 正則化)
すべての特徴量の重みを小さく抑えることで、過学習を防ぎます。多くの特徴量が少しずつ影響するデータに向いています。
- 2
Lasso 回帰(L1 正則化)
不要な特徴量の重みを完全にゼロにする(特徴量選択の効果)ため、重要な変数だけを残したい場合に有効です。
- 3
ElasticNet
Ridge と Lasso の両方の性質を組み合わせた手法。特徴量の数が多く、グループで相関している場合に効果的です。
決定木・ランダムフォレスト回帰 — 非線形関係を捉える
決定木とランダムフォレストは分類だけでなく回帰にも使えます。回帰の場合は、各リーフ(末端ノード)に属するデータの平均値を予測値とします。線形では表現できない複雑な関係(例:ある閾値を超えると急に変化するパターン)を自然に学習できるのが強みです。
XGBoost / LightGBM 回帰 — 構造化データの王道
勾配ブースティング系は回帰タスクでも圧倒的な性能を発揮します。前のモデルの「残差(予測と実測のずれ)」を次のモデルが学習していくため、複雑なパターンを段階的に捉えます。Kaggle の構造化データコンペティションでは、回帰タスクでもほぼ例外なく上位に食い込む手法です。
XGBoost / LightGBM はデフォルトのパラメータでもかなりの精度が出ますが、Qast では72パターンの前処理との組み合わせにより、さらに性能を引き出します。
サポートベクター回帰(SVR) — マージンの考え方を回帰に応用
SVR は、予測値と実測値の差が一定の範囲(ε)に収まるデータを無視し、範囲外のデータのみをモデルに反映させる手法です。外れ値に頑健で、データが少ない場合でも安定した予測ができます。カーネルトリックにより非線形な関係も扱えます。
k近傍法回帰(k-NN Regressor) — 近いデータの平均で予測
予測したいデータに最も近い k 個のデータの目的変数の平均(または加重平均)を予測値とするシンプルな手法です。局所的な傾向を反映しやすく、パターンが地域ごとに異なるようなデータ(例:エリアごとの物件価格)に効果を発揮します。
ニューラルネットワーク回帰(MLP Regressor)
多層パーセプトロン(MLP)を回帰に用いたモデルです。活性化関数を通じて非線形変換を重ね、複雑な入出力関係を学習します。特徴量間の相互作用が多い場合や、他の手法でうまく予測できない残りのパターンを捉える補完的な役割を果たします。
回帰タスクの評価メトリクス
回帰モデルの良し悪しは、以下のメトリクスで評価します。Qast のリーダーボードではこれらのメトリクスでソート・フィルタリングできます。
- 1
RMSE(二乗平均平方根誤差)
大きな誤差ほど強くペナルティがかかるため、外れ値の影響を重視したい場合に使います。
- 2
MAE(平均絶対誤差)
「平均的にどれだけずれるか」を直感的に示します。外れ値に頑健で解釈しやすいメトリクスです。
- 3
R²(決定係数)
モデルがデータの変動をどれだけ説明できるかを 0〜1 で表します。1 に近いほど良いモデルです。
回帰タスクでは RMSE だけを見るのではなく、MAE や R² も合わせて確認しましょう。RMSE が低くても R² が低い場合は、モデルがデータの傾向を十分に捉えていない可能性があります。

