分類: 精度、再現率、適合率、関連する指標

真陽性、偽陽性、偽陰性は、モデルの評価に役立つ指標を計算するために使用されます。最も意味のある評価指標は、特定のモデルと特定のタスク、さまざまな誤分類のコスト、データセットが平衡状態か不均衡かによって異なります。

このセクションのすべての指標は、単一の固定しきい値で計算され、しきい値が変化すると変化します。多くの場合、ユーザーはこれらの指標のいずれかを最適化するためにしきい値を調整します。

精度

精度は、正または負にかかわらず、正しい分類の割合です。数学的には次のように定義されます。

\[\text{Accuracy} = \frac{\text{correct classifications}}{\text{total classifications}} = \frac{TP+TN}{TP+TN+FP+FN}\]

迷惑メール分類の例では、精度は正しく分類されたすべてのメールの割合を測定します。

完全なモデルでは、偽陽性と偽陰性がゼロになり、精度は 1.0(100%)になります。

混同行列の 4 つの結果(TP、FP、TN、FN)がすべて組み込まれているため、両方のクラスに同数の例があるバランスの取れたデータセットでは、精度はモデル品質の粗粒度の測定値として使用できます。このため、一般的なタスクや未指定のタスクを実行する一般的なモデルや未指定のモデルでは、デフォルトの評価指標として使用されることがよくあります。

ただし、データセットが不均衡である場合や、1 種類の間違い(FN または FP)が他よりもコストが高い場合(ほとんどの実世界のアプリケーションで発生します)、他の指標のいずれかを最適化することをおすすめします。

1 つのクラスが非常にまれにしか出現しない(1% など)非常に不均衡なデータセットの場合、100% の確率で負のクラスを予測するモデルは、役に立たないにもかかわらず、精度が 99% になります。

再現率(真陽性率)

真陽性率(TPR)、つまり、陽性として正しく分類されたすべての実際の陽性の割合は、再現率とも呼ばれます。

数学的に、再現率は次のように定義されます。

\[\text{Recall (or TPR)} = \frac{\text{correctly classified actual positives}}{\text{all actual positives}} = \frac{TP}{TP+FN}\]

偽陰性とは、実際には陽性であるにもかかわらず陰性として誤って分類されたものです。そのため、分母に表示されます。迷惑メールの分類の例では、再現率は、迷惑メールとして正しく分類された迷惑メールの割合を測定します。そのため、このモデルで検出されるスパムメールの割合を示す「検出確率」という別名もあります。

仮想的な完全なモデルでは、偽陰性がゼロになるため、再現率(TPR)は 1.0 になり、検出率は 100% になります。

実際の正例の数が非常に少ない(合計で 1~2 個の例など)不均衡なデータセットでは、指標としての再現率の意味と有用性が低下します。

偽陽性率

偽陽性率(FPR)は、実際には陰性であるものの、陽性と誤って分類されたものの割合です。これは、誤検出の確率とも呼ばれます。数学的には次のように定義されます。

\[\text{FPR} = \frac{\text{incorrectly classified actual negatives}} {\text{all actual negatives}} = \frac{FP}{FP+TN}\]

偽陽性は、誤って分類された実際の陰性であるため、分母に表示されます。スパム分類の例では、FPR は正当なメールが誤ってスパムとして分類された割合、つまりモデルの誤検出率を測定します。

完全なモデルでは偽陽性がゼロになるため、FPR は 0.0 になり、誤検出率は 0% になります。

実際の負の例が非常に少ない(合計で 1~2 個の例など)不均衡なデータセットでは、FPR の意味や指標としての有用性が低下します。

適合率

適合率は、モデルのすべての正の分類のうち、実際に正であるものの割合です。数学的には次のように定義されます。

\[\text{Precision} = \frac{\text{correctly classified actual positives}} {\text{everything classified as positive}} = \frac{TP}{TP+FP}\]

迷惑メールの分類の例では、適合率は迷惑メールとして分類されたメールのうち、実際に迷惑メールだったメールの割合を測定します。

仮想的な完全なモデルでは偽陽性がゼロになるため、精度は 1.0 になります。

実際の正例の数が非常に少ない(合計で 1~2 個の例など)不均衡なデータセットでは、精度は指標としてあまり意味がなく、有用性も低くなります。

偽陽性が減少すると精度は向上し、偽陰性が減少すると再現率は向上します。ただし、前のセクションで説明したように、分類しきい値を上げると偽陽性の数は減り、偽陰性の数は増える傾向があります。しきい値を下げると、その効果は逆になります。その結果、再現率と適合率はしばしば逆の関係を示します。一方を改善すると、もう一方が悪化するのです。

ぜひお試しください。

指標の NaN の意味

0 で割った場合に NaN(数値ではない)が表示されます。これは、これらの指標のいずれでも発生する可能性があります。たとえば、TP と FP がどちらも 0 の場合、精度の式の分母に 0 が含まれるため、NaN になります。NaN は、完璧なパフォーマンスを示している場合があり、スコア 1.0 に置き換えることができますが、実質的に役に立たないモデルから取得される場合もあります。たとえば、正の予測をまったく行わないモデルでは、TP と FP が 0 になるため、精度の計算結果は NaN になります。

指標とトレードオフの選択

モデルの評価としきい値の選択時に優先する指標は、特定の問題の費用、メリット、リスクによって異なります。迷惑メールの分類の例では、多くの場合、すべての迷惑メールを検出する「再現率」や、迷惑メールのラベルが付いたメールが実際に迷惑メールであることを確認する「精度」、またはその両方のバランスを優先し、ある最小精度レベルを超えるようにします。

指標 ガイダンス
精度

バランスの取れたデータセットのモデル トレーニングの進捗状況や収束の概略的な指標として使用します。

モデルのパフォーマンスについては、他の指標と組み合わせてのみ使用してください。

不均衡なデータセットは使用しないでください。別の指標の使用を検討してください。

再現率
(真陽性率)
偽陰性の方が偽陽性よりコストが高い場合に使用します。
偽陽性率 偽陽性が偽陰性よりもコストが高い場合に使用します。
適合率 陽性の予測の精度が極めて重要な場合に使用します。

(省略可、詳細)F1 スコア

F1 スコアは適合率と再現率の調和平均(ある種の平均)です。

数学的には、次のように表されます。

\[\text{F1}=2*\frac{\text{precision * recall}}{\text{precision + recall}} = \frac{2\text{TP}}{2\text{TP + FP + FN}}\]

この指標は、適合率と再現率の重要性をバランスよく評価します。クラスの不均衡なデータセットでは、精度よりも優先されます。適合率と再現率の両方が 1.0 の完全なスコアの場合、F1 スコアも 1.0 の完全なスコアになります。より大まかに言うと、適合率と再現率の値が近い場合、F1 はその値に近い値になります。適合率と再現率が大きく異なる場合、F1 は最も悪い指標のいずれかになります。

演習:理解度をチェックする

モデルが 5 TP、6 TN、3 FP、2 FN を出力します。リコールを計算します。
0.714
再現率は \(\frac{TP}{TP+FN}=\frac{5}{7}\)として計算されます。
0.455
再現率は、すべての正しい分類ではなく、すべての実際の正例を考慮します。リコールの式は \(\frac{TP}{TP+FN}\)です。
0.625
再現率は、すべての正の分類ではなく、すべての実際の正の分類を考慮します。再現率の式は \(\frac{TP}{TP+FN}\)です。
モデルが 3 TP、4 TN、2 FP、1 FN を出力します。精度を計算します。
0.6
適合率は \(\frac{TP}{TP+FP}=\frac{3}{5}\)として計算されます。
0.75
適合率は、すべての実際の正例ではなく、すべての正の分類を考慮します。精度の式は \(\frac{TP}{TP+FP}\)です。
0.429
適合率は、すべての正しい分類ではなく、すべての正の分類を考慮します。精度の式は \(\frac{TP}{TP+FP}\)です。
危険な侵入種が存在するかどうかを昆虫トラップの写真をチェックするバイナリ分類ツールを構築します。モデルがこの種を検出すると、担当の昆虫学者(昆虫科学者)に通知されます。この虫を早期に発見することは、被害を防ぐために不可欠です。誤検出(偽陽性)は簡単に処理できます。写真が誤って分類されたことを昆虫学者が確認し、そのようにマークします。許容できる精度レベルを前提として、このモデルを最適化するにはどの指標を使用すればよいですか。
再現率
このシナリオでは、誤検出(FP)のコストは低く、偽陰性のコストは非常に高くなるため、再現率(検出確率)を最大化するのが理にかなっています。
偽陽性率(FPR)
このシナリオでは、誤検出(FP)のコストは低くなります。実際の陽性を検出できないリスクを冒して、過検知を最小限に抑えようとするのは意味がありません。
適合率
このシナリオでは、誤検出(FP)は特に有害ではないため、正の分類の正確性を高めようとするのは意味がありません。