【あーるおーしーきょくせん】
ROC曲線 とは?
💡 「どこで線を引くか」の判断力を丸ごと可視化するグラフ
📌 このページのポイント
- 横軸に偽陽性率(FPR)、縦軸に真陽性率(TPR)をとった曲線
- しきい値を0から1まで動かしたときの性能変化を連続的に表す
- 左上の角に近いほど優秀なモデルで、対角線は「ランダムな予測」を意味する
- 複数モデルの曲線を重ねて描くことで、どのモデルが優れているか直感的に比較できる
ROC曲線って何を表しているグラフなの?
分類モデルが「本物をどれだけ見つけられるか」と「間違いをどれだけ出すか」のトレードオフを描いたグラフだよ。横軸が偽陽性率(間違えて陽性と判断する割合)、縦軸が真陽性率(正しく陽性を見つける割合)になっているんだ。
しきい値を変えるってどういうことなの?
たとえば迷惑メール判定で「確率60%以上なら迷惑メール」としていたのを「40%以上」に下げると、迷惑メールの見逃しは減るけど正常なメールを誤検知しやすくなるよね。この基準を少しずつ動かしたときの成績を全部つなげて曲線にしたのがROC曲線だよ。
グラフの見方はどうすればいいの?
左上の角にピッタリ張り付いている曲線ほど優秀なモデルだよ。「間違いゼロで全部見つけられる」のが理想だからね。逆に対角線の斜め45度の線は「コインを投げて決めた」のと同じレベル。それより下に来たら、むしろ逆に予測した方がマシということだね。
複数のモデルを比較するときはどうするの?
同じグラフに複数のROC曲線を重ねて描くんだ。より左上に膨らんでいる曲線のモデルが優秀ということになるよ。曲線の下の面積を数値化したものがAUCで、これを使えば数値一つで比較もできるんだ。
ROC曲線が使えない場面もあるの?
レーダーから生まれたっていうのがおもしろいね!
そうだね。第二次世界大戦中に「敵機の信号を見逃さず、ノイズに惑わされない」ための評価指標として作られたのが始まりなんだ。現代のAIでも本質は同じで、「見逃し」と「誤検知」のバランスをどう取るかという問題に使われているんだよ。
まとめ:ざっくりこれだけ覚えればOK!
「ROC曲線」って出てきたら「分類モデルの実力を曲線で見える化したグラフ」と思えればだいたいOK!
📖 おまけ:英語の意味
「Receiver Operating Characteristic Curve」 = 受信者動作特性曲線
💬 もとは第二次世界大戦中にレーダーの信号検出精度を評価するために開発された手法で、それが医療や機械学習に応用されたんだよ