使用PyTorch+Detectron2训练Faster/Mask RCNN时训练日志参数含义咨询
Detectron2 训练日志字段含义说明
原始日志内容
[11/29 20:16:31 d2.utils.events]: eta: 0:24:04 iter: 19 total_loss: 9.6 loss_cls: 1.5 loss_box_reg: 0.001034 loss_mask: 0.6936 loss_rpn_cls: 6.773 loss_rpn_loc: 0.5983 time: 1.4664 data_time: 0.0702 lr: 4.9953e-06 max_mem: 2447M
损失类字段(模型优化相关)
- total_loss:所有分项损失的加权求和值,是模型反向传播时整体优化的目标,数值越低代表模型整体拟合效果越好
- loss_cls:检测头分类损失,用于衡量模型对检测框内目标类别的预测准确度,类别预测错误越多该值越高
- loss_box_reg:检测头边界框回归损失,用于衡量模型预测的目标边界框与人工标注真实框的重合度,偏差越大该值越高
- loss_mask:Mask分支分割损失(仅使用Mask RCNN训练时会输出该字段,Faster RCNN无此损失),用于衡量模型生成的实例分割掩码与真实标注掩码的匹配度
- loss_rpn_cls:区域候选网络(RPN)分类损失,用于衡量RPN判断锚框属于前景/背景的准确率
- loss_rpn_loc:区域候选网络(RPN)边界框回归损失,用于衡量RPN生成的候选框与真实标注框的重合度
训练状态类字段(运行环境相关)
- eta:剩余训练的预计完成时间,根据当前迭代速度和剩余迭代总数计算得出
- iter:当前训练的迭代步数,Detectron2默认把单批次数据的完整训练流程记为1次迭代
- time:单次迭代的平均总耗时,单位为秒,覆盖数据加载、前向传播、反向传播、参数更新全流程
- data_time:单次迭代中加载训练数据的耗时,单位为秒,若该值占总耗时比例过高,可优先优化数据加载流水线
- lr:当前迭代对应的学习率,是优化器的核心参数,控制模型参数每次更新的步长
- max_mem:训练到当前迭代为止,占用的GPU显存峰值,单位为MB
内容的提问来源于stack exchange,提问作者Miliia
相关产品推荐
相关产品推荐

