深度学习分类网络
AlexNet
ImageNet Classification with Deep Convolutional Neural Networks
1、引入了Relu(x) = max(0,x)**函数,并验证其效果在较深的网络超过了Sigmoid。
2、用最大池化代替了平均池化。
3、在全连接层加入了dropout,避免过拟合。
4、引入了局部响应归一化(LRN),对局部神经元的活动创建竞争机制,使得其中响应比较大的值变得相对更大,并抑制其他反馈较小的神经元。
VGG
VERY DEEP CONVOLUTIONAL NETWORKS FOR LARGE-SCALE IMAGE RECOGNITION
与Alexnet相比:
1、去掉了LRN层,作者发现深度网络中LRN的作用并不明显,干脆取消了。
2、采用更小的卷积核-3x3,Alexnet中使用了更大的卷积核,比如有7x7的,因此VGG相对于Alexnet而言,参数量更少。
3、池化核变小,VGG中的池化核是2x2,stride为2,Alexnet池化核是3x3,步长为2。
NIN
Network In Network
1、将CONV修改为MLPCONV(CONV+1x1CONV+1x1CONV)。
2、去掉全连接层,最后使用Global Average Pooling,减少网络参数。
3、1x1卷积的作用主要是跨通道信息融合、特征图通道数的升维和降维。
GoogLeNet
Going deeper with convolutions
1、考虑增加网络的宽度,将输出特征图级联起来。
2、为了避免级联起来的特征图太厚,在3x3、5x5卷积之前,max pooling后加入1x1卷积降维。
3、为了避免梯度消失,网络额外增加两个辅助的softmax进行梯度传播。
ResNet
Deep Residual Learning for Image Recognition
为什么网络越深效果越不好呢?这就是网络退化问题。
1、按理说,当我们堆叠一个模型时,理所当然的会认为效果会越堆越好。因为,假设一个比较浅的网络已经可以达到不错的效果,那么即使之后堆上去的网络什么也不做,模型的效果也不会变差。
2、如何深层网络模型后面都是恒等映射,那么这个网络模型就是一个浅层的网络了,如何得到恒等映射呢?
3、网络很难拟合H(x) = x,因此设计网络H(x) = F(x)+x,把这个问题转化成学习残差函数F(x) = H(x)-x,只要F(x)=0,就构成了一个恒等映射H(x) = x,拟合残差比拟合恒等更加的容易。
DenseNet
Densely Connected Convolutional Networks
1、相比ResNet,DenseNet采用密集连接机制。
ResNet是元素级相加,DenseNet是通道维度连接在一起,输入到下一层。
2、Block中特征图大小不变,为了降低特征图大小,DenseNet采用Dense Block + Transition,Transition在两个相邻的Block中通过pooling使特征图大小降低。
输入:前几层的通道连接在一起的特征图。
输出:通道数为K的特征图。
随着块内层数加深,输入特征图的通道越来越多,计算量越来越大,增加1x1卷积来降维。
SqueezeNet
ALEXNET-LEVEL ACCURACY WITH 50X FEWER PARAMETERS AND <0.5MB MODEL SIZE
Fire Module 由Squeeze和Expand两个模块组成。
Squeeze module:1x1卷积降维。
Expand module:1x1卷积和3x3卷积通道组合升维。
MobileNet
MobileNets: Efficient Convolutional Neural Networks for Mobile Vision Applications
可能有理解不对和不全的地方,多多包涵,希望大佬路过的时候可以提醒一下,共同进步。