Avaliando a Acurácia do Modelo
UFPE
Uma tarefa importante é entender como nossos métodos estatísticos estão performando em um conjunto de dados.
Selecionar a melhor abordagem pode ser uma das partes mais desafiadoras da aplicação do aprendizado estatístico na prática.
Discutiremos alguns dos conceitos mais importantes que surgem ao selecionar um procedimento de aprendizado estatístico para um conjunto de dados específico.
Abordaremos:
Medindo a Qualidade do Ajuste: Como avaliar o desempenho do modelo.
O Trade-Off Viés-Variância: Um conceito fundamental na seleção de modelos.
Para avaliar o desempenho de um método de aprendizado estatístico em um determinado conjunto de dados, precisamos de alguma forma de medir quão bem suas predições correspondem aos dados observados.
Precisamos quantificar até que ponto o valor de resposta predito para uma determinada observação está próximo do valor de resposta verdadeiro para essa observação.
No cenário de regressão, a medida mais comumente usada é o erro quadrático médio (MSE):
\[ \text{MSE} = \frac{1}{n} \sum_{i=1}^{n} (y_i - \hat{f}(x_i))^2 \]
onde:
O MSE é a média das diferenças quadráticas entre os valores previstos e os reais.
Como medimos o quão bem uma função de predição \(\hat{f}: \mathbb{R}^p \to \mathbb{R}\) se desempenha?
Precisamos de um critério. Em regressão, frequentemente usamos uma Função de Perda \(\mathcal{L}(predito, real)\) para quantificar o erro de uma única predição.
Exemplos:
O Risco de uma função \(\hat{f}\) é sua perda esperada sobre os dados \((X, Y)\).
\[R(\hat{f}) = E[\mathcal{L}(\hat{f}(X), Y)]\]
Usando a perda quadrática, a predição neste caso é chamada de Erro Quadrático Médio (MSE):
\[R(\hat{f}) = E[(Y - \hat{f}(X))^2]\]
Seja \((X_{novo}, Y_{novo})\) uma nova observação não usada para estimar ou treinar \(\hat{f}\)
Usando a perda quadrática, o risco de predição neste caso é chamado de MSE de predição:
\[R_{pred}(\hat{f}) = E[(Y_{novo} - \hat{f}(X_{novo}))^2]\]
Minimizar o risco de predição (com perda quadrática) \(R_{pred}(\hat{f})\) está intimamente relacionado à estimação da função de regressão \(f(x) = E[Y|X=x]\).
Vamos definir o risco de regressão como o MSE para estimar \(f(X)\):
\[R_{reg}(\hat{f}) = E \left[ \left(f(X) - \hat{f}(X) \right)^2\right]\]
O teorema a seguir formaliza essa conexão.
Teorema 1: Suponha que definimos o risco de predição de \(\hat{f}: \mathbb{R}^p \to \mathbb{R}\) via perda quadrática: \(R_{pred}(\hat{f}) = E \left[ \left(Y - \hat{f}(X) \right)^2\right]\), onde \((X, Y)\) é uma nova observação. Seja o risco de regressão \(R_{reg}(\hat{f}) = E \left[ \left(f(X) - \hat{f}(X) \right)^2\right]\), onde \(f(X) = E[Y|X]\). Então:
\[R_{pred}(\hat{f}) = R_{reg}(\hat{f}) + E[Var[Y|X]]\]
1
Prova.: \[ \begin{aligned} R_{pred}(\hat{f}) &= E\left[\left(Y - \hat{f}(X)\right)^2\right] \\ &= E\left[\left(Y - f(X) + f(X) - \hat{f}(X)\right)^2\right] \\ &= E\left[ \left(f(X) - \hat{f}(X)\right)^2 + \left(Y - f(X)\right)^2 + 2 \left(f(X) - \hat{f}(X) \right) \left(Y - f(X) \right) \right] \\ &= E\left[\left(f(X) - \hat{f}(X) \right)^2 \right] + E\left[\left(Y - f(X) \right)^2 \right] + 2 E\left[\left(f(X) - \hat{f}(X) \right) \left( Y - f(X) \right) \right] \end{aligned} \]
Agora considere o termo cruzado, usando a Lei da Esperança Total1: \[E[A] = E[E[A|X]]\]
\[ \begin{aligned} E \left[ \left(f(X) - \hat{f}(X) \right) \left(Y - f(X) \right) \right] &= E\Big[ E \left[ \left( f(X) - \hat{f}(X) \right) \left( Y - f(X) \right) | X \right] \Big] \\ &= E\Big[ \left( f(X) - \hat{f}(X) \right) \underbrace{E \left[ \left( Y - f(X) \right) | X \right]}_{= E[Y|X] - f(X) = 0} \Big] \\ &= E \left[ \left( f(X) - \hat{f}(X) \right) \cdot 0 \right] = 0 \end{aligned} \]
Então, o termo cruzado é zero. Ficamos com:
\[R_{pred}(\hat{f}) = E[(f(X) - \hat{f}(X))^2] + E[(Y - f(X))^2]\]
O primeiro termo é a definição do risco de regressão: \[E[(f(X) - \hat{f}(X))^2] = R_{reg}(\hat{f})\]
O segundo termo é a variância condicional esperada: \[E[(Y - f(X))^2] = E[ E[ (Y - f(X))^2 | X ] ] = E[Var[Y|X]]\]
Portanto: \[R_{pred}(\hat{f}) = R_{reg}(\hat{f}) + E[Var[Y|X]]\]
\(\square\)
\[R_{pred}(\hat{f}) = \underbrace{E \left[ \left( f(X) - \hat{f}(X) \right)^2 \right]}_{R_{reg}(\hat{f}) \text{ (Erro Redutível)}} + \underbrace{E \left[ Var[Y|X] \right]}_{\text{Erro Irredutível}}\]
\[\underset{\hat{f}}{\operatorname{arg min}} R_{pred}(\hat{f}) = \underset{\hat{f}}{\operatorname{arg min}} R_{reg}(\hat{f}) = f(x)\]
Por que um baixo risco condicional \(R(\hat{f}) = E \left[\mathcal{L}(\hat{f}(X), Y) \right]\) é desejável?
Imagine que observamos um grande e novo conjunto de dados (de validação) \((X_{n+1}, Y_{n+1}), \dots, (X_{n+m}, Y_{n+m})\), amostrado i.i.d da mesma distribuição que \((X, Y)\).
Pela Lei dos Grandes Números, se \(m\) for grande, a perda média nestes novos dados se aproximará do risco:
\[ \frac{1}{m} \sum_{i=1}^{m} \mathcal{L}(\hat{f}(X_{n+i}), Y_{n+i}) \approx R(\hat{f}) \]
Portanto, se \(R(\hat{f})\) é pequeno, esperamos que \(\hat{f}(X_{novo}) \approx Y_{novo}\) em média para observações futuras. Isso é válido para qualquer função de perda \(\mathcal{L}\).
O objetivo dos métodos de um ponto de vista preditivo é, portanto:
Fornecer métodos que gerem bons estimadores \(\hat{f}\) da função verdadeira \(f(x)\), ou seja, estimadores com baixo risco \(R(\hat{f})\).
Na prática, não conhecemos \(f(x)\) e não podemos calcular \(R(\hat{f})\) exatamente, então precisamos de maneiras para estimar o risco ou escolher modelos que provavelmente terão baixo risco em dados não vistos1.


Esquerda: Dados simulados. A curva Preta é o f verdadeiro. Laranja: regressão linear. Azul & Verde: splines de suavização com diferentes flexibilidades.
Direita: Cinza: MSE de Treino. Vermelho: MSE de Validação. Tracejado: Mínimo MSE de validação possível. Os quadrados mostram o MSE de treino/validação para os ajustes à esquerda.


Aqui, f é altamente não linear. Tanto o MSE de treino quanto o de validação diminuem rapidamente antes que o MSE de validação comece a aumentar lentamente. É necessária mais flexibilidade do que no exemplo anterior. O modelo linear está sofrendo de underfitting.


Aqui, o f verdadeiro é muito mais próximo do linear. A regressão linear fornece um bom ajuste. O MSE de validação diminui apenas ligeiramente antes de aumentar. O modelo linear simples tem o melhor desempenho. Os modelos mais flexíveis estão fazendo overfitting ao ruído.
- O nível de flexibilidade correspondente ao MSE de validação mínimo varia consideravelmente entre os conjuntos de dados.
- Precisamos de métodos para estimar o MSE de validação usando os dados de treino disponíveis.
Duas abordagens comuns:
- O nível de flexibilidade correspondente ao MSE de validação mínimo varia consideravelmente entre os conjuntos de dados.
- Precisamos de métodos para estimar o MSE de validação usando os dados de treino disponíveis.
Duas abordagens comuns:
Divisão de Dados (e Conjuntos de Validação)
Uma estratégia simples para estimar o erro de validação é a divisão de dados:
Ajustar o modelo usando o conjunto de treino. Isso significa estimar quaisquer parâmetros do modelo (por exemplo, coeficientes na regressão linear).
Prever as respostas para as observações no conjunto de validação usando o modelo ajustado.
Calcular o MSE (ou outra métrica de erro) no conjunto de validação. Isso fornece uma estimativa do MSE de validação.
Suponha que tenhamos \(n\) observações: \((x_1, y_1), (x_2, y_2), ..., (x_n, y_n)\).
Podemos dividir os dados em:
Estimamos o risco, \(\hat{R}(f)\), que é uma aproximação do risco verdadeiro \(R(f)=E[\mathcal{L}(f(X);Y)]\), usando o conjunto de validação:
\[ \hat{R}(f) = \frac{1}{n-s} \sum_{i=s+1}^{n} (y_i - \hat{f}(x_i))^2 \]
onde \(\hat{f}\) é o modelo ajustado usando apenas os dados de treino, e a soma é sobre o conjunto de validação.
A forma de U observada nas curvas de MSE de validação (Figuras abaixo) é resultado de duas propriedades concorrentes dos métodos de aprendizado estatístico: viés e variância.



Variância se refere à quantidade pela qual \(\hat{f}\) mudaria se a estimássemos usando um conjunto de dados de treino diferente.
Idealmente, a estimativa para f não deveria variar muito entre os conjuntos de treino. O modelo deve ser relativamente estável.
Alta variância: Pequenas mudanças nos dados de treino podem resultar em grandes mudanças em \(\hat{f}\). O modelo é muito sensível aos dados de treino específicos que vê.
Métodos estatísticos mais flexíveis geralmente têm maior variância. Eles podem se ajustar muito de perto aos dados de treino, mas isso pode levar a overfitting e alta variabilidade.
Viés se refere ao erro introduzido ao aproximar um problema da vida real (que pode ser muito complexo) com um modelo mais simples.



O nível de flexibilidade ótimo (onde o MSE de validação é minimizado) difere entre os conjuntos de dados, dependendo do f verdadeiro e do nível de ruído.
Até agora, focamos em regressão (onde a variável resposta \(Y\) é quantitativa). Os conceitos de trade-off viés-variância também se aplicam à classificação (onde \(Y\) é qualitativa), com algumas modificações.
Em classificação, a medida mais comum de acurácia é a taxa de erro de treino:
\[ \frac{1}{n} \sum_{i=1}^{n} I(y_i \neq \hat{y}_i) \]
Como na regressão, estamos mais interessados na taxa de erro em observações de validação:
\[ \text{Ave}(I(\mathbf{y} \neq \mathbf{\hat{y}})) = \frac{1}{n_{\text{val}}} \sum_{i \in \mathcal{T}} I(y_i \neq \hat{y}_i) \]
\(\mathbf{\hat{y}}\) é o rótulo de classe previsto para uma observação de validação com o preditor \(\dot{\mathbf{x}}\).
Um bom classificador tem uma baixa taxa de erro de validação.
\(\mathcal{T}\) é o conjunto de índices das observações de validação.
Ave: abreviação de “Average” (Média)
Estrutura (para um problema de classificação binária):
| Previsto: Positivo | Previsto: Negativo | Total Real | |
|---|---|---|---|
| Real: Positivo | TP | FN | TP + FN |
| Real: Negativo | FP | TN | FP + TN |
| Total Previsto | TP + FP | FN + TN | n |
| Previsto: Positivo | Previsto: Negativo | Total Real | |
|---|---|---|---|
| Real: Positivo | TP | FN | TP + FN |
| Real: Negativo | FP | TN | FP + TN |
| Total Previsto | TP + FP | FN + TN | n |
Cenário: Conjunto de validação (\(n=100\)), 10 Reais Positivos (Minoria), 90 Reais Negativos (Maioria).
Previsões do Modelo:
Matriz de Confusão:
| Previsto: Positivo | Previsto: Negativo | Total Real | |
|---|---|---|---|
| Real: Positivo | 7 | 3 | 10 |
| Real: Negativo | 2 | 88 | 90 |
| Total Previsto | 9 | 91 | 100 |
Matriz de Confusão:
| Previsto: Positivo | Previsto: Negativo | Total Real | |
|---|---|---|---|
| Real: Positivo | 7 | 3 | 10 |
| Real: Negativo | 2 | 88 | 90 |
| Total Previsto | 9 | 91 | 100 |
Alta, certo?! Mas vamos olhar mais a fundo.
Fórmula: \[Precisão = \frac{TP}{TP + FP}\]
Foco: Minimizar Falsos Positivos (FP). Alta precisão significa que o modelo é confiável quando prevê a classe positiva.
Relevância: Importante quando o custo de um Falso Positivo é alto (ex: sinalizar uma transação legítima como fraude, enviar alertas desnecessários).
\[Precisão = \frac{TP}{TP + FP}\]
Usando o Exemplo:
TP = 7
FP = 2
Positivos Previstos = TP + FP = 7 + 2 = 9
Precisão: \(\frac{7}{7 + 2} = \frac{7}{9} \approx 0.778\) ou 77.8%
Interpretação: Quando este modelo prevê “Positivo”, ele está correto em cerca de 77.8% das vezes.
\[Recall = \frac{TP}{TP + FN}\]
Usando o Exemplo:
TP = 7
FN = 3
Positivos Reais = TP + FN = 7 + 3 = 10
Recall: \(\frac{7}{7 + 3} = \frac{7}{10} = 0.70\) ou 70.0%
Interpretação: Este modelo encontrou apenas 70% dos casos Positivos reais. 30% foram perdidos (FN). Isso destaca a fraqueza do modelo, ao contrário da acurácia de 95%.
Fórmula: \[F_1 = 2 \times \frac{Precisão \times Recall}{Precisão + Recall}\]
Conceito: A média harmônica de Precisão e Recall. Ela dá mais peso a valores mais baixos, o que significa que penaliza mais modelos onde uma métrica é alta e a outra é muito baixa do que uma média simples faria.
Relevância: Útil quando você precisa de um equilíbrio entre Precisão e Recall, e não há uma razão forte para priorizar uma significativamente sobre a outra.
\[F_1 = 2 \times \frac{Precisão \times Recall}{Precisão + Recall}\]
Usando o Exemplo:
Precisão ≈ 0.778
Recall = 0.70
\(F_1\)-Score: \(2 \times \frac{0.778 \times 0.70}{0.778 + 0.70} = 2 \times \frac{0.5446}{1.478} \approx 2 \times 0.368 \approx 0.737\)
Interpretação: O \(F_1\)-Score de 0.737 fornece uma visão mais equilibrada do desempenho do que a acurácia de 95%, refletindo o trade-off entre a precisão do modelo e sua capacidade de encontrar casos positivos.
\[MCC = \frac{TP \times TN - FP \times FN}{\sqrt{(TP + FP)(TP + FN)(TN + FP)(TN + FN)}}\]
Usando o Exemplo:
Interpretação: O valor do MCC de 0,71 indica uma correlação razoavelmente boa entre as previsões do modelo e as classes reais, levando em conta tanto as previsões corretas quanto as incorretas para ambas as classes de forma equilibrada.
\(n_{ii}\) é a soma de elementos na diagonal principal da matriz de confusão, \(n_{i+}\) é a soma dos elementos na \(i\)-ésima linha, \(n_{+i}\) é a soma dos elementos na \(i\)-ésima coluna, e \(N\) representa o número total de observações, ou seja, o número total de instâncias classificadas.
\[κ = \frac{P_o - P_e}{1 - P_e}\]
Usando o Exemplo do Slide 42 (TP=7, TN=88, FP=2, FN=3, n=100):
Interpretação: O valor Kappa de ~0.71 indica uma concordância substancial entre as previsões do modelo e os valores reais. Essa métrica reforça que o modelo aprendeu padrões.
\[ \kappa\,=\,\frac{P_{o}\,-\,P_{e}}{1\,-\,P_{e}}, \]
em que
\(P_{o}\,=\,{N}^{-1}{\sum_{i\,=\,1}^{c} n_{ii}}\),
\(P_{e}\,=\,{N^{-2}}{\sum_{i\,=\,1}^{c} n_{i+}\, n_{+i}}\),
\(n_{ii}\) é a soma de elementos na diagonal principal da matriz de confusão, \(n_{i+}\) é a soma dos elementos na \(i\)-ésima linha, \(n_{+i}\) é a soma dos elementos na \(i\)-ésima coluna, e \(N\) representa o número total de observações, ou seja, o número total de instâncias classificadas.
Consideremos a seguinte Matriz de Classificação:
| Predito 1 | Predito 2 | Predito 3 | Total Verdadeiro | |
|---|---|---|---|---|
| Verdadeiro 1 | 50 | 10 | 5 | 65 |
| Verdadeiro 2 | 15 | 80 | 5 | 100 |
| Verdadeiro 3 | 10 | 5 | 70 | 85 |
| Total Predito | 75 | 95 | 80 | 250 |
Aqui, o total de observações é 250.
Concordância Observada (\(P_o\))
Concordância Esperada (\(P_e\))
A fórmula para \(P_o\) é: \(P_{o}\,=\,{N}^{-1}{\sum_{i\,=\,1}^{c} n_{ii}}\)
Aqui, \(n_{ii}\) são os elementos da diagonal principal da matriz de confusão.
Primeiro, calculamos a soma dos elementos na diagonal principal: \[ \sum_{i\,=\,1}^{c} n_{ii} = n_{11} + n_{22} + n_{33} = 50 + 80 + 70 = 200 \]
Agora, calculamos \(P_o\): \[ P_{o}\,=\,{N}^{-1} \times 200 = \frac{1}{250} \times 200 = \frac{200}{250} = 0.8 \]
A fórmula para \(P_e\) é: \(P_{e}\,=\,{N^{-2}}{\sum_{i\,=\,1}^{c} n_{i+}\, n_{+i}}\)
Aqui, \(n_{i+}n_{+i}\) é o resultado da multiplicação da \(i\)-ésima linha com a \(i\)-ésima coluna.
Vamos listar os casos:
Agora, calculamos \(P_e\): \[ P_{e}\,=\,{N^{-2}} \times 2700+6575+5200 = \frac{1}{250^2} \times 14475 = \frac{14475}{62500} = 0.2316 \]
Coeficiente \(\kappa\)
O coeficiente \(\kappa\) é então calculado usando a fórmula:
\[\kappa\,=\,\frac{P_{o}\,-\,P_{e}}{1\,-\,P_{e}}\]
\(\kappa = (0.8 - 0.2316) / (1 - 0.2316)\)
\(\kappa = 0.5684 / 0.7684\)
\(\kappa ≈ 0.7397\)
Isso indica uma concordância substancial entre as classificações, superior ao que seria esperado pelo acaso.
Recomendação: Sempre olhe primeiro para a Matriz de Confusão.
Aprendizado de Máquina: uma abordagem estatística, Izibicki, R. and Santos, T. M., 2020, link: https://rafaelizbicki.com/AME.pdf.
An Introduction to Statistical Learning: with Applications in R, James, G., Witten, D., Hastie, T. and Tibshirani, R., Springer, 2013, link: https://www.statlearning.com/.
Mathematics for Machine Learning, Deisenroth, M. P., Faisal. A. F., Ong, C. S., Cambridge University Press, 2020, link: https://mml-book.com.
An Introduction to Statistical Learning: with Applications in python, James, G., Witten, D., Hastie, T. and Tibshirani, R., Taylor, J., Springer, 2023, link: https://www.statlearning.com/.
Matrix Calculus (for Machine Learning and Beyond), Paige Bright, Alan Edelman, Steven G. Johnson, 2025, link: https://arxiv.org/abs/2501.14787.
Machine Learning Beyond Point Predictions: Uncertainty Quantification, Izibicki, R., 2025, link: https://rafaelizbicki.com/UQ4ML.pdf.
Mathematics of Machine Learning, Petersen, P. C., 2022, link: http://www.pc-petersen.eu/ML_Lecture.pdf.
Tópicos Especiais em Estatística Comp. - Prof. Jodavid Ferreira