深度学习笔记(29) 1×1 卷积

深度学习笔记(29) 1×1 卷积

  • 1. 1×1 卷积
  • 2. 1×1 卷积的作用
  • 3. 1×1 卷积的应用


1. 1×1 卷积

在架构内容设计方面,其中一个比较有帮助的想法是使用1×1卷积
深度学习笔记(29) 1×1 卷积_第1张图片
过滤器为1×1,数字2
输入一张6×6×1的图片,然后对它做卷积,起过滤器大小为1×1×1
所以前三个单元格分别是2、4、6等等
似乎用处不大,只是对输入矩阵乘以某个数字
但这仅仅是对于6×6×1的一个通道图片来说,1×1卷积效果不佳


2. 1×1 卷积的作用

深度学习笔记(29) 1×1 卷积_第2张图片
如果是一张6×6×32的图片,那么使用1×1过滤器进行卷积效果更好
所实现的是遍历36个单元格,计算图中32个数字和过滤器中32个数字的元素积之和
再应用ReLU非线性函数

以其中一个单元为例
它是这个输入层上的某个切片,用这36个数字乘以这个输入层上1×1切片,得到一个实数

这个1×1×32过滤器中的32个数字可以这样理解
一个神经元的输入是32个数字(输入图片某个位置32个通道中的数字)
即相同高度和宽度上某一切片上的32个数字
这32个数字具有不同通道,乘以32个权重(过滤器中的32个数)
然后应用ReLU非线性函数,在这里输出相应的结果
深度学习笔记(29) 1×1 卷积_第3张图片
一般来说,如果过滤器不止一个,而是多个,就好像有多个输入单元
其输入内容为一个切片上所有数字,输出结果是 6×6×过滤器数量
所以1×1卷积可以从根本上理解为对这32个不同的位置都应用一个全连接层
全连接层的作用是输入32个数字(过滤器数量标记为 nC[l+1] ,在这36个单元上重复此过程)
输出结果是 6×6×filters(过滤器数量),以便在输入层上实施一个非平凡(non-trivial)计算,改变通道数
这种方法通常称为1×1卷积
有时也被称为 Network in Network,网络中的网络


3. 1×1 卷积的应用

深度学习笔记(29) 1×1 卷积_第4张图片
假设一个 28×28×192 的输入层,可以使用池化层压缩它的高度和宽度
但如果通道数量很大
可以用 32 个大小为 1×1 的过滤器把它压缩为 28×28×32 维度的层
严格来讲每个过滤器大小都是 1×1×192 维
因为过滤器中通道数量必须与输入层中通道的数量保持一致
这就是 压缩通道数(nc)的方法,对于池化层只是压缩了这些层的高度和宽度

深度学习笔记(29) 1×1 卷积_第5张图片
当然如果想保持通道数192不变,这也是可行的
再添加一层 1×1×192卷积层,保持输出为 28×28×192
1×1卷积层给神经网络添加了一个非线性函数
从而减少或保持输入层中的通道数量不变
当然如果愿意,也可以增加通道数量


参考:

《神经网络和深度学习》视频课程


相关推荐:

深度学习笔记(28) 残差网络
深度学习笔记(27) 经典卷积网络
深度学习笔记(26) 卷积神经网络
深度学习笔记(25) 池化层
深度学习笔记(24) 卷积层


谢谢!

你可能感兴趣的:(深度学习笔记,1×1,卷积)