ROC 曲線と ROC-AUC#

Note

ROC 曲線は2値分類、多値分類の場合にのみ求めることができる。

_images/3-8-10-1.png

Fig. 33 ROC 曲線の例(2値分類)#

_images/3-8-11-1.png

Fig. 34 ROC 曲線の例(多値分類)#

ROC 曲線とは、Positive と判定するための閾値を動かした時に、FPR をX軸、TPR(Recall)をY軸にプロットしたものである。閾値を動かす中でも、FPR は低い値が望ましく、TPR は高い値が望ましい。ゆえに良い状況とは「カーブが左上に直角に近くなっている状況」となる。 モデルパフォーマンスを測る1つの指標である ROC-AUC は、この ROC曲線の下部の面積の値である(上図では各曲線の area の値)。

カーブが右上に直角に近くなっていれば良いと言うことは、ROC-AUC の意味では [0.0, 1.0] の間をとる中で、1.0 に近ければ近いほど良いことを意味する。(すなわち多値分類の例のように、カーブが直角になっているものが良い)。

以下で、ROC-AUC をわかりやすく説明していく。

ROC-AUC が 1.0 に近くなるケース:#

確信度の高いサンプルで、ほぼもれなく正解となっている場合。つまり自信を持って予測したサンプルほど正解している場合。

ラベルが1である確信度

真のラベル

80

1

70

1

60

0

50

0

ROC-AUC が 0.0 に近くなるケース:#

確信度の高いサンプルで不正解で、低いサンプルで正解が多く出てしまう場合。つまり自信を持って予測したサンプルより、自信の低いサンプルの方が正解してしまっている。(その自信がまったくあてにならない!ことになるが、結果を反転させれば良い結果となるので救いようがある。)

ラベルが1である確信度

真のラベル

80

0

70

0

60

1

50

1

ROC-AUC が 0.5 に近くなるケース:#

確信度の高くても、正解/不正解がまちまちとなってしまっている場合。つまりその確信度がまったくあてにならない、ランダムに判定しているのと変わらない!

ラベルが1である確信度

真のラベル

80

1

70

0

60

1

50

0