Underfitting e overfitting são problemas em machine learning supervisionado que podem aparecer nos modelos e está relacionado com o trade-off de viés e variância.
O overfitting é quando o modelo se ajusta demais aos dados de treinamento. Desse modo, o modelo “memoriza” os dados de treinamento e assim consegue minimizar o erro, fazendo parecer que tem uma performance melhor do que realmente tem. Ao tentarmos fazer previsões com dados diferentes o modelo erra muito mais. Quando isso ocorre, diz-se que o modelo não generaliza bem.
O overfitting ocorre quando o modelo tem muitas variáveis, ou seja, é muito complexo e não consegue fazer previsões e classificações com novos dados.
Como identificar underfitting e overfitting?
Para identificar se o modelo está sofrendo com o problema de underfitting e overfitting é preciso olhar para suas métricas de desempenho. Para medir o desempenho do modelo é necessário fazer a divisão dos dados em treino, validação e teste e validar as previsões com, por exemplo, a técnica de validação cruzada.
Alguns métodos recomendados para resolver o problema de overfitting são:
- Early stopping
- Treinar com mais dados
- Feature selection
- Regularização
- Usar métodos ensemble
O underfitting é quando o modelo não consegue fazer boas previsões nem com os dados de treinamento. Nesse caso tentar incluir mais variáveis no modelo pode ajudar e, se for o caso, diminuir o nível de regularização. Também é válido treinar o modelo com uma base de dados maior, pois ruídos em conjuntos de dados pequenos podem estar prejudicando a aprendizagem do algoritmo.
Observe que na Figura 1 a linha verde separa perfeitamente os pontos vermelhos dos pontos azuis. Esse é um exemplo de overfitting, pois o algoritmo provavelmente não vai conseguir fazer essa separação perfeita com novos dados.
Na Figura 2 temos três situações, o modelo com underfitting, o modelo balanceado (ideal) e o modelo com overfitting.
Links:
- StackOverflow - O que é Overfitting e Underfitting em Machine Learning
- AWS - Machine Learning - Ajuste do modelo: Subajuste versus sobreajuste
- Wikipédia - Overfitting
- GeeksforGeeks - ML | Underfitting and Overfitting
- 3 Dimensões - Overfitting e Underfitting
- Didática Tech - Underfitting e Overfitting
- IBM Cloud Learn Hub - Underfitting
- IBM Cloud Learn Hub - Overfitting