首页 PaddleCV 帖子详情
mask rcnn训练问题
收藏
快速回复
PaddleCV 问答图像分类目标检测 2002 5
mask rcnn训练问题
收藏
快速回复
PaddleCV 问答图像分类目标检测 2002 5

使用mask rcnn训练自己的数据,自己的数据是用lableme标注并使用官方的文档转换的(https://github.com/wkentaro/labelme/tree/master/examples/instance_segmentation),但是训练过程是这样的:

2020-05-20 10:56:15.093832, iter: 1150, lr: 0.01000, 'loss': nan, 'loss_cls': nan, 'loss_bbox': nan, 'loss_rpn_cls': 0.094, 'loss_rpn_bbox': 0.003, 'loss_mask': 0.406, time: 0.292
2020-05-20 10:56:29.694689, iter: 1200, lr: 0.01000, 'loss': nan, 'loss_cls': nan, 'loss_bbox': nan, 'loss_rpn_cls': 0.09, 'loss_rpn_bbox': 0.003, 'loss_mask': 0.406, time: 0.284
2020-05-20 10:56:44.134379, iter: 1250, lr: 0.01000, 'loss': nan, 'loss_cls': nan, 'loss_bbox': nan, 'loss_rpn_cls': 0.094, 'loss_rpn_bbox': 0.006, 'loss_mask': 0.401, time: 0.295

loss_cls 和 loss_bbox都是nan

0
收藏
回复
全部评论(5)
时间顺序
星光ld1
#2 回复于2020-05

是不是lr太大了导致loss发散了?

0
回复
a
a stan
#3 回复于2020-05

有可能,用0.001试一下。

如果有这种报错:RuntimeWarning: invalid value encountered in log targets_dw = np.log(gt_widths / ex_widths)。就可能是自制数据集的问题,有些框从左上角(0,0)开始的,减1会出现log(-1)的情况。打开lib/database/pascal_voc.py文件,将208行至211行每一行后面的-1删除。

x1 = float(bbox.find(‘xmin’).text)
y1 = float(bbox.find(‘ymin’).text)
x2 = float(bbox.find(‘xmax’).text)
y2 = float(bbox.find(‘ymax’).text)

0
回复
a
a stan
#4 回复于2020-05

nan已经发散了,没必要继续训练下去了

0
回复
AIStudio810260
#5 回复于2020-05

学习率要除以8,官方的示例是在8个节点上分布式训练的,在AI Studio上只有单节点

0
回复
Henry.coder
#6 回复于2020-05

如果是用的是pd的模型的话,学习率要除8,官方是八卡训练的,但是平台上是单GPU

0
回复
需求/bug反馈?一键提issue告诉我们
发现bug?如果您知道修复办法,欢迎提pr直接参与建设飞桨~
在@后输入用户全名并按空格结束,可艾特全站任一用户