私は曲線下面積(AUC)を調べ始めていましたが、その有用性について少し混乱しています。最初に説明したとき、AUCはパフォーマンスの優れた尺度であるように見えましたが、私の研究では、高標準精度測定と低AUCで「ラッキー」モデルをキャッチするのに最適であるという点で、その利点はほとんど限界に達していないということがわかりました。
したがって、モデルの検証にAUCに依存することを避けるべきですか、それとも組み合わせが最善でしょうか?ご助力いただきありがとうございます。
私は曲線下面積(AUC)を調べ始めていましたが、その有用性について少し混乱しています。最初に説明したとき、AUCはパフォーマンスの優れた尺度であるように見えましたが、私の研究では、高標準精度測定と低AUCで「ラッキー」モデルをキャッチするのに最適であるという点で、その利点はほとんど限界に達していないということがわかりました。
したがって、モデルの検証にAUCに依存することを避けるべきですか、それとも組み合わせが最善でしょうか?ご助力いただきありがとうございます。
回答:
本当に素晴らしい質問であり、ほとんどの人は直感的なレベルで本当に理解していないことがわかります。AUC
実際、多くの異なる理由から、バイナリ分類の精度よりもしばしば好まれます。ただし、最初に、正確に何であるかについて話しましょうAUC
。正直なところ、最も広く使用されている有効性指標の1つであるため、正確にどのようにAUC
機能するかを理解するのは驚くほど鈍いです。
AUC
は、Area Under the Curve
あなたが尋ねる曲線を表します まあ、それはROC
曲線になります。ROC
は、Receiver Operating Characteristicの略で、実際には少し直感的ではありません。暗黙の目標はAUC
、サンプル分布が非常に偏っており、単一のクラスに過剰適合させたくない状況に対処することです。
優れた例はスパム検出です。一般的に、スパムデータセットは、ハムまたは非スパムに強く偏っています。データセットが90%のハムである場合、すべての電子メールがハムであると言うだけで、かなり良い精度を得ることができます。これは明らかに、理想的でない分類子を示すものです。私たちにとってもう少し便利ないくつかのメトリック、具体的には真の陽性率(TPR
)と偽陽性率(FPR
)から始めましょう。
このグラフでTPR
は、具体的には、すべてのポジティブに対する真のポジティブFPR
の比率であり、すべてのネガに対する偽陽性の比率です。(これはバイナリ分類専用です。)このようなグラフでは、すべて0またはすべて1の予測がそれぞれ(0,0)
およびのポイントになることを理解するのは非常に簡単(1,1)
です。これらの線に線を引くと、次のようになります。
これは基本的には対角線のように見えますが(そうです)、いくつかの簡単なジオメトリによってAUC
、そのようなモデルのは0.5
(高さと底が両方とも1)になることがわかります。同様に、0と1のランダムな品揃え、たとえば90%の1を予測すると、ポイントを取得できますが(0.9, 0.9)
、これは再びその対角線に沿って落ちます。
ここからが興味深い部分です。0と1だけを予測していなかったらどうなりますか?代わりに、理論的には、カットオフを設定し、それより上ではすべての結果が1で、それより下ではすべての結果が0であると言いたい場合はどうでしょう。これは、極端な場合、すべて0とすべて1(それぞれ0と1のカットオフで)がありますが、1x1
を含むグラフ内に含まれる一連の中間状態もありますROC
。実際には、次のようなものが得られます。
したがって、基本的に、AUC
過剰な正確性を行ったときに実際に得られるのは、代表的なモデルを選ぶ人を強く思いとどまらせるものですが、差別的ではありません。ランダムチャンスを大幅に上回っていますが、精度は保証されていません。
AUCと精度はかなり異なります。AUCは、内部的に決定しきい値の概念を持つバイナリ分類器に適用されます。たとえば、ロジスティック回帰は、ロジスティック関数がしきい値(通常は既定で0.5)よりも大きいか小さいかによって正/負を返します。しきい値を選択すると、分類子があります。いずれかを選択する必要があります。
しきい値の指定された選択に対して、データセット全体における真の陽性と陰性の割合である精度を計算できます。
AUCは、真の陽性率(リコール)と偽陽性率のトレードオフを測定するため、その意味ですでに他の何かを測定しています。さらに重要なことに、AUCはしきい値の関数ではありません。しきい値はすべての可能な値で変化するため、分類子の評価です。ある意味では、より広範なメトリックであり、分類子が生成し、しきい値と比較する内部値の品質をテストします。特定のしきい値の選択の品質をテストするものではありません。
AUCの解釈は異なります。つまり、例の分類子の内部値に従って、ランダムに選択された正の例がランダムに選択された負の例よりも上位にランクされる確率でもあります。
例のランキングのみを生成するアルゴリズムを使用している場合でも、AUCは計算可能です。AUCは、本当にブラックボックス分類器のみを持ち、内部しきい値を持つ分類器がない場合、計算できません。これらは通常、2つのうちどちらが手近な問題に利用できるかを決定します。
AUCは、より包括的な状況ではありますが、より少ない状況では適用可能です。正確さよりも厳密に優れているわけではありません。違います。それは、真の陽性、偽陰性などをもっと気にするかどうかにもある程度依存します。
Fメジャーは、分類器とそのしきい値設定の関数であるという意味で、精度に似ています。ただし、精度とリコール(真陽性率)を測定しますが、これは上記のいずれとも同じではありません。
パフォーマンス測定値の選択方法を参照したいと思います。その前に、正確さとAUCの特定の質問に言及します。
前に回答したように、過半数の実行を分類子として使用する不均衡なデータセットでは、誤解を招く測定値となる高精度につながります。AUCは、信頼できるしきい値を超えて、良い面と悪い面を集計します。良いことには、すべての信頼レベルに対して重みの結果を取得します。悪いのは、通常、実際に使用する信頼レベルのみに関心があり、残りは無関係であることです。
ただし、モデルに適切なパフォーマンス測定値を選択することについて説明したいと思います。モデルを目標別に比較する必要があります。モデルの目標は、機械学習や統計の問題ではなく、ビジネスドメインとそのニーズの問題です。
金を掘っている場合(偽陽性のコストが高すぎず、真陽性から大きな利益を得るシナリオ)、リコールは良い尺度です。
人々に複雑な医療処置を実施するかどうかを決定しようとしている場合(偽陽性のコストが高い、できれば偽陰性のコストが低い)、精度が使用すべき尺度です。
使用できる手段はたくさんあります。また、さまざまな方法でそれらを組み合わせることができます。
ただし、普遍的な「最良の」尺度はありません。ニーズに最適なモデルがあり、それを最大化すると利益が最大化されます。