模型的好壞和優(yōu)劣都是基于一定的角度做出的相對(duì)判斷,在這篇文章中,我們將從目標(biāo)和問(wèn)題的角度去討論每種誤差度量的有效性。 當(dāng)有人告訴你“中國(guó)是最好的國(guó)家”時(shí),你問(wèn)的首要問(wèn)題肯定是這個(gè)陳述的基礎(chǔ)是什么,我們是根據(jù)國(guó)家的經(jīng)濟(jì)狀況、文化水平還是他們的衛(wèi)生設(shè)施等來(lái)評(píng)估比較各個(gè)國(guó)家的呢? 類似地,每個(gè)機(jī)器學(xué)習(xí)模型都用到了不同的數(shù)據(jù)集來(lái)有針對(duì)性的解決不同目標(biāo)的問(wèn)題,因此,在選擇合適的度量之前,要深刻理解上下文。
圖 各種機(jī)器學(xué)習(xí)模型常用的度量標(biāo)準(zhǔn)
回歸度量指標(biāo)
大多數(shù)的博客更多都關(guān)注模型的精度、召回率、AUC(Area under curve,ROC曲線下區(qū)域面積)等分類指標(biāo)。這里想稍稍改變一下,讓我們來(lái)探索各種更多的指標(biāo),包括在回歸問(wèn)題中使用的指標(biāo)。MAE和RMSE是關(guān)于連續(xù)變量的兩個(gè)最普遍的度量標(biāo)準(zhǔn)。
首先,我們看看最流行RMSE,全稱是Root Mean SquareError,即均方根誤差,它表示預(yù)測(cè)值和觀測(cè)值之間差異(稱為殘差)的樣本標(biāo)準(zhǔn)偏差。在數(shù)學(xué)上,它是用如下這個(gè)公式計(jì)算的:
其次是MAE,全稱是Mean Absolute Error,即平均絕對(duì)誤差,它表示預(yù)測(cè)值和觀測(cè)值之間絕對(duì)誤差的平均值。MAE是一種線性分?jǐn)?shù),所有個(gè)體差異在平均值上的權(quán)重都相等,比如,10和0之間的絕對(duì)誤差是5和0之間絕對(duì)誤差的兩倍。但這對(duì)于RMSE而言不一樣,后續(xù)將進(jìn)一步詳細(xì)討論。在數(shù)學(xué)上,MAE是用如下這個(gè)公式計(jì)算的:
那么你應(yīng)該選擇哪一個(gè)?為什么這樣選擇呢?
首先,理解和解釋MAE很容易,因?yàn)樗褪菍?duì)殘差直接計(jì)算平均,而RMSE相比MAE,會(huì)對(duì)高的差異懲罰更多。讓我們通過(guò)兩個(gè)例子來(lái)理解一下:
案例1:真實(shí)值= [2,4,6,8],預(yù)測(cè)值= [4,6,8,10]
案例2:真實(shí)值= [2,4,6,8],預(yù)測(cè)值= [4,6,8,12]
案例1的MAE = 2.0,RMSE = 2.0
案例2的MAE = 2.5,RMSE = 2.65
從上述例子中,我們可以發(fā)現(xiàn)RMSE比MAE更加多地懲罰了最后一項(xiàng)預(yù)測(cè)值。通常,RMSE要大于或等于MAE。等于MAE的唯一情況是所有殘差都*相等或都為零*,如案例1中所有的預(yù)測(cè)值與真實(shí)值之間的殘差皆為2,那么MAE和RMSE值就相等。
> 盡管RMSE更復(fù)雜且偏向更高的誤差,它仍然是許多模型的默認(rèn)度量標(biāo)準(zhǔn),因?yàn)橛肦MSE來(lái)定義損失函數(shù)是*平滑可微*的,且更容易進(jìn)行數(shù)學(xué)運(yùn)算。
雖然這聽(tīng)起來(lái)不太令人滿意,但這的確是是它非常受歡迎的原因。下面我將從數(shù)學(xué)角度解釋上述邏輯。首先,讓我們建立一個(gè)簡(jiǎn)單的單變量線性模型:y = mx + b,在這個(gè)問(wèn)題中,我們要找到最佳“m”和“b”,數(shù)據(jù)(x,y)是已知的。如果我們用RMSE來(lái)定義損失函數(shù)(J):那么我們可以很容易地求得J對(duì)m和b的偏導(dǎo),并以此來(lái)更新m和b(這是梯度下降的工作方式,這里就不過(guò)多解釋它)
上述等式很容易就可以求解,但對(duì)MAE并不適用。然而,如果你需要一種度量標(biāo)準(zhǔn)能從直觀解釋的角度來(lái)比較兩個(gè)模型,那么我認(rèn)為MAE會(huì)是更好的選擇。值得注意的是,RMSE和MAE的單位與y值相同,但R Square不是這樣的。此外,RMSE和MAE的范圍都是從0到無(wú)窮大。
>這里需要提及MAE和RMSE之間的一大重要區(qū)別,最小化一組數(shù)字的平方誤差會(huì)得到其平均值,而最小化絕對(duì)誤差則會(huì)得到其中值, 這也是為什么MAE比RMSE對(duì)離群點(diǎn)更有效的原因。
R Squared, R2 校正 RSquared
R2 和校正R2,常常用于說(shuō)明選擇的自變量對(duì)解釋因變量解釋擬合有多好。
在數(shù)學(xué)上,R_Squared由下式給出:
>其中,分子是MSE(殘差平方的平均值),分母是Y值的方差。MSE越高,R_squared則越小,表明模型越差。
跟R2一樣,校正R2也顯示了自變量對(duì)因變量的解釋程度,回歸問(wèn)題中體現(xiàn)于曲線的擬合優(yōu)度,但是可以根據(jù)模型中的自變量個(gè)數(shù)進(jìn)行調(diào)整。 它由以下公式給出:
其中n表示觀測(cè)值的總數(shù),k表示預(yù)測(cè)值的數(shù)量,校正后的R2總是小于或等于R2。
為什么你應(yīng)該越過(guò)R2選擇校正R2?
標(biāo)準(zhǔn)的R2在使用中往往會(huì)存在一些問(wèn)題,但使用校正R2就能很好地解決。因?yàn)樾U齊2會(huì)考慮在模型中增加附加項(xiàng),使得性能改善。如果你添加有用的項(xiàng),R2會(huì)增加,而如果添加了不太有用的預(yù)測(cè)變量,R2將減少。 但是,即使模型沒(méi)有實(shí)際改進(jìn),R2也隨著變量數(shù)量的增加而增加。下面我們用一個(gè)例子來(lái)更好地理解這一點(diǎn)。
這里,案例1是一個(gè)很簡(jiǎn)單的情況,我們有5個(gè)觀察值(x,y)。 在案例2中,讓一個(gè)變量是變量1的兩倍(也就是說(shuō)它與變量1完全相關(guān))。在案例3中,我們對(duì)變量2做了輕微的干擾,使其不再與變量1完全相關(guān)。
因此,如果我們?yōu)槊總€(gè)案例都用簡(jiǎn)單普通的最小二乘(OLS)模型來(lái)擬合,那么從邏輯上講,我們?yōu)榘咐?、案例2和案例3提供的信息是相同的,那我們的度量值相對(duì)這些模型也不會(huì)有所提高。然而,實(shí)際上R2 對(duì)于模型2和3會(huì)給出更高的值,這顯然是不正確的。但是,用校正R2就可以解決這個(gè)問(wèn)題,實(shí)際上對(duì)于案例2和3都是減少的。讓我們給這些變量(x ,y)賦上一些值,并查看Python中獲得的結(jié)果。
注意:模型1和模型2的預(yù)測(cè)值將相同,因此R2也將相同,因?yàn)樗鼉H取決于預(yù)測(cè)值和實(shí)際值。
從上表可以看出,從案例1到案例3,盡管我們沒(méi)有增加的任何附加信息,但R2仍在增加,而校正后的R2顯示了正確的趨勢(shì)(懲罰模型2擁有更多的變量)
對(duì)比校正R2與RMSE
對(duì)于前面的例子,我們將看到案例1和案例2得到的RMSE結(jié)果與R2是類似的。在這種情況下,校正R2要比RMSE更好,因?yàn)樗粚?duì)預(yù)測(cè)值與實(shí)際值進(jìn)行比較。而且,RMSE的絕對(duì)值實(shí)際上并不能說(shuō)明模型有多糟糕,它只能用于比較兩個(gè)模型,但校正R2就很容易做到這一點(diǎn)。 例如,如果一個(gè)模型的現(xiàn)在R2為0.05,那么這個(gè)模型肯定很差。
但是,如果你只關(guān)心預(yù)測(cè)精度,那么RMSE是最佳選擇。它計(jì)算簡(jiǎn)單,容易區(qū)分,一般是大多數(shù)模型的默認(rèn)度量。
常見(jiàn)誤區(qū):我經(jīng)常看到網(wǎng)上說(shuō)R2的范圍在0到1之間,實(shí)際上并不是這樣。R2的最大值是1,但最小值可以是負(fù)無(wú)窮大。即使y的真實(shí)值為正數(shù),模型對(duì)所有觀測(cè)值的預(yù)測(cè)結(jié)果也會(huì)有高負(fù)值的情況。在這種情況下,R2將小于0。這雖然是一個(gè)不太可能的情況,但可能性依然存在。
有趣的指標(biāo)
這里有一個(gè)有趣的指標(biāo),如果你對(duì)NLP感興趣,Andrew Ng在深度學(xué)習(xí)課程中介紹了它。BLEU(Bilingual Evaluation Understudy,雙語(yǔ)評(píng)估研究)
它主要用于衡量機(jī)器翻譯相對(duì)于人類翻譯的質(zhì)量,它使用了精確度量的修改形式。
計(jì)算BLEU分?jǐn)?shù)的步驟:
1. 把句子轉(zhuǎn)換成單個(gè)詞、兩個(gè)詞、三個(gè)詞和四個(gè)詞
2. 分別計(jì)算大小為1至4的n語(yǔ)法的精度
3. 取所有這些精度值的加權(quán)平均的指數(shù)
4.將其與簡(jiǎn)短的懲罰項(xiàng)相乘(稍后將解釋)
這里BP是簡(jiǎn)短的懲罰項(xiàng),r和c分別是參考翻譯和候選翻譯中的詞的數(shù)量,w 表示權(quán)重,P表示精度值
例:
參考:The cat is sitting on the mat
機(jī)器翻譯1:On the mat is a cat
機(jī)器翻譯2:There is cat sitting cat
我們來(lái)比較一下上面兩個(gè)翻譯的BLEU得分。
最終結(jié)果:BLEU(MT1)= 0.454,BLEU(MT2)= 0.59
為什么要引入簡(jiǎn)潔的懲罰項(xiàng)?
引入的懲罰項(xiàng)會(huì)懲罰那些短于參考翻譯的候選翻譯。例如,如果上述候選翻譯的參考翻譯是“The cat”,那么它對(duì)于單個(gè)詞和兩個(gè)詞將具有很高的精度,因?yàn)閮蓚€(gè)單詞都以相同的順序出現(xiàn)在參考翻譯中。但是,長(zhǎng)度太短的話,實(shí)際上并不能很好的反映參考翻譯的含義。有了這個(gè)簡(jiǎn)短的懲罰,候選翻譯必須在長(zhǎng)度、相同單詞和單詞順序方面與參考翻譯相匹配才能獲得高分。
希望通過(guò)這篇文章的介紹,我們能理解不同度量間的差異,并能為機(jī)器學(xué)習(xí)選擇合適的模型度量,評(píng)價(jià)建模效果的好壞,并指導(dǎo)模型的優(yōu)化。
-
機(jī)器學(xué)習(xí)
+關(guān)注
關(guān)注
66文章
8503瀏覽量
134628 -
機(jī)器翻譯
+關(guān)注
關(guān)注
0文章
140瀏覽量
15198 -
度量
+關(guān)注
關(guān)注
0文章
8瀏覽量
2756
原文標(biāo)題:確認(rèn)過(guò)眼神,如何為模型選擇合適的度量標(biāo)準(zhǔn)?
文章出處:【微信號(hào):thejiangmen,微信公眾號(hào):將門創(chuàng)投】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。
發(fā)布評(píng)論請(qǐng)先 登錄
CS的有效性可以改編?
ATPG有效性是什么意思
高階微擾法的有效性研究

如何檢查Oracle數(shù)據(jù)庫(kù)備份文件是否有效?備份文件有效性檢測(cè)系統(tǒng)設(shè)計(jì)資料概述

什么是欺詐證明和有效性證明
PLC冗余系統(tǒng)的可行性和有效性分析

基于內(nèi)法向量與二次誤差度量的孔洞修補(bǔ)算法

Oracle數(shù)據(jù)庫(kù)備份文件有效性檢測(cè)設(shè)計(jì)方案

合成數(shù)據(jù)的不合理有效性

評(píng)論