読者です 読者をやめる 読者になる 読者になる

しえログ

qiita との使い分けに悩んでる

識別モデルの評価指標

機械学習

久々に初学者丸出しの記事を書く。

論文で検出器について書いた際に、ちゃんと識別モデルの評価指標とそれが実際どのぐらいであったかは記述しようぜ、とのコメントを頂いたので今更ながら勉強してみた。 書き上げる前にやっとけよ、っつー話すぎるけど、せっかくなので簡潔だけどまとめておく。

評価指標

正解データ、不正解データ、そして識別結果データのセットが与えられた時に、下記を計算することができる。 ちなみに以下の表は混同行列( Confusion Matrix )というらしい。

識別結果・陽性 識別結果・陰性
正解 TP => 真陽性 FN => 偽陰性
不正解 FP => 偽陽性 TN => 真陰性

以上を用いてまとめると主な評価指標は以下の通りとなる。

  • 正解率(Accuracy)
    • {\frac{TP+TN}{TP+FN+FP+TN}}
  • 再現率(Recall)
    • {\frac{TP}{TP+FN}}
  • 適合率(Precision)
    • {\frac{TP}{TP+FP}}
  • F値
    • {\frac{2 * Recall * Precision}{Recall + Precision}}

それぞれどんな場合に指標としていいかはちゃんと判断して利用するべき。

ROC 曲線

Receiver Operating Characteristic curve の略。 真陽性率(TP)と偽陽性率(FP)の関係を示す、識別モデルがどの程度の性能を持つのかを表す曲線のこと。 こんな図になる。

f:id:cielan:20170228014254p:plain

  • AUC( Area Under the Curve )
    • ROC 曲線の下の面積値。大きければ性能が良い。
  • 左上から曲線までの距離
    • そのまま。短ければ性能が良い。

複数の分類結果があるときにこの曲線にまつわる指標を比べたりする。