由于博主最近在写论文,刚好用到了Focus层,特来总结
1. 深度学习有哪些下采样的方式?
- 池化操作,1.最大池化 2.平均池化
- 步长大于1的卷积
- 还有Focus层
总结一下:
最大池化是突出目标特征和边缘细节,而平均池化是平滑,更偏向于背景。但是但是但是!无论哪种池化操作,都是以牺牲部分信息作为代价,来缩小图片尺寸。卷积操作可以获得图像像素之间特征相关性,但是stride > 1会造成相邻像素点特征丢失。
2.下采样在NN中的作用?
下采样在神经网络中主要是为了减少参数量达到降维的作用,同时还能增加局部感受野!
但是由于下采样会导致图像分辨率下降伴随着信息丢失,尤其是像素级分类分割任务中要经历下采样和上采样,如何保证信息缺失呢?------->空洞卷积!
计算空洞卷积的感受野大小公式:
size=(dilate_rate-1) ×(kernel_size-1)+ kernel_size
3.PassThrough层
PassThrough层首次出现在YOLOv2中,将相邻的特征堆积在不同通道中,目的是将大尺寸特征图下采样后与小尺寸特征图进行融合,从而增加小目标检测精度。如下图所示:
感觉和Focus操作一模一样
4. Focus层
Focus层非常类似PassThrough层,同样采用切片操作把高分辨率图拆分成多个低分辨特征图,如下图所示:隔行采样+拼接
将 4 * 4 * 3的Tensor通过间隔采样拆分成4分,这样宽高减半 通道为原来的四倍,采用这种方式可以减少下采样带来的信息损失。