こんにちは。
今回はちょっと気合を入れて分類精度について述べようと思います
指標って何?
指標とは、データのクラスをどの程度正確に当てられたかを測る基準的なものです。
このモデルが正しい!!!だから採用してください!!と言われても誰も納得しませんよね。
周りの生活での具体的な例としては、偏差値。
偏差値は勉強に対するある基準の役割を持っています。
偏差値が全てとは全然思いませんが、ある程度の基準は必要になります。
なぜなら、基準がなければ判断は不公平な決断が生まれる可能性があるからです。
また学業の世界では、通知表、履歴書など基準は色々な方法が存在します。またそれぞれの基準は違う軸を持っています。
これは分類の世界でも同じです。
機械学習を用いて構築したモデルの良し悪しを評価する為の指標が沢山存在します。
今回紹介したいのは4つです。
- 適合率 (precision)
- 再現率 (recall)
- F値 (F-Value)
- 正解率 (accuracy)
これらを紹介する前に混同行列という存在を説明したいと思います。
混同行列
結論から言うと、混同行列とは分類の結果をまとめた行列です。
はぁ?って思った人もいると思いますが、今から説明するので安心してください。
正例と負例
分類の世界には、「興味がある」と「興味がない」と言う考え方があります。
また
「興味がある」を正例といい、
「興味がない」を負例をいいます。
例えば、送られてきたメールがスパムであることを予測する場合、
どのメールがスパムであることに興味があるので、
正例はスパム、負例は通常のメールです。
大体正例と負例のイメージがつかめましたか?
混同行列の説明
混同行列は4種類に分かれています。
真陽性(左上)・・・実際のデータが正例で、機械学習自体も正例と分類した場合。(正解)
偽陰性(右上)・・・実際のデータは正例だが、機械学習は負例と分類した場合。(不正解)
偽陽性(左下)・・・実際のデータは負例だが、機械学習も正例と分類した場合。(不正解)
真陰性(右下)・・・実際のデータが負例で、機械学習自体も負例と分類した場合。(正解)
数学的にもこの4種類しかあり得ません。
なぜなら場合の数により、2(実際のデータは2種類(正例OR負例)) * 2(予測も2種類) = 4
混同行列の説明はこの辺にして、
この図を元に指標の4つを見ていこうと思います。
適合率
適合率・・・機械学習モデルが正例であると予測した内の何%が当たっていたか(正例であったか)を示す。
上記の図の記号を使って計算式で書くと、
適合率 = \frac{tp}{tp + fp}
と書けます。
つまり適合率が高いとは、正例と予測して実際に正例であったデータの割合が高いことを示す。
再現率
再現率・・・実際の正例のデータのうち、正例と予測したものの割合を示す。
これは適合率ととても似ているがある関係になっている。それは後々説明するとしよう。
先に再現率を数式で書くと、
再現率 = \frac{tp}{tp + fn}
つまり再現率が高いとは、正例のデータに対して正例だと予測できたデータの割合が高いことを示します。
適合率と再現率の関係
この二つの評価指標はトレードオフの関係にあります。
言い換えるのであれば、再現率を高くしようとすると適合率が低くなり、逆も然りです。
想像が付きにくい人は下記の例を読んでみてください。とてもわかりやすかったです。
再現りつと適合率の関係
F値
F値・・・適合率と再現率の調和平均
即ち、
F値 = \frac{2}{\frac{1}{適合率} + \frac{1}{再現率}} = \frac{2 \times 適合率 \times 再現率}{適合率 + 再現率}
F値は適合率と再現率の調和平均を取ることにより、両方の指標がバランスの良い値になることを目指す時に重視する指標。
正解率
正解率・・・正例か負例かを問わず、予測と実績が一致したデータの割合を示す。
即ち、
正解率 = \frac{tp + tn}{tp + fp + fn + tn}
予測結果全体と、答えがどれぐらい一致しているかを判断する指標。
まとめ
いかがだったでしょうか?
機械学習のモデルが良いか悪いかを判断するには様々な観点があります。
自分自身がどんなモデルを欲しているかを課題全体を通して見抜く必要がありそうですね。
今回まとめたのは,
- 適合率
- 再現率
- F値
- 正解率
でした。
この世の中には指標は沢山あります。
指標を覚える必要はないと思いますが、知っておく事は大切ですよね。
ありがとうございました。