機械学習モデルの性能をどのように評価しますか?一般的に使用される指標は何ですか?

Kelly Pollard
Kelly Pollard
Lead AI researcher with 15 years experience. 首席人工智能研究员,15年经验。主任AI研究員、15年の経験。Leitender KI-Forscher, 15 Jahre Erfahrung.

はい、承知いたしました。以下に翻訳します。

機械学習モデルの評価について、複雑にもシンプルにもなり得ます。例えるなら、生徒の試験の採点のようなものです。合計点が高いかどうかだけでなく、苦手な科目はないか、難しい問題が解けるかどうかも見る必要がありますよね?

ここでは、モデルを評価する際にどのような「点数」を見るのか、わかりやすく説明します。


評価は健康診断のようなもの、項目ごとに異なる問題をチェック

あなたのモデルを、卒業したばかりの医師だと想像してみてください。今、彼が医師免許を取得するための試験を受けています。彼が良い医師かどうかをどう判断するでしょうか?

主に2つの大きなシナリオに分けられます:分類問題回帰問題 です。

一、分類問題 (Classification)

分類問題は、医師が患者を「病気」か「健康」か判断したり、メールが「スパム」か「通常メール」かを識別するようなものです。

1. 精度 (Accuracy)
  • とは何か:最も直感的な指標です。モデルが合計100回予測して、何回正解したかを示します。95回正解すれば、精度は95%です。
  • 日常生活の例:明日「雨」か「雨ではない」かを予測します。1ヶ月30日のうち、27日正解した場合、あなたの精度は 27 / 30 = 90% です。
  • 利点:非常に理解しやすいです。
  • 欠点:特定の状況では欺瞞的になることがあります。例えば、99%の人がかからない病気があるとします。「怠惰な」モデルが、誰に対しても「病気ではない」と診断した場合、その精度は99%にもなります!しかし、実際には一人も病気を見つけられていないため、役立たないモデルです。

そのため、より詳細な指標が必要です。これが、非常に重要な2つの概念、適合率 (Precision)再現率 (Recall) につながります。

これらを理解するために、まずシナリオを設定しましょう:モデルが山積みの果物の中からすべての「リンゴ」を選び出す役割を担っています。

2. 適合率 (Precision) - 「寧ろ少なく、質を重視」
  • とは何か:あなたが選び出したすべての果物(モデルが「リンゴ」と判断したもの)のうち、どれだけが本物のリンゴでしたか?
  • 計算式選び出された本物のリンゴの数 / 選び出されたすべての果物の数
  • 日常生活の例:あなたのモデルが10個の果物を選び出し、これらはすべてリンゴだと自信満々に言いました。結果を見てみると、そのうち8個が本物のリンゴで、2個は赤いジャガイモでした。この場合、適合率は 8 / 10 = 80% です。
  • 意味:適合率が高いということは、あなたのモデルが非常に「信頼できる」ことを意味し、誤報が少ないです。「レコメンデーションシステム」のようなシナリオでは、間違った推薦はユーザーを苛立たせるため、適合率が重要になります。
3. 再現率 (Recall) - 「寧ろ多く、漏れをなくす」
  • とは何か:すべての本物のリンゴのうち、あなたのモデルはいくつを成功裏に選び出しましたか?
  • 計算式選び出された本物のリンゴの数 / すべての本物のリンゴの数
  • 日常生活の例:この果物の山には合計15個の本物のリンゴがありました。あなたのモデルは最終的にそのうち8個しか見つけられませんでした。この場合、再現率は 8 / 15 ≈ 53% です。
  • 意味:再現率が高いということは、あなたのモデルが「全体を網羅している」ことを意味し、見落としが少ないです。「がん診断」のようなシナリオでは、1000人を誤診しても、1人を見逃すよりはましです。見落とし(見つけられなかった)の結果は非常に深刻であるため、再現率が鍵となります。

適合率と再現率のトレードオフ: 通常、これら2つの指標は「両立が難しい」関係にあります。

  • 非常に慎重なモデル(非常に確信のあるものだけを選ぶ)は、適合率が高くなりますが、曖昧なものを見落とす可能性があり、再現率が低くなります。
  • 非常に積極的なモデル(少しでも似ていれば選ぶ)は、再現率が高くなりますが、多くの不純物が混入し、適合率が低くなります。
4. F1スコア (F1-Score)
  • とは何か:適合率と再現率が対立するなら、両者のバランスを取る審判が必要です。F1スコアは、これら2つの「調和平均」であり、両方を考慮した総合的な指標です。
  • 意味:F1スコアが高いほど、あなたのモデルが適合率と再現率の間でより良いバランスを達成していることを示します。どちらを重視すべきかわからない場合、F1スコアを見るのが良い選択です。
5. ROC曲線 と AUC値
  • とは何か:これはより高度な評価方法です。モデルが「はい」または「いいえ」を出力する際に、実際には「確信度」(例えば、80%の確率でリンゴである)を持っていると想像できます。この「確信度」に基づいて「しきい値」を設定し、このしきい値を超えた場合にのみ「はい」と判断します。
  • ROC曲線:この「しきい値」を継続的に調整することで、「真陽性率」(再現率と同じ)と「偽陽性率」(そうではないものを誤ってそうだと判断する割合)の関係を図にしたものです。
  • AUC値:ROC曲線の下の面積です。この面積が大きいほど(1に近いほど)、モデルが「はい」と「いいえ」を区別する能力が強く、性能が良いことを示します。ランダムに推測するモデルのAUC値は0.5です。
  • 意味:AUCは「しきい値」に影響されない、より包括的なモデル性能の測定基準です。

二、回帰問題 (Regression)

回帰問題は、選択問題ではなく、穴埋め問題のようなものです。例えば、住宅価格の予測、株価の予測、明日の気温の予測などです。

1. 平均絶対誤差 (MAE - Mean Absolute Error)
  • とは何か:あなたの各予測値と実際の値との「差額」の平均値です。高く予測したか低く予測したかに関わらず、差額の絶対値のみを取ります。
  • 日常生活の例
    • A物件の実際の価格は100万円、あなたの予測は105万円、差額は5万円。
    • B物件の実際の価格は80万円、あなたの予測は78万円、差額は2万円。
    • MAEは (5 + 2) / 2 = 3.5万円 です。
  • 意味:非常に直感的で、あなたのモデルの平均予測誤差がどれくらい大きいかを直接教えてくれます。
2. 平均二乗誤差 (MSE - Mean Squared Error)
  • とは何か:MAEと似ていますが、差額を計算する際に、まずそれを「二乗」してから平均を求めます。
  • 日常生活の例
    • 上記の例で、MSEは (5² + 2²) / 2 = (25 + 4) / 2 = 14.5 です。
  • 意味:MSEは大きな誤差に対してより重い「ペナルティ」を与えます。例えば、10万円の予測間違いはMSEでは10000になりますが、1万円の予測間違いはMSEでは100にしかなりません。あなたのビジネスシナリオで、大きな予測誤差が許容できない場合、MSEは非常に良い指標です。
3. R二乗 (R-squared)
  • とは何か:この指標は少し複雑ですが、非常に役立ちます。あなたのモデルがデータの変動をどの程度「説明」できるかを測定します。
  • 値の範囲:通常0から1の間です。
  • 日常生活の例:住宅価格のR二乗が0.8の場合、住宅価格の変動の80%の原因(例えば、面積、立地など)があなたのモデルによって捉えられ、うまく説明されていると大まかに理解できます。残りの20%はモデルが捉えきれていない未知の要因です。
  • 意味:R二乗が高いほど、モデルがデータにどれだけ適合しているかを示します。R二乗が0のモデルは、すべての住宅価格の平均値をそのまま予測に使うのと同じくらい性能が悪いことを意味します。

まとめ

  • 最高の指標はなく、最も適切な指標があるだけです
  • 分類タスク(選択問題)を行う場合、まず精度を見ますが、データの不均衡の罠には注意が必要です。次に、あなたのビジネス要件に応じて、適合率(誤報を避ける)と再現率(見落としを避ける)の間でトレードオフを行うか、または両者の総合スコアであるF1スコアを直接見ます。包括的に評価したい場合は、AUCを使用します。
  • 回帰タスク(穴埋め問題)を行う場合、平均誤差がどれくらいかを知りたいならMAEを使います。大きな誤差にペナルティを与えたいならMSEを使います。モデルの解釈力がどれほど強いかを知りたいならR二乗を使います。

この説明が、機械学習モデルを「健康診断」する方法について、明確な理解をもたらすことを願っています!