动手学深度学习(现代卷积神经网络学习笔记)

             现代卷积神经网络

之前的传统的机器学习方式,是传入人工制作选取的图像特征作为输入,训练后送入分类器中,如今是原始图像(可能裁剪)输入网络进行训练。计算机视觉研究人员相信,从对最终模型精度的影响来说,更大或更干净的数据集、或是稍微改进的特征提取,比任何学习算法带来的进步要大得多。

大纲

主要有以下结构,学习这些结构,包含的思想,有助于以后自己网络模型的搭建

  • AlexNet。它是第一个在大规模视觉竞赛中击败传统计算机视觉模型的大型神经网络;

  • 使用重复块的网络(VGG)。它利用许多重复的神经网络块;

  • 网络中的网络(NiN)。它重复使用由卷积层和1×1卷积层(用来代替全连接层)来构建深层网络;

  • 含并行连结的网络(GoogLeNet)。它使用并行连结的网络,通过不同窗口大小的卷积层和最大汇聚层来并行抽取信息;

  • 残差网络(ResNet)。它通过残差块构建跨层的数据通道,是计算机视觉中最流行的体系架构;

  • 稠密连接网络(DenseNet)。它的计算成本很高,但给我们带来了更好的效果。

7.1深度卷积神经网络AlexNet

特征是应该被计算出来(2012年之前0)还是应该被学习(参数学习,现代)?

推动机器学习不断发展很重要的两个因素:数据,硬件

每一个卷积层卷积核大小的选取是怎么确定的???

创新:

1.第一个卷积层用更大的卷积核,和步幅来捕获长宽比之前输入图像大十倍的目标。

 2.AlexNet将sigmoid激活函数改为更简单的ReLU激活函数。

3.AlexNet通过暂退法(使模型不对某个神经元敏感),控制全连接层的模型复杂度,而LeNet只使用了权重衰减。 

4.AlexNet在训练时增加了大量的图像增强数据,如翻转、裁切和变色。使模型训练更健壮,更大的样本量有效地减少了过拟合。

7.2使用块VGG

VGG块:卷积层+Relu+池化层

思想:设计神经网络从单个神经元到卷积层,再到卷积块,考虑层次逐渐抽象,以后会不会更抽象,网络与网络之间进行进行搭配?现在学的是参数,以后会不会模型都能给学出来?

 

7.3网络中的网络NiN

NiN块:卷积层+1*1卷积层+1*1卷积层

LeNet、AlexNet和VGG都有一个共同的设计模式:通过一系列的卷积层与汇聚层来提取空间结构特征;然后通过全连接层对特征的表征进行处理。 AlexNet和VGG对LeNet的改进主要在于如何扩大和加深这两个模块。 或者,可以想象在这个过程的早期使用全连接层。然而,如果使用了全连接层,可能会完全放弃表征的空间结构。 网络中的网络NiN)提供了一个非常简单的解决方案:在每个像素的通道上分别使用多层感知机

简而言之:1×1卷积层充当带有ReLU激活函数的逐像素全连接层,对每个像素进行操作

网络中的网络:串联多个由卷积层和“全连接”层(1*1)构成的小网络来构建一个深层网络。

​​​​​​​

 

7.4 含并行连结的网络(GoogLeNet)

 GoogLeNet吸收了NiN中串联网络的思想,并在此基础上做了改进。解决了什么样大小的卷积核最合适的问题。

inception块:计算机人的浪漫:“we need to go deeper”《盗梦空间》、

27c4971b9fd14f21844178189ca3aa79.png

四条线路可以选择不同大小的卷积核探索图像,可以识别图像不同尺度的细节

ff38f984e2664bc9ba01565bb7761af1.png

7.5批量规范化 (批量归一化)

问题:backword梯度是从后往前传,越靠近数据的层更新梯度越小。而且每次底部一改顶部训练的参数也就白训练了要重新训练(底层参数修改的都不对了),现在要解决的就是如何更改底部而不对顶部造成太大影响

ub,西格玛b都是根据数据计算出来的,剩下两个参数是学出来的

BN就是规范化公式,方差加个噪声项,防止除0

40585d31ce5944abad0f76d62662a018.png

全连接层(特征维)和卷积层(通道维)归一化作用在哪:1.作用在输入2.可以作用在输出,激活函数之前(像素的通道其实就是一个像素的特征,二维数据罢了用1*1卷积进行BN)

24c83a8eba3241dcbd1d7a1ccb163a06.png

加的随机偏移(分子),和缩放(分母),丢弃法也是用的随机丢弃呀,没必要一起用

每一层放到一个类似的分布里,可以用更大学习率来训练,所以会更快收敛,但最后精度不会变好。

7.6残差网络ResNet

问题:F6这个函数空间(层数更多)更复杂但不如F3这个函数空间里的最优模型离f星近(左图),ResNet做的就是让你增加更多的层,模型复杂度上升,通常会让你变得更好 (右图)

 残差网络的核心思想是:每个附加层都应该更容易地包含原始函数作为其元素之一。

4a30adaf549246d8ad932e86029c92c6.png

解释:

没有虚线框里面那一块,也没关系(有没有不都一样了),也能得到原来的值x。

6cd68294d94c4407a52724cdd00ed724.png

左图为输入和输出通道数不变,右边为通道数改变用1*1卷积调整

2725af3081dd455d837990169abc57cd.png

跳转思想,现在网络几乎都在用!!!!! 

 7.7稠密连接网络(DenseNet)

 输出与之前所有层都有关系ccfb1009b68b4709aafcfb9d7ad77c53.png

 更直观的图f1d9c0ef162541a4b977aeeb2fd29366.png

  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值