機械学習で精度をレポートするときの指標あれこれ

機械学習で予測モデルを作ったあとに精度を出すことが多い。その際に「精度って何?」ってことを定義しておきたい。統計は医療の現場で使われることが多いからか、「陽性(Positive)/陰性(Negative)」という用語が使われる。

以下がその4象限。

1.png

予測が陽性で、実際にも陽性の場合には、True Positive、つまり「陽性であたり」ということ、TrueがあたりでFalseがはずれということ。

正解率

 (TP + TN) / ALL

無題のプレゼンテーション (3).png

全サンプルを分母として、陽性のあたりと、陰性にあたりを分子とする。直感的にはわかりやすい。ただし、これだと、砂漠の天気を当てに行くときには、「全部晴」とバカみたいに言うのが一番制度が高くなってしまう。(実際にそういうまやかしレポートもある)

再現率

TP /  ( TP + FN )

無題のプレゼンテーション (1).png

True Positive(陽性のあたり)に注目したのが、再現率。砂漠の天気予報で、「雨を陽性としてあてにいく」時には、全部晴という予測をしたのでは大外れしてしまう。ただし、今度は多めに雨予報(陽性)を出しても、「False Positive」が増えるだけなら、再現率はある程度高くできちゃう。

ただし医療の現場だと、False Positve(偽陽性)は、ちょっと多めに出るくらいがいい。健康診断でいう「再検査」ってやつ。重病を見逃すくらいなら、偽陽性がちょっとくらい増えても構わない。

反対に、陰性と良いながら外すことの方が医療現場ではまずい。

適合率

TP / ( TP + FP ) 

無題のプレゼンテーション (2).png

陽性と予測をしているうちの、実際に当たってる比率。無駄に陽性判定を出すと、適合率は低くなる。

検索システムとかは余計な検索結果がヒットすることの方が満足度は低くなるので、適合率が高い方が重要になってくる。

まとめ

正解率だけだと、ごまかしができちゃう。
とりこぼしたくないなら、再現率を大事に。
ノイズが増えてやだなぁというときには、適合率を大事に。

参考:
https://mathwords.net/kensa

Sign up for free and join this conversation.
Sign Up
If you already have a Qiita account log in.