LoginSignup
53
48

More than 3 years have passed since last update.

機械学習の評価指標を簡単にまとめてみた

Last updated at Posted at 2018-12-09

はじめに

この記事は、機械学習の推定結果を評価する際に用いる評価指標について、どの場面でどの指標を利用すればよいか毎回迷ってしまうので、一度まとめます。今回紹介する指標以外にも多々ありますが、自身が良く利用するものを紹介していること、機械学習のコーディングなどではないため、悪しからず。

混同行列(Confusion Matrix)

混同行列とは、クラス分類の推定結果をまとめた表のことを言い、下記のように「行」に実測値、「列」に推定値をおきます。
スクリーンショット 2018-12-09 19.18.50.png

TP(True Positive) 正しく正(陽性)と判断された。
TN(True Negative) 正しく負(陰性)と判断された。
FP(False Positive) 誤って正(陽性)と判断された。
FN(False Negative) 誤って負(陰性)と判断された。

例えば・・・:question:

ある一人の患者が、ある医者に「あなたは病気にかかっています」と診断されました。
しかし、後にとある検査によって、この患者は病気にかかっていないことが判明しました。
この時の医者の判断は「TP、TN、FP、FN」のどれに分類されるでしょう。
病気にかかっていることを陽性、かかっていないことを陰性とします。

:writing_hand:正解は、「FP」誤って陽性と判断されたとなります。

以下、この混同行列を利用した評価指標をまとめます。

正解率(Accuracy)

全体のうち、予測通り正誤分類できた割合を表します。

計算式 :point_right::point_right: TP+TN / 全体

どのような時の指標に利用するのか?
:arrow_down_small:
分類を適切にできた数の割合のため、直感的に一番分かりやすいが、FP、FNを無視して良い場合に利用する。(オレンジとみかんが混ざってしまった時に分類など。)

適合率(Precision)

予測値で陽性である判断された時、実際に陽性のサンプルである割合を表します。

計算式 :point_right::point_right: TP / TP+FP

どのような時の指標に利用するのか?
:arrow_down_small:
検索サイトである単語に対して、適合するサイトを表示させるなど、FPが低ければ良い検査の場合に利用する指標となります。

再現率(Recall)

実際に陽性であるサンプルのうち、陽性であると判断されたサンプルの割合を表します。

計算式 :point_right::point_right: TP / TP+FN

どのような時の指標に利用するのか?
:arrow_down_small:
FNが低ければ低いほど、良い結果になるため、病院の検査結果や、空港での海外からの流行病検査などには有効な指標となります。

上記の適合率と再現率は、一方の数値を高めると、もう一方の数値が低くなるトレードオフの関係にあります。

※たくさん陽性を出す検査➡️再現率が高まり、適合率が低くなる。
※たくさん陰性を出す検査➡️適合率が高まり、再現率が低くなる。

このため、下記のような「F値」と呼ばれる指標が利用されます。

F値 (f1-score)

適合率と再現率の調和平均を表します。

計算式 :point_right::point_right: 2Precision × recall / precision + recall

おわりに・・・

今回取り上げた指標以外にも、「不正解率」や「特異度」など、検査や利用したい結果によって、評価指標が変わってきますので、今後も利用するたびに、まとめて挙げていきたいと思います:exclamation:

53
48
1

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
53
48