G検定(ジェネラリスト検定)
へいきんにじょうごさ
平均二乗誤差
MSE
Mean Squared Error
平均二乗誤差(MSE)は、回帰モデルの予測値と実際の値の差を2乗し、データ全体で平均した指標です。値が小さいほど予測が実際の値に近いことを表し、モデルの評価や、訓練で最小化をめざす損失として使われます。
詳しい説明
平均二乗誤差の定義式
平均二乗誤差(Mean Squared Error、MSE)は、回帰の問題で、モデルの予測が実際に観測されたデータにどれだけ合っているかを測る指標です。回帰で最もよく使われる尺度とされ、次の式で表されます。
MSE = (1/n) × Σ(i=1からnまで) (yi - f̂(xi))²
- yiは、i番目のデータの実際の値です
- f̂(xi)は、i番目のデータに対するモデルの予測値です
- nは、データの件数です
1件ごとに、実際の値と予測値の差を2乗します。それをn件分足し合わせてnで割り、平均を出します。2乗するので差の符号が消え、ずれの向きではなく大きさだけが残ります。予測値が実際の値にとても近ければMSEは小さくなります。一部のデータで予測と実際の値が大きくずれていれば、MSEは大きくなります。
燃費予測で1件分の二乗誤差を計算する
車の重さから燃費を予測する次のモデルを考えます。
y' = 34 + (-4.6) × x1
重みは-4.6、バイアスは34です。x1は車の重さを1,000ポンド単位で表した値です。
- 重さ2,370ポンドの車ではx1 = 2.37です
- 予測値は34 + (-4.6 × 2.37) = 23.1マイル/ガロンです
- 実際の値は24マイル/ガロンです
- 二乗誤差(L2損失)は(24 - 23.1)² = 0.9² = 0.81です
この0.81は、MSEを作る1件分の二乗誤差です。MSEは、この二乗誤差をN件のデータすべてについて求め、その平均をとった値です。
大きな誤差と外れ値に強く反応する
MSEでは差を2乗します。そのため、予測と実際の値の差が大きいと損失はさらに大きくなり、差が1より小さいと損失はさらに小さくなります。平均的な範囲から大きく外れたデータ(外れ値)があると、MSEはその1件から大きな罰則を受けます。差の絶対値を使う平均絶対値誤差(MAE)と比べると、MSEで訓練したモデルは外れ値の側へ引き寄せられやすくなります。大きな誤差を強く罰したいときや、外れ値にもモデルが説明すべき本当のばらつきが含まれていると考えるときは、MSEが向いています。また、MSEの数学的な性質により、最適化が滑らかに進むことが多いとされます。
訓練MSEとテストMSE
モデルの学習に使ったデータで計算したMSEを、訓練MSEと呼びます。ただし、本当に知りたいのは、まだ見ていない新しいデータ(テストデータ)での予測の正確さです。
- 株価の予測: 過去6か月の株式リターンで学習しても、先週の株価をどれだけ当てられるかは重要ではありません。重要なのは、明日や来月の株価をどれだけ正確に予測できるかです。
- 糖尿病リスクの予測: 体重・血圧・身長・年齢・家族歴などの測定値で学習した場合、学習に使った患者が糖尿病かどうかはすでに分かっています。求められているのは、将来の患者のリスクを正確に予測することです。
したがって、手法を選ぶときは、訓練MSEが最も小さいものではなく、テストMSEが最も小さいものを選びます。
試験範囲での位置づけ
G検定シラバス2024(第1.4版)では、中項目10 モデルの選択・評価のキーワードに平均二乗誤差(MSE)が挙げられています。
試験で問われること
G検定
- MSEは、実際の値と予測値の差を2乗し、データ件数nで割って平均した値で、式は(1/n)Σ(yi - f̂(xi))²である。
- MSEが小さいほど予測は実際の値に近く、大きいほど予測と実際の値のずれが大きいことを表す。
- 差を2乗するため、大きな誤差ほど強く罰せられる。MSEは外れ値の影響を受けやすく、MAEと比べてモデルを外れ値の側へ引き寄せる。
- 1件分の二乗誤差の例として、予測23.1、実際の値24なら(24 - 23.1)² = 0.81になる。MSEはこれを全件で平均した値である。
- モデルを選ぶときに重視するのは、学習に使ったデータでの訓練MSEではなく、未知のデータでのテストMSEである。
最終更新日: 2026/09/23