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

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

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

  • 什么是总体损失 ?
    • 总体损失是计算模型在整个数据集上的损失,但是在训练时,可以计算每个批次上的损失并求和,以此观察模型的训练进度。
  • 训练的作用:前向传播计算损失函数值,为了尽量减少损失函数值,反向传播计算损失函数梯度,并用梯度更新模型参数。通过不断地迭代上面的步骤,让模型收敛到一个局部最优解。
  • 需要注意的是 :同一个批次使用的是相同的模型参数,计算完一个批次之后,模型参数也会相应地更新,所以不同的批次之间使用的模型参数一般不同相同
  • 观察总体损失的意义:监控并指导模型的训练,我们的目标是让总体损失在训练过程中逐渐减小。
  • 所以在同一轮训练中,虽然不同批次之间会由于参数的变化,计算的损失差异可能比较大,而通过训练的目标可以知道,同一轮中越往后的批次,得到的损失理论上应该是越小的。所以累计的不同批次之间的损失当作总体损失,如果总体损失在训练期间不断减小,那么模型正在学习改进
  • 使用每一轮训练好的模型来计算总体损失是否可行?
    • 可行。但是会导致训练非常慢,因为需要在每一轮训练后,计算模型在整个训练集上的损失。
  • 可以使用最后一个批次的损失,来监控模型的训练进度吗?
    • 可以。这个损失通常称为**"当前批次损失"**,但是这个损失不一定能很好地反映整个训练的过程中模型的性能,所以更好的做法是同时监控"当前批次损失"和总体损失。
相关推荐
GuWenyue1 小时前
写Agent还要重复封装工具?一套MCP多服务方案,3个能力让AI自动查地图、读写文件、操控浏览器
人工智能·机器学习·开源
GuWenyue1 小时前
90%AI新手不会调参!LangChain双模型流水线实战,一套代码兼顾严谨+创意
人工智能
光锥智能2 小时前
WAIC亮点|兼具泛化能力与作业效率的极智嘉机器人天团
人工智能·机器人
阳光是sunny2 小时前
LangGraph中的Reducer是什么
前端·人工智能·后端
甲维斯3 小时前
Kimi K3 重构10000行单文件屎山代码!
人工智能
阳光是sunny3 小时前
从链到图:LangGraph 入门基础全解析
前端·人工智能·后端
新知图书3 小时前
11.3 详细实现与核心配置(作业批改智能体开发)
人工智能·agent·ai agent·智能体·扣子
深度研习笔记4 小时前
OpenCV工业视觉实战11|多线程解耦+视频流稳流+推理加速,彻底解决卡顿阻塞,实现毫秒级工业实时检测
人工智能·opencv·计算机视觉
delishcomcn4 小时前
AI视觉识别+分切算法:电化铝缺陷检测与裁切一体化解锁
人工智能·算法
触底反弹4 小时前
深入理解大模型采样:Temperature、Top-K、Top-P 的原理与实战
人工智能·算法·面试