人工智能_數(shù)據(jù)分析_信號_心理學(xué)_生物學(xué)等重要術(shù)語: ROC接收者操作特征曲線

在信號檢測理論中,接收者操作特征曲線(receiver operating characteristic curve,或者叫ROC曲線)是坐標(biāo)圖式的分析工具,用于 (1) 選擇最佳的信號偵測模型、舍棄次佳的模型。 (2) 在同一模型中設(shè)定最佳閾值。

在做決策時(shí),ROC分析能不受成本/效益的影響,給出客觀中立的建議。

ROC曲線首先是由二戰(zhàn)中的電子工程師和雷達(dá)工程師發(fā)明的,用來偵測戰(zhàn)場上的敵軍載具(飛機(jī)、船艦),也就是信號檢測理論。之后很快就被引入了心理學(xué)來進(jìn)行信號的知覺檢測。數(shù)十年來,ROC分析被用于醫(yī)學(xué)、無線電、生物學(xué)、犯罪心理學(xué)領(lǐng)域中,而且最近在機(jī)器學(xué)習(xí)(machine learning)和數(shù)據(jù)挖掘(data mining)領(lǐng)域也得到了很好的發(fā)展。

術(shù)語

  • 陽性 (P, positive)

  • 陰性 (N, Negative)

  • 真陽性 (TP, true positive) 正確的肯定。又稱:命中 (hit)

  • 真陰性 (TN, true negative) 正確的否定。又稱:正確拒絕 (correct rejection)

  • 偽陽性 (FP, false positive) 錯(cuò)誤的肯定,又稱:假警報(bào) (false alarm),第一型錯(cuò)誤

  • 偽陰性 (FN, false negative) 錯(cuò)誤的否定,又稱:未命中 (miss),第二型錯(cuò)誤

  • 真陽性率 (TPR, true positive rate) 又稱:命中率 (hit rate)、敏感度(sensitivity)
    TPR = TP / P = TP / (TP+FN)

  • 偽陽性率(FPR, false positive rate) 又稱:錯(cuò)誤命中率,假警報(bào)率 (false alarm rate) FPR = FP / N = FP / (FP + TN)

  • 準(zhǔn)確度 (ACC, accuracy) ACC = (TP + TN) / (P + N) 即:(真陽性+真陰性) / 總樣本數(shù)

  • 真陰性率 (TNR) 又稱:特異度 (SPC, specificity) SPC = TN / N = TN / (FP + TN) = 1 - FPR

  • 陽性預(yù)測值 (PPV) PPV = TP / (TP + FP)

  • 陰性預(yù)測值 (NPV) NPV = TN / (TN + FN) 假發(fā)現(xiàn)率 (FDR) FDR = FP / (FP + TP)

參考資料

基本概念

分類模型(又稱分類器,或診斷)將實(shí)例映射到特定類。ROC分析的是二元分類模型,也就是輸出結(jié)果只有兩種類別的模型,例如:(陽性/陰性) (有病/沒病) (垃圾郵件/非垃圾郵件) (敵軍/非敵軍)。

當(dāng)訊號偵測(或變量測量)的結(jié)果是連續(xù)值時(shí),類與類的邊界必須用閾值來界定。舉例來說,用血壓值來檢測一個(gè)人是否有高血壓,測出的血壓值是連續(xù)的實(shí)數(shù)(從0~200都有可能),以收縮壓140/舒張壓90為閾值,閾值以上便診斷為有高血壓,閾值未滿者診斷為無高血壓。二元分類模型的個(gè)案預(yù)測有四種結(jié)局:

真陽性(TP):診斷為有,實(shí)際上也有高血壓。
偽陽性(FP):診斷為有,實(shí)際卻沒有高血壓。
真陰性(TN):診斷為沒有,實(shí)際上也沒有高血壓。
偽陰性(FN):診斷為沒有,實(shí)際卻有高血壓。

這四種結(jié)局可以畫成2 × 2的混淆矩陣

圖片.png

ROC空間

ROC空間將偽陽性率(FPR)定義為 X 軸,真陽性率(TPR)定義為 Y 軸。

給定二元分類模型和它的閾值,就能從所有樣本的(陽性/陰性)真實(shí)值和預(yù)測值計(jì)算出(X=FPR, Y=TPR) 座標(biāo)點(diǎn)。

從 (0, 0) 到 (1,1) 的對角線將ROC空間劃分為左上/右下兩個(gè)區(qū)域,在這條線的以上的點(diǎn)代表了一個(gè)好的分類結(jié)果(勝過隨機(jī)分類),而在這條線以下的點(diǎn)代表了差的分類結(jié)果(劣于隨機(jī)分類)。

完美的預(yù)測是在左上角的點(diǎn),在ROC空間座標(biāo) (0,1)點(diǎn),X=0 代表著沒有偽陽性,Y=1 代表著沒有偽陰性(所有的陽性都是真陽性);也就是說,不管分類器輸出結(jié)果是陽性或陰性,都是100%正確。一個(gè)隨機(jī)的預(yù)測會得到位于從 (0, 0) 到 (1, 1) 對角線(也叫無識別率線)上的一個(gè)點(diǎn);最直觀的隨機(jī)預(yù)測的例子就是拋硬幣。

讓我們來看在實(shí)際有100個(gè)陽性和100個(gè)陰性的案例時(shí),四種預(yù)測方法(可能是四種分類器,或是同一分類器的四種閾值設(shè)定)的結(jié)果差異:

圖片.png

將這4種結(jié)果畫在ROC空間里:

點(diǎn)與隨機(jī)猜測線的距離,是預(yù)測力的指標(biāo):離左上角越近的點(diǎn)預(yù)測(診斷)準(zhǔn)確率越高。離右下角越近的點(diǎn),預(yù)測越不準(zhǔn)。
在A、B、C三者當(dāng)中,最好的結(jié)果是A方法。
B方法的結(jié)果位于隨機(jī)猜測線(對角線)上,在例子中我們可以看到B的準(zhǔn)確度(ACC,定義見前面表格)是50%。
C雖然預(yù)測準(zhǔn)確度最差,甚至劣于隨機(jī)分類,也就是低于0.5(低于對角線)。然而,當(dāng)將C以 (0.5, 0.5) 為中點(diǎn)作一個(gè)鏡像后,C'的結(jié)果甚至要比A還要好。這個(gè)作鏡像的方法,簡單說,不管C(或任何ROC點(diǎn)低于對角線的情況)預(yù)測了什么,就做相反的結(jié)論。

ROC曲線

上述ROC空間里的單點(diǎn),是給定分類模型且給定閾值后得出的。但同一個(gè)二元分類模型的閾值可能設(shè)定為高或低,每種閾值的設(shè)定會得出不同的FPR和TPR。

將同一模型每個(gè)閾值的(FPR, TPR)座標(biāo)都畫在ROC空間里,就成為特定模型的ROC曲線。
例如右圖,人體的血液蛋白濃度是呈正態(tài)分布的連續(xù)變數(shù),病人的分布是紅色,平均值為A g/dL,健康人的分布是藍(lán)色,平均值是C g/dL。健康檢查會測量血液樣本中的某種蛋白質(zhì)濃度,達(dá)到某個(gè)值(閾值,threshold)以上診斷為有疾病征兆。研究者可以調(diào)整閾值的高低(將左上圖的B垂直線往左或右移動),便會得出不同的偽陽性率與真陽性率,總之即得出不同的預(yù)測準(zhǔn)確率。

  1. 由于每個(gè)不同的分類器(診斷工具、偵測工具)有各自的測量標(biāo)準(zhǔn)和測量值的單位(標(biāo)示為:“健康人-病人分布圖”的橫軸),所以不同分類器的“健康人-病人分布圖”都長得不一樣。

  2. 比較不同分類器時(shí),ROC曲線的實(shí)際形狀,便視兩個(gè)實(shí)際分布的重疊范圍而定,沒有規(guī)律可循。

  3. 但在同一個(gè)分類器之內(nèi),閾值的不同設(shè)定對ROC曲線的影響,仍有一些規(guī)律可循:

當(dāng)閾值設(shè)定為最高時(shí),亦即所有樣本都被預(yù)測為陰性,沒有樣本被預(yù)測為陽性,此時(shí)在偽陽性率 FPR = FP / ( FP + TN ) 算式中的 FP = 0,所以 FPR = 0%。同時(shí)在真陽性率(TPR)算式中, TPR = TP / ( TP + FN ) 算式中的 TP = 0,所以 TPR = 0%
→ 當(dāng)閾值設(shè)定為最高時(shí),必得出ROC座標(biāo)系左下角的點(diǎn) (0, 0)。
當(dāng)閾值設(shè)定為最低時(shí),亦即所有樣本都被預(yù)測為陽性,沒有樣本被預(yù)測為陰性,此時(shí)在偽陽性率FPR = FP / ( FP + TN ) 算式中的 TN = 0,所以 FPR = 100%。同時(shí)在真陽性率 TPR = TP / ( TP + FN ) 算式中的 FN = 0,所以 TPR=100%
→ 當(dāng)閾值設(shè)定為最低時(shí),必得出ROC座標(biāo)系右上角的點(diǎn) (1, 1)。
因?yàn)門P、FP、TN、FN都是累積次數(shù),TN和FN隨著閾值調(diào)低而減少(或持平),TP和FP隨著閾值調(diào)低而增加(或持平),所以FPR和TPR皆必隨著閾值調(diào)低而增加(或持平)。
→ 隨著閾值調(diào)低,ROC點(diǎn) 往右上(或右/或上)移動,或不動;但絕不會往左下(或左/或下)移動。

圖片.png

曲線下面積(AUC)

例示三種AUC值(曲線下面積)
在比較不同的分類模型時(shí),可以將每個(gè)模型的ROC曲線都畫出來,比較曲線下面積做為模型優(yōu)劣的指標(biāo)。

意義
ROC曲線下方的面積(英語:Area under the Curve of ROC (AUC ROC)),其意義是:

因?yàn)槭窃?x1的方格里求面積,AUC必在0~1之間。
假設(shè)閾值以上是陽性,以下是陰性;
若隨機(jī)抽取一個(gè)陽性樣本和一個(gè)陰性樣本,分類器正確判斷陽性樣本的值高于陰性樣本之機(jī)率。
簡單說:AUC值越大的分類器,正確率越高。
從AUC判斷分類器(預(yù)測模型)優(yōu)劣的標(biāo)準(zhǔn):

AUC = 1,是完美分類器,采用這個(gè)預(yù)測模型時(shí),存在至少一個(gè)閾值能得出完美預(yù)測。絕大多數(shù)預(yù)測的場合,不存在完美分類器。
0.5 < AUC < 1,優(yōu)于隨機(jī)猜測。這個(gè)分類器(模型)妥善設(shè)定閾值的話,能有預(yù)測價(jià)值。
AUC = 0.5,跟隨機(jī)猜測一樣(例:丟銅板),模型沒有預(yù)測價(jià)值。
AUC < 0.5,比隨機(jī)猜測還差;但只要總是反預(yù)測而行,就優(yōu)于隨機(jī)猜測。
計(jì)算
AUC的計(jì)算有兩種方式,都是以逼近法求近似值。

梯形法
梯形法(英語:trapezoid method):簡單地將每個(gè)相鄰的點(diǎn)以直線連接,計(jì)算連線下方的總面積。因?yàn)槊恳痪€段下方都是一個(gè)梯形,所以叫梯形法。

優(yōu)點(diǎn):簡單,所以常用。
缺點(diǎn):傾向于低估AUC。
ROC AUCH法
潛在問題
AUC of ROC是機(jī)器學(xué)習(xí)的社群最常使用來比較不同模型優(yōu)劣的方法 。然而近來這個(gè)做法開始受到質(zhì)疑,因?yàn)橛行C(jī)器學(xué)習(xí)的研究指出,AUC的噪聲太多,并且很常求不出可信又有效的AUC值(此時(shí)便不能保證AUC傳達(dá)本節(jié)開頭所述之意義),使得AUC在模型比較時(shí)產(chǎn)生的問題比解釋的問題更多。

圖片.png

分析軟件

所有常用于統(tǒng)計(jì)分析的軟件(例:SPSS、SAS、SYSTAT、S-Plus、ROCKIT、RscorePlus)都有依據(jù)不同閾值自動計(jì)算真陽性和偽陽性比率、并依此繪制ROC曲線的功能。

離散分類器(英語:discrete,或稱“間斷分類器”),如決策樹,產(chǎn)生的是離散的數(shù)值或者一個(gè)二元標(biāo)簽。應(yīng)用到實(shí)例中,這樣的分類器最后只會在ROC空間產(chǎn)生單一的點(diǎn)。而一些其他的分類器,如樸素貝葉斯分類器,邏輯回歸或者人工神經(jīng)網(wǎng)絡(luò),產(chǎn)生的是實(shí)例屬于某一類的可能性,對于這些方法,一個(gè)閾值就決定了ROC空間中點(diǎn)的位置。舉例來說,如果可能值低于或者等于0.8這個(gè)閾值就將其認(rèn)為是陽性的類,而其他的值被認(rèn)為是陰性類。這樣就可以通過畫每一個(gè)閾值的ROC點(diǎn)來生成一個(gè)生成一條曲線。MedCalc是較好的ROC曲線分析軟件。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。
  • 序言:七十年代末,一起剝皮案震驚了整個(gè)濱河市,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌,老刑警劉巖,帶你破解...
    沈念sama閱讀 229,763評論 6 539
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異,居然都是意外死亡,警方通過查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 99,238評論 3 428
  • 文/潘曉璐 我一進(jìn)店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人,你說我怎么就攤上這事。” “怎么了?”我有些...
    開封第一講書人閱讀 177,823評論 0 383
  • 文/不壞的土叔 我叫張陵,是天一觀的道長。 經(jīng)常有香客問我,道長,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 63,604評論 1 317
  • 正文 為了忘掉前任,我火速辦了婚禮,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘。我一直安慰自己,他們只是感情好,可當(dāng)我...
    茶點(diǎn)故事閱讀 72,339評論 6 410
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著,像睡著了一般。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 55,713評論 1 328
  • 那天,我揣著相機(jī)與錄音,去河邊找鬼。 笑死,一個(gè)胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播,決...
    沈念sama閱讀 43,712評論 3 445
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 42,893評論 0 289
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎,沒想到半個(gè)月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 49,448評論 1 335
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 41,201評論 3 357
  • 正文 我和宋清朗相戀三年,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點(diǎn)故事閱讀 43,397評論 1 372
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情,我是刑警寧澤,帶...
    沈念sama閱讀 38,944評論 5 363
  • 正文 年R本政府宣布,位于F島的核電站,受9級特大地震影響,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 44,631評論 3 348
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧,春花似錦、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 35,033評論 0 28
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 36,321評論 1 293
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留,地道東北人。 一個(gè)月前我還...
    沈念sama閱讀 52,128評論 3 398
  • 正文 我出身青樓,卻偏偏與公主長得像,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個(gè)殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 48,347評論 2 377

推薦閱讀更多精彩內(nèi)容