训练/验证损失(PyTorch)
训练/验证损失
关于训练损失(train Loss
)和验证损失(validation Loss
),想象你在教一只狗做算术。你有一堆卡片,每张卡片都有一个数学问题,比如“2 + 3 =?
”和答案。小狗的任务看着问题,然后找出正确答案。
- 训练损失:就像你教小狗时,它回答错误的那些问题的数量。你希望这个数字越小越好,因为这意味着小狗在训练时学的越好。
- 验证损失:就像你在训练一段时间后,拿出一些新的卡片来测试小狗。这些卡片上的问题小狗之前没见过。验证损失就是小狗在这些新问题上回答错误的数量。这个数字也很重要。证明小狗学到的知识是否能够应用到新的问上,也就是它泛化能力如何。
如果你发现小狗在训练时的错误很少(训练损失低)但是在新的问题上的错误很多(验证损失高),那就意味着小狗已经记住了你给它看过的哪些特定问题和答案,而没有真正学会怎么做算术。这就是模型过拟合了,支队训练数据学的很好,但对新的数据就不行了。你的目标是要让小狗在训练和验证时都尽量少犯错误,这样它才能学会做算术,也能应用到新的问题上。