关于模型预测结果好坏的几个评价指标
總第241篇/張俊紅
在人工智能算法大數(shù)據(jù)時(shí)代,會(huì)有各種各樣的預(yù)測(cè)模型,那怎么來(lái)評(píng)判一個(gè)預(yù)測(cè)模型的準(zhǔn)確度呢?這一篇就來(lái)聊聊常用的一些評(píng)價(jià)指標(biāo)。
所謂的預(yù)測(cè)準(zhǔn)確度其實(shí)就是預(yù)測(cè)值和實(shí)際值之間的相近程度,預(yù)測(cè)值和實(shí)際值之間越接近,說(shuō)明預(yù)測(cè)準(zhǔn)確度越高。我們用y_{hat}表示模型的預(yù)測(cè)值,y表示模型的真實(shí)值。
1.MSE
MSE是Mean Square Error的縮寫,表示均方誤差,具體公式如下:
該公式表示每個(gè)預(yù)測(cè)值與實(shí)際值之間距離的平方和,值越大,表示誤差越大。
2.RMSE
RMSE表示均方根誤差,是對(duì)MSE的開(kāi)根號(hào),有點(diǎn)類似方差與標(biāo)準(zhǔn)差的區(qū)別。人們對(duì)均方差和方差一樣沒(méi)有直觀的理解,不知道均方差=100時(shí)到底是準(zhǔn)確度高還是低。所以就有了均方根誤差,可以將均方根誤差和實(shí)際值之間去比較,就可以對(duì)預(yù)測(cè)準(zhǔn)確度有個(gè)直觀的理解。
比如實(shí)際值基本在10左右,均方根誤差是5,那么就可以感受到,預(yù)測(cè)值差不多會(huì)有一半的誤差。而如果要是看均方誤差25的話,可能就不太好理解。
3.MAE
MAE是Mean Absolute Error的縮寫,表示平均絕對(duì)誤差,公式如下:
平均絕對(duì)誤差就是把均方誤差中對(duì)預(yù)測(cè)值與實(shí)際值之間的差值求平方改成了求絕對(duì)值。與RMSE有點(diǎn)類似。
4.MAPE
MAPE是Mean Absolute Percentage Error的縮寫,表示平均絕對(duì)百分比誤差,公式如下:
MAPE對(duì)預(yù)測(cè)的準(zhǔn)確度表示就更直觀了,有點(diǎn)類似于增幅的概念。用預(yù)測(cè)值與實(shí)際值之間的差去與實(shí)際值相比,看其中的占比有多大。
5.Python實(shí)現(xiàn)
是不是想問(wèn),那上面這些指標(biāo)用Python怎么計(jì)算呢?往下看:
MSE的計(jì)算在Sklearn中有現(xiàn)成的函數(shù)可以調(diào)用,代碼如下:
from?sklearn?import?metrics mse?=?metrics.mean_squared_error(y_test,?y_pre)RMSE直接對(duì)MSE的結(jié)果開(kāi)根號(hào)即可,代碼如下:
import?numpy?as?np rmse?=?np.sqrt(mse)MAE的計(jì)算在Sklearn中也有現(xiàn)成的函數(shù)可以調(diào)用,代碼如下:
from?sklearn?import?metrics mae?=?metrics.mean_absolute_error(y_test,?y_pre)MAPE的計(jì)算需要我們自己寫代碼來(lái)實(shí)現(xiàn),不過(guò)也比較簡(jiǎn)單,具體代碼如下:
def??mape(y_true,?y_pred):?return?np.mean(np.abs((y_pred?-?y_true)?/?y_true))?*?100 mape?=?mape(y_true,?y_pred)以上就是關(guān)于模型準(zhǔn)確度常用的評(píng)價(jià)指標(biāo)以及Python實(shí)現(xiàn)代碼。
總結(jié)
以上是生活随笔為你收集整理的关于模型预测结果好坏的几个评价指标的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: 英雄杀真李逵怎么过(英雄联盟赛事官网)
- 下一篇: 单片机中0x00什么意思_单片机中0x0