F値とは

F値(F-measure / F-score)とは、主に機械学習における分類モデルの性能を評価する際に用いられる指標で、適合率(Precision)と再現率(Recall)の2つの評価指標の調和平均を指します。

特に、データセットが不均衡である場合や、陽性クラスの予測において適合率と再現率のどちらも重要視したい場合に有効な評価尺度となります。

F値の基本的な概念

F値は、モデルが「どれだけ正しく陽性を予測したか(適合率)」と「陽性であるものをどれだけ見逃さずに予測できたか(再現率)」という、トレードオフの関係にある二つの側面を統合的に評価するために考案されました。

主な概念は以下の通りです。

  1. 適合率(Precision): モデルが陽性と予測したもののうち、実際に陽性であった割合。誤って陽性と予測する(偽陽性、False Positive)ことの少なさを示します。

適合率=真陽性数 (TP)+偽陽性数 (False Positives, FP)真陽性数 (True Positives, TP)​

  1. 再現率(Recall): 実際に陽性であるもののうち、モデルが陽性と正しく予測できた割合。陽性であるものを見逃す(偽陰性、False Negative)ことの少なさを示します。

再現率=真陽性数 (TP)+偽陰性数 (False Negatives, FN)真陽性数 (True Positives, TP)​

  1. 調和平均(Harmonic Mean): F値は、適合率と再現率の「調和平均」を取ります。調和平均は、算術平均と異なり、低い値に強く影響される特性があります。つまり、適合率と再現率のいずれか一方が極端に低い場合、F値も低くなるため、両方のバランスが取れているかを評価するのに適しています。

調和平均=x1​1​+x2​1​+⋯+xn​1​n​

F値の計算式と種類

F値には、最も一般的に使用されるF1値の他に、適合率と再現率のどちらをより重視するかを設定できるFβ値があります。

  1. F1値(F1-score): 適合率と再現率を均等に重視する場合に用いられるF値です。β=1の場合に相当します。

F1=2×適合率+再現率適合率×再現率​=2×TP+FP+FN2×TP​

:

  • 適合率=0.8, 再現率=0.2 の場合:

F1=2×0.8+0.20.8×0.2​=2×1.00.16​=0.32

  • 適合率=0.5, 再現率=0.5 の場合:

F1=2×0.5+0.50.5×0.5​=2×1.00.25​=0.50

  • 適合率=0.2, 再現率=0.8 の場合:

F1=2×0.2+0.80.2×0.8​=2×1.00.16​=0.32

上記の例から、F1値は適合率と再現率のバランスが取れている場合に高くなることが分かります。

  1. Fβ値(Fβ-score): 適合率と再現率のどちらをより重視するかをパラメータβで調整できるF値です。

Fβ​=(1+β2)×(β2×適合率)+再現率適合率×再現率​

  • β > 1: 再現率を適合率よりも重視する場合(例: β=2のF2値)。偽陰性を減らしたい場合に有用です(例:病気の診断で、見逃しを避けたい場合)。
  • β < 1: 適合率を再現率よりも重視する場合(例: β=0.5のF0.5値)。偽陽性を減らしたい場合に有用です(例:スパムメールの判定で、正常なメールをスパムと誤判定したくない場合)。
  • β = 1: F1値と同一です。

F値が重要な理由と適用場面

F値は、特にデータ不均衡がある分類問題において、非常に重要な評価指標となります。

  1. データ不均衡への対応: データセットが不均衡な場合、単純な正解率(Accuracy)は適切な評価指標とはなりません。例えば、99%が陰性、1%が陽性のデータで、常に陰性と予測するモデルの正解率は99%になりますが、陽性クラスを全く識別できていないため、実用的なモデルとは言えません。F値はこのようなケースで、適合率と再現率のバランスを見ることで、より現実的なモデル性能を評価できます。
  2. トレードオフの評価: 適合率と再現率はしばしばトレードオフの関係にあります。モデルの閾値を調整することで、適合率を上げると再現率が下がり、その逆もまた然りです。F値は、このトレードオフの中で、両者のバランスを考慮した最適なモデルを選択するのに役立ちます。
  3. 多様な問題への適用:
    • 詐欺検知: 不正取引(陽性)は稀なケースであるため、見逃し(偽陰性)を避けつつ、誤検出(偽陽性)も抑えたい場合にF値が有用です。
    • 疾病診断: 罹患者(陽性)を見逃すこと(偽陰性)は重大な結果を招くため、再現率を重視しつつ、適合率とのバランスを取るFβ値が考慮されます。
    • 情報検索: 関連性の高いドキュメント(陽性)をどれだけ多く見つけ出し(再現率)、かつ見つけ出したものがどれだけ実際に適合しているか(適合率)を評価する際にF値が用いられます。

F値の限界と他の評価指標との併用

F値は有用な指標ですが、万能ではありません。その限界を理解し、他の指標と併用することが推奨されます。

  • 単一の数値であること: F値は適合率と再現率を単一の数値に集約するため、それぞれの値の具体的な内訳や、モデルがどのような種類の誤分類をしているか(偽陽性と偽陰性のどちらが多いか)を直接的に把握することはできません。
  • 閾値への依存: F値は、分類モデルの出力閾値(例:確率が0.5以上なら陽性)に依存します。異なる閾値ではF値が変化するため、適切な閾値設定が重要です。
  • ROC曲線/AUCとの比較: 分類モデル全体の識別性能や、様々な閾値でのトレードオフを視覚的に評価するには、ROC曲線(Receiver Operating Characteristic curve)やAUC(Area Under the Curve)などの指標も有効です。これらは閾値に依存しないモデルの全体的な性能を示します。
  • ビジネス要件との整合性: 最終的には、F値だけでなく、ビジネス上の目標やコスト(偽陽性や偽陰性の発生コスト)を考慮して、最適なモデルや閾値を選択する必要があります。

F値(F-measure / F-score)は、分類モデルの性能評価において、適合率(Precision)と再現率(Recall)の調和平均を用いる指標です。特にデータが不均衡な場合や、適合率と再現率の双方をバランス良く評価したい場合に有効です。F1値は両者を均等に重視するのに対し、Fβ値はパラメータβによってどちらかをより重視できます。

詐欺検知や疾病診断、情報検索など、様々な分野でその重要性が認識されています。しかし、F値は単一の数値であるため、その限界を理解し、ROC曲線やAUCなどの他の評価指標と併用することで、モデルの性能をより多角的に、かつ深く評価することが推奨されます。

関連用語

機械学習 | 今更聞けないIT用語集
データセット| 今更聞けないIT用語集
AIソリューション

お問い合わせ

システム開発・アプリ開発に関するご相談がございましたら、APPSWINGBYまでお気軽にご連絡ください。

APPSWINGBYの

ソリューション

APPSWINGBYのセキュリティサービスについて、詳しくは以下のメニューからお進みください。

システム開発

既存事業のDXによる新規開発、既存業務システムの引継ぎ・機能追加、表計算ソフトによる管理からの卒業等々、様々なWebシステムの開発を行っています。

iOS/Androidアプリ開発

既存事業のDXによるアプリの新規開発から既存アプリの改修・機能追加まで様々なアプリ開発における様々な課題・問題を解決しています。


リファクタリング

他のベンダーが開発したウェブサービスやアプリの不具合改修やソースコードの最適化、また、クラウド移行によってランニングコストが大幅にあがってしまったシステムのリアーキテクチャなどの行っています。