開始使用免費開始

錯越大,懲罰越重

所有誤差都不理想,但嚴重程度不盡相同。有時候,巨大的預測誤差比小誤差造成的影響大得多。

「錯越大,懲罰越重」正是均方根誤差(root mean squared error,RMSE)的特性之一。它會將較大的誤差平方,因此比起小誤差,會更嚴厲地懲罰這些離群的錯誤。

RMSE 可用下列公式計算,其中第 \(i\) 個 squared_diff 是第 \(i\) 個誤差的平方。

$$RMSE = \sqrt{\frac{1}{n} \cdot \sum_{i=1} ^n i\text{th squared_diff}}$$

在這個練習中,你將計算你的預測的 RMSE。

在你的工作空間中,已提供上一個練習的結果 test_enriched,也就是測試資料,包含一個新的欄位 .pred,代表模型在樣本外的預測值。

本練習屬於課程

R 的樹狀模型機器學習

檢視課程

練習說明

  • 計算預測值與期末成績的逐元素差異,將其平方,並存成 squared_diffs
  • 使用上方公式計算 RMSE,將結果存為 rmse_manual
  • 使用 rmse() 函式計算誤差,將結果存為 rmse_auto
  • 印出 rmse_manualrmse_auto,確認兩者相同。

動手互動練習

試著完成這個範例程式碼,體驗一下這個練習。

# Calculate the squared differences
squared_diffs <- (___ - ___)^___

# Compute the RMSE using the formula
rmse_manual <- ___(1 / ___ * ___)

# Compute the RMSE using a function
rmse_auto <- ___(___,
                 ___,
                 ___)

# Print both errors
___
___
編輯並執行程式碼