回答:
他の回答のほとんどは、不均衡なクラスの例に焦点を当てています。はい、これは重要です。ただし、バランスの取れたクラスであっても正確性には問題があると私は主張します。
フランク・ハレルは自身のブログにこのことについて書かれています:予測対分類し、分類精度及びその他の不連続不適切な精度スコアリングルールによる被害。
基本的に、彼の主張は、新しいサンプルの各クラスの確率を出力すると、運動の統計的要素が終了するということです。これらの予測確率を0-1分類にマッピングします。これを超えるしきい値を選択して、新しい観測を1対0として分類することは統計の一部ではなくなります。これは、決定コンポーネントの一部です。そして、ここでは、モデルの確率的出力が必要ですが、次のような考慮事項も必要です。
決定の結果に応じて、異なるしきい値を使用して決定を下します。アクションが侵襲的手術である場合、アクションが2つのアスピリンを推奨する場合よりも、患者が何かに苦しんでいると分類する確率がはるかに高くなります。または、2つのクラス(病気と健康)しかありませんが、3つの異なる決定を行うこともできます。 。
予測された確率を評価するための正しい方法でない、しきい値とそれらを比較するためにそれらをマッピングする閾値に基づいて、次いで形質評価分類。代わりに、適切なスコアリングルールを使用する必要があります。これらは、予測確率と対応する観測結果を損失値にマッピングする損失関数であり、真の確率によって期待値が最小化されます。考え方は、スコアリングルールの期待値の推定値として、複数の(最良:多くの)観察された結果と対応する予測クラスメンバーシップ確率で評価されたスコアリングルールの平均を取ることです。(0 、1 )(0 、1 )(P 、1 - P )
ここでの「適切な」には正確に定義された意味があることに注意してください- 不適切なスコアリングルール、適切なスコアリングルール、そして最終的に厳密に適切なスコアリングルールがあります。スコアリングルール自体は、予測密度と結果の損失関数です。適切なスコアリングルールは、予測密度が真の密度である場合に予想される最小化されたスコアリングルールです。厳密に適切なスコアリングルールは、予測密度が真の密度である場合にのみ予想される最小化されるスコアリングルールです。
フランク・ハレルノート、精度が不適切なスコアリング・ルールです。(より正確には、精度はスコアリングルールでさえありません:バイナリ分類設定で精度が不適切なスコアリングルールであるという私の答えを参照してください?)確率不公平なコイン。すべてを最初のクラスとして分類し、結果が2番目のクラスになる可能性がある40%の確率を完全に無視すると、精度が最大になります。(ここでは、バランスの取れたクラスでも精度に問題があることがわかります。)適切なスコアリングルールは、予測を優先します。(0.6 、0.4 )、 (1 、0 ) 1つ期待しています。特に、しきい値の精度は不連続です。しきい値を少しだけ移動すると、1つ(または複数)の予測がクラスを変更し、全体の精度を離散量で変更する場合があります。これはほとんど意味がありません。
詳細については、上記にリンクされているフランクの2つのブログ投稿と、フランクハレルの回帰モデリング戦略の第10章を参照してください。
(これは私の以前の回答から恥ずかしがり屋に書かれています。)
編集。結果の尺度として精度を使用する場合の例に対する私の答えは、誤った結論につながることを願っています。
精度を使用する場合、偽陽性と偽陰性に等しいコストを割り当てます。そのデータセットのバランスが取れていない場合(一方のクラスには99%のインスタンスがあり、もう一方のクラスには1%しかないなど)、コストを削減する優れた方法があります。すべてのインスタンスが過半数クラスに属していることを予測し、99%の精度を得て、早く帰宅します。
問題は、すべてのエラーに割り当てる実際のコストが等しくないときに始まります。まれではあるが致命的な病気に対処する場合、病気の人の病気の診断に失敗するコストは、健康な人をより多くの検査に送るコストよりもはるかに高くなります。
一般的に、一般的な最善の手段はありません。最適な尺度は、ニーズから導き出されます。ある意味では、それは機械学習の質問ではなく、ビジネスの質問です。2人が同じデータセットを使用しますが、目標が異なるため異なるメトリックを選択するのが一般的です。
精度は優れた指標です。実際、ほとんどのメトリックは優れており、多くのメトリックを評価するのが好きです。ただし、ある時点で、モデルAとモデルBのどちらを使用するかを決定する必要があります。ニーズに最も適した単一のメトリックを使用する必要があります。
追加のクレジットについては、分析の前にこのメトリックを選択してください。そうすれば、決定を行うときに気が散ることはありません。
標準精度は、行われた分類の数に対する正しい分類の比率として定義されます。
したがって、すべてのクラスの全体的な尺度であり、すぐにわかるように、実際の有用なテストとは別にオラクルに伝えるのは良い尺度ではありません。オラクルは、各サンプルのランダムな推測を返す分類関数です。同様に、分類関数の分類パフォーマンスを評価できるようにします。クラスごとに同じ量のサンプルがある場合、精度\ textit {can}は有用な尺度になりますが、サンプルの不均衡なセットがある場合、精度はまったく役に立ちません。さらに、テストの精度は高くなりますが、実際には、精度の低いテストよりもパフォーマンスが低下します。
医療検査では、感度は、病気にかかっていると正しく特定された人々と実際に病気にかかっている人々の量の比率として定義されます。特異性は、正しく健康であると特定された人々と実際に健康な人々の量との比率として定義されます。実際に病気にかかっている人の量は、真の陽性検査結果の量に偽陰性検査結果の量を加えたものです。実際に健康な人の量は、真の陰性検査結果の量に偽陽性検査結果の量を加えたものです。
。つまり、クラスが2つしかない場合、クラスごとに感度と特異性は必要ありません。
クラスごとの感度と特異性は、クラスが2つしかない場合は役に立ちませんが、複数のクラスに拡張できます。感度と特異性は次のように定義されます:
。要約すると次のとおりです。
データセット内の不均衡なクラス
簡単に言うと、あるクラスの99%(りんごなど)と別のクラスの1%がデータセット(バナナなど)にあると想像してください。私のスーパーデュパーアルゴリズムは、このデータセットに対して驚くべき99%の精度を実現しています。
return "it's an apple"
彼は99%の確率で正しいため、99%の精度が得られます。アルゴリズムを販売できますか?
解決策:絶対的な尺度(精度)ではなく、各クラスに相対的な尺度(ROC AUCのようなものがたくさんあります)を使用しないでください
DaLの答えはまさにこれです。卵を売るという非常に簡単な例で説明します。
あなたは卵屋を所有しており、販売する各卵は
「卵を嗅ぐ」、「オムレツレシピ付きの本を保持する」などの機能を使用して顧客の行動を分析するウェブカメラを接続し、「購入したい商品」に分類します。
分類子が間違いを犯さなければ、期待できる最大の収入を得ることができます。完璧ではない場合:
その場合、分類子の精度は、最大収益にどれだけ近いかになります。それは完璧な尺度です。
しかし今、割引が
たとえば、分類子がデータベース内の関連ドキュメントの検索に関するものである場合、関連ドキュメントの検索と「無関係」ドキュメントの読み取り時間の「どれだけ」の無駄を比較できます。
として精度を見ることができますは分類これは、モデルを比較するための最初に魅力的なメトリックであり、詳細な調査では不十分です。
どちらの場合も、過剰適合は大きな問題になり得ます。高場合と同様にが、信号ではなくノイズをモデル化していることを意味するように、高い精度は、モデルがテストデータセットに厳密に適用されており、一般的な適用性がないという赤旗である可能性があります。これは、分類カテゴリのバランスが非常に悪い場合に特に問題になります。最も正確なモデルは、すべてのデータを1つのカテゴリに分類する(最も頻繁なカテゴリの割合に等しい精度で)単純なモデルかもしれませんが、カテゴリの異なる真の分布でデータセットを分類する必要がある場合、この精度は劇的に低下します。
他の人が指摘したように、精度に関する別の問題は、故障の価格に対する暗黙の無関心、つまり、すべての誤分類が等しいという仮定です。実際にはそうではなく、誤った分類を取得するコストは対象に大きく依存するため、精度を最大化するよりも特定の種類の誤りを最小限に抑えることをお勧めします。