予測モデル評価の
指標と使い分け
予測モデルの評価指標は、種類が多く感じられますが「何を予測するか」(分類/回帰/関係性)で選ぶ指標は決まります。本記事ではよく使う指標を、混同行列と ROC 曲線、回帰の残差、相関の散布図と一緒に整理します。
予測モデルの評価は、分類なら適合率(Precision)・再現率(Recall)・F1スコア・ROC-AUC、回帰なら平均絶対誤差(MAE)・RMSE・決定係数(R²)、関係性ならピアソン相関(Pearson)・スピアマン相関(Spearman)が定番です。1 指標だけだと偏りを見落とすので、性格の違う 2 指標以上を並べて読みます。
01.まず結論:タスクで指標を選ぶ
予測モデルは大きく 3 タスクに分けて整理できます。タスクが決まれば、自然に候補指標が絞れます。
| タスク | 予測するもの | 代表指標 |
|---|---|---|
| 分類 | クラス(離反する/しない、A/B/C など) | 適合率(Precision)、再現率(Recall)、F1スコア、ROC-AUC、PR-AUC、混同行列、MCC(マシューズ相関係数) |
| 回帰 | 連続値(売上、需要、温度など) | 平均絶対誤差(MAE)、RMSE、MAPE、決定係数(R²) |
| 関係性 | 2 つの数値の連動度合い | ピアソン相関(Pearson)、スピアマン相関(Spearman) |
02.分類モデル:混同行列と F1スコア の読み方
分類モデルの評価は、まず混同行列(Confusion Matrix)を描くところから始まります。実際の正解と予測の組み合わせを 4 つのマスに分け、そこから適合率(Precision)・再現率(Recall)・F1スコアを計算します。
図:混同行列の構造
実際の正解と、モデルの予測の組み合わせを 4 マスで整理する。
TP
真陽性(True Positive)
正しく陽性と当てた
FN
偽陰性(False Negative)
見逃し(取りこぼし)
FP
偽陽性(False Positive)
誤検知(過剰な陽性)
TN
真陰性(True Negative)
正しく陰性と当てた
Precision は「陽性と予測した中で本当に陽性だった率」、Recall は「実際の陽性をどれだけ拾えたか」。
主な指標
- 適合率(Precision)
- = TP / (TP + FP)
- 再現率(Recall)
- = TP / (TP + FN)
- F1スコア
- = 2PR / (P + R)
- 正解率(Accuracy)
- = (TP+TN) / 全件
| 指標 | 中身 | 気にする場面 |
|---|---|---|
| 適合率(Precision) | 陽性と予測した中で、本当に陽性だった割合 | 誤検知のコストが大きいとき(例:高額アラート、迷惑メール) |
| 再現率(Recall) | 実際の陽性をどれだけ拾えたか | 見逃しのコストが大きいとき(例:不正検知、医療スクリーニング) |
| F1スコア | 適合率(Precision)と再現率(Recall)の調和平均 | 両者のバランスを 1 つの値で見たいとき |
| MCC(マシューズ相関係数) | 混同行列の 4 セル全体を考慮した相関係数 | 不均衡データでも安定。F1 の補助指標として有用 |
99% が陰性のデータで「すべて陰性」と答えるモデルは、正解率(Accuracy)99% です。一見すごく見えますが、本当に欲しい陽性は 1 件も拾えていません。不均衡データでは Accuracy 単独では判断せず、F1スコア・再現率(Recall)・PR-AUC・MCC(マシューズ相関係数)を併用します。
適合率(Precision)と再現率(Recall)は、しきい値を動かすと片方が上がり片方が下がる関係にあります。その押し引きをどう決めるか(Fβ での重み付け、損失からのしきい値の逆算、多クラスでの平均化)は別記事で詳しく整理しています。あわせてご覧ください。
適合率(Precision)と再現率(Recall)
混同行列の実数からスコアを出す手順と、見逃しと空振りの損失からしきい値を逆算する考え方を整理しています。
03.分類モデル:ROC-AUC と PR-AUC
ROC-AUC(Receiver Operating Characteristic - Area Under the Curve)は、分類モデルがどれくらい「陽性と陰性を区別できるか」を、閾値を変えずに評価できる指標です。値は 0.5(ランダム)〜 1.0(完璧)の範囲で、左上に近い ROC 曲線ほど良いモデルです。
図:ROC 曲線と AUC
左上に近いほど良いモデル。AUC は曲線の下の面積で、0.5 がランダム、1.0 が完璧。
AUC ≒ 0.92
AUC ≒ 0.75
AUC = 0.5
ROC-AUC は閾値非依存で便利ですが、極端な不均衡データでは値が楽観的に出やすい性質があります。陽性が少ない問題では、適合率(Precision)と再現率(Recall)を直接プロットする PR-AUC(Precision-Recall 曲線の下の面積)の方が、現実的な性能を映しやすくなります。ROC-AUC や PR-AUC が測るのは「陽性と陰性を区別できるか」という識別力で、モデルが出す確率の値そのものが実際の頻度と一致しているかは別の軸です。後者は確率較正(キャリブレーション)で扱います。
04.回帰モデル:MAE・RMSE・R²
回帰モデルは「予測値と実測値の差(残差)」をどう要約するかで指標が変わります。基本は次の 3 つです。
| 指標 | 中身 | ひとこと |
|---|---|---|
| MAE(平均絶対誤差) | 残差の絶対値の平均 | 外れ値に強い。誤差の単位がそのまま読める(円・℃など) |
| RMSE(二乗平均平方根誤差) | 残差の二乗平均の平方根 | 外れ値の影響を強く受ける。大きな誤差を強く罰したいとき |
| R²(決定係数) | モデルが分散をどれくらい説明できるか | 0〜1 が一般的。1 に近いほど良いが、過学習でも上がるので注意 |
| MAPE(平均絶対パーセント誤差) | 残差 / 実測値の絶対値の平均 | 桁の違うデータ同士で比較しやすい。0 付近の値があると不安定 |
MAE と RMSE はどちらも誤差の大きさを測りますが、RMSE は二乗するため大きな誤差が結果に強く効きます。「平均的にどれくらい外しているか」を平易に見たいなら MAE、「大きな失敗を避けたい」(在庫切れ・需要急増の見落とし対策など)なら RMSE が向きます。両方並べて報告するのが安全です。
05.関係性の指標:ピアソン相関とスピアマン相関
ピアソン相関(Pearson)とスピアマン相関(Spearman)は、2 つの数値がどれくらい連動しているかを測る指標です。-1 〜 1 の範囲で、絶対値が大きいほど強い関係を意味します。
| 指標 | 対応する関係 | ひとこと |
|---|---|---|
| ピアソン相関(Pearson) | 直線的な関係 | 値の絶対値そのものを使う。外れ値に弱い |
| スピアマン相関(Spearman) | 順位ベースの単調な関係 | 値ではなく順位を使うので外れ値に強い。曲線的でも単調なら検出できる |
例えば「広告費とコンバージョン数」が直線的に伸びるならピアソン相関の方が直感的、「ユーザーの満足度と購入金額」のように順位的な関係ならスピアマン相関が向きます。「相関は因果ではない」点は別途意識する必要があります。
06.よくある誤解
| 誤解 | 実際 | 対処 |
|---|---|---|
| Accuracy が高ければ良いモデル | 不均衡データでは Accuracy が高くても役に立たない | F1スコア・再現率(Recall)・PR-AUC・MCC(マシューズ相関係数)を併用 |
| R² が高ければ予測が当たる | 過学習や外れ値で R² は容易に高く出る | テストデータで再計測し、MAE/RMSE と並べて読む |
| 相関が高ければ因果がある | 相関は連動を示すだけで因果ではない | 因果推論や A/B テストで別途検証 |
| ROC-AUC が 0.9 を超えたら完璧 | 不均衡データでは ROC-AUC が楽観的に出る | PR-AUC・適合率@k(Precision@k)・実運用での誤検知率も併用 |
| 指標は 1 つだけで十分 | 1 指標は 1 観点しか映さない | 性格の違う 2 指標以上を並べて読む |
07.実装例(scikit-learn)
分類・回帰・相関の主要指標は、scikit-learn と scipy で 1 行ずつ計算できます。本番運用前のレポートではタスクごとに 2〜3 指標並べて記録すると、後で問題があった時に切り分けやすくなります。
# 分類モデルの評価
from sklearn.metrics import (
confusion_matrix,
precision_score, recall_score, f1_score,
roc_auc_score, accuracy_score, matthews_corrcoef,
)
y_true = [1, 0, 1, 1, 0, 1, 0]
y_pred = [1, 0, 0, 1, 1, 1, 0]
y_score = [0.9, 0.2, 0.4, 0.8, 0.6, 0.7, 0.3] # 予測確率
confusion_matrix(y_true, y_pred) # 混同行列
precision_score(y_true, y_pred) # 適合率(Precision)
recall_score(y_true, y_pred) # 再現率(Recall)
f1_score(y_true, y_pred) # F1スコア
accuracy_score(y_true, y_pred) # 正解率(Accuracy)
matthews_corrcoef(y_true, y_pred) # MCC(マシューズ相関係数)
roc_auc_score(y_true, y_score) # ROC-AUC(予測確率を渡す)# 回帰モデルの評価
import numpy as np
from sklearn.metrics import (
mean_absolute_error, mean_squared_error, r2_score,
)
y_true = [3.0, 5.0, 7.0, 4.0]
y_pred = [2.8, 5.2, 6.5, 4.3]
mean_absolute_error(y_true, y_pred) # MAE(平均絶対誤差)
np.sqrt(mean_squared_error(y_true, y_pred)) # RMSE(二乗平均平方根誤差)
r2_score(y_true, y_pred) # R²(決定係数)# 相関の指標
from scipy.stats import pearsonr, spearmanr
x = [1, 2, 3, 4, 5]
y = [2, 4, 5, 4, 7]
pearsonr(x, y) # ピアソン相関(直線関係)
spearmanr(x, y) # スピアマン相関(順位ベース)本番運用では、これらをまとめて出力する評価関数を作っておき、モデル更新時に必ず同じ並びで記録するのがおすすめです。
08.よくある質問(FAQ)
F1スコアと ROC-AUC はどう使い分けますか?
F1スコアはある閾値での適合率(Precision)と再現率(Recall)のバランスを見る指標、ROC-AUC は閾値を変えてもどれくらい陽性と陰性を区別できるかを見る指標です。運用での閾値が決まっているなら F1スコア、モデル間の比較や閾値調整前の評価なら ROC-AUC が便利です。両者は補完関係なので、本番運用前のレポートでは両方併記するチームが多いです。
MAE と RMSE はどちらを使えばいいですか?
単位そのままで「平均的にどれくらい外しているか」を直感的に読むなら MAE、外れ値や大きな誤差を強く罰したい(在庫切れ防止・与信判断など)なら RMSE が向きます。MAE と RMSE は性格が違うため、両方並べて報告するのが安全です。差が大きいときはデータに外れ値が多いサインとして読めます。
R² が高ければモデルは信頼できますか?
学習データでの R² だけでは信頼できません。複雑なモデルは過学習で R² が容易に高くなり、外れ値の影響でも上がります。テストデータ・交差検証での R² に加え、MAE・RMSE のような誤差指標も併用して、複数の観点から確認するのが基本です。
相関が高いと因果関係があると言えますか?
相関は「2 つの値が連動している」ことを示すだけで、どちらが原因で結果かは分かりません。第三の変数が両方を動かしている可能性もあります。因果関係を確かめるには、A/B テスト(無作為割付)や、因果推論(傾向スコア、差分の差分など)の手法が別途必要です。
AI 出力の評価でも、これらの指標を使えますか?
使えます。AI(ChatGPT、Claude、Geminiなど)を分類器として使うなら F1スコア・ROC-AUC、数値を予測させるなら平均絶対誤差(MAE)・RMSE、LLM-as-Judge と人間評価の整合性を見るなら一致度・信頼性の指標(Cohen's Kappa:コーエンのカッパ係数など)を使います。AI 評価でも一般的なデータ分析と同じ指標が骨格になります。
09.まとめ
予測モデルの評価指標は、まず分類・回帰・関係性のどのタスクかを決めると候補が絞れます。分類なら混同行列をベースに適合率(Precision)・再現率(Recall)・F1スコア・ROC-AUC を、回帰なら平均絶対誤差(MAE)・RMSE・決定係数(R²)を、関係性ならピアソン相関(Pearson)・スピアマン相関(Spearman)を、それぞれ最低 2 指標並べて読むのが基本です。
単一指標で判断しない、不均衡データには適した指標を選ぶ、相関を因果と取り違えない。この 3 点を押さえれば、初学者でも実務でブレない評価が組めます。
データ分析でよく使うアルゴリズム・指標まとめ
類似度・一致度・予測モデル評価の3カテゴリで指標を整理した総合解説です。
一致度・信頼性の指標とは(カッパ係数・ICC)
評価者やモデル同士の判定の揃い具合を測る指標を整理します。
予測モデル評価と KPI 設計をご相談ください
社内予測モデル・需要予測・AI 活用プロジェクトの評価指標と KPI 設計の伴走支援を行っています。お気軽にお問い合わせください。
データ分析・アルゴリズム 基礎知識集
一覧に戻る →全体像とカテゴリ早見
データの可視化
個別指標カテゴリ
- ›類似度・距離の指標の使い分け
- ›一致度・信頼性の指標の使い分け
- ›予測モデル評価の指標と使い分け(この記事)
- ›適合率と再現率|しきい値で見逃しと空振りを調整する
- ›確率較正(キャリブレーション)の基礎|事後較正・Vertex AI

