ROC曲線,曲線下的面積(Aera Under Curve,AUC),P-R曲線
ROC曲線是Receiver Operating Characteristic Curve的簡稱,中文名為“受試者工作特徵曲線”。ROC曲線源於軍事領域,而後在醫學領域應用甚廣,“受試者工作特徵曲線”這一名稱也正是來自於醫學領域。
ROC曲線的橫座標為假陽性率(False Positive Rate,FPR);縱座標為真陽性率(True Positive Rate,TPR)。FPR和TPR的計算方法分別為:
**FPR = FP/N**
**TPR = TP/P**
上式中,P是真實的正樣本的數量,N是真實的負樣本的數量,TP是P個正樣本中被分類器預測為正樣本的個數,FP是N個負樣本中被分類器預測為正樣本的個數。
為了更直觀地說明這個問題,我們舉一個醫院診斷病人的例子。假設有10位疑似癌症患者,其中有3位很不幸確實患了癌症(P=3),另外7位不是癌症患者(N=7)。醫院對這10位疑似患者做了診斷,診斷出3位癌症患者,其中有2位確實是真正的患者(TP=2)。那麼真陽性率TPR=TP/P=2/3。對於7位非癌症患者來說,有一位很不幸被誤診為癌症患者(FP=1),那麼假陽性率
FPR=FP/N=1/7。對於“該醫院”這個分類器來說,這組分類結果就對應ROC曲線上的一個點(1/7,2/3)。
如何繪製ROC曲線?
事實上,ROC曲線是通過不斷移動分類器的“截斷點”來生成曲線上的一組關鍵點的,通過下面的例子進一步來解釋“截斷點”的概念。在二值分類問題中,模型的輸出一般都是預測樣本為正例的概率。假設測試集中有20個樣本,表2.1是模型的輸出結果。樣本按照預測概率從高到低排序。在輸出最終的正例、負例之前,我們需要指定一個閾值,預測概率大於該閾值的樣本會被判為正例,小於該閾值的樣本則會被判為負例。比如,指定閾值為0.9,那麼只有第一個樣本會被預測為正例,其他全部都是負例。上面所說的“截斷點”指的就是區分正負預測結果的閾值。
通過動態地調整截斷點,從最高的得分開始(實際上是從正無窮開始,對應著ROC曲線的零點),逐漸調整到最低得分,每一個截斷點都會對應一個FPR和TPR,在ROC圖上繪製出每個截斷點對應的位置,再連線所有點就得到最終的ROC曲線。
相關文章
- ROC曲線繪製與AUC計算
- 【機器學習】--模型評估指標之混淆矩陣,ROC曲線和AUC面積機器學習模型指標矩陣
- 小白也能看懂的 AUC 曲線詳解
- 貝塞爾曲線(Bezier curve)實現節點連線
- 11.1 第一型曲線積分
- 11.2 第二型曲線積分
- 精確率、召回率、準確率與ROC曲線
- Python擬合曲線Python
- 圓錐曲線14
- 圓錐曲線15
- three.js 曲線JS
- 貝塞爾曲線
- 【CSS】曲線陰影CSS
- 一條曲線的誕生
- rhino 的擠出曲線命令
- AUTOCAD——光順曲線命令
- Error Curves——錯誤曲線Error
- canva畫曲線圖效果
- 漫談高數曲線積分的物理意義
- Flutter 實現平滑曲線折線圖Flutter
- 機器學習-ROC曲線:技術解析與實戰應用機器學習
- 混淆矩陣、準確率、精確率/查準率、召回率/查全率、F1值、ROC曲線的AUC值矩陣
- 空間曲線和曲面方程
- opencv計算曲線長度OpenCV
- 串列埠屏開發曲線串列埠
- 如何使用Python曲線擬合Python
- 如何跨越 Kubernetes 學習曲線
- delphi 畫圖表,曲線圖
- Android動畫曲線庫AndroidEasingFunctionsAndroid動畫IdeaFunction
- canvas繪製sin正弦曲線Canvas
- Qt QPolarChart極座標圖(阿基米德線、四葉曲線、六葉花瓣、三葉花瓣、心形曲線)QT
- 【乾貨滿滿】貝塞爾曲線(Bézier curve)——什麼神仙操作
- spring的問題-能耗、學習曲線Spring
- Android 身高體重曲線的實現Android
- R資料分析:臨床預測模型中校準曲線和DCA曲線的意義與做法模型
- 高等數學:曲線曲率推導
- canvas小畫板--(1)平滑曲線Canvas
- 貝塞爾曲線基礎部分