ROC 曲線と ROC-AUC#
Note
ROC 曲線は2値分類、多値分類の場合にのみ求めることができる。
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 |