PyTorchにおける回帰モデル(regression model)は、入力データから連続値(実数値)を予測するためのモデルです。たとえば、家の価格、温度、株価などを予測するタスクで利用されます。分類モデルとは異なり、出力はカテゴリではなくスカラーやベクトルの実数値となります。
以下では、PyTorchで回帰モデルを構築・学習・評価するための主要なステップを詳しく解説します。
1. データの準備
回帰モデルでは、入力 X に対して実数値のターゲット y をペアで持つデータセットを用意します。
2. モデルの定義(nn.Module)
回帰モデルでは、通常、最後の層に活性化関数を使わずに出力することで、制約のない連続値を予測します。
3. 損失関数とオプティマイザの設定
回帰問題では主に**平均二乗誤差(MSE)**が用いられます。
4. 学習ループ
エポック毎に予測を行い、損失を計算してパラメータを更新します。
5. 評価指標
回帰モデルの評価には以下がよく使われます:
-
MSE(Mean Squared Error)
-
RMSE(Root Mean Squared Error)
-
MAE(Mean Absolute Error)
-
R²スコア(決定係数)
6. 応用例
-
不動産価格の予測(入力: 間取り・築年数・面積 → 出力: 価格)
-
気温予測(入力: 時刻・場所・過去の温度 → 出力: 将来の温度)
-
売上予測(入力: プロモーションデータ・季節性 → 出力: 数値)
補足:出力層と活性化関数の注意点
分類モデルと異なり、回帰モデルでは出力層に活性化関数を使わないのが基本です。ただし、特定の範囲に出力を制限したい場合は、sigmoid や softplus などを使うこともあります。
生成日:2025/05/22