美文网首页
目标检测算法---faster rcnn 知识简要回顾(训练篇)

目标检测算法---faster rcnn 知识简要回顾(训练篇)

作者: 教训小磊 | 来源:发表于2022-05-10 13:58 被阅读0次
    Faster RCNN 的训练是一个交替训练的过程,主要是对RPN和Fast RCNN进行训练。 Faster RCNN训练流程

    Faster RCNN训练策略

    • 用ImageNet模型提取特征,独立训练一个RPN网络。(ImageNet模型参数和RPN参数可训练);
    • 使用ImageNet模型提取特征(上一步参数更新前的模型),使用上一步RPN网络产生的proposal作为输入(实际训练过程中是将RPN网络权重冻结再结合Fast RCNN进行训练的);
    • 使用上一步的模型提取特征(就是用来训练Fast RCNN的特征提取网络)来再次训练RPN网络(在第一步训练的基础上),这里的特征提取网络的参数是冻结的不参与更新;
    • 仍然固定特征提取网络的参数,在上一步的基础上加入Fast RCNN的网络层,形成一个unified network,继续训练。

    训练RPN网络

    Faster RCNN的一大创新点就是提出了“RPN”网络,在提高精度的同时提高了速度,这里讲一下RPN网络的训练。
    RPN网络训练有两个Loss:

    • Lcls:softmax loss,用于分类anchors属于前景还是背景;
    • Lreg:smooth L1 loss,用于修正anchor框,前面乘了一个pi*表示只回归有目标的框。 多任务损失公式

    pi表示网络预测出来第i个anchor是目标的概率,pi* 表示对应的Ground Truth。若第i个anchor与某个真实目标的iou大于0.7,则pi* =1,小于0.3,则pi* =0,其余情况不参与训练;
    ti表示参数化坐标向量,表示预测框和anchor框之间的偏移,ti*表示对应的Ground Truth,表示GT框和anchor框之间的偏移。

    smooth L1 loss

    smooth L1 loss公式

    smooth L1 loss结合了L1和L2损失的优点,相比L1损失,smooth L1在0点可导,不影响收敛;相比L2损失,smooth L1对离群点、异常值不敏感,梯度变化相对更小,训练时不容易跑飞,所以鲁棒性更强。

    相关文章

      网友评论

          本文标题:目标检测算法---faster rcnn 知识简要回顾(训练篇)

          本文链接:https://www.haomeiwen.com/subject/cvrlurtx.html