Model Calibration

Autumn 2025

O que queremos dizer com model calibration?

  • Model calibration é sobre garantir que as probabilidades previstas por um modelo reflitam as probabilidades reais.

O que queremos dizer com model calibration?

  • Model calibration é sobre garantir que as probabilidades previstas por um modelo reflitam as probabilidades reais.

  • Em outras palavras, um modelo bem calibrado dá probabilidades que correspondem aos resultados reais.

O que queremos dizer com model calibration?

  • Model calibration é sobre garantir que as probabilidades previstas por um modelo reflitam as probabilidades reais.

  • Em outras palavras, um modelo bem calibrado dá probabilidades que correspondem aos resultados reais.

Em resumo, se o seu modelo diz que algo tem 70% de chance de acontecer, esse evento deveria de fato acontecer cerca de 70% das vezes ao longo de muitas previsões desse tipo.

Exemplo

Temos dois classificadores:

  • Model A: 90% de accuracy, 0.91 de confidence em cada previsão.
  • Model B: 90% de accuracy, 0.99 de confidence em cada previsão.

Qual é melhor?

Exemplo

Temos dois classificadores:

  • Model A: 90% de accuracy, 0.91 de confidence em cada previsão.
  • Model B: 90% de accuracy, 0.99 de confidence em cada previsão.

Qual é melhor?

Bem, Model A é melhor porque se um modelo tem 90% de accuracy em sua previsão (prevendo corretamente 9 de 10 amostras), então seu confidence também deveria ser 90%.

Exemplo

O que acontece com o Model B?

Exemplo

O que acontece com o Model B?

  • Model B é overconfident, já que seu confidence é 99% mas seu accuracy é 90%

Exemplo

O que acontece com o Model B?

  • Model B é overconfident, já que seu confidence é 99% mas seu accuracy é 90%

Por outro lado, se houvesse um Model C com 90% de accuracy e 0.8 de confidence em cada previsão.

Exemplo

O que acontece com o Model B?

  • Model B é overconfident, já que seu confidence é 99% mas seu accuracy é 90%

Por outro lado, se houvesse um Model C com 90% de accuracy e 0.8 de confidence em cada previsão.

  • Model C é underconfident.

Exemplo

Por definição, dizemos que um modelo está bem calibrado quando uma previsão de uma classe com confidence p está correta 100p% das vezes.

Caso contrário, os modelos underconfident e overconfident são chamados de ill-calibrated.

Exemplo

Abaixo está o reliability plot (discutido mais adiante) de um modelo ill-calibrated e um well-calibrated:

Exemplo

Abaixo está o reliability plot (discutido mais adiante) de um modelo ill-calibrated e um well-calibrated:

Isso significa que um modelo tem muitos falsos negativos!!

Por que isso é importante?

  • Previsões confiáveis – especialmente em áreas de alto risco como saúde, decisões legais, ou condução autônoma.

Por que isso é importante?

  • Previsões confiáveis – especialmente em áreas de alto risco como saúde, decisões legais, ou condução autônoma.

  • Melhor tomada de decisão – quando probabilidades são usadas para disparar ações (como alertas ou intervenções).

Por que isso é importante?

  • Previsões confiáveis – especialmente em áreas de alto risco como saúde, decisões legais, ou condução autônoma.

  • Melhor tomada de decisão – quando probabilidades são usadas para disparar ações (como alertas ou intervenções).

  • Estimativa de incerteza – útil em tarefas posteriores como ensembling, active learning, ou inferência Bayesiana.

Exemplo

Um modelo de detecção de covid onde, se o confidence for maior que 90%, o paciente é enviado ao médico.

Exemplo

Um modelo de detecção de covid onde, se o confidence for maior que 90%, o paciente é enviado ao médico.

  • Se o modelo for overconfident, a maioria dos pacientes será enviada a médicos, aumentando ainda mais a carga de trabalho.

Exemplo

Um modelo de detecção de covid onde, se o confidence for maior que 90%, o paciente é enviado ao médico.

  • Se o modelo for overconfident, a maioria dos pacientes será enviada a médicos, aumentando ainda mais a carga de trabalho.
  • Se o modelo for underconfident, então há chances de que o paciente com COVID-19 não receba o tratamento necessário.

Técnicas: Temperature Scaling:

  • Usada em redes neurais multiclasse.
  • Aplica uma única temperature escalar para suavizar os logits antes do softmax.
  • T é aprendido usando um conjunto de validação para minimizar o Negative Log Likelihood (NLL).
  • Quando T>1, o softmax se torna “mais suave” (menor confidence). \[\hat{p}_i = \frac{e^{z_i / T}}{\sum_j e^{z_j / T} }\]

Técnicas: Platt Scaling ou Sigmoid

  • Usada em classificadores binários (especialmente SVMs).
  • Ajusta uma regressão logística aos logits ou scores do modelo vs. os rótulos verdadeiros.
  • A e B são aprendidos usando um conjunto de validação. \[\hat{p} = \frac{1}{1 + e^{(Az+B)}}\]

Técnicas: Histogram Binning

  • Usada tanto em classificação binária quanto multiclasse.
  • Agrupa as probabilidades previstas em intervalos fixos (por exemplo, 0–0.1, 0.1–0.2, …).
  • Substitui cada previsão pelo accuracy empírico do seu bin. \[\text{Calibrated } \hat{p} = \frac{\text{# correct predictions in bin}}{\text{# predictions in bin}}\]

Técnicas: Isotonic Regression

  • Usada em classificação binária com bastante dado de validação.
  • Mapeia os scores do modelo para probabilidades usando uma função não decrescente.
  • Divide o intervalo de scores em bins, depois aprende uma função em degraus que melhor se ajusta aos resultados reais em cada bin. \[\sum_i (y_i - \hat{y}_i)^2\]

Técnicas: Beta Calibration

  • Quando Platt Scaling é simples demais mas você não quer a complexidade total de um método não paramétrico.
  • Ajusta um modelo baseado em uma distribuição Beta aos scores.
  • Generaliza Platt Scaling usando uma Beta CDF para ajustar melhor as distribuições de scores.
  • Aprende os parâmetros a, b, c a partir do dado de validação. \[\hat{p} = BetaCDF(az +b, c)\]

Resumo

Métricas

  • Expected Calibration Error (ECE)

  • Maximum Calibration Error (MCE)

  • Reliability Diagrams – plota as probabilidades previstas vs. as reais.

Expected Calibration Error (ECE)

  • ECE mede a diferença média entre o confidence previsto e o accuracy real — através de bins de previsões.

  • Divide as previsões em M bins, depois para cada bin B, calcula accuracy e confidence: \[ECE=\sum_{i=1}^M \frac{|B_i|}{n} |acc(B_i) - conf(B_i)|\]

  • Onde |B| é o número de amostras no bin B.

  • Um ECE menor significa melhor calibration.

Maximum Calibration Error (MCE)

  • MCE foca no pior bin — a diferença máxima entre confidence e accuracy em todos os bins. \[MCE = \max_{i=1}^{M} |acc(B_i) - conf(B_i)|\]

  • Destaca a maior lacuna de calibration.

  • Útil quando você se importa com qualquer má calibration, não só a média.

Reliability Diagrams

  • Uma ferramenta visual para plotar a probabilidade prevista vs. o accuracy real.

Resumo

Referências