BiseNet学习笔记
现有加速的方法:
1.crop或者resize图片
缺点:损失了空间细节,特别是边缘
2. 减少特征通道数,尤其在网络的早期
缺点:弱化了空间信息
3.丢弃网络的最后阶段(ENet),使模型变得紧凑
缺点:少了最后阶段的下采样,感受野变小,影响大物体的分割
这些方法为了速度牺牲了acc,在实际中处于劣势。为了弥补空间信息,u-shape结构被提出来,粗暴的对特征进行融合。但是这种方法计算太慢而且不能还原通过剪裁和resize的空间信息。
综上所述,一方面需要照顾感受野,一方面需要保留尽可能多的空间信息,同时在速度上也不能太慢,为此提出BiseNet
spatial path:
负责保留空间信息并且生成高分辨率特征,通过三个卷积层将输入图像降采样至原图的1/8,
context path:
包含一个骨干网络及一系列注意力优化模块,通过一系列降采样特征学习,获取足够的感受野,同时采用全局均值化来降低计算量,稳定最大感受野。
注意力优化模块(Attention refinement module,ARM):
借助全局平均池化捕获全局语境,计算注意力向量(SENet的特征加权),优化 Context Path 中每一阶段的输出特征,便于整合全局语境信息,计算成本较小。
特征融合模块(feature fusion module FFM):
Spatial Path 和 Context Path 两路网络的特征并不相同,不能简单地加权两种特征,FFM通过参数学习如果将两部分进行叠加
8XUpsample:
直接双线性插值,不采用反卷积
损失函数:
采用一个主损失函数和若干个辅助损失函数组合,主损失函数监控整个biseNet,辅助损失函数为ContextPath添加约束(k=3 alpha=1),两个损失函数均是softmax形式