A perda de treino é uma medida interna ao processo de ajuste: ela informa o quão bem os parâmetros atuais reproduzem os exemplos que já foram usados para corrigi-los. Nada nessa medida descreve o comportamento diante de um exemplo inédito. Por isso um valor baixo de perda no treino não é evidência suficiente de aprendizado; ele é apenas evidência de que o ajuste funcionou sobre aqueles dados.
Generalização é a capacidade de um modelo treinado apresentar bom desempenho em dados que não participaram do ajuste dos parâmetros. O objetivo real do aprendizado de máquina é generalizar, não memorizar.
Três recortes com funções diferentes
Treino
- Ajusta os parâmetros pelo gradiente descendente
- Pode ser ajustado até a perda ficar muito baixa
- Não serve para estimar generalização
Validação
- Escolhe entre modelos e configurações
- Guia decisões de complexidade e de treinamento
- Pode ser consultado várias vezes
Teste
- Estimativa final de desempenho em dados novos
- Consultado uma única vez, ao final
- Se usado para decidir, deixa de ser teste
Suponha um modelo que estima o preço de um imóvel a partir de área, número de quartos e bairro. Se ele for avaliado apenas nos imóveis usados no treino, a perda pode ser baixíssima. Ao receber um imóvel de um bairro com poucos exemplos no treino, o erro pode disparar. A queda da perda no treino não garantia nada sobre esse imóvel novo; só uma avaliação em dados separados revelaria a diferença.
Cada vez que o resultado do teste influencia uma decisão de ajuste, ele passa a fazer parte do processo de escolha e deixa de medir generalização de forma honesta. Por isso a validação existe: ela absorve as decisões, e o teste permanece reservado.