Mask RCNN的损耗函数是什么?

时间:2017-09-18 06:27:20

标签: deep-learning object-detection

本文明确提到分类和回归损失与更快的RCNN中的RPN网络相同。有人可以解释面具损失功能。如何使用FCN改进?

2 个答案:

答案 0 :(得分:6)

FCN使用每像素softmax和多项式损失。这意味着,掩模预测任务(对象的边界)和类预测任务(被屏蔽的对象是什么)是耦合的​​。
Mask-RCNN解耦这些任务:现有的边界框预测(AKA,本地化任务)头预测类,如更快的RCNN,并且掩码分支为每个类生成一个掩码,而没有竞争类(例如,如果您有21个类,则掩码分支预测21个掩码,而不是FCN的单个掩码,具有21个通道)。使用的损失是每像素sigmoid +二进制损失 最重要的是,它是Mask-RCNN中的Sigmoid与FCN中的Soft-max (See table 2.b. in Mask RCNN paper - Ablation section)。

答案 1 :(得分:2)

Mask R-CNN的多任务丢失功能结合了分类,定位和分割蒙版的丢失:L = Lcls + Lbox + Lmask, Lcls和Lbox与Faster R-CNN中的相同。

mask分支为每个RoI和每个类生成尺寸为m x m的蒙版;总共K个课程。因此,总输出大小为K⋅m^ 2

由于该模型正在尝试为每个班级学习一个遮罩,因此在各个类别之间没有竞争可生成遮罩。

Lmask:

被定义为平均二进制交叉熵损失,如果该区域与地面真相类别k相关联,则仅包括第k个掩模。 Lmask Equation

其中yij 是真掩模中大小为m x m的区域中的单元格(i,j)的标签; y ^ kij是针对地面真理类别k所学习的掩码中相同单元的预测值。