Faster R-CNN 中的反向传播

数据挖掘 机器学习 神经网络 美国有线电视新闻网 更快的rcnn
2021-10-14 17:09:48

我了解在选择性搜索在 vanilla R-CNN 中找到感兴趣区域后如何应用卷积层,因此在单个卷积网络中完成反向传播或任何权重更新。但在 Faster R-CNN 中,首先应用一个 convNet,然后 RPN 在一个单独的 convNet 中计算出感兴趣的区域。权重具体在哪里更新?是在初始的 convNet 和 RPN 之间吗?但是权重只能在与地面真值比较后更新。或者是在两个网络的完整前向传递之后,完成反向传递。在这种情况下,如何同时考虑两者?如果没有,这种比较在哪里以及如何进行?任何指向任何资源的指针都将受到高度赞赏。

1个回答

权重具体在哪里更新?是在初始 convNet 和 RPN 之间吗所有可更新的权重都会在反向传播期间更新。

我想你是想问权重什么时候更新?,根据原始论文,有 3 种方法可以训练 Faster R-CNN,每种方法都有自己的更新权重时间的方法:

  1. 交替训练又名 4 步交替训练,这是作者在原始更快的 r-cnn 论文中使用的一种。在原始论文中解释得很好
  2. 近似联合训练,你在问题中提到的那个,在两个网络的完整前向传递之后,完成了反向传递我不太清楚您所说的“在这种情况下如何同时考虑两者?”是什么意思?
  3. 非近似联合训练,这个我不是很懂

返回到权重到底在哪里更新?问题,好吧,需要提到的是 RPN 内核、RPN Cls 和 Reg FC 层、检测 (Fast R-CNN) Cls 和 Reg FC 层以及 CNN 内核(如果你没有冻结它们)

我希望这能有所帮助,因为我也在学习 Faster R-CNN,也很抱歉英语不好。