计算机视觉07:图像分类

计算机视觉07:图像分类

文章目录

  • 计算机视觉07:图像分类
    • 1. ILSVRC竞赛
    • 2. 常见CNN
      • 1. AlexNet
      • 2. VGG
      • 3. GoogLeNet
        • 1. Inception V1
        • 2. Inception V2
        • 3. Inception V3
        • 4. Inception V4
      • 4. ResNet、ResNeXt
      • 5. CNN设计准则
      • 6. 总结

1. ILSVRC竞赛

计算机视觉07:图像分类_第1张图片

2. 常见CNN

计算机视觉07:图像分类_第2张图片
计算机视觉07:图像分类_第3张图片

1. AlexNet

计算机视觉07:图像分类_第4张图片
计算机视觉07:图像分类_第5张图片
计算机视觉07:图像分类_第6张图片
但是后来LRN被认为是效果不好。
计算机视觉07:图像分类_第7张图片
在卷积之后做了一个全连接,后面变成11的卷积层。
计算机视觉07:图像分类_第8张图片
各个通道的值进行了一个线性的组合。
当1
1卷积出现时,在大多数情况下它作用是升/降特征的维度这里的维度指的是通道数(厚度),而不改变图片的宽和高。

2. VGG

计算机视觉07:图像分类_第9张图片
计算机视觉07:图像分类_第10张图片

3. GoogLeNet

计算机视觉07:图像分类_第11张图片
一般来说,提升网络性能最直接的办法就是增加网络深度和宽度,但一味地增加,会带来诸多问题:
1)参数太多,如果训练数据集有限,很容易产生过拟合;
2)网络越大、参数越多,计算复杂度越大,难以应用;
3)网络越深,容易出现梯度弥散问题(梯度越往后穿越容易消失),难以优化模型。
我们希望在增加网络深度和宽度的同时减少参数,为了减少参数,自然就想到将全连接变成稀疏连接。但是在实现上,全连接变成稀疏连接后实际计算量并不会有质的提升,因为大部分硬件是针对密集矩阵计算优化的,稀疏矩阵虽然数据量少,但是计算所消耗的时间却很难减少。在这种需求和形势下,Google研究人员提出了Inception的方法。

计算机视觉07:图像分类_第12张图片
在未使用这种方式的网络里,我们一层往往只使用一种操作,比如卷积或者池化,而且卷积操作的卷积核尺寸也是固定大小的。但是,在实际情况下,在不同尺度的图片里,需要不同大小的卷积核,这样才能使性能最好,或者或,对于同一张图片,不同尺寸的卷积核的表现效果是不一样的,因为他们的感受野不同。所以,我们希望让网络自己去选择,Inception便能够满足这样的需求,一个Inception模块中并列提供多种卷积核的操作,网络在训练的过程中通过调节参数自己去选择使用,同时,由于网络中都需要池化操作,所以此处也把池化层并列加入网络中。

1. Inception V1

计算机视觉07:图像分类_第13张图片
我们在上面提供了一种Inception的结构,但是这个结构存在很多问题,是不能够直接使用的。首要问题就是参数太多,导致特征图厚度太大。为了解决这个问题,作者在其中加入了1X1的卷积核,改进后的Inception结构如右图。
这样做有两个好处,首先是大大减少了参数量,其次,增加的1X1卷积后面也会跟着有非线性激励,这样同时也能够提升网络的表达能力。
计算机视觉07:图像分类_第14张图片
计算机视觉07:图像分类_第15张图片
计算机视觉07:图像分类_第16张图片

对上图说明如下:

1)GoogLeNet采用了模块化的结构(Inception结构),方便增添和修改;

2)网络最后采用了average pooling(平均池化)来代替全连接层,该想法来自NIN(Network in Network),事实证明这样可以将准确率提高0.6%。

3)虽然移除了全连接,但是网络中依然使用了Dropout ;

4)为了避免梯度消失,网络额外增加了2个辅助的softmax用于向前传导梯度(辅助分类器)
辅助分类器的两个分支有什么用呢?

作用一:可以把他看做inception网络中的一个小细节,它确保了即便是隐藏单元和中间层也参与了特征计算,他们也能预测图片的类别,他在inception网络中起到一种调整的效果,并且能防止网络发生过拟合。

作用二:给定深度相对较大的网络,有效传播梯度反向通过所有层的能力是一个问题。通过将辅助分类器添加到这些中间层,可以期望较低阶段分类器的判别力。在训练期间,它们的损失以折扣权重(辅助分类器损失的权重是0.3)加到网络的整个损失上。

2. Inception V2

计算机视觉07:图像分类_第17张图片
计算机视觉07:图像分类_第18张图片
计算机视觉07:图像分类_第19张图片

3. Inception V3

计算机视觉07:图像分类_第20张图片
计算机视觉07:图像分类_第21张图片
一个5x5的图用一个3x3的模板去卷积,padding=SAME,stride=1,那卷积模板需要横向位移4次(即计算5次),纵向位移4次(同上),即横向纵向一共计算5x5=25次,每个模板是3x3也就是要计算9个数,一共就是25x9=225次然后换成1x3和3x1两个模板去卷积,1x3需要横向计算5次,纵向计算5次,每次3个数,一共就是5x5x3=25x3=75,同理3x1模板也需要计算75次,即一共150次225和150差33%
计算机视觉07:图像分类_第22张图片

4. Inception V4

计算机视觉07:图像分类_第23张图片
计算机视觉07:图像分类_第24张图片
各种各样不同的组合,全都考虑进去。
计算机视觉07:图像分类_第25张图片

4. ResNet、ResNeXt

计算机视觉07:图像分类_第26张图片
计算机视觉07:图像分类_第27张图片
计算机视觉07:图像分类_第28张图片
计算机视觉07:图像分类_第29张图片
计算机视觉07:图像分类_第30张图片

5. CNN设计准则

计算机视觉07:图像分类_第31张图片
计算机视觉07:图像分类_第32张图片
计算机视觉07:图像分类_第33张图片
计算机视觉07:图像分类_第34张图片

6. 总结

计算机视觉07:图像分类_第35张图片

你可能感兴趣的:(计算机视觉,计算机视觉)