我們建立一個機器學習模型後,需要計算評估指標分數,從指標中獲得反饋看模型表現的優劣,再繼續改進模型,直到達到理想的指標分數。在機器學習競賽中評估指標也是很重要的,是用來評估我們提交結果的標準。
為什麼會有不同的評估指標呢?
因為評價一個算法的質量可以有很多方式,而且每個公司可以決定什麼才是最適合評價他們這個問題的方式。
比如一個線上商店想要讓他們的網頁實現效用的最大化。
首先我們要將效用這個定義進行公式化,你需要定義一個指標來衡量到底什麼是效用,可以是一個網頁被瀏覽的次數,或者是用這個網頁訂購商品的次數,公司通常會決定到底哪種屬性才是最重要的指標,然後再對其進行優化。
在機器學習競賽中這個評估指標是固定的,所有的參賽者提交的模型結果都是通過這個指標來進行排名,所以為了能在最終的排行榜上排進前列,我們就要努力得到比較高的指標分數。
可以說競賽中最重要的事情就是如何讓指標得分更高,所以就
需要理解指標的含義,以及如何高效的優化它。注意一定要是比賽中提供的指標,而不是其他指標,儘管你會覺得此時用其他的指標會更合理。還有一個問題是,有些指標並不能有效地進行優化,也就是不能高效地找到最優的超平面,所以有些時候的確需要優化其他一些指標而不是比賽中要求的指標,但還是需要用各種啟發式分析來改進比賽的指標分數。
而且不僅只是數據分析和模型構建可以對整體比賽結果有幫助,有些時候甚至可以從評估指標中找到一些技巧來提升排名。
例如一個時間序列問題,如果預測的趨勢是準確的,那麼就用真實值和預測值之間的絕對誤差來作為誤差,如果預測的趨勢是錯誤的,那麼就用二者之間的平方差來作為誤差,這樣的話這個指標就是比較在乎趨勢預測準確時的誤差。
因為直接優化這個指標會比較困難,所以將對值的預測改為對趨勢的預測,也就是不去預測具體的數值,而是在最後一個值的基礎上是加一個小數字還是減一個小數字。這一個小的技巧可能就會讓你在比賽中脫穎而出成為第一名。
迴歸模型常用的 5 種評估指標:
1. MSE : Mean square error
是迴歸問題中最常見的指標。
它是用來衡量預測值與實際值之間平方差的平均值。
對它求導數,令其為零,可以得到極值點,就是所有目標值的平均值。
2. RMSE: Root mean square error
是 MSE 的平方根。
平方根的作用是使誤差的範圍和目標值的範圍一致。
RMSE 和 MSE 的關係:
- 二者的極小值點是一樣的。
如果比賽中的評估矩陣是 RMSE,為了方便模型優化我們是可以用 MSE 作為臨時替代的。
- 不過二者的梯度是不一樣的。
RMSE 的梯度是 MSE 的梯度乘一個值。
所以在使用基於梯度的優化算法時,需要調整一下學習率。
R-squared:
- 直接看 RMSE 和 MSE 分數的話,並不是很容易說明模型表現的好壞,還需要衡量模型比基準線要好多少,如果沒有超過基準線那麼得分應該是 0,如果超過了得分是 1,這時候要用的指標就是 R-squared,即當 MSE = 0 時,R-squared = 1。所以要優化 R-squared 時,我們可以通過優化 MSE。
3. MAE: Mean absolute error
是預測值和目標值之間差的絕對值的平均值。
這個指標對異常值沒有 MSE 那麼敏感,它的魯棒性要比 MSE 強。
MAE 的極小值點是所有目標值的中值。
MAE 不可微,也就是當預測值與實際值完全相等時是沒有定義的,這個時候可以用一個if條件判斷返回0或者其他某個值。
MAE 和 MSE 如何選擇:
- 如果有異常值的話,用 MAE。
- 如果這些看起來有點異常的值仍然值得被考慮到模型中,那麼需要用 MSE。
4. MSPE 和 MAPE
MSPE:Mean square percentage error
MAPE:Mean absolute percentage error
如果我們想要預測下面這兩個商店會賣出多少筆記本電腦,可以看到這兩個商店銷售的數量級是不一樣的,但是 MSE 卻是一樣的。
因為 MSE 和 MAE 考慮的都是絕對誤差。
而** MSPE 和 MAPE 考慮的是相對誤差**,它們在每個誤差項下面要除以相應的目標值來得到相對的誤差。這兩個指標也可以看成是 MSE 和 MAE 的加權指標。
所以,MSPE 的極值點是目標值的加權平均值。
MAPE 的極值點是目標值的加權中值。
5. RMSLE:Root mean square logarithmic error
它其實是對數形式的 RMSE。
使用場景和 MSPE,MAPE 是一樣的,也是考慮到相對誤差,但是它的誤差曲線具有不對稱性。
同樣的數據,我們計算這 5 個指標,會得到不同的分數:
- MSE 會偏向比較大的值,MAE 稍微好一點,
- MSPE 和 MAPE 會 偏向比較小的值,因為它們會給比較小的目標值賦予比較大的權重,
- RMSLE 比 MAPE 要好一些,因為它也是考慮到相對誤差,而且不會特別嚴重的偏向小的數值。
在實際應用中根據數據的特點和業務的需求,再結合上面對五個指標的比較進行選擇。
學習資料:
https://youtu.be/5z9xSUFisYs
https://youtu.be/9u-PR08kcE8
https://youtu.be/wrndkAJrqB0
閱讀更多 Alice機器學習乾貨鋪 的文章