混淆矩陣

機(jī)器學(xué)習(xí)算法筆記(二十七):混淆矩陣、精準(zhǔn)率與召回率、F1 Score

轉(zhuǎn)自:https://louyu.site/articles/machine-learning/2019/09/?p=1907/

對于回歸問題來說,評論算法的好壞我們討論過 MSE、MAE、RMSE、R Squared。但對于分類算法的評價(jià),我們在前面始終使用“分類準(zhǔn)確度”這一個(gè)指標(biāo)。實(shí)際上分配準(zhǔn)確度在評價(jià)分類算法的時(shí)候是存在問題的,這時(shí)我們就要引入混淆矩陣、精準(zhǔn)率與召回率的概念。

一、分類準(zhǔn)確度的局限性

如果我們要編寫一個(gè)癌癥預(yù)測系統(tǒng),輸入一個(gè)人體檢的信息指標(biāo),可以判斷此人是否有癌癥,思路當(dāng)然是收集大量的數(shù)據(jù),訓(xùn)練機(jī)器學(xué)習(xí)算法模型,進(jìn)而完成癌癥預(yù)測系統(tǒng)。假如最終我們以分類準(zhǔn)確度來評價(jià)這個(gè)算法的好壞,就可以假設(shè)以下兩種情況:

● 如果該種癌癥在人群中產(chǎn)生的概率只有 0.1%,那么即使隨便一個(gè)系統(tǒng),預(yù)測所有人都是健康,該系統(tǒng)也可達(dá)到 99.9% 的準(zhǔn)確率;也就是說,即使該系統(tǒng)什么都不做,也可以達(dá)到 99.9% 的準(zhǔn)確率。

● 如果該種癌癥在人群中產(chǎn)生的概率只有 0.01%,此時(shí)即使系統(tǒng)什么都不做,其預(yù)測準(zhǔn)確率也能達(dá)到 99.99%,則該機(jī)器學(xué)習(xí)算法的模型是失敗的。

由上面的假設(shè)可以看到,對于極度偏斜(Skewed Data)的數(shù)據(jù),只使用分類準(zhǔn)確度是遠(yuǎn)遠(yuǎn)不夠的(比如上面癌癥患者和健康人的人數(shù)之比是非常小的)。面對這種極度偏斜的數(shù)據(jù),雖然分類準(zhǔn)確度可能非常的高,其實(shí)算法是不夠好的,甚至有些情況下非常爛的算法也能得到非常高的準(zhǔn)確度。這時(shí)我們就要引入其他指標(biāo),在極度偏斜的情況下也能很好反映分類的算法的好壞。

二、混淆矩陣

首先我們引入一個(gè)非常基礎(chǔ)的工具——混淆矩陣(Confusion Matrix)。

對于二分類問題,有以上混淆矩陣。

● 混淆矩陣中矩陣的最上一行代表預(yù)測值,最左列為真實(shí)值。

● 0 代表負(fù)例(Negative),1 代表正例(Positive)。

?TN、FP、FN、TP:表示預(yù)測結(jié)果的樣本數(shù)量。

?TN(True Negative):實(shí)際值為 Negative,預(yù)測值為 Negative,預(yù)測 negative 正確。

●?FP(False Positive):實(shí)際值為 Negative,預(yù)測值為 Positive,預(yù)測 Positive 錯(cuò)誤。

●?FN(False Negative):實(shí)際值為 Positive,預(yù)測值為 Negative,預(yù)測 Negative 錯(cuò)誤。

●?TP(True Positive):實(shí)際值為 Positive,預(yù)測值為 Positive,預(yù)測 Positive 正確。

下面我們繼續(xù)舉預(yù)測癌癥的例子來具體說明混淆矩陣:

9978:9978 個(gè)人本身沒有患癌癥,同時(shí)算法預(yù)測他們也沒有患癌癥。

12:12個(gè)人本身沒有患癌癥,但算法預(yù)測他們患有癌癥。

2:2個(gè)人本身患有癌癥,但算法預(yù)測他們沒有患癌癥。

●?8:8個(gè)人本身患有癌癥,同時(shí)算法預(yù)測他們也患有癌癥。

三、精準(zhǔn)率和召回率

我們回到上一節(jié)癌癥的例子:

接下來我們就要基于上面的例子來討論兩個(gè)新的概念——精準(zhǔn)率(precision)召回率(recall)

1、精準(zhǔn)率

● 定義:預(yù)測所關(guān)注的事件的結(jié)果中,預(yù)測正確的概率(共預(yù)測了 20 次,8 次正確,12 次錯(cuò)誤)。

● 公式:

以預(yù)測癌癥為例,預(yù)測精準(zhǔn)率 = TP / (TP + FP) = 8 / (8 + 12) = 40%,代表每做 100個(gè)患病的預(yù)測(預(yù)測值為 1),平均會(huì)有 40個(gè)是正確的。

簡而言之就是在所有的正預(yù)測結(jié)果中預(yù)測對的概率,與第二類錯(cuò)誤(以假為真)互補(bǔ),即1-precision=B

2、召回率(查全率)

● 定義:對所有所關(guān)注的類型,將其預(yù)測出的概率(共 10 個(gè)癌癥患者,預(yù)測出 8 個(gè))。

● 公式:

以預(yù)測癌癥為例,召回率 = TP / (TP + FN) = 8 / (8 + 2) = 80%,代表每100個(gè)癌癥患者中,通過該預(yù)測系統(tǒng),能夠成功的找出 80個(gè)癌癥患者。

簡而言之就是某事件真實(shí)發(fā)生了并成功預(yù)測出的概率,可以理解為查全率。與第一類錯(cuò)誤(以假為真)互補(bǔ),即1-precision=a

結(jié)合精準(zhǔn)率和召回率的概念,我們再來看一下一個(gè)預(yù)測所有人都健康的預(yù)測癌癥算法,它的混淆矩陣和準(zhǔn)確率、召回率的情況:

可以看到雖然準(zhǔn)確率很高,但在精準(zhǔn)率和召回率的指標(biāo)下,這個(gè)算法是完全沒有用的。

從而我們看出,在極度偏斜的數(shù)據(jù)中,我們不看準(zhǔn)確率,使用精準(zhǔn)率和召回率才能更加準(zhǔn)確評價(jià)分類系統(tǒng)的好壞。

四、編程實(shí)現(xiàn)計(jì)算準(zhǔn)確率和召回率


打印結(jié)果應(yīng)該與自己實(shí)現(xiàn)的函數(shù)相同。

五、F1 Score

從上文中我們看到,精準(zhǔn)率和召回率是兩個(gè)指標(biāo),具體使用算法時(shí)我們怎么通過精準(zhǔn)率和召回率判斷算法優(yōu)劣?其實(shí)這和機(jī)器學(xué)習(xí)領(lǐng)域中大多數(shù)關(guān)于取舍問題的答案是一樣的,我們要根據(jù)具體使用場景而定。

● 在預(yù)測未來該股票是漲還是跌的情況下,我們要求更精準(zhǔn)的找到能夠上漲的股票,若出現(xiàn)誤判(FP的錯(cuò)誤)會(huì)造成實(shí)實(shí)在在金錢損失。此情況下,模型精準(zhǔn)率越高越好,即使召回率低一些也沒關(guān)系——即使我們落下了一些股票的上升周期也并沒有關(guān)系,我們并不會(huì)有金錢上的損失。但如果我們錯(cuò)誤判斷一個(gè)股票會(huì)上漲(實(shí)際上是下跌)從而投資,那我們就會(huì)有實(shí)際的損失。在這種情況下,精準(zhǔn)率比召回率更重要。

● 在診斷一個(gè)人是否患病的情況下,我們要求更全面的找出所有患病的病人,而且盡量不漏掉一個(gè)患者;甚至說即使將正常人員判斷為病人也沒關(guān)系,只要不將病人判斷成健康人員就好。此情況下,模型召回率越高越好。

還有一些其他情況,我們不用特別關(guān)心精準(zhǔn)率也不用特別關(guān)心召回率,我們希望同時(shí)關(guān)注這兩種指標(biāo),這種情況下,我們就使用一種新的指標(biāo)——F1 Score。F1 Score 實(shí)際上是精準(zhǔn)率和召回率的調(diào)和平均值,用公式表示就是:

如果 1/a = (1/b + 1/c) / 2,則稱 a 是 b 和 c 的調(diào)和平均值。調(diào)和平均值的特點(diǎn)為:|b – c| 越大,a 越小;當(dāng) b – c = 0 時(shí),a = b = c,a 達(dá)到最大值。具體到精準(zhǔn)率和召回率,只有當(dāng)二者大小均衡時(shí),F(xiàn)1 指標(biāo)才高。

對于這個(gè)有偏的數(shù)據(jù),算法運(yùn)行后的精準(zhǔn)率和召回率都比準(zhǔn)確率低一些,在這里精準(zhǔn)率和召回率更能反映算法的結(jié)果。對于有偏的數(shù)據(jù),使用邏輯回歸進(jìn)行預(yù)測,它的召回率是相對比較低的,所以 F1 Score 被比較低的召回率拉低了,最終的結(jié)果只有86.7%。相比準(zhǔn)確度的 97.5%,我們傾向于認(rèn)為 86.7% 這個(gè)指標(biāo)更能反映這個(gè)算法的好壞。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺,僅提供信息存儲(chǔ)服務(wù)。

友情鏈接更多精彩內(nèi)容