Overfitting (o modelo memoriza dados de treinamento e falha em novos dados) e underfitting (o modelo é muito simples para capturar os padrões) são dois problemas fundamentais em ML. Equilibrá-los — alcançando boa generalização — é central para construir modelos eficazes.
Overfitting vs underfitting
OVERFITTING → the model learns the training data TOO well (including noise) →
→ performs great on training data but POORLY on new/unseen data (doesn't generalize)
→ too complex; memorizes rather than learns general patterns
→ like memorizing answers vs understanding the concept
UNDERFITTING → the model is TOO SIMPLE to capture the underlying patterns →
→ performs poorly on BOTH training and new data
→ not enough complexity/capacity to learn the patterns
→ the goal is GENERALIZATION: learn real patterns → perform well on NEW data
