F値(F-measure)とは【機械学習におけるF値の意味】

技術系
スポンサーリンク
スポンサーリンク

F値(F-measure)とは

概要につきましては、朱鷺の杜Wikiなどに記載の通りですが、私からもざっくりと…。

F値は次のように定義されます。

Recall(再現率)Precision(適合率)については、以下のような考え方です。

まず、真偽を予測する分類器において、その結果は以下4分類に分けられます。

これを元に、Recall(再現率)とPrecision(適合率)が計算できます。

再現率 (recall, 感度, sensitivity):実際に正であるもののうち,正であると予測されたものの割合

朱鷺の杜Wikiより引用

適合率 (precision):正と予測したデータのうち,実際に正であるものの割合

朱鷺の杜Wikiより引用

実際に値を当てはめてF値を考える

それでは、実際に値を当てはめて考えてみます。

例えば、100人に1人がかかる病気について、10000人を対象に予測する場合を考えてみましょう。

上記のような結果だった場合、各指標値は以下の通りとなります。

  • Accuracy(精度):0.9
  • Precision(適合率):0.08333…
  • Recall(再現率):0.9
  • F-measure(F値):0.15254…

予測器の精度としては、0.9(90%)と高めですが、F値を見てみると0.15と低めです。

「精度90%の予測器」と聞くと、それなりに高精度だと思ってしまいますが、今回のような場合、それぞれの指標を見ると、再現率と適合率のバランスが悪いです。

この再現率と適合率のバランスの悪さを見抜ける点が、F値の重要な役割となってきます。

今回の予測器を実際に病院で運用すると仮定した場合、10000人中990人は病気ではないですが、”陽性”と判断されている以上は、何かしらの検査を実施しなければいけません。

そう考えるといくら精度90%とはいえ、実運用上では厳しそうな感じがしてきますよね。(そもそも医療系の場合、”実は陽性”の10人を見逃した時点でアウト!の場合もありますが…)

見かけの精度に騙されてF値の分析を怠ると、実際の体感精度との間に乖離が生まれます。

極端な話、今回のように真の可能性がそもそも低い問題に対しては、ちょっとズルをしてすべて偽と答える予測器を作っても、以下のように精度99%を叩き出せるわけですが、F値としては全然ダメという結果になります。

これでも精度99%…。

F値を見ることによって、見かけの精度が”本物”かどうか判断できるようになるのです。

F値の目安と適合率・再現率の関係

この値以上ならOK!という明確な目安はありませんが、値の範囲としては0から1の間に収まりますので、ざっくり高い低いの判断は付くかと。

また、適合率と再現率の関係はトレードオフです。

適合率が高まれば、再現率は低くなり…逆もまた然りです。

どっちも大事だよねということで、再現率と適合率の調和平均をとるF値が使われるのです。

調和平均の説明については、Wikipediaこちらのページ辺りをご参照ください。

まとめ

今回は、F値の意味について考えました。

作る側はもちろん、使う側も精度だけではなくF値も見るようにしたほうが良いですね。

様々な業種にAIが入り込んできている時代ですので、AIリテラシーを高めて、上手に利用していければと思います。

それでは、また次回!

スポンサーリンク
スポンサーリンク
技術系
\この記事をシェアする!/
\Follow Me!/
ぽんこつSEの無事是名馬

コメント

  1. みたよ より:

    テスト

タイトルとURLをコピーしました