AI × データ分析基礎知識集 / 確率較正

確率較正(キャリブレーション)の基礎|事後較正とVertex AIでの運用


分類モデルが『80%の確率で解約する』と出力しても、実際にその予測を集めた集団のうち80%が解約するとは限りません。多くのモデルは学習方法の性質上、確率を過信または過小に見積もります。本記事では、Reliability Diagram(信頼度曲線)とECEによる較正のズレの測り方、Platt Scaling・Isotonic Regression・Temperature Scalingによる事後較正の手法、較正用データの分け方から本番投入・Vertex AIでの継続監視までの実務フローを、図解を交えて初学者向けに整理します。

公開2026.07.09
最終更新2026.07.09
読了 17 分 / 約7,600字
この記事をシェアポスト
AI × データ分析モデルの『確率』は、そのままでは信頼度として使えない

確率較正(キャリブレーション)の基礎
事後較正・Vertex AI

分類モデルが「解約確率80%」「不正確率5%」と出力すると、その数字をそのまま信頼度として意思決定に使いたくなります。しかし多くのモデルでは、予測確率と実際に起きる頻度は一致しません。「80%」と出力した予測を集めても、実際に的中するのは60%だったり95%だったりします。この予測確率と実際の頻度のズレを整える工程が確率較正(かくりつこうせい、キャリブレーション、calibration)です。「較正」は「こうせい」と読み、計測機器の目盛りを実際の値に合わせ直す意味の言葉で、ここではモデルの出す確率という「目盛り」を実際の頻度に合わせ直すという意味で使われています。

C
本記事の結論を先に
確率較正は『モデルを鍛え直す』のではなく『出力にもう一段変換をかける』後処理

確率較正は、学習済みモデルの構造を変えずに、その出力スコアだけを補正する事後較正(post-hoc calibration)が実務の基本です。ズレの大きさはReliability Diagram(信頼度曲線)とECE(Expected Calibration Error)で測り、補正にはPlatt Scaling・Isotonic Regression・Temperature Scalingを使い分けます。

  • Reliability DiagramとECE:予測確率と実際の頻度のズレを可視化・数値化します。
  • Platt Scaling/Isotonic Regression/Temperature Scaling:モデルの出力の後段に挟む補正関数です。
  • 較正専用データと継続監視:学習データでは較正せず、本番投入後もズレを追い続けます。

01.まず結論:予測確率は『賭けてよい信頼度』とは限らない

多くの分類モデルが出力する「確率」は、実は確率ではなくスコアです。ロジスティック回帰やニューラルネットワークの出力層はソフトマックスやシグモイド関数を通すため値は0〜1に収まりますが、この値が「100回のうち何回当たるか」という頻度としての確率と一致する保証はどこにもありません。値が0〜1に収まっているという見た目と、統計的に較正された確率であることは、まったく別の性質です。

較正のズレを放置すると、確率の値をそのまま使う意思決定で誤差が積み重なります。与信スコアリングで「デフォルト確率5%以下なら承認する」というしきい値運用をしているとき、モデルが実際は8%のリスクを5%と過小に見積もっていれば、承認基準そのものが緩くなります。広告の入札やクレジットの与信のように確率の値そのものを金額やしきい値の計算に使う場面では、順位付けの精度が高くても、較正がずれていれば意思決定を誤ります。

分類モデルの良し悪しを測る指標には、適合率・再現率・F1スコア・ROC-AUCなど予測モデル評価の指標がありますが、これらは主に「陽性と陰性を正しい順序に並べられているか(識別力)」を測る指標です。確率較正が測るのは別の軸で、「モデルが出す確率の値そのものが、実際の頻度と一致しているか」です。この2つは独立しており、識別力が高くても較正がずれているモデルは珍しくありません。

02.確率較正とは|Reliability Diagram(信頼度曲線)とECEで測る

確率較正が取れているとは、予測確率がpのグループを十分たくさん集めたとき、そのうち実際に陽性である割合もほぼpになる状態を指します。「解約確率70%」と予測した顧客を1000人集めたら、そのうちおよそ700人が実際に解約している、という状態です。個々の予測が当たるか外れるかではなく、同じ確信度のグループ全体で見たときの整合性です。

このズレを可視化する図がReliability Diagram(信頼度曲線)です。予測確率を10個程度のビンに区切り、各ビンの平均予測確率(横軸)と実際の陽性率(縦軸)をプロットします。較正が完璧なら、すべての点が45度の対角線に乗ります。

図:Reliability Diagram(信頼度曲線)— 対角線が「較正が取れている」状態

横軸は予測確率をビンに区切ったときの平均予測確率、縦軸はそのビンに含まれるサンプルの実際の陽性率です。較正前(オレンジ)は対角線より下に沈み、モデルが実際より高い確信度を出す「過信」を示します。較正後(青)は対角線に近づきます。実データセットの計算結果ではなく、較正の考え方を説明するための架空の数値例です。

1.00.0平均予測確率(横軸)実際の陽性率(縦軸)理想(対角線)較正前(過信)較正後

曲線が対角線の下に沈むほど過信、上に浮くほど過小確信です。較正の手法を変えたりモデルを差し替えたりしたときは、この曲線が対角線にどれだけ近づいたかで改善を確認します(数値はいずれも説明用の例です)。

対角線より下に沈む曲線は、モデルが過信(overconfident)していることを示します。「90%の確信」と言いながら実際は70%しか当たっていない、という状態です。逆に対角線より上に浮く曲線は過小確信(underconfident)で、モデルが実際より控えめな確率しか出していません。

曲線を1つの数値にまとめた指標がECE(Expected Calibration Error、期待較正誤差)です。各ビンの「平均予測確率と実際の陽性率の差の絶対値」を、ビンに含まれるサンプル数で重み付けして平均します。

ECE = Σ ( ビンmのサンプル数 / 全体のサンプル数 ) × | ビンmの実際の陽性率 − ビンmの平均予測確率 |

ECEが0に近いほど較正が取れており、値が大きいほど予測確率と実際の頻度のズレが大きいことを意味します。しきい値の絶対的な合格ラインは決まっていないため、較正の手法を変えたりモデルを差し替えたりしたときに、ECEが下がったかどうかで改善を判断します。

!
混同しやすい点
較正が良くても、識別力が低ければ意味がない

確率較正は「確信度が正しいか」だけを測り、「陽性と陰性を分け切れているか」は測りません。極端な例として、学習データ全体の陽性率が10%のとき、すべてのサンプルに一律で0.1を予測するモデルはECEがほぼ0になり得ますが、個々の予測が誰一人としてほかと区別できていないため実務では役に立ちません。較正はROC-AUCやF1スコアといった識別力の指標とセットで確認します。

03.なぜ較正が崩れるか|モデルごとの過信・過小確信の傾向

較正の崩れ方は、モデルの学習方法によっておおよそ決まった傾向を持ちます。NiculescuMizilとCaruanaによる実証研究では、モデルの種類ごとに較正の崩れ方が体系的に異なることが示されました(Predicting Good Probabilities with Supervised Learning, ICML 2005)。

モデルの種類較正の崩れ方背景
ロジスティック回帰比較的良好較正と整合する対数尤度を直接最適化して学習するため
勾配ブースティング木(GBDT)・SVM0や1に近い極端な予測を避ける過小確信。中央に寄るシグモイド状の歪みマージンを最大化する学習の性質上、確信度の高い予測を避けやすい
ナイーブベイズ0または1に張り付く過信特徴量どうしが独立という仮定が強く、確率を極端に押し出しやすい
ランダムフォレスト・バギング木比較的良好とされてきた複数の木の予測を平均するバギングの性質で確率が滑らかになるため
層の深い現代のニューラルネットワーク過信しやすい層数・パラメータ数が増え正則化が弱いモデルほど過信する傾向が報告されている

2005年時点の実証研究では、当時の(今よりずっと小規模な)ニューラルネットワークとバギング木は較正が比較的良好とされていました。しかしその後、層を深くしパラメータ数を増やした現代のニューラルネットワークでは、精度こそ上がった一方で確信度が過信気味になることがGuoらの2017年の研究(On Calibration of Modern Neural Networks)で報告されています。モデルの学習方法が変われば較正の崩れ方も変わるため、「このモデルなら較正しなくて大丈夫」と決め打ちせず、Reliability DiagramとECEで毎回確認します。

04.事後較正の手法|Platt Scaling・Isotonic Regression・Temperature Scaling

較正のズレが分かったら、次はそれを補正します。モデル自体を学習し直すのではなく、出力スコアを入力にとり、較正済みの確率を返す小さな変換関数を後付けするのが事後較正の基本発想です。代表的な手法が3つあります。

Platt Scaling|1本のシグモイドで補正する

Platt Scaling(プラット・スケーリング)は、モデルの出力スコアを1本のシグモイド関数に通す手法です。calibrated = 1 / (1 + exp(A × score + B))という式のパラメータA・Bだけを、較正用データに対する最尤推定で求めます。もともとは1999年にJohn PlattがSVMの出力を確率に変換するために提案した手法です。パラメータが2個しかないため少ない較正データでも安定して学習できるのが利点で、勾配ブースティング木のようなシグモイド状に歪んだ較正にはとくに相性が良い手法です。

Isotonic Regression|形を仮定しないノンパラメトリックな補正

Isotonic Regression(アイソトニック回帰)は、「予測スコアが大きいほど較正後の確率も単調に大きくなる」という順序関係だけを仮定し、それ以外の形はデータから自由に決めるノンパラメトリックな手法です。Pool Adjacent Violators(PAV)というアルゴリズムで、階段状の変換関数を求めます。シグモイドという決め打ちの形を仮定しないぶん柔軟ですが、scikit-learnの公式ドキュメントが指摘するとおり較正用データが少ない(目安1000件未満)と過学習しやすいという弱点があります(scikit-learn: Probability calibration)。

Temperature Scaling|ニューラルネット向けの1パラメータ版

Temperature Scaling(温度スケーリング)は、ニューラルネットワーク向けにPlatt Scalingをさらに単純化した手法です。softmaxに入れる前のロジットを、較正用データから求めた1つの温度パラメータTで割るだけで、calibrated = softmax(logits / T)という式になります。パラメータが1個だけなので分類の精度(accuracy、どのクラスが一番スコアが高いか)はまったく変えず、確信度の強さだけを調整します。Platt ScalingのA・Bの2パラメータのうち傾きに相当する1個だけを残した特別なケースと考えると理解しやすい手法です。

図:3つの事後較正手法は「どんな形の変換をかけるか」が違う

Platt ScalingとIsotonic Regressionは「生スコア→較正後の確率」の対応関係(写像)の形が違います。Temperature Scalingは写像ではなく、各クラスのsoftmax出力の高さ(確信度)を全体的に弱める・強める調整です(数値はいずれも説明用の例です)。

10生スコア(低→高)

Platt Scaling

1本のなめらかなS字(パラメータ2個)に押し込める。形が決まっている分、少ないデータでも安定する。

10生スコア(低→高)

Isotonic Regression

順序(単調増加)さえ守れば自由な階段状に折れ曲がれる。柔軟な分、データが少ないと段がガタつく(過学習)。

元の出力T=2で割った後確信度

Temperature Scaling

1番高いクラス(オレンジ)の順位は変わらないまま、全クラスの高さの差だけ縮む=確信度が弱まる。

手法仮定の強さ必要な較正データ量向くモデル
Platt Scalingシグモイド型の歪みを仮定(パラメータ2個)少量でも安定SVM・勾配ブースティング木など、シグモイド状に歪みやすいモデル
Isotonic Regression単調性のみを仮定(ノンパラメトリック)多め(目安1000件以上)歪み方が複雑・較正データが十分にある場合
Temperature ScalingPlatt Scalingの1パラメータ版少量でも安定ニューラルネットワークの多クラス分類
# 事後較正:学習済みモデルの出力にPlatt Scaling / Isotonic Regressionを後付けする(scikit-learn)
from sklearn.calibration import CalibratedClassifierCV, calibration_curve
from sklearn.ensemble import GradientBoostingClassifier
from sklearn.frozen import FrozenEstimator
from sklearn.model_selection import train_test_split
import numpy as np

# X, y: 学習用データ。学習・較正・評価の3つに分け、どの用途にも同じデータを使い回さない
X_train, X_rest, y_train, y_rest = train_test_split(X, y, test_size=0.4, random_state=0)
X_calib, X_eval, y_calib, y_eval = train_test_split(X_rest, y_rest, test_size=0.5, random_state=0)

# 1. モデルはいつもどおり学習する(較正は意識しなくてよい)
base_model = GradientBoostingClassifier().fit(X_train, y_train)

# 2. 学習済みモデルを凍結し、較正用データだけで較正器を後付けする
platt = CalibratedClassifierCV(FrozenEstimator(base_model), method="sigmoid").fit(X_calib, y_calib)
isotonic = CalibratedClassifierCV(FrozenEstimator(base_model), method="isotonic").fit(X_calib, y_calib)

# 3. Reliability Diagramで較正前後を比較する(較正器の学習に使っていないX_evalで評価する)
prob_raw = base_model.predict_proba(X_eval)[:, 1]
prob_platt = platt.predict_proba(X_eval)[:, 1]
frac_pos_raw, mean_pred_raw = calibration_curve(y_eval, prob_raw, n_bins=10)
frac_pos_platt, mean_pred_platt = calibration_curve(y_eval, prob_platt, n_bins=10)

# 4. ECE(Expected Calibration Error)を計算する
def expected_calibration_error(y_true, y_prob, n_bins=10):
    bins = np.linspace(0, 1, n_bins + 1)
    idx = np.digitize(y_prob, bins) - 1
    idx = np.clip(idx, 0, n_bins - 1)  # 予測確率がちょうど1.0のときも最後のビンに入れる
    ece = 0.0
    for b in range(n_bins):
        mask = idx == b
        if mask.sum() == 0:
            continue
        acc = y_true[mask].mean()
        conf = y_prob[mask].mean()
        ece += (mask.sum() / len(y_prob)) * abs(acc - conf)
    return ece

print("較正前 ECE:", expected_calibration_error(y_eval, prob_raw))
print("較正後 ECE:", expected_calibration_error(y_eval, prob_platt))
# Temperature Scaling:学習済みニューラルネットのロジットを温度Tで割るだけ(PyTorch)
import torch

class TemperatureScaler(torch.nn.Module):
    def __init__(self, model):
        super().__init__()
        self.model = model  # 学習済みモデルは凍結し、重みは更新しない
        self.temperature = torch.nn.Parameter(torch.ones(1) * 1.5)

    def forward(self, x):
        logits = self.model(x)
        return logits / self.temperature

def fit_temperature(scaler, calib_logits, calib_labels, max_iter=50):
    optimizer = torch.optim.LBFGS([scaler.temperature], lr=0.01, max_iter=max_iter)
    nll = torch.nn.CrossEntropyLoss()

    def closure():
        optimizer.zero_grad()
        loss = nll(calib_logits / scaler.temperature, calib_labels)
        loss.backward()
        return loss

    optimizer.step(closure)
    return scaler.temperature.item()

多クラス分類にPlatt ScalingやIsotonic Regressionを使う場合、scikit-learnの実装は各クラスを1対他(One-vs-Rest)で個別に較正し、合計が1になるよう事後的に正規化します。仕組みは公式ドキュメントで説明されています。

05.事後較正の実務フロー|データの分け方からVertex AIでの運用まで

事後較正の実務は、モデルを鍛え直す作業ではありません。学習済みモデルはそのまま、出力の後ろにもう一段変換を差し込むだけです。実際の作業は次の5ステップに分解できます。

図:較正がずれているとき、モデル本体を学習し直す必要はない

同じ「確信度を直したい」という目的でも、モデル本体を学習し直すのと較正器だけ後付けするのとでは、変わるもの・コスト・戻せるかどうかがまったく違います。

モデル本体を学習し直す

  • 重みごと変わるため、識別力(AUCなど)まで一緒に動いてしまう
  • フルの学習ジョブ・再検証が必要で、時間もコストもかかる
  • 結果が悪化しても、すぐには元の状態に戻せない

較正器だけ後付けする(事後較正)

  • 変わるのは出力スコアの後段の変換だけ。元のモデルの重みは一切変更しない
  • 識別力(AUCなど)はそのまま。確信度の値だけを直せる
  • 較正器の学習は軽量(数秒〜数分)。差し替え・巻き戻しが簡単

「較正がずれている」というだけの理由でモデル全体を作り直すと、直したい以上のものまで変えてしまいます。事後較正は、変える範囲を「出力の後ろの小さな変換」に絞ることで、この副作用とコストを避ける設計です。

図:事後較正は学習済みモデルの『後ろ』に変換をもう1段差し込むだけ
  1. 1
    モデルを学習する

    分類モデルをいつもどおり訓練データで学習する。この段階では較正を意識せず、識別力(AUCやF1スコア)を上げることに集中してよい。

  2. 2
    較正用データを分ける

    学習にもテスト評価にも使っていない、第3のホールドアウトデータ(較正セット)を用意する。訓練データで較正すると、モデルが見慣れたデータに対して甘く較正されてしまう。

  3. 3
    較正器をフィットする

    較正セットに対するモデルの出力スコアと、実際の正解ラベルを使って、Platt Scaling・Isotonic Regression・Temperature Scalingのいずれかで変換関数を学習する。元のモデルのパラメータは一切変更しない。

  4. 4
    推論時は2段構えで変換する

    本番では「元のモデルでスコアを出す→較正器に通す」の順を必ず両方通す。較正器だけを差し替えられるよう、モデル本体と較正器はコードとして分離しておく。

  5. 5
    継続的に監視し、較正器だけ再学習する

    本番の入力分布や運用が変われば較正も崩れていく。実際のラベルが確定するたびにReliability DiagramとECEを再計算し、ズレが広がっていたら較正器だけを較正用データで再学習する。

モデル本体の再学習と、較正器の再学習は別サイクルで回せる。較正だけがずれている段階でモデル全体を作り直す必要はない。

図:事後較正には、学習・較正・評価の3つに分けたデータを用意する

手元のデータを1つの塊のまま使い回さず、3つの区画に分けます。同じ区画を2つの用途に使い回すと、そこだけ甘い結果が出ます(数値はいずれも説明用の例です)。

学習用データ較正用評価用60%20%20%
区画使う工程同じデータを使い回すと起きること
学習用データ(X_train)モデル本体を学習する較正用・評価用のデータが混じると、モデルが評価用データも見た状態で学習してしまう
較正用データ(X_calib)Platt Scaling・Isotonic Regressionなど較正器を学習する評価用データで較正器を学習すると、Reliability DiagramとECEが甘く(良く)出る
評価用データ(X_eval)Reliability DiagramとECEを計算し、較正前後の改善を確認する較正器の学習に使ったデータで評価すると、in-sample(見たことのあるデータ)の結果になり実態より楽観的になる

この5ステップは、Google CloudのVertex AIのようなMLOps基盤の上でも同じ順番で組みます。なお、Vertex AIは2026年に「Gemini Enterprise Agent Platform」へ改称され、AutoMLやカスタム学習は新プラットフォームの「Models」配下の機能として続いています。改称の経緯はAutoMLとGoogleのAutoML(Vertex AI)の使いどころで整理しているので、本記事では読みやすさを優先し、従来の呼称「Vertex AI」で表記します。

Vertex AIのAutoMLは、分類モデルの評価結果として各クラスのconfidence scoreと、confidenceThresholdを変えたときの適合率・再現率の推移を返します。ただしこのconfidence scoreは較正済みの確率であることを保証するものではなく、Vertex AIの評価指標のドキュメントも、閾値ごとの適合率・再現率のトレードオフという識別力側の指標が中心です。較正まで担保したいときは、AutoMLやカスタム学習で作ったモデルに対して、Vertex AI PipelinesのステップとしてStep 2〜3(較正セットの分割・較正器のフィット)を独立したコンポーネントとして組み込み、Vertex AI Predictionへのデプロイ時にカスタム予測ルーチンとして「元モデル→較正器」の2段構えを実装します。

i
Step 5(継続監視)の注意点
Vertex AI Model Monitoringは、較正のズレそのものは直接監視しない

Vertex AI Model Monitoringは、入力特徴量が学習時の分布からどれだけズレたか(スキュー)や、時間とともにどう変化したか(ドリフト)を検知する機能で、Vertex Explainable AIと組み合わせれば特徴量の寄与度のスキュー・ドリフトも追えます。ただし、予測確率の較正そのもの(ECEのような指標)を直接監視する機能は用意されていません。較正のズレを継続的に追いたい場合は、予測スコアと実際に確定したラベルをBigQueryなどに記録し、定期ジョブでReliability DiagramとECEを再計算する仕組みを自前で組む必要があります。この「予測とラベルをログに残し、定期的に較正を再計算する」という構成自体はVertex AI固有のものではなく、予測とラベルを保存できる基盤であればどのクラウドでも同じように組めます。

事後較正を組むときに最低限おさえること
  • ✓ モデル本体は学習し直さず、出力の後ろに較正器を1段差し込む
  • ✓ 較正器は学習にもテスト評価にも使っていない第3のデータで学習する
  • ✓ 較正のズレはReliability DiagramとECEで測り、AUCなど識別力の指標とは別に確認する
  • ✓ GBDT・SVM系はPlatt Scaling、データが十分ならIsotonic Regression、ニューラルネットはTemperature Scalingが基本の使い分け
  • ✓ 本番投入後もラベルが確定するたびにECEを再計算し、較正器だけを再学習できる構成にしておく
  • ✓ プラットフォームの監視機能が較正のズレ自体を監視しているとは限らないため、対象範囲を確認する

06.よくある質問(FAQ)

確率較正(キャリブレーション)とは何ですか?

分類モデルが出す予測確率と、実際に起きる頻度を一致させる工程です。「確率70%」と予測したグループを十分たくさん集めたとき、そのうち実際に約70%が陽性である状態を「較正が取れている」と呼びます。ズレの大きさはReliability Diagram(信頼度曲線)とECE(Expected Calibration Error)で測り、ズレが大きければPlatt Scaling・Isotonic Regression・Temperature Scalingといった事後較正で補正します。

なぜモデルの予測確率はそのまま信頼度として使えないのですか?

多くのモデルは学習方法の性質上、確率を過信または過小に見積もる傾向を持つためです。勾配ブースティング木やSVMはマージンを最大化する学習の性質上、確信度の高い予測を避ける過小確信になりやすく、ナイーブベイズは特徴量の独立性という強い仮定から確率を極端に押し出す過信になりやすいことが実証研究で示されています。層の深い現代のニューラルネットワークも、正則化が弱く高精度なほど過信しやすい傾向が報告されています。0〜1の値になっていることと、統計的に較正されていることは別の性質です。

Platt ScalingとIsotonic Regressionはどう使い分けますか?

較正用データが少ないときや、シグモイド状に歪みやすい勾配ブースティング木・SVMにはPlatt Scalingが安定します。パラメータが2個しかないため過学習しにくいのが理由です。較正用データが十分にあり(目安1000件以上)、歪み方が単純なシグモイドに収まらないときはIsotonic Regressionが柔軟に対応できます。Isotonic Regressionは較正データが少ないと過学習しやすい点に注意してください。

Temperature ScalingはPlatt Scalingと何が違いますか?

Temperature Scalingは、Platt Scalingを1パラメータに単純化した手法です。ニューラルネットワークのロジットを、較正用データから求めた温度Tで割ってからsoftmaxに通すcalibrated = softmax(logits / T)という式で、分類の精度(どのクラスが一番スコアが高いか)は変えず、確信度の強さだけを調整します。Platt ScalingがA・Bの2パラメータを持つのに対し、Temperature Scalingは実質的に傾きに相当する1パラメータだけを調整する特別なケースです。

較正用データは訓練データやテストデータと兼用してよいですか?

兼用しないでください。訓練データで較正すると、モデルが学習時に見たデータに対して甘く較正され、本番のような未知のデータに対しては較正が崩れます。学習・(識別力の)評価・較正の3つの用途にデータを分け、較正専用のホールドアウトを確保してください。

Vertex AIは確率較正を自動でやってくれますか?

いいえ、確率較正を自動で行う機能は用意されていません。AutoMLが返すconfidence scoreや、confidenceThresholdごとの適合率・再現率は識別力側の評価指標が中心で、較正済みの確率であることは保証されません。較正が必要な場合は、Vertex AI Pipelinesのステップとして較正器の学習を組み込み、Vertex AI Predictionへのデプロイ時に「元モデル→較正器」の2段構えを実装します。較正のズレの継続監視も、予測とラベルをログに残して自前で計算する仕組みが必要です。

07.まとめ

分類モデルが出す予測確率は、そのままでは実際の頻度と一致しません。勾配ブースティング木やSVMは確信度を控えめに、ナイーブベイズや層の深い現代のニューラルネットワークは確信度を強く出しがちで、モデルの学習方法によって崩れ方の傾向が異なります。このズレはReliability Diagram(信頼度曲線)とECE(Expected Calibration Error)で可視化・数値化でき、ROC-AUCやF1スコアといった識別力の指標とは独立に確認する必要があります。

補正には、学習済みモデルの出力にもう一段変換を差し込む事後較正を使います。シグモイド状に歪みやすい勾配ブースティング木・SVMにはPlatt Scaling、較正データが十分あるならIsotonic Regression、ニューラルネットワークにはTemperature Scalingが基本の使い分けです。実務では、学習にもテスト評価にも使っていない較正専用データで較正器を学習し、本番投入後もラベルが確定するたびにECEを再計算して、必要なら較正器だけを再学習します。Vertex AIのようなMLOps基盤も較正を自動でやってくれるわけではなく、較正のステップと継続監視の仕組みは自分で設計して組み込む必要があります。

識別力側の評価指標・確率を出力する回帰モデルの基礎・AutoMLでの運用は、それぞれ別記事で詳しく整理しています。あわせてご覧ください。

お問い合わせ

予測モデルの較正・評価設計と運用の伴走支援をご相談ください

分類モデルの較正(キャリブレーション)を含む評価指標の設計、事後較正の実装、本番投入後の継続的な精度モニタリングまで、データ分析・AI活用の伴走支援を行っています。お気軽にお問い合わせください。

お問い合わせはこちら

データ分析・アルゴリズム 基礎知識集

一覧に戻る →
03

個別指標カテゴリ

07

モデル構築の自動化

この記事をシェア
澤田 翔太(Shota Sawada)
この記事を書いた人

澤田 翔太

株式会社クリプタル 代表取締役

1988年生まれ、慶應義塾大学卒。創業メンバーとして関わった株式会社セールスサポートを株式会社ネオマーケティング(東証STD 4196)に売却。株式会社クリプタルでも複数の事業立ち上げと売却を経験し、2022年9月には婚活・恋愛メディア「シッテク」「婚活会議」を株式会社ベビーカレンダー(東証GRT 7363)へ売却。現在はAI業務支援事業、TANTOU事業、グロースハック支援事業、メディア事業、SEOコンサルティング事業を手がける。