前提知識
2値分類問題
2値分類とは、インプットデータを2つのクラスに分ける問題のことです。例えば、ある顧客の行動や属性データをもとに、ロイヤルカスタマーになり得るか、そうでないかを判別する問題などがあります。
真陽性率 (TPR) と偽陽性率 (FPR)
分類問題の評価指標に真陽性率(TPR)と偽陽性率(FPR)というものがあります。
先ほどの例に戻って考えてみましょう。機械学習モデルがロイヤルカスタマーと判別したものを「陽性」、そうでないものを「陰性」とします。
この場合、陽性のうち実際にロイヤルカスタマーであった割合を真陽性率、ロイヤルカスタマーではないのにもかかわらず、ロイヤルカスタマーと判断してしまった割合を偽陽性率と言います。
ROC曲線とAUC
ROC曲線とは
ROC曲線とは、機械学習モデルによる分類がどれだけ正確であるかを表すグラフのことです。ROC曲線は、縦軸に真陽性率(実際に陽性のものを陽性と判断できる確率)、横軸に偽陽性率(実際には陰性のものを誤って陽性と判断してしまう確率)をとって描かれます。
具体的なプロット方法は以下の通りです。
1.まず、判断基準(しきい値)を設定します。例えば、病気の検査であれば、検査値がある数値以上で陽性と判断するなどの基準です。その判断基準を用いて、実際のデータ(病気の有無と検査値)を判断します。
2.真陽性率と偽陽性率を計算します。真陽性率は、実際に陽性のものを陽性と判断できた割合。偽陽性率は、実際には陰性のものを誤って陽性と判断した割合です。
3.計算した真陽性率と偽陽性率をグラフにプロットします。
4.判断基準(しきい値)を変えて、再び真陽性率と偽陽性率を計算し、グラフにプロットします。これを繰り返して、様々な判断基準での真陽性率と偽陽性率をグラフに描きます。
5.全てのプロット点をつないで曲線を描きます。データの数が増えるほど曲線に近づきます。
AUCとは
AUCは、ROC曲線の内側の面積の大きさを指します。面積が大きいほど精度の高いことを示しており、0.5から1までの数値を取ります。