Mantenha tudo organizado com as coleções
Salve e categorize o conteúdo com base nas suas preferências.
O aprendizado de máquina seria muito mais simples se todas as
curvas de perda
parecessem assim na primeira vez que você treinasse o modelo:
Figura 20. Uma curva de perda ideal.
Infelizmente, as curvas de perda costumam ser difíceis de interpretar. Use sua
intuição sobre curvas de perda para resolver os exercícios nesta página.
Exercício 1: curva de perda oscilante
Figura 21. Curva de perda oscilante.
Quais três coisas você poderia fazer para tentar melhorar a curva de perda
mostrada na Figura 21?
Verifique seus dados em um esquema de dados para detectar exemplos incorretos e, em seguida, remova-os do conjunto de treinamento.
Sim, essa é uma boa prática para todos os modelos.
Diminua a taxa de aprendizado.
Sim, reduzir a taxa de aprendizado geralmente é uma boa ideia ao depurar um
problema de treinamento.
Reduza o conjunto de treinamento para um número pequeno de exemplos confiáveis.
Embora essa técnica pareça artificial, ela é uma boa
ideia. Supondo que o modelo convirja para o pequeno conjunto de
exemplos confiáveis, você pode adicionar gradualmente mais exemplos,
talvez descobrindo quais exemplos fazem com que a curva de perda
oscile.
Aumente o número de exemplos no conjunto de treinamento.
Essa é uma ideia tentadora, mas é extremamente improvável que ela resolva
o problema.
Aumente a taxa de aprendizado.
Em geral, evite aumentar a taxa de aprendizado quando a curva de aprendizado de um modelo indicar um problema.
Exercício 2. Curva de perda com um salto acentuado
Figura 22. Aumento acentuado na perda.
Quais duas das afirmações a seguir identificam possíveis
motivos para a perda explosiva mostrada na Figura 22?
Os dados de entrada contêm um ou mais NaNs, por exemplo, um valor causado por uma divisão por zero.
Isso é mais comum do que você imagina.
Os dados de entrada contêm uma série de valores discrepantes.
Às vezes, devido a uma mistura inadequada de lotes, um lote pode
conter muitos valores discrepantes.
A taxa de aprendizado é muito baixa.
Uma taxa de aprendizado muito baixa pode aumentar o tempo de treinamento, mas não é
a causa da curva de perda estranha.
A taxa de regularização é muito alta.
É verdade que uma regularização muito alta pode impedir que um modelo
convirja. No entanto, ela não causa a curva de perda estranha
mostrada na Figura 22.
Exercício 3. A perda do teste diverge da perda do treinamento
Figura 23. Aumento acentuado na perda de validação.
Qual uma das afirmações a seguir identifica melhor o motivo dessa diferença entre as curvas de perda dos conjuntos de treinamento e teste?
O modelo está apresentando overfitting no conjunto de treinamento.
Sim, provavelmente é. Possíveis soluções:
Simplifique o modelo, possivelmente reduzindo o número de recursos.
Aumente a taxa de regularização.
Verifique se o conjunto de treinamento e o conjunto de teste são estatisticamente
equivalentes.
A taxa de aprendizado é muito alta.
Se a taxa de aprendizado fosse muito alta, a curva de perda do conjunto de treinamento
provavelmente não teria se comportado dessa forma.
Exercício 4. A curva de perda fica travada
Figura 24. Perda caótica após um determinado número de etapas.
Qual uma das afirmações a seguir é a explicação mais provável
para a curva de perda irregular mostrada na Figura 24?
O conjunto de treinamento não é bem misturado.
Isso é uma possibilidade. Por exemplo, um conjunto de treinamento que contém 100
imagens de cães seguidas por 100 imagens de gatos pode causar oscilações
à perda à medida que o modelo é treinado. Misture os exemplos
de forma suficiente.
[null,null,["Última atualização 2025-06-02 UTC."],[[["\u003cp\u003eThis document helps you understand and interpret Machine Learning loss curves through a series of exercises and visual examples.\u003c/p\u003e\n"],["\u003cp\u003eYou will learn how to identify common issues like oscillating loss, exploding loss, overfitting, and erratic behavior in your models.\u003c/p\u003e\n"],["\u003cp\u003eSolutions are provided for each exercise, along with explanations for various loss curve patterns.\u003c/p\u003e\n"],["\u003cp\u003eTechniques to address these issues are discussed, including adjusting learning rate, cleaning training data, and applying regularization.\u003c/p\u003e\n"],["\u003cp\u003eA glossary of key Machine Learning terminology related to loss curves and model training is included for quick reference.\u003c/p\u003e\n"]]],[],null,["# Overfitting: Interpreting loss curves\n\nMachine learning would be much simpler if all your\n[**loss curves**](/machine-learning/glossary#loss_curve)\nlooked like this the first time you trained your model:\n**Figure 20.** An ideal loss curve.\n\nUnfortunately, loss curves are often challenging to interpret. Use your\nintuition about loss curves to solve the exercises on this page.\n\nExercise 1: Oscillating loss curve\n----------------------------------\n\n**Figure 21.** Oscillating loss curve. \nWhat **three** things could you do to try improve the loss curve shown in Figure 21? \nCheck your data against a data schema to detect bad examples, and then remove the bad examples from the training set. \nYes, this is a good practice for all models. \nReduce the learning rate. \nYes, reducing learning rate is often a good idea when debugging a training problem. \nReduce the training set to a tiny number of trustworthy examples. \nAlthough this technique sounds artificial, it is actually a good idea. Assuming that the model converges on the small set of trustworthy examples, you can then gradually add more examples, perhaps discovering which examples cause the loss curve to oscillate. \nIncrease the number of examples in the training set. \nThis is a tempting idea, but it is extremely unlikely to fix the problem. \nIncrease the learning rate. \nIn general, avoid increasing the learning rate when a model's learning curve indicates a problem.\n\nExercise 2. Loss curve with a sharp jump\n----------------------------------------\n\n**Figure 22.** Sharp rise in loss. \nWhich **two** of the following statements identify possible reasons for the exploding loss shown in Figure 22? \nThe input data contains one or more NaNs---for example, a value caused by a division by zero. \nThis is more common than you might expect. \nThe input data contains a burst of outliers. \nSometimes, due to improper shuffling of batches, a batch might contain a lot of outliers. \nThe learning rate is too low. \nA very low learning rate might increase training time, but it is not the cause of the strange loss curve. \nThe regularization rate is too high. \nTrue, a very high regularization could prevent a model from converging; however, it won't cause the strange loss curve shown in Figure 22.\n\nExercise 3. Test loss diverges from training loss\n-------------------------------------------------\n\n**Figure 23.** Sharp rise in validation loss. \nWhich **one** of the following statements best identifies the reason for this difference between the loss curves of the training and test sets? \nThe model is overfitting the training set. \nYes, it probably is. Possible solutions:\n\n- Make the model simpler, possibly by reducing the number of features.\n- Increase the regularization rate.\n- Ensure that the training set and test set are statistically equivalent. \nThe learning rate is too high. \nIf the learning rate were too high, the loss curve for the training set would likely not have behaved as it did.\n\nExercise 4. Loss curve gets stuck\n---------------------------------\n\n**Figure 24.** Chaotic loss after a certain number of steps. \nWhich **one** of the following statements is the most likely explanation for the erratic loss curve shown in Figure 24? \nThe training set is not shuffled well. \nThis is a possibility. For example, a training set that contains 100 images of dogs followed by 100 images of cats may cause loss to oscillate as the model trains. Ensure that you shuffle examples sufficiently. \nThe regularization rate is too high. \nThis is unlikely to be the cause. \nThe training set contains too many features. \nThis is unlikely to be the cause.\n| **Key terms:**\n|\n| - [Batch](/machine-learning/glossary#batch)\n| - [Example](/machine-learning/glossary#example)\n| - [Feature](/machine-learning/glossary#feature)\n| - [Learning rate](/machine-learning/glossary#learning-rate)\n| - [Loss curve](/machine-learning/glossary#loss_curve)\n| - [Outliers](/machine-learning/glossary#outliers)\n| - [Overfitting](/machine-learning/glossary#overfitting)\n| - [Regularization](/machine-learning/glossary#regularization)\n| - [Regularization rate](/machine-learning/glossary#regularization-rate)\n| - [Test set](/machine-learning/glossary#test-set)\n| - [Training set](/machine-learning/glossary#training-set)\n- [Validation set](/machine-learning/glossary#validation_set) \n[Help Center](https://support.google.com/machinelearningeducation)"]]