混同行列(Confusion Matrix)とは、データセットの予測値と実際の値を比較することで、機械学習における分類モデルの性能を評価する表です。予測結果を真陽性(TP)・偽陽性(FP)・偽陰性(FN)・真陰性(TN)に分類して表示することで、正解率・適合率・再現率・F1スコアなどのモデル評価メトリクスを計算するのに役立ちます。
混同行列(または誤差行列)は、分類器アルゴリズムの結果を視覚化する方法です。より具体的に言うと、予測されるクラス・インスタンスの数に対して特定のクラスの地上検証データ・インスタンスの数を、分類する表です。混同行列は、分類モデルの性能を測定するいくつかの評価メトリクスの1つです。混同行列からは、適合率(Precision)や再現率(Recall)をはじめとする、他の多くのモデルの性能メトリクスを計算するために使用できます。
混同行列は、Naïve Bayes、ロジスティック回帰モデル、決定木などのあらゆる分類アルゴリズムで使用できます。データサイエンスや機械学習モデルに幅広く適用できるため、多くのパッケージやライブラリには、scikit-learnのPython用sklearn.metricsモジュールなど、混同行列を作成するための関数があらかじめロードされています。
混同行列では、列は指定されたクラスの予測値を表し、行は指定されたクラスの実際の値(つまり、正解データ)を表します。または、その逆の場合もあります。研究ではその逆も出ていることに注意してください。このグリッド構造は、すべてのクラスの正しい予測と誤った予測の数を並べて表示することで、モデルの分類の正確さを視覚化するための便利なツールです。
2項分類器の標準的な混同行列テンプレートは次のようになります。
左上のボックスには、真陽性(TP)の数、つまり陽性クラスの正しい予測数が表示されます。その下にあるボックスは偽検知(FP)、つまり陰性クラスのインスタンスが陽性のケースとして誤って識別されたものです。これらは、統計学では第一種の過誤(Type I errors)とも呼ばれます。右上のボックスは偽陰性(FN)の数、つまり誤って陰性と予測された実際の陽性のインスタンスの数です。最後に、右下のボックスには、真陰性(TN)の数が表示されます。これは、正確に陰性と予測された実際の陰性クラス・インスタンスです。これらの値を合計すると、モデルの予測の総数が得られます。1
もちろん、このテンプレートは初歩的な2項分類問題用です。混同行列は、マルチクラス分類問題の結果も視覚化できます。例えば、海洋生物の保護プログラムの一環として種分類モデルを開発しているとします。このモデルは魚種を予測します。このようなマルチクラス分類問題の混同行列は次のようになります。
対角線上のボックスはすべて真陽性予測値を示します。他のボックスには、どのクラスに焦点を当てるかに応じて、偽陽性、偽陰性、真陰性の数量が表示されます。
分類器の予測結果をすぐに視覚化できるため、混同行列は他のモデル評価メトリクスを計算するのに役立ちます。マトリックスから値を簡単に取得し、モデルの性能を測定するためのさまざまな方程式に当てはめることができます。
モデルの正解率(Accuracy)は、それだけでは分類器の性能を十分に表せる評価指標ではありません。例えば、100個のインスタンスのデータセットで分類器を実行するとします。このモデルの混同行列では、偽陰性が1つだけ表示され、偽陽性はまったく表示されません。このモデルは他のすべてのデータ・インスタンスを正しく分類します。したがって、モデルの正解率は99%となります。表面上は望ましいことですが、正解率が高いということ自体が優れたモデルの性能を示すものではありません。例えばこのモデルが感染力の強い病気を分類することを目的としているとします。この1%の誤分類は、大きなリスクをもたらします。したがって、他の評価メトリクスを使用して、分類アルゴリズムの性能をより正確に把握できます。
適合率(Precision)とは、陽性と予測したもののうち、実際にそのクラスに属していたものの割合です。2適合率を理解する別の方法は、ランダムに選択されたインスタンスが特定のクラスに属する可能性を測定することです。3適合率は陽性予測値(PPV)とも呼ばれる。これは次の式で表されます。
再現率(Recall)とは、モデルによって検出されたクラス・インスタンスの割合を示します。4言い換えれば、それは、そのクラスのすべての実際のインスタンスのうち、指定されたクラスに対する正の予測の割合を示します。5 再現率は 感度 または真陽性率(TPR)とも呼ばれ、次の式で表されます。
適合率と再現率は、時には逆の関係を共有することがあります。モデルが、より多くの実際のクラス・インスタンスを返すことによって(つまり、真陽性)、モデルは必然的に非インスタンスを誤分類する(つまり誤検出) も発生するため、適合率が低下します。6F1スコアは、このトレードオフを解決するために、正確さと再現性を組み合わせようとします。
F1スコア(Fスコア、 F測定、または適合率と再現率の調和平均)は、適合率と再現率を組み合わせて、モデルのクラスごとの適合率の合計を表します。これら2つの値を使用して、Pを適合率(PPV)、Rを再現率(感度)を示す次の式でF1スコアを計算できます。
F1スコアは、適合率と再現率のトレードオフが最も顕著になる不均衡なデータセットに特に役立ちます。たとえば、希少疾患の可能性を予測する分類器があるとします。テスト・データセットに罹患している人がいないことを予測するモデルは、適合率が完璧であっても、再現率がゼロである可能性があります。一方、データセット内の全員が病気に感染していることを予測するモデルは、完璧な再現率を返しますが、適合率は実際に病気にかかっている人の割合と同じです(例:0.00001%(ただし、1000万人に1人しか罹患していない場合)。F1スコアは、これら2つの値のバランスを取り、分類子の性能をより包括的に把握する手段です。7
一部の研究者は、性能メトリクスとしてF1スコアを使用することを批判しています。このような議論は通常、F1スコアが適合率と再現率に等しい重みを与えると主張しており、これはすべてのデータセットで等しく重要な性能メトリクスではない可能性があります。8これに対して、研究者たちはF1スコアの修正版を提案しています。9
条件付き尺度は、特定のクラスまたは非クラスを検出する場合のモデルの正解率を示します。再現率は、真陽性率(TPR)または感度とも呼ばれ、そのような尺度の1つであり、すべての実際のクラスインスタンスに対する正のクラス予測の比率を示します。特異度、すなわち真陰性率(TNR)は、もうひとつの条件付き尺度です。指定されたクラスの実際の非インスタンスのうち、正しい否定的予測の割合を測定します。特異度は次の式で計算できます。10
特異性は、モデルの誤検知率(FPR)を計算するのに役立ちます。他の分類器評価の視覚化、特に ROC 曲線や AUC は FPR を利用します。FPRは、モデルが特定のクラスの非インスタンスをそのクラスの一部として誤って分類する確率です。したがって、その名の通り、モデルが偽陽性を返す率を表し、統計学では第一種の過誤として知られています。
第一種の過誤が偽陽性を示すのに対し、第二種の過誤は偽陰性を示し、指定されたクラスの実際のインスタンスは、そのクラスの一部ではないものとして誤って分類されます。その名の通り、偽陰性率(FNR)は、モデルが実際のクラス・インスタンスをそのクラスの一部ではないものとして誤って分類する確率を表します。FPRが特異性に対応するのと同様に、FNRは感度に対応します。
FNR は、指定されたクラスの実際のインスタンスの総数を知る必要があるため、文献では使用されないことがよくあります。これは、未知のテスト・データセットでは不明なままである可能性があることに注意してください。11
無条件メトリクスは、モデルに従って特定のクラスが発生するか、発生しない可能性を表すメトリクスです。適合率、すなわち陽性予測値(PPV)は、無条件のメトリクスです。前述したように、これは、選択したインスタンスが特定のクラスに属する可能性を測定します。もう1つの無条件メトリクスである負の予測値(NPV)は、選択されたインスタンスがそのクラスに属さない確率です。基本的に、どちらの無条件メトリクスも、ランダムに選択されたインスタンスが特定のクラスに属するかどうか、答えようとします。NPVは次の式で計算できます。12
1 Kai Ming Ting『Confusion matrix』Encyclopedia of Machine Learning and Data Mining、Springer、2018年
2 Ethan ZhangおよびYi Zhang『Precision』Encyclopedia of Database Systems、Springer、2018年
3 Max KuhnおよびKjell Johnson『Applied Predictive Modeling』Springer、2016年
4 Ethan ZhangおよびYi Zhang『Recall』Encyclopedia of Database Systems、Springer、2018年
5 Max KuhnおよびKjell Johnson『Applied Predictive Modeling』Springer、2016年
6 Ben Carterette『Precision and Recall』Encyclopedia of Database Systems、Springer、2018年
7 Ian Goodfellow、Yoshua Bengio、Aaron Courville『Deep Learning』MIT Press、2016年、https://www.deeplearningbook.org/。Kevin Murphy『Machine Learning: A Probabilistic Perspective』MIT Press、2012年
8 David HandおよびPeter Christen『A note on using the F-measure for evaluating record linkage algorithms』Statistics and Computing、Vol. 28, pp. 539–547、2018年https://link.springer.com/article/10.1007/s11222-017-9746-6
9 David Hand、Peter Christen、Nishadi Kirielle『"F*: an interpretable transformation of the F-measure』Machine Learning、Vol. 110, pp. 451 456、2021年、https://link.springer.com/article/10.1007/s10994-021-05964-1。Davide ChiccoおよびGiuseppe Jurman『The advantages of the Matthews correlation coefficient (MCC) over F1 score and accuracy in binary classification evaluation』BMC Genomics、Vol. 21、2020年、https://bmcgenomics.biomedcentral.com/articles/10.1186/s12864-019-6413-7
10 Max KuhnおよびKjell Johnson『Applied Predictive Modeling』Springer、2016年
11 Allen Downey『Think Stats』第2版、O’Reilly、2014年
2 Max KuhnおよびKjell Johnson『Applied Predictive Modeling』Springer、2016年