LoginSignup
0
0

予測モデルの評価(混同行列と評価指標)

Last updated at Posted at 2023-08-29

混同行列(confusion matrix) is 何?

  • シンプルに言う

    • 2値分類問題に対する予測モデルの評価で使用する行列
  • ちょっと詳しく

    • 機械学習分野(特に統計的分類)の問題において、アルゴリズムの性能を可視化するための表現方法
    • 通常は教師あり学習で利用される
    • 2つの次元(「実際」と「予測」) x 2つ以上のクラスのセットで構成される
  • 別名

    • 誤差行列(error matrix)
  • こんなやつ

    Predicted Values
    Positive Negative
    Actual Values Positive True Positive: TP False Negative:FN
    Negative False Positive: FP True Negative:TN
    • (True|False) (Positive/Negative)の覚え方:予測結果をベースに考える
      • True Positive:「予測結果がPositiveと出て、実際の値もPositive」
      • False Positive:「予測結果がPositiveと出たが、実際の値はNegative」
      • False Negative:「予測結果がNegativeと出たが、実際の値はPositive」
      • True Negative:「予測結果がNegativeと出て、実際の値もNegative」
  • 具体的な例

    • 状況

      • 10枚の画像のうち、犬が写っているものを判定する
      • 実際に犬が写っているのは、10枚のうち5枚のみ
    • 実際の状態と予測の結果は下記のようになった

      # 実際 予測
      0001.jpg
      0002.jpg
      0003.jpg
      0004.jpg
      0005.jpg
      0006.jpg
      0007.jpg
      0008.jpg
      0009.jpg
      0010.jpg
      • まとめると
        • 予測:◯、実際:◯ = 4
        • 予測:◯、実際:× = 2
        • 予測:×、実際:◯ = 1
        • 予測:×、実際:× = 3
    • 上記の結果を混合行列で表す

      Predicted Values
      Positive Negative
      Actual Values Positive 4 1
      Negative 2 3

評価指標

  • confusion matrixから導かれる指標が色々ある
    • 正解率(Binary Accuracy)
    • 精度・適合率(Precision) / 陽性反応適中度(positive predictive value)
    • 再現率(Recall) / 感度(Sensitivity)
    • 陰性的中率(Negative predictive value)
    • 特異度(Specificity)
    • F1値(F-measure/F-Score)
    • F-βスコア(F-beta Score)
    • マシューズ相関係数(Matthews Correlation Coefficient)
    • ファイ係数(Phi coefficient)
    • バランス正解率(Balanced Accuracy)

正解率(Binary Accuracy)

  • すべてのデータのうち、正しく予測できたものの割合
  • 算出方法
    • 正解率 = $\frac{TP + TN}{TP + TN + FP + FN}$
  • 問題点
    • データがPositive/Negativeのどちらかに偏っている場合、機能しなくなってしまう

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

  • Positiveと予測したものが、実際にPositiveであった割合
  • 算出方法
    • 適合率 = $\frac{TP}{TP + FP}$
  • 問題点
    • Positiveと判定する基準を厳しくすれば、数値が高く出てしまう

再現率(Recall) / 感度(Sensitivity)

  • 実際にPositiveであるものを、Positiveと予測できた割合
  • 算出方法
    • 再現率 = $\frac{TP}{TP + FN}$
  • 問題点
    • Positiveと判定する基準を緩くすれば、数値が高く出てしまう
      • つまり、適合率と再現率はトレードオフの関係にある。
      • 理想は、適合率も再現率も高いモデル
        • 後述の「F1値(F-measure/F-Score)」参照
精度と再現率、どっちがどっち??

医療:再現率を重視
マーケ:精度を重視 

医療
	実際に重病である患者を、もれなく「重病かもしれない」と予測できるモデルが良い
		その後、精密検査が実施される、といった運用

マーケ
	購買に至るだろうと予測された顧客が、実際に購買に至っているモデルが良い
		購買に至ると予測された顧客へ、ダイレクトメールを送る、といった運用
		施策効率、オプトアウトリスク回避

陰性的中率(Negative predictive value)

  • Negativeと予測したものが、実際にNegativeであった割合
  • 算出方法
    • 適合率 = $\frac{TN}{TN + FN}$
  • 問題点
    • Positiveと判定する基準を緩くすれば、数値が高く出てしまう

特異度(Specificity)

  • 実際にNegativeであるものを、Negativeと予測できた割合
  • 算出方法
    • 再現率 = $\frac{TN}{TN + FP}$
  • 問題点
    • Positiveと判定する基準を厳しくすれば、数値が高く出てしまう
      • つまり、陰性的中率と特異度はトレードオフの関係にある。

F1値(F-measure/F-Score)

  • 精度と感度の2つの評価指標を考慮した指標
  • 算出式
    • F1値 = $2 \times \frac {Presition \times Sensitivity}{Presition + Sensitivity}$
  • 説明
    • 精度、感度がともに1の場合、F1値は1(最大)になる
    • 精度、感度のどちらかが0の場合、F1値は0(最小)になる
  • 別名
    • F値
    • F1スコア

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

  • F1値について、精度と感度のどちらを重視するのかを調整できるようにした指標
  • βの値を調整することで
    • $β = 1$ : F1スコア
    • $β > 1$ : 感度を重視
    • $β < 1$ : 精度を重視
    • $β = 0$ : 感度のみを考慮
  • 算出式
    • F-βスコア = $(1 + β^{2}) \times \frac{Presiont \times Sensitivity }{β^{2} \times Presition + Sensitivity }$
  • 解説
    • F1値の「1」は、β = 1であることを表している
      • β = 2であれば、F2値。

マシューズ相関係数(Matthews Correlation Coefficient)

  • 算出式
    • マシューズ相関係数 = $\frac{(TP \times TN) - (FP \times FN)}{\sqrt{(TP + FP)(TP + FN)(TN + FP)(TN + FN)}}$
    • 先のConfusionMatrixを、ピアソンの積率相関係数に当てはめたもの

ファイ係数(Phi coefficient)

  • 勉強中(未着手)

バランス正解率(Balanced Accuracy)

  • 勉強中(未着手)

参考

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0