赞
踩
输出大小 = (输入大小 - 卷积核大小 + padding) / stride + 1
来计算结构图中可以看到模型分为了上下两部分, 两部分分别用一个GPU来运算, 可以提高运行速度, 因此也可以增大网络的规模
数学表达
f
(
x
)
=
m
a
x
(
0
,
x
)
f(x) = max(0, x)
f(x)=max(0,x)
使用 Relu 训练速度更快
每一运算都会随机地将一些神经元置为 0
Dropout 用在了全连接层上, 因为全连接层的参数较多(4096 * 4096), 容易过拟合
AlexNet 中设置的 Dropout = 0.5
工作原理:
AlexNet 中使用的是 Overlapping Max Pooling, 池化的窗口每次移动的步长小于它的长度
AlexNet 使用的是 3 * 3 的正方形, 每次移动步长为 2, 重叠池化可以避免过拟合
但其实也可以用步长较大的卷积层代替
图片的原大小是[256, 256], 但是输入图片的大小为[224, 224], 每次只输入图像的一部分, 每次取原来图像的一部分, 相当于换了一个角度看图片, 也相当于增加了训练的数据(数据增强), 训练出来的模型泛化能力会更强
Very Deep Convolutional Networks
如图所示, 2层的 3*3 卷积核可以替代1层的 5*5 卷积核 (步长为1)
如果上面两张图不能理解可以结合一下这张神图
(左边一列表示输入, 通道数3, 中间两列就是参数, 两个神经元, 右边是输出, 通道数2, 总共3*3*3*2个参数)
局部归一化, 把相邻的几个通道进行归一化
快过时了
Residual Network
VGGNet中我们可以看出深度对于神经网络的重要性, 但从图中可以看出网络深度达到一定程度时, 深层网络的总体表现不如浅层网络, 这种现象称为退化问题(degradation problem)
为什么会这样?
如果是因为梯度消失, 梯度爆炸, 可以通过中间层标准化(batch normalization)等缓解
也不是过拟合造成的, 因为训练集上深层网络也不如浅层的
可能是因为网络越深, 参数越多, 优化也就更难
ResNet的提出就是为了解决这种退化问题
H ( x ) − x H(x)-x H(x)−x对 x x x求偏导后会有一个恒等项1, 使用链式法则求导时,
下图为VGG-19, 34层的普通卷积神经网络, 34层的ResNet网络的对比图
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。