機器學習中的度量指標:ROC曲線,AUC值,K-S曲線

機器學習中的度量指標:ROC曲線,AUC值,K-S曲線

首先,回顧一下二分類問題的一些定義:

預測 1 0
實 1 TP FN
​際 0 FP TN

上表中,四個項分別爲:TP真陽性;FN假陰性;FP假陽性;TN真陰性

注意,真假表示預測的對錯,後面的陽性和陰性表示預測結果,因此結合預測結果和預測結果的對錯,可以知道對應的實際結果是什麼。比如FN假陰性,預測爲陰性,但是預測結果爲假,所以真實答案應該是個陽性。預示對應第一行第二列。

下面介紹幾個定義:

sensitivity靈敏度,定義是TP/P = TP/(TP+FN),等價於召回率(recall)。表示真正例中有多少被召回了。

specificity特異度,定義爲TN/N = TN/(TN+FP),表示真陰性裏面有多少被檢出了。

1-sensitivity:FN/(TP+FN),說的是陽性中有多少被誤判成了陰性,也就是漏檢,或者說是Type II error

1-specificity:FP/(FP+TN),說的是陰性裏有多少被當成了陽性,也就是虛警,就是Type I error

ROC曲線的定義和AUC值

ROC(Receiver Operating Characteristic)曲線橫軸爲虛警,縱軸是召回(靈敏度)。這一點可以這樣理解:爲了儘可能多的召回,最極端的方式就是把所有的都報告成陽性,但是這樣一來,虛警就會變多。隨着虛警的變多,召回的情況也越來越好,我們希望的是,儘量在虛警很低的時候,正樣本都能儘可能全部被召回。因此,ROC下面圍成的面積越大越好,這個面積就是AUC(Area Under Curve),翻譯過來就是『曲線底下的面積』,非常簡單直接粗暴。
在這裏插入圖片描述

K-S曲線

在這裏插入圖片描述

K-S曲線實際上就是把閾值作爲橫座標,TPR和FPR,也就是召回率和虛警率,其實也就是ROC曲線的那兩個變量,同時作爲縱座標,隨着閾值的變化,召回和虛警都從0到1,這時候,兩者距離最遠的地方就是KS值。代表在某個閾值的時候,召回和虛警差距最大,也就意味着能用最少的虛警換來最多的召回,這個位置是我們需要的閾值。

其實可以想象一下,把虛警那條曲線拉直,然後讓召回隨着虛警也對應地變化,那麼得到的其實就是ROC曲線。

2019-07-31 21:17:17

用科技讓複雜的世界更簡單。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章