不均衡なデータセットのROC対精度-再現率曲線


17

私はこの議論を読み終えました。彼らは、PR AUCが不均衡なデータセットのROC AUCよりも優れていると主張しています。

たとえば、テストデータセットには10​​個のサンプルがあります。9個のサンプルが陽性で、1個が陰性です。私たちはすべてを肯定的に予測する恐ろしいモデルを持っています。したがって、TP = 9、FP = 1、TN = 0、FN = 0というメトリックが得られます。

次に、精度= 0.9、再現率= 1.0。精度と再現率はどちらも非常に高いですが、分類子が不十分です。

一方、TPR = TP /(TP + FN)= 1.0、FPR = FP /(FP + TN)= 1.0。FPRは非常に高いため、これは適切な分類器ではないことがわかります。

明らかに、ROCは不均衡なデータセットのPRよりも優れています。誰かがPRの方が良い理由を説明できますか?


1
PrecisionとRecallはどちらもFalse Negativeを無視します。PRトレードオフ(曲線またはFスコア)を使用する通常の正当化は、TPとFPに比べて、否定と偽否定の数が膨大であることです。したがって、TNR-> 1とFPR-> 0(同じ| Negs |の分母で1に合計)。したがって、この場合のPRはTPとFPのトレードオフを反映(拡大または拡大)しますが、これは意味がなく、関連するのはYouden Jインデックスの増加です(Informedness = TPR-FPR = TPR + TNR-1 = Sensitivity + Specificity-1)は、三角形の単一操作点曲線とROC確率線の間の2倍の領域に対応します。
デビッドMWパワーズ

2
@DavidMWPowers、それを公式の回答に変えてみませんか?それは私にとって非常に有益な応答のようです。
ガン-モニカの復活

2
精度、再現率、感度、および特異度は、不適切な不連続な任意の情報損失精度スコアであり、使用しないでください。それらは不均衡の下で特に問題となります。 -index(一致確率; AUROC)は、極端なバランスの下で罰金を動作します。より良い:対数尤度またはブライアスコアに関連する適切な精度スコアリングルールを使用します。c
フランクハレル2018年

回答:


8

まず、Kaggleの投稿に対する主張は偽物です。彼らが参照している論文「Precision-RecallとROC Curvesの関係」は、PR AUCがROC AUC より優れているとは決して主張していません。彼らは単にその価値を判断することなく、それらの特性を比較します。

一部の非常に不均衡なアプリケーションでは、ROC曲線が誤解を招くことがあります。ROC曲線は、マイノリティクラスのほとんどまたはすべてを誤って分類している間も、見た目はかなり良い(つまり、ランダムよりも良い)場合があります。

対照的に、PRカーブはまれなイベントの検出用に特別に調整されており、これらのシナリオでは非常に役立ちます。彼らは、少数派クラスのほとんどまたはすべてを誤って分類している場合、分類子のパフォーマンスが低いことを示します。しかし、それらは、よりバランスのとれたケース、またはネガティブがまれであるケースにはうまく対応しません。

さらに、これらはポジティブイベントのベースライン確率に敏感であるため、一般化が不十分で、作成された特定のデータセット、またはまったく同じバランスのデータセットにのみ適用されます。これは、異なる研究からのPR曲線を比較することは一般に困難であり、それらの有用性を制限することを意味します。

いつものように、利用可能なツールを理解し、適切なアプリケーションに適したツールを選択することが重要です。 ここで、CV に関する質問ROC対精度と再現率の曲線を読むことをお勧めします。


3

あなたの例は間違いなく正しいです。

ただし、Kaggleの競争/実生活のアプリケーションのコンテキストでは、歪んだデータセットは通常、負のサンプルよりも正のサンプルがはるかに少ないデータセットを意味します。この場合のみ、PR AUCはROC AUCよりも「意味のある」ものです。

TP = 9、FN = 1、TN = 900、FP = 90の検出器を考えてみます。10の陽性サンプルと990の陰性サンプルがあります。TPR = 0.9、FPR = 0.1は良好なROCスコアを示しますが、Precision = 0.1は不良なPRスコアを示します。


0

途中です。

通常、不均衡なモデルを実行している場合は、すべてのクラスのPRを確認します。

あなたの例では、はい、あなたの陽性のクラスはP = 0.9とR = 1.0を持っています。しかし、あなたが見なければならないのは、すべてのクラスです。したがって、ネガティブクラスの場合、P = 0およびR = 0です。通常、PRスコアを個別に見るだけではありません。クラス1とクラス0の両方のPRスコアの調和平均であるF1スコア(問題に応じてF1マクロまたはF1マイクロ)を確認します。クラス1 PRスコアは非常に優れていますが、クラス0のPRスコア、F1スコアはTERRIBLEになります。これは、シナリオの正しい結論です。

TL、DR:すべてのクラスのPRスコアを確認し、それらをF1スコアなどのメトリックと組み合わせて、モデルのパフォーマンスに関する現実的な結論を導きます。シナリオのF1スコアはTERRIBLEになります。これは、シナリオの正しい結論です。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.