Resposta direta
Um exemplo prático de overfitting mostra como um modelo pode parecer preciso nos dados em que foi treinado, mas ter desempenho ruim em dados novos. Overfitting não é garantido; é um risco que aumenta quando um modelo se torna mais complexo em relação à quantidade e variabilidade dos dados disponíveis.
Mecanismo ou definição
Overfitting significa que o processo de aprendizado ajusta idiossincrasias no conjunto de dados de treinamento—ruído aleatório, peculiaridades ou correlações acidentais—em vez de aprender relações estáveis que também se aplicam a dados futuros.
Uma maneira simples de pensar sobre isso:
- Ajuste de treinamento (in-sample): quão bem o modelo corresponde aos dados históricos que viu durante o treinamento.
- Ajuste de teste (out-of-sample): quão bem o mesmo modelo fixo corresponde a novos dados que não usou para treinamento.
Se o ajuste de treinamento melhora à medida que a complexidade do modelo aumenta, mas o ajuste de teste permanece o mesmo ou piora, esse padrão é consistente com overfitting.
Evidência ou exemplo (com todas as premissas)
Considere uma situação em que você deve prever um valor alvo y a partir de uma entrada x usando um conjunto de dados muito pequeno.
Premissas
- Temos 4 observações rotuladas para treinamento: (x, y): (1,2), (2,4), (3,6), (4,8).
- Vamos comparar dois modelos:
- Modelo A: uma linha reta forçada a passar pela origem, y = m x.
- Modelo B: um polinômio de grau 3 que corresponde exatamente a todos os 4 pontos de treinamento.
- Definimos erro como erro quadrático médio (MSE) em um conjunto de teste separado.
- Assumimos que os pontos de teste são: (x, y): (5,10) e (6,12).
- Assumimos que o Modelo B mantém sua forma polinomial ajustada inalterada quando avaliado nos pontos de teste.
- Não adicionamos custos de transação, slippage ou restrições de execução (para manter o exemplo puramente matemático).
Passo 1: Ajustar o Modelo A (linear pela origem)
Os dados de treinamento seguem exatamente y = 2x, então o melhor m para o Modelo A é m = 2.
- Erro de treinamento para o Modelo A: 0 MSE.
No conjunto de teste:
- Para x=5, y previsto = 2·5 = 10 (corresponde ao real)
- Para x=6, y previsto = 2·6 = 12 (corresponde ao real) Portanto, o erro de teste para o Modelo A também é 0 MSE.
Passo 2: Ajustar o Modelo B (polinômio de grau 3 que corresponde exatamente ao treinamento)
Como o Modelo B é flexível o suficiente, ele pode corresponder perfeitamente aos 4 pontos de treinamento, então:
- Erro de treinamento para o Modelo B: 0 MSE.
No entanto, este modelo não “sabe” a regra subjacente. Com apenas 4 pontos de treinamento, há infinitos comportamentos fora desses pontos; muitos ajustes de grau 3 corresponderão ao treinamento enquanto diferem nos pontos de teste. Neste cenário prático, assuma que o polinômio de grau 3 aprendido implica previsões no conjunto de teste de:
- x=5 → y previsto = 9
- x=6 → y previsto = 13 (Estes valores são consistentes com a ideia de que flexibilidade extra pode distorcer a extrapolação.)
Então, o MSE de teste para o Modelo B é:
- Erros: (9−10) = −1 e (13−12) = +1
- Erros quadráticos: 1 e 1
- MSE = (1+1)/2 = 1
O que isso mostra
- Ambos os modelos têm erro de treinamento zero.
- O Modelo A generaliza neste cenário.
- O Modelo B pode generalizar mal mesmo com erro de treinamento zero.
A lição conceitual é por que o overfitting é plausível: um modelo mais complexo pode corresponder exatamente aos padrões de treinamento, mas isso não garante que os mesmos padrões existam em dados futuros.
Limitações e riscos
- Nenhuma garantia do ajuste histórico: ajuste perfeito de treinamento não implica desempenho futuro. A relação pode ser acidental ou específica de um regime.
- Conjuntos de dados pequenos amplificam overfitting: com menos pontos de dados, muitas funções complexas diferentes podem ajustar o treinamento enquanto discordam em outros lugares.
- Risco de vazamento de dados: se informações do período de teste influenciam acidentalmente o treinamento (mesmo indiretamente), os resultados de teste podem ser excessivamente otimistas.
- Mudanças de regime e ruído: se o processo gerador de dados mudar, a relação “estável” pode desaparecer.
- As escolhas de avaliação importam: diferentes divisões de treino/teste, métricas e definições de erro podem mudar se você observa overfitting.
Verificação ou próxima pergunta
Para verificar independentemente se o overfitting está ocorrendo, compare erros in-sample e out-of-sample enquanto controla a complexidade:
- Comece com uma classe de modelo mais simples.
- Aumente a flexibilidade gradualmente.
- Observe se o erro de treinamento diminui, mas o erro de teste aumenta.
Uma próxima pergunta prática é: *Quão sensíveis são os resultados à divisão específica de treino/teste e à métrica de avaliação?