在深度学习中,累计不同批次的损失估计总体损失

在深度学习中,累计不同批次的损失估计总体损失

在深度学习训练模型的过程中,通常会通过计算不同批次间的损失和,当作模型在这个训练集上的总体损失,这种做法是否具有可行性呢?

  • 什么是总体损失 ?
    • 总体损失是计算模型在整个数据集上的损失,但是在训练时,可以计算每个批次上的损失并求和,以此观察模型的训练进度。
  • 训练的作用:前向传播计算损失函数值,为了尽量减少损失函数值,反向传播计算损失函数梯度,并用梯度更新模型参数。通过不断地迭代上面的步骤,让模型收敛到一个局部最优解。
  • 需要注意的是 :同一个批次使用的是相同的模型参数,计算完一个批次之后,模型参数也会相应地更新,所以不同的批次之间使用的模型参数一般不同相同
  • 观察总体损失的意义:监控并指导模型的训练,我们的目标是让总体损失在训练过程中逐渐减小。
  • 所以在同一轮训练中,虽然不同批次之间会由于参数的变化,计算的损失差异可能比较大,而通过训练的目标可以知道,同一轮中越往后的批次,得到的损失理论上应该是越小的。所以累计的不同批次之间的损失当作总体损失,如果总体损失在训练期间不断减小,那么模型正在学习改进
  • 使用每一轮训练好的模型来计算总体损失是否可行?
    • 可行。但是会导致训练非常慢,因为需要在每一轮训练后,计算模型在整个训练集上的损失。
  • 可以使用最后一个批次的损失,来监控模型的训练进度吗?
    • 可以。这个损失通常称为**"当前批次损失"**,但是这个损失不一定能很好地反映整个训练的过程中模型的性能,所以更好的做法是同时监控"当前批次损失"和总体损失。
相关推荐
ZhengEnCi13 小时前
09bad-斯坦福CS336作业一-构建优化器
人工智能
ZhengEnCi14 小时前
09bac-斯坦福CS336作业一-实现训练损失计算
人工智能
冬奇Lab14 小时前
Skill 系列(01):Skill 评测体系——如何量化一个 AI Skill 的质量
人工智能
IT_陈寒17 小时前
Redis内存爆了,原来我漏掉了这个致命配置
前端·人工智能·后端
用户35218024547519 小时前
🎆从 Prompt 到 Skill:让 Spring AI Agent 学会"装新技能"
人工智能·spring boot·ai编程
米小虾19 小时前
手把手教你搭建第一个生产级AI Agent:从选型到实战的完整指南
人工智能·agent
任沫19 小时前
Agent之Function Call
javascript·人工智能·go
米小虾20 小时前
2026年AI Agent全面爆发:从开源生态到企业级应用的进化之路
人工智能·agent
用户69190268133920 小时前
Vibe Coding 开发项目的基本范式
人工智能·设计模式·代码规范
To_OC20 小时前
别再跟 AI 死磕 prompt 了,我写了个 Loop 让它自己改到满意为止
人工智能·aigc·agent