-
整体结构
最后的输出层中使用了之前的“Affine -Softmax”组合。这些都是一般的CNN中比较常见的结构。
全连接层存在的问题
数据的形状被“忽视”了。图像是3 维形状,这个形状中应该含有重要的空间信息。比如,空间上
邻近的像素为相似的值、RBG的各个通道之间分别有密切的关联性、相距较远的像素之间没有什么关联等,3 维形状中可能隐藏有值得提取的本质模式。但是,向全连接层输入时,需要将3 维数据拉平为1 维数据。池化层的特征
没有要学习的参数
通道数不发生变化
对微小的位置变化具有鲁棒性(健壮),输入数据发生微小偏差时,池化仍会返回相同结果。-
卷积层的实现
-
池化层的实现
-
加深层的好处
加深了层的网络可以用更少的参数达到同等水平(或者更强)的表现力
通过加深层,可以减少学习数据,从而高效地进行学习。通过加深网络,就可以分层次地分解需要学习的问题。因此,各层需要学习的问题就变成了更简单的问题。
-
ResNet
因为快捷结构只是原封不动地传递输入数据,所以反向传播时会将来自上游的梯度原封不动地传向下游。这里的重点是不对来自上游的梯度进行任何处理,将其原封不动地传向下游。因此,基于快捷结构,不用担心梯度会变小(或变大),能够向前一层传递“有意义的梯度”。通过这个快捷结构,之前因为加深层而导致的梯度变小的梯度消失问题就有望得到缓解。
-
FCN
FCN将全连接层替换成发挥相同作用的卷积层
FCN的特征在于最后导入了扩大空间大小的处理。基于这个处理,变小了的中间数据可以一下子扩大到和输入图像一样的大小。FCN最后进行的扩大处理是基于双线性插值法的扩大(双线性插值扩大)。FCN中,这个双线性插值扩大是通过去卷积(逆卷积运算)来实现的。
比如,针对输入大小是32×10×10(通道数32、高10、长10)的数据的全连接层可以替换成滤波器大小为32×10×10 的卷积层。如果全连接层的输出节点数是100,那么在卷积层准备100 个32×10×10 的滤波器就可以实现完全相同的处理。像这样,全连接层可以替换成进行相同处理的卷积层。
深度学习入门基于Python的理论与实现(第6章 卷积神经网络)
最后编辑于 :
©著作权归作者所有,转载或内容合作请联系作者
- 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
- 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
- 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...