この記事では、「回帰タスク(回帰モデル)」における代表的な評価指標について、その種類・特徴や、注意が必要な点、実際の計算式を解説します。
<目次>
回帰モデルと評価指標
機械学習や統計分析などデータサイエンスにおける代表的なタスクに「分類」と「回帰」があります。
「分類 (Classification)」が、母集団の構成要素がどのクラスに分類されるかを予測することを指すのに対して、「回帰 (regression)」は、端的には「値の推定」であり、データをもとに目的変数の数値を予測・推定することを指します。
「回帰モデル」とは、値の推定のために構築されたモデルを意味しますが、このモデルの性能やその推定値の良し悪しを測る指標が「評価指標」です。
実際の値と推定値の差を「誤差」と呼びますが、回帰モデルにおける評価指標は大きく、「誤差の大きさに関する評価指標」(RMSE、RMSLE、MAE、R2など)と「誤差率に関する評価指標」(MAPEなど)の2種類に分けることができます。以下では、それぞれの代表的な指標について解説します。
誤差の大きさに関する評価指標
RMSE (Root Mean Squared Error)
「誤差の大きさに関する評価指標」の最も代表的なものがRMSE (Root Mean Squared Error:平均平方二乗誤差)です。RMSEは、目的変数について実際の値と推定値の各セットにおける「差の二乗」をとり、それらを平均した上で平方根を算出することで得られます。
計算式は以下のようになります。ここで、各記号は、N:サンプル(レコード)数、yi:i番目のサンプルの実際の値、yi(ハット):i番目のサンプルの推定値、を表します。
RMSEでは、値が小さい(実際の値と推定値の誤差が小さい)ほど、精度が高いと評価されます。仮にすべてのサンプルの値を一つの値で推定する場合、RMSEを最小化する推定値は平均値であることが知られています。
また、RMSEは、「二乗誤差の平均」である「MSE (Mean Squared Error)」の平方根を取ったものとして表現することもできます。
MSEの単位が元のデータを二乗したもので、その値から誤差の大きさをイメージしづらいのに対して、RMSEはMSEの平方根を取ることで元のデータと同じ単位となり、誤差の大きさを捉えやすいものとなっています。
また、RMSE(およびMSE)は、誤差を二乗することで外れ値にペナルティを与えており、誤差の大きいサンプルがあると全体の評価を下げる設定となっています。これは、RMSEを目的関数として機械学習などを行う場合には、外れ値の影響を受けやすいという特徴を意味するため、モデルが外れ値に過剰に適合した学習をしてしまう可能性に注意が必要です。
RMSLE (Root Mean Squared Logarithmic Error)
RMSLE (Root Mean Squared Logarithmic Error)は、「実際の値の対数」と「推定値の対数」の「差の二乗」をとり、それらを平均した上で平方根を算出することで得られます。RMSEとの違いは、実際の値と推定値をそのまま使うのではなく、両者を対数化している点です。
計算式は以下のようになります。なお、yが0であった場合に定義域エラーとなり、計算できない事態を避けるために、一般的にyに1が足されます。
RMSLEが使用されるケースは、所得分布などのように対象となる変数が裾の長い分布を持っており、そのまま使用すると大きな値の影響が強く出てしまうことが懸念される場合です。
また、上記の式内の2乗カッコ内は、log(1 + 実際の値)− log(1 + 推定値) = log ((1 + 実際の値) / (1 + 推定値)) となり、実際の値と推定値の比率を表現したものであることが分かります。そのため、RMSLEは、実際の値と推定値の比率を評価対象としたいケースにおいても使用されます。
MAE (Mean Absolute Error)
MAE (Mean Absolute Error:平均絶対誤差)は、実際の値と推定値の「差の絶対値」の平均によって計算されます。RMSEとの違いは、差を二乗するのではなく、差の絶対値を取る点です。
誤差を二乗することで外れ値にペナルティを与えるRMSEやMSEと比較し、MAEには外れ値の影響を受けにくいという特徴があります。計算式は以下のようになります。
MAEでは、値が小さい(実際の値と推定値の誤差が小さい)ほど、精度が高いと評価されます。仮にすべてのサンプルの値を一つの値で推定する場合、MAEを最小化する推定値は中央値であることが知られています。
| No | 実際の値 | 推定値 | 絶対誤差 | 二乗誤差 |
| 1 | 100 | 110 | 10 | 100 |
| 2 | 150 | 130 | 20 | 400 |
| 3 | 50 | 90 | 40 | 1600 |
| 平均 | MAE : 23.3 | MSE : 700 | ||
| 平均の平方根 | RMSE : 26.4 | |||
R2 (決定係数)
R2 (決定係数)は、回帰モデルによる推定結果が、実際のデータにどの程度当てはまっているか(回帰モデルの当てはまりの良さ)を表す指標です。回帰モデルが、実際の値に対してどれだけの説明能力を持っているか、を0 ~ 1の数値で表現します。
計算式は以下のようになります。ここでy(バー)は、目的変数の実際の値の平均値を表します。
「予測値で説明される変動」の「全変動」に対する比率として計算されることで(上記①式)、回帰モデルの実際のデータに対する説明能力を表します。数値が1に近いほど当てはまりが良く、高い精度の推定を行っていることを意味します。
また、上記②式のように算出することもできますが、この式における分子は二乗誤差であることから、R2を最大化することは、RMSEを最小化することと同じであることが分かります。
なお、R2の値は、実際の値(y)と推定値(yハット)の相関係数の二乗と等しくなることが知られています。
栗原・丸山(2017)を参考に、Intelligence In Society作成
誤差率に関する評価指標
MAPE (Mean Absolute Percentage Error)
RMSEなどの指標が、「誤算の大きさ」に関する評価指標であるのに対し、MAPE (Mean Absolute Percentage Error:平均絶対誤差率)は、「誤差率」に関する代表的な指標です。
実際の値に対する推定値の誤差の大きさを、実際に値に対する比率(=誤差率)として算出し、全てのサンプルの誤差率の平均を取ってパーセントで表します。計算式は以下のようになります。
MAPEは、値が小さいほど推定の精度が高いと評価されます。ただし、実際の値(y)が0であった場合、分母が0となり適切な計算ができないといった問題点もあります。実際の値が0に近い母集団の推定を行う際は、別の評価指標を使うことも合わせて検討する必要があります。
ここまで、「回帰タスク(回帰モデル)」における代表的な評価指標について、その種類・特徴や、注意が必要な点、実際の計算式を解説しました。
当記事に関連するトピックについての詳細は、以下のページをご覧ください。
また、機械学習・データ分析一般に関する全ての記事は以下のページからご覧いただけます。
参考文献:
◦金本拓 (2024) 『因果推論ー基礎から機械学習・時系列解析・因果探索を用いた意思決定のアプローチー』, オーム社
◦門脇大輔,阪田隆司,保坂桂佑,平松雄司 (2019)『Kaggleで勝つデータ分析の技術』, 技術評論社
◦栗原伸一・丸山敦史 (2017)『統計学図鑑』オーム社