R で rmse を計算する方法


二乗平均平方根誤差 (RMSE) は、回帰分析で予測値が観測値から平均してどの程度離れているかを示す尺度です。次のように計算されます。

RMSE = √[ Σ(P i – O i ) 2 / n ]

金:

  • Σは「和」を意味する派手な記号です
  • Pi、データセット内のi 番目の観測値の予測値です。
  • O iは、データセット内のi 番目の観測値の観測値です。
  • n はサンプルサイズです

このチュートリアルでは、R で RMSE を計算するために使用できる 2 つの方法について説明します。

方法 1: 独自の関数を作成する

実際のデータ値を含む列と予測データ値を含む列を含むデータセットがあるとします。

 #create dataset
data <- data.frame(actual=c(34, 37, 44, 47, 48, 48, 46, 43, 32, 27, 26, 24),
                   predicted=c(37, 40, 46, 44, 46, 50, 45, 44, 34, 30, 22, 23))

#view dataset
data

   actual predicted
1 34 37
2 37 40
3 44 46
4 47 44
5 48 46
6 48 50
7 46 45
8 43 44
9 32 34
10 27 30
11 26 22
12 24 23

RMSE を計算するには、次の関数を使用できます。

 #calculate RMSE
sqrt(mean((data$actual - data$predicted)^2))

[1] 2.43242

平均二乗誤差は2.43242です。

方法 2: パッケージを使用する

次の構文を使用するMetricsパッケージのrmse()関数を使用して、同じデータセットの RMSE を計算することもできます。

rmse (実績、計画)

金:

  • real:実数値
  • 予測:予測値

この例で使用する構文は次のとおりです。

 #load Metrics package
library(Metrics)

calculate RMSE
rmse(data$actual, data$predicted)

[1] 2.43242

平均二乗誤差は2.43242で、これは独自の関数を使用して以前に計算した値と一致します。

RMSEの解釈方法

RMSE は、回帰モデルがデータセットにどの程度適合できるかを確認するのに便利な方法です。

RMSE が大きいほど、予測値と観測値の差が大きくなり、回帰モデルのデータへの適合性が低下することを意味します。逆に、RMSE が小さいほど、モデルはデータにうまく適合できます。

2 つの異なるモデルの RMSE を比較して、どのモデルがデータに最も適合するかを確認することは特に便利です。

追加リソース

RMSE計算機
R で MSE を計算する方法
RでMAPEを計算する方法

コメントを追加する

メールアドレスが公開されることはありません。 が付いている欄は必須項目です