在訊號檢測理論中，接收者操作特徵曲線，或者叫 ROC 曲線，是一種坐標圖式的分析工具，用於選擇最佳的訊號偵測模型、捨棄次佳的模型或者在同一模型中設定最佳閾值。 在做決策時，ROC 分析能不受成本／效益的影響，給出客觀中立的建議。 ROC 曲線首先是由二戰中的電子工程師和雷達工程師發明的，用來偵測戰場上的敵軍載具（飛機、船艦），也就是訊號檢測理論。之後很快就被引入了心理學來進行訊號的知覺檢測。數十年來，ROC 分析被用於醫學、無線電、生物學、犯罪心理學領域中，而且最近在機器學習（machine learning）和資料探勘（data mining）領域也得到了很好的發展。 基本概念 術語 陽性 P positive 陰性 N Negative 真陽性 TP true positive 正確的肯定。又稱：命中 hit 真陰性 TN true negative 正確的否定。又稱：正確拒絕 correct rejection 偽陽性 FP false positive 錯誤的肯定，又稱：假警報 false alarm，第一型錯誤 偽陰性 FN false negative 錯誤的否定，又稱：未命中 miss，第二型錯誤 真陽性率 TPR true positive rate 又稱：命中率 hit rate、敏感度 sensitivity TPR TP P TP TPFN 偽陽性率 FPR false positive rate 又稱：錯誤命中率，假警報率 false alarm rate 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 相關係數 MCC frac TPTN FPFNsqrt P N P N F1 評分 F1 2TPPP Source Fawcett 2006 分類模型（又稱分類器，或診斷）是將一個例項對映到一個特定類的過程。ROC 分析的是二元分類模型，也就是輸出結果只有兩種類別的模型，例如：（陽性／陰性）（有病／沒病）（垃圾郵件／非垃圾郵件）（敵軍／非敵軍）。 當訊號偵測（或變數測量）的結果是一個連續值時，類與類的邊界必須用一個閾值來界定。舉例來說，用血壓值來檢測一個人是否有高血壓，測出的血壓值是連續的實數（從 0200 都有可能），以收縮壓 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：在所有實際為陽性的樣本中，被正確地判斷為陽性之比率。（相當於靈敏度。） TPRTPTPFN FPR：在所有實際為陰性的樣本中，被錯誤地判斷為陽性之比率。 FPRFPFPTN 給定一個二元分類模型和它的閾值，就能從所有樣本的（陽性／陰性）真實值和預測值計算出一個 XFPR YTPR 座標點。 在這條線的以上的點代表了一個好的分類結果（勝過隨機分類），而在這條線以下的點代表了差的分類結果（劣於隨機分類）。 完美的預測是一個在左上角的點，在 ROC 空間座標 01 點，X0 代表著沒有偽陽性，Y1 代表著沒有偽陰性（所有的陽性都是真陽性）；也就是說，不管分類器輸出結果是陽性或陰性，都是 100 正確。一個隨機的預測會得到位於從 0 0 到 1 1 對角線（也叫無識別率線）上的一個點；如果分類器採用 拋硬幣 的設定，那麼該預測會在點 05 05 上。 讓我們來看在實際有 100 個陽性和 100 個陰性的案例時，四種預測方法（可能是四種分類器，或是同一分類器的四種閾值設定）的結果差異： A B C C styletextaligncenter TP63 FP28 91 FN37 TN72 109 100 100 200 將這 4 種結果畫在 ROC 空間裡： 點與隨機猜測線的距離，是預測力的指標：離左上角越近的點預測（診斷）準確率越高。離右下角越近的點，預測越不準。 在 A、B、C 三者當中，最好的結果是 A 方法。 B 方法的結果位於隨機猜測線（對角線）上，在例子中我們可以看到 B 的準確度（ACC，定義見前面表格）是 50。 C 雖然預測準確度最差，甚至劣於隨機分類，也就是低於 05（低於對角線）。然而，當將 C 以 05 05 為中點作一個映象後，C 的結果甚至要比 A 還要好。這個作映象的方法，簡單說，不管 C（或任何 ROC 點低於對角線的情況）預測了什麼，就做相反的結論。 ROC 曲線 thumb350px 隨著閾值調整，ROC 座標系裡的點如何移動 上述 ROC 空間裡的單點，是給定分類模型且給定閾值後得出的。但同一個二元分類模型的閾值可能設定為高或低，每種閾值的設定會得出不同的 FPR 和 TPR。 將同一模型每個閾值 的 FPR TPR 座標都畫在 ROC 空間裡，就成為特定模型的 ROC 曲線。 例如右圖，人體的血液蛋白濃度是呈正態分佈的連續變數，病人的分佈是紅色，平均值為 A gdL，健康人的分佈是藍色，平均值是 C gdL。健康檢查會測量血液樣本中的某種蛋白質濃度，達到某個值（閾值，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，所以 TPR100 當閾值設定為最低時，必得出 ROC 座標系右上角的點 1 1。 因為 TP、FP、TN、FN 都是累積次數，TN 和 FN 隨著閾值調低而減少（或持平），TP 和 FP 隨著閾值調低而增加（或持平），所以 FPR 和 TPR 皆必隨著閾值調低而增加（或持平）。 隨著閾值調低，ROC 點 往右上（或右／或上）移動，或不動；但絕不會往左下 或左／或下 移動。 曲線下面積（AUC） 在比較不同的分類模型時，可以將每個模型的 ROC 曲線都畫出來，比較曲線下面積做為模型優劣的指標。 意義 ROC 曲線下方的面積，其意義是： 因為是在 1x1 的方格裡求面積，AUC 必在 01 之間。 假設閾值以上是陽性，以下是陰性； 若隨機抽取一個陽性樣本和一個陰性樣本，分類器正確判斷陽性樣本的值高於陰性樣本之機率 AUCFawcett Tom 2006 An introduction to ROC analysis Pattern Recognition Letters 27 861874。 簡單說：AUC 值越大的分類器，正確率越高。 從 AUC 判斷分類器（預測模型）優劣的標準： AUC 1，是完美分類器，採用這個預測模型時，存在至少一個閾值能得出完美預測。絕大多數預測的場合，不存在完美分類器。 05 AUC 1，優於隨機猜測。這個分類器（模型）妥善設定閾值的話，能有預測價值。 AUC 05，跟隨機猜測一樣（例：丟銅板），模型沒有預測價值。 AUC 05，比隨機猜測還差；但只要總是反預測而行，就優於隨機猜測。 計算 AUC 的計算有兩種方式，都是以逼近法求近似值。 梯形法 梯形法：簡單地將每個相鄰的點以直線連線，計算連線下方的總面積。因為每一線段下方都是一個梯形，所以叫梯形法。 優點：簡單，所以常用。 缺點：傾向於低估 AUC。 ROC AUCH 法 潛在問題 AUC of ROC 是機器學習的社群最常使用來比較不同模型優劣的方法 。然而近來這個做法開始受到質疑，因為有些機器學習的研究指出，AUC 的雜訊太多，並且很常求不出可信又有效的 AUC 值（此時便不能保證 AUC 傳達本節開頭所述之意義），使得 AUC 在模型比較時產生的問題比解釋的問題更多 Hanczar Blaise Hua Jianping Sima Chao Weinstein John Bittner Michael and Dougherty Edward R 2010 Smallsample precision of ROCrelated estimates Bioinformatics 26 6 822830Lobo Jorge M JiménezValverde Alberto and Real Raimundo 2008 AUC a misleading measure of the performance of predictive distribution models Global Ecology and Biogeography 17 145151Hand David J 2009 Measuring classifier performance A coherent alternative to the area under the ROC curve Machine Learning 77 103123 。 分析軟體 所有常用於統計分析的軟體（例：SPSS、SAS、SYSTAT、SPlus、ROCKIT、RscorePlus）都有依據不同閾值自動計算真陽性和偽陽性比率、並依此繪製 ROC 曲線的功能。 離散分類器（，或稱「間斷分類器」），如決策樹，產生的是離散的數值或者一個二元標籤。應用到例項中，這樣的分類器最後只會在 ROC 空間產生單一的點。而一些其他的分類器，如樸素貝葉斯分類器，邏輯斯諦迴歸或者人工神經網路，產生的是例項屬於某一類的可能性，對於這些方法，一個閾值就決定了 ROC 空間中點的位置。舉例來說，如果可能值低於或者等於 08 這個閾值就將其認為是陽性的類，而其他的值被認為是陰性類。這樣就可以透過畫每一個閾值的 ROC 點來生成一個生成一條曲線。MedCalc 是較好的 ROC 曲線分析軟體。 參考文獻 引用 來源 Zou KH OMalley AJ Mauri L 2007 Receiveroperating characteristic analysis for evaluating diagnostic tests and predictive models Circulation 6115 56547 Lasko TA JG Bhagwat KH Zou and OhnoMachado L 2005 The use of receiver operating characteristic curves in biomedical informatics Journal of Biomedical Informatics 38 5404415 Balakrishnan N 1991 Handbook of the Logistic Distribution Marcel Dekker Inc ISBN 9780824785871 Gonen M 2007 Analyzing Receiver Operating Characteristic Curves Using SAS SAS Press ISBN 9781599942981 Green WH 2003 Econometric Analysis fifth edition Prentice Hall ISBN 0130661899 Heagerty PJ Lumley T Pepe M S 2000 Timedependent ROC Curves for Censored Survival Data and a Diagnostic Marker Biometrics 56337344 Hosmer DW and Lemeshow S 2000 Applied Logistic Regression 2nd ed New York Chichester Wiley ISBN 0471356328 Brown CD and Davis HT 2006 Receiver operating characteristic curves and related decision measures a tutorial Chemometrics and Intelligent Laboratory Systems 802438 Mason SJ and Graham NE 2002 Areas beneath the relative operating characteristics ROC and relative operating levels ROL curves Statistical significance and interpretation QJR Meteorol Soc 12821452166 Pepe MS 2003 The statistical evaluation of medical tests for classification and prediction Oxford ISBN 0198565828 Carsten S Wesseling S Schink T and Jung K 2003 Comparison of Eight Computer Programs for ReceiverOperating Characteristic Analysis Clinical Chemistry 49433439 Swets JA 1995 Signal detection theory and ROC analysis in psychology and diagnostics Collected papers Lawrence Erlbaum Associates Swets JA Dawes R and Monahan J 2000 Better Decisions through Science Scientific American October pages 8287 外部連結 An introduction to ROC analysis A more thorough treatment of ROC curves and signal detection theory Tom Fawcetts ROC Convex Hull tutorial program and papers Peter Flachs tutorial on ROC analysis in machine learning The magnificent ROC An explanation and interactive demonstration of the connection of ROCs to archetypal binormal test result plots Category 檢測論 Category 資料探勘 Category 社會經濟學 Category 生物統計學 Category 統計分類