ROC曲线- 维基百科,自由的百科全书

文章推薦指數: 80 %
投票人數:10人

在信号检测理论中,接收者操作特征曲線(receiver operating characteristic curve,或者叫ROC曲线)是一种坐標圖式的分析工具,用於(1) 选择最佳的信號偵測模型、捨棄 ... ROC曲線 維基百科,自由的百科全書 跳至導覽 跳至搜尋 3條ROC曲線 在訊號檢測理論中,接收者操作特徵曲線(receiveroperatingcharacteristiccurve,或者叫ROC曲線)是一種坐標圖式的分析工具,用於(1)選擇最佳的訊號偵測模型、捨棄次佳的模型。

(2)在同一模型中設定最佳閾值。

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

ROC曲線首先是由二戰中的電子工程師和雷達工程師發明的,用來偵測戰場上的敵軍載具(飛機、船艦),也就是訊號檢測理論。

之後很快就被引入了心理學來進行訊號的知覺檢測。

數十年來,ROC分析被用於醫學、無線電、生物學、犯罪心理學領域中,而且最近在機器學習(machinelearning)和資料探勘(datamining)領域也得到了很好的發展。

目次 1基本概念 2ROC空間 3ROC曲線 4曲線下面積(AUC) 4.1意義 4.2計算 4.2.1梯形法 4.2.2ROCAUCH法 4.3潛在問題 5分析軟體 6參考文獻 6.1參照 6.2來源 7外部連結 基本概念[編輯] 術語 陽性(P,positive) 陰性(N,Negative) 真陽性(TP,truepositive) 正確的肯定。

又稱:命中(hit) 真陰性(TN,truenegative) 正確的否定。

又稱:正確拒絕(correctrejection) 偽陽性(FP,falsepositive) 錯誤的肯定,又稱:假警報(falsealarm),型一錯誤 偽陰性(FN,falsenegative) 錯誤的否定,又稱:未命中(miss),型二錯誤 真陽性率(TPR,truepositiverate) 又稱:命中率(hitrate)、敏感度(sensitivity) TPR=TP/P=TP/(TP+FN) 偽陽性率(FPR,falsepositiverate) 又稱:錯誤命中率,假警報率(falsealarmrate) FPR=FP/N=FP/(FP+TN) 準確度(ACC,accuracy) ACC=(TP+TN)/(P+N) 即:(真陽性+真陰性)/總樣本數 真陰性率(TNR) 又稱:特異度(SPC,specificity) SPC=TN/N=TN/(FP+TN)=1-FPR 陽性預測值(PPV) PPV=TP/(TP+FP) 陰性預測值(NPV) NPV=TN/(TN+FN) 假發現率(FDR) FDR=FP/(FP+TP) Matthews相關係數(MCC),即Phi相關係數 M C C = ( T P ∗ T N − F P ∗ F N ) P N P ′ N ′ {\displaystyleMCC={\frac{(TP*TN-FP*FN)}{\sqrt{PNP'N'}}}} F1評分 F1=2TP/(P+P') Source:Fawcett(2006). 參見:第一型及型二錯誤和靈敏度和特異度 分類模型(又稱分類器,或診斷)是將一個實例對映到一個特定類的過程。

ROC分析的是二元分類模型,也就是輸出結果只有兩種類別的模型,例如:(陽性/陰性)(有病/沒病)(垃圾郵件/非垃圾郵件)(敵軍/非敵軍)。

當訊號偵測(或變數測量)的結果是一個連續值時,類與類的邊界必須用一個閾值(英語:threshold)來界定。

舉例來說,用血壓值來檢測一個人是否有高血壓,測出的血壓值是連續的實數(從0~200都有可能),以收縮壓140/舒張壓90為閾值,閾值以上便診斷為有高血壓,閾值未滿者診斷為無高血壓。

二元分類模型的個案預測有四種結局: 真陽性(TP):診斷為有,實際上也有高血壓。

偽陽性(FP):診斷為有,實際卻沒有高血壓。

真陰性(TN):診斷為沒有,實際上也沒有高血壓。

偽陰性(FN):診斷為沒有,實際卻有高血壓。

這四種結局可以畫成2×2的混淆矩陣:   真實值 總數 p n 預測輸出 p' 真陽性(TP) 偽陽性(FP) P' n' 偽陰性(FN) 真陰性(TN) N' 總數 P N ROC空間[編輯] ROC空間將偽陽性率(FPR)定義為X軸,真陽性率(TPR)定義為Y軸。

TPR:在所有實際為陽性的樣本中,被正確地判斷為陽性之比率。

T P R = T P / ( T P + F N ) {\displaystyleTPR=TP/(TP+FN)} FPR:在所有實際為陰性的樣本中,被錯誤地判斷為陽性之比率。

F P R = F P / ( F P + T N ) {\displaystyleFPR=FP/(FP+TN)} 給定一個二元分類模型和它的閾值,就能從所有樣本的(陽性/陰性)真實值和預測值計算出一個(X=FPR,Y=TPR)座標點。

從(0,0)到(1,1)的對角線將ROC空間劃分為左上/右下兩個區域,在這條線的以上的點代表了一個好的分類結果(勝過隨機分類),而在這條線以下的點代表了差的分類結果(劣於隨機分類)。

完美的預測是一個在左上角的點,在ROC空間座標(0,1)點,X=0代表著沒有偽陽性,Y=1代表著沒有偽陰性(所有的陽性都是真陽性);也就是說,不管分類器輸出結果是陽性或陰性,都是100%正確。

一個隨機的預測會得到位於從(0,0)到(1,1)對角線(也叫無辨識率線)上的一個點;最直觀的隨機預測的例子就是拋硬幣。

讓我們來看在實際有100個陽性和100個陰性的案例時,四種預測方法(可能是四種分類器,或是同一分類器的四種閾值設定)的結果差異: A B C C' TP=63 FP=28 91 FN=37 TN=72 109 100 100 200 TP=77 FP=77 154 FN=23 TN=23 46 100 100 200 TP=24 FP=88 112 FN=76 TN=12 88 100 100 200 TP=76 FP=12 88 FN=24 TN=88 112 100 100 200 TPR=0.63 TPR=0.77 TPR=0.24 TPR=0.76 FPR=0.28 FPR=0.77 FPR=0.88 FPR=0.12 ACC=0.675 ACC=0.500 ACC=0.180 ACC=0.820 ROC空間的4個例子 將這4種結果畫在ROC空間裡: 點與隨機猜測線的距離,是預測力的指標:離左上角越近的點預測(診斷)準確率越高。

離右下角越近的點,預測越不準。

在A、B、C三者當中,最好的結果是A方法。

B方法的結果位於隨機猜測線(對角線)上,在例子中我們可以看到B的準確度(ACC,定義見前面表格)是50%。

C雖然預測準確度最差,甚至劣於隨機分類,也就是低於0.5(低於對角線)。

然而,當將C以(0.5,0.5)為中點作一個鏡像後,C'的結果甚至要比A還要好。

這個作鏡像的方法,簡單說,不管C(或任何ROC點低於對角線的情況)預測了什麼,就做相反的結論。

ROC曲線[編輯] 隨著閾值調整,ROC座標系裡的點如何移動 上述ROC空間裡的單點,是給定分類模型且給定閾值後得出的。

但同一個二元分類模型的閾值可能設定為高或低,每種閾值的設定會得出不同的FPR和TPR。

將同一模型每個閾值的(FPR,TPR)座標都畫在ROC空間裡,就成為特定模型的ROC曲線。

例如右圖,人體的血液蛋白濃度是呈常態分布的連續變數,病人的分布是紅色,平均值為Ag/dL,健康人的分布是藍色,平均值是Cg/dL。

健康檢查會測量血液樣本中的某種蛋白質濃度,達到某個值(閾值,threshold)以上診斷為有疾病徵兆。

研究者可以調整閾值的高低(將左上圖的B垂直線往左或右移動),便會得出不同的偽陽性率與真陽性率,總之即得出不同的預測準確率。

1.由於每個不同的分類器(診斷工具、偵測工具)有各自的測量標準和測量值的單位(標示為:「健康人-病人分布圖」的橫軸),所以不同分類器的「健康人-病人分布圖」都長得不一樣。

2.比較不同分類器時,ROC曲線的實際形狀,便視兩個實際分布的重疊範圍而定,沒有規律可循。

3.但在同一個分類器之內,閾值的不同設定對ROC曲線的影響,仍有一些規律可循: 當閾值設定為最高時,亦即所有樣本都被預測為陰性,沒有樣本被預測為陽性,此時在偽陽性率FPR=FP/(FP+TN)算式中的FP=0,所以FPR=0%。

同時在真陽性率(TPR)算式中,TPR=TP/(TP+FN)算式中的TP=0,所以TPR=0% →當閾值設定為最高時,必得出ROC座標系左下角的點(0,0)。

當閾值設定為最低時,亦即所有樣本都被預測為陽性,沒有樣本被預測為陰性,此時在偽陽性率FPR=FP/(FP+TN)算式中的TN=0,所以FPR=100%。

同時在真陽性率TPR=TP/(TP+FN)算式中的FN=0,所以TPR=100% →當閾值設定為最低時,必得出ROC座標系右上角的點(1,1)。

因為TP、FP、TN、FN都是累積次數,TN和FN隨著閾值調低而減少(或持平),TP和FP隨著閾值調低而增加(或持平),所以FPR和TPR皆必隨著閾值調低而增加(或持平)。

→隨著閾值調低,ROC點往右上(或右/或上)移動,或不動;但絕不會往左下(或左/或下)移動。

曲線下面積(AUC)[編輯] 例示三種AUC值(曲線下面積) 在比較不同的分類模型時,可以將每個模型的ROC曲線都畫出來,比較曲線下面積做為模型優劣的指標。

意義[編輯] ROC曲線下方的面積(英語:AreaundertheCurveofROC(AUCROC)),其意義是: 因為是在1x1的方格裡求面積,AUC必在0~1之間。

假設閾值以上是陽性,以下是陰性; 若隨機抽取一個陽性樣本和一個陰性樣本,分類器正確判斷陽性樣本的值高於陰性樣本之機率 = A U C {\displaystyle=AUC} [1]。

簡單說:AUC值越大的分類器,正確率越高。

從AUC判斷分類器(預測模型)優劣的標準: AUC=1,是完美分類器,採用這個預測模型時,存在至少一個閾值能得出完美預測。

絕大多數預測的場合,不存在完美分類器。

0.5



請為這篇文章評分?