統計的機械学習で使用する混同行列と評価指標 データ分析講座(その296)

 

統計的機械学習の世界に、2 値分類問題というものがあります。例えば、受注 or 失注、継続 or 離反、異常 or 正常、死亡 or 生存などを扱う予測モデルを構築したりします。そこで登場するのが、混同行列(Confusion Matrix)です。一時期新聞などで、新型コロナワクチンの良し悪しを評価するものとして、たまに登場していましたが、最近はあまり見なくなりました。

 

混同行列(Confusion Matrix) とは、統計的機械学習の2 値分類問題の分類結果をまとめた行列(Matrix)のことです。混同行列(Confusion Matrix)から、予測モデルの良し悪しを検討するための、幾つかの評価指標を作ることができます。どのような分類問題を扱うのかで、見るべき評価指標を変え選択する必要があります。

 

その前に、どのような指標があるのか分からないことには、見るべき指標を選択することもできません。今回は「統計的機械学習でよく使用される混同行列(Confusion Matrix)と評価指標」というお話しをします。

 

【目次】
1. 混同行列(Confusion Matrix)
2. 評価指標
3. 正解率(Accuracy)
4. 精度・適合率(Precision)・陽性反応適中度(positive predictive value)
5. 再現率(Recall)・感度(Sensitivity)
6. 陰性的中率(Negative predictive value)
7. 特異度 (Specificity)
8. F1スコア(F1 Score)
9. F-βスコア(F-beta Score)
10. マシューズ相関係数(Matthews Correlation Coefficient)・ファイ係数(Phi coefficient)
11. バランス正解率(Balanced Accuracy)

【この連載の前回:データ活用の成否を握るのは周辺人 データ分析講座(その295) へのリンク】

◆データ分析講座の注目記事紹介

 

1. 混同行列(Confusion Matrix)

混同行列(Confusion Matrix) とは、2 値分類問題の分類結果をまとめた2×2の行列(Matrix)です。行列は4つのセルで構成されます。

日本語が難しいです。例えば、受注を予測するモデルであれば……

……となります。

 

 

2. 評価指標

混同行列(Confusion Matrix) から、例えば以下の評価指標を計算することができます。

 

3. 正解率(Accuracy)

最も単純で最も分かりやすい指標です。全データの内、正しく予測できたものの割合です。

問題は、データがPositiveやNegativeのどちらか一方に偏っている場合、機能しなくなることがあります。

 

4. 精度・適合率(Precision)・陽性反応適中度(positive predictive value)

Positiveと予測したとき、実際にPositiveだった割合です。こちらも比較的分かりやすいかと思います。

問題は、取りこぼすPositiveが、多く発生する可能性があることです。この指標はNegativeの予測精度を考慮していないため、Negativeと予測されたPositiveは蚊帳の外だからです。取りこぼしが多い場合、感度(Sensitivity)が低いと言います。

 

5. 再現率(Recall)・感度(Sensitivity)

こちらは、取りこぼし無くPositive なデータを正しくPositiveと予測できているかどうかを示す指標です。

この指標が高い予測モデルを、感度(Sensitivity)が高いと言います。理想は、感度が高く精度も高い予測モデルです。しかし、この2つの指標は、トレードオフの関係を示します。精度を過剰に高くすると感度が悪化し、感度を過剰に高くすると精度が犠牲になります。

 

6. 陰性的中率(Negative predictive value)

Negativeと予測したとき、実際にNegativeだった割合です。こちらも比較的分かりやすいかと思います。

 

7. 特異度 (Specificity)

取りこぼし無くNegative なデータを正しくNegativeと予測できているかどうかを示す指標です。

 

8. F1スコア(F1 Score)

先程、理想は感度が高く精度も高い予測モデル、と言いました。この2つの指標を考慮した指標がF1スコアです。F1スコアは、精度(Precision)と 感度(Sensitivity)の調和平均です。

F1スコアの最大値は1.0で、最小値は0です。精度(Precision)と 感度(Sensitivity)のどちらも完璧な場合、最大値の1になります。精度(Precision)と 感度(Sensitivity)のどちらかが0である場合、最小値の0になります。迷ったら、F1スコアを用いるのがいいでしょう。

 

9. F-βスコア(F-beta Score)

F1スコアを一般化したものです。

パラメータβ(ベータ)の数値を変えることで、精度(Precision)と 感度(Sensitivity)のどちらを重視するのかを調整します。

先程のF1スコアは、ベータが1だからF1スコアと言います。F2スコアといった場合、ベータが2の場合です。

 

10. マシューズ相関係数(Matthews Correlation Coefficient)・ファイ係数(Phi coefficient)

データがPositiveやNegativeのどちらか一方に偏っている場合、正解率(Accuracy)が機能しなくなることがあります。F1スコアなども、あまりにも極端に偏っている場合、たまにおかしくなります。そのようなデータに対し用いる評価指標として、マシューズ相関係数というものがあります。

複雑そうに見えますが、Positiveを1、Negativeを0という数字を割り当てて、通常の相関係数(ピアソンの相関係数)を計算すると、マシューズ相関係数になります。マシューズ相関係数は-1から1の範囲の値を取り、予測が完璧に当たると1になり、真逆に完璧に当たると-1になります。

 

11. バランス正解率(Balanced Accuracy)

データがPositiveやNegativeのどちらか一方に偏っている場合、正解率(Accuracy)ではなくバランス正解率(Balanced Accuracy)を使ったほうがいいでしょう。数式もシンプルです。

感度(Sensitivity)はPositiveの正答率、特異度 (Specificity)はNegativeの正答率です。それを足して2で割り計算します。そのことが、データがPositiveやNegativeのどちらか一方に偏っている場合にも使えるようにしています。

 

次回に続きます。

 

【ものづくり セミナーサーチ】 セミナー紹介:国内最大級のセミナー掲載数 〈ものづくりセミナーサーチ〉 はこちら!

 

...

↓ 続きを読むには・・・

新規会員登録


この記事の著者