ROCとAUCについて
下記を読んだ。メモ。
- 偽陽性率 : 本当は負例だけど、間違って正って予測しちゃったものの、負例データに対する割合
- 真陽性率 : 本当は正例で、正しく正例と予測したものの、正例データに対する割合
感覚的には
- 偽陽性率 : 実はガンの人の中で、「お前大丈夫やでw」と診断された人の割合
- 真陽性率 : 実はガンではない人の中で、「お前大丈夫やでw」と診断された人の割合
みたいな(わかりにくい)
What's the ROC curve?
偽陽性率を横軸、真陽性率を縦軸においてプロットしたもの
- 2値分類問題で、なんかのスコアを出して、その閾値より上か?下か?でわけることを考える
- んで、その閾値をminからmaxまで変えていくと色々な(偽陽性率, 偽陰性率)のペアができます
- これをプロットしたもの
これっていうのは、しきい値を大きい値から下げていくと、偽陽性も真陽性も大きくなる = なんでもかんでも正と判定することになるので、大丈夫な人の中で「お前ガンじゃないでw」って言われる人の確率も増えるんだけど、本当はガンの人にも「お前ガンじゃないでw」って言われる人の確率も増えてしまう。
だから大事なのは
- 間違った判定を小さくする(偽陽性率が小さい)
- 本当に大丈夫な人を大丈夫と判定する(真陽性率が高い)
モデル
ってことは、ROC曲線がぐいっと左上に曲がってるモデルの方がよい
Why? : 偽陽性率が小さいのに真陽性率が高くなってるから
ぐいっと曲がってるってどう判断するねん…… : AUC
- AUCはROC曲線とx軸とy軸で囲まれた右下部分の面積の値になる
- ランダムに選んだときは0.5になるので、それより大きいとアドって感じ 1に近いほどよい