深度学习网络——卷积神经网络

卷积神经网络之间的比较
LeNet:LeNet可以在早期的小数据集上取得好的成绩,但是在更大的真实数据集上的表现并不尽如人意。
一方面,神经网络计算复杂,20世纪90年代没有像之后GPU那样的大量普及,因此训练一个多通道,多层和大量参数的卷积神经网络在当年很难完成;
另一方面,当年研究者还没有大量深入研究参数初始化和非凸优化算法等诸多领域,导致复杂的神经网络的训练通常较困难。
深度学习网络——卷积神经网络_第1张图片

AlexNet:AlexNet使用了8层卷积神经网络,并以很大的优势赢得了ImageNet 2012图像识别挑战赛。它首次证明
学习到的特征可以超越手工设计的特征,从而一举打破计算机视觉研究的前状。
LeNet与AlexNet得区别:
1.与相对较小的LeNet相比,AlexNet包含8层变换,其中有5层卷积层2层全连接隐藏层,以及1个全连接输出层
Alexnet网络结构详解请看博客
深度学习网络——卷积神经网络_第2张图片

2.AlexNet将sigmoid激活函数改成了更加简单的ReLU激活函数。一方面,ReLU激活函数的计算更简单,例如它并没有sigmoid激活函数中的求幂运算。另一方面,ReLU激活函数在不同的参数初始化方法下使模型更容易训练。
3.AlexNet通过丢弃法来控制全连接层的模型复杂度。而LeNet并没有使用丢弃法。
4.AlexNet引入了大量的图像增广,如翻转、裁剪和颜色变化,从而进一步扩大数据集来缓解
过拟合。

VGG:(使用重复元素的网络,也叫VGG-11,因为使用了8个卷积层和3个全连接层)VGG的组成规律是:连续使用数个相同的填充为1,窗口形状为3*3的卷积层后,接上一个步幅为2、窗口形状为 的最大池化层。卷积层保持输入的高和宽不变,而池化层则对其减半。
对于给定的感受野(与输出有关的输入图片的局部大小),采用堆积的小卷积核优于采用大的卷积核,因为可以增加网络深度来保证学习更复杂的模式,而且代价还比较小(参数更少)。与AlexNet和LeNet一样,VGG网络由卷积层模块后接全连接层模块构成。卷积层模块串联数个vgg_block ,其超参数由变量conv_arch 定义。该变量指定了每个VGG块里卷积层个数和输入输出通道数。全连接模块则跟AlexNet中的一样。

LeNet、AlexNet和VGG在设计上的共同之处是:先以由卷积层构成的模块充分抽取空
间特征,再以由全连接层构成的模块来输出分类结果。其中,AlexNet和VGG对LeNet的改进主要在于如何对这两个模块加宽(增加通道数)和加深。

NiN(网络中的网络):跟以上网络不同,它是换了一种思路,即串联多个由卷积层和“全连接”层构成的小网络来构建一个深层网络。
卷积层的输入和输出通常是四维数组**(样本,通道,高,宽),而全连接层的输入和输出则通常是二维数组(样本,特征)**。如果想在全连接层后再接上卷积层,则需要将全连接层的输出变换为四维
NiN使用 卷积层来替代全连接层,从而使空间信息能够自然传递到后面的层中去。
下图对比了NiN同AlexNet和VGG等网络在结
构上的主要区别:
深度学习网络——卷积神经网络_第3张图片
除使用NiN块以外,NiN还有一个设计与AlexNet显著不同:NiN去掉了AlexNet最后的3个全连接层,取而代之地,NiN使用了输出通道数等于标签类别数的NiN块,然后使用全局平均池化层对每个通道中所有元素求平均并直接用于分类。这里的全局平均池化层即窗口形状等于输入空间维形状的平均池化层。NiN的这个设计的好处是可以显著减小模型参数尺寸,从而缓解过拟合。
深度学习网络——卷积神经网络_第4张图片
GoogLeNet(含并行连结的网络):在2014年的ImageNet图像识别挑战赛中,一个名叫GoogLeNet的网络结构大放异彩。它虽然在名字上向LeNet致敬,但在网络结构上已经很难看到LeNet的影子
GoogLeNet吸收了NiN中网络串联网络的思想,并在此基础上做了很大改进。在随后的几年里,研究人员对GoogLeNet进行了数次改进,本节将介绍这个模型系列的第一个版本。

  1. Inception块
    GoogLeNet中的基础卷积块叫作Inception块(结构如下图所示)
    深度学习网络——卷积神经网络_第5张图片
    2.GoogLeNet模型
    对此模型的详细解读看博客

为了加深卷积核和全连接层的认识以及它们之间的区别,卷积核和全连接层参数个数的计算,详细请看博客

ResNet
思考:如果我们能将新添加的层训练成恒等映射 ,新模型和原模型将同样有效。由于新模型可能得出更优的解来拟合训练数据集,因此添加层似乎更容易降低训练误差。然而在实践中,添加过多的层后训练误差往往不降反升。即使利用批量归一化带来的数值稳定性使训练深层模型更加容易,该问题仍然存在。针对这一问题,何恺明等人提出了残差网络(ResNet)。它在2015年的ImageNet图像识别挑战赛夺魁,并深刻影响了后来的深度神经网络的设计。
深度学习网络——卷积神经网络_第6张图片
ResNet沿用了VGG全33卷积层的设计。残差块里首先有2个有相同输出通道数的33卷积层。每个卷积层后接一个批量归一化层和ReLU激活函数。然后我们将输入跳过这两个卷积运算后直接加在最后的ReLU激活函数前。这样的设计要求两个卷积层的输出与输入形状一样,从而可以相加。如果想改变通道数,就需要引入一个额外的 卷积层来将输入变换成需要的形状后再做相加运算
残差块大致结构:
深度学习网络——卷积神经网络_第7张图片
2 ResNet模型的大致结构如下图所示:

这里每个模块里有4个卷积层(不计算1*1卷积层),加上最开始的卷积层和最后的全连接层,共计18层。这个模型通常也被称ResNet-18。通过配置不同的通道数和模块里的残差块数可以得到不同的ResNet模型,例如更深的含152层的ResNet-152。虽然ResNet的主体架构跟GoogLeNet的类似,但ResNet结构更简单,修改也更方便。这些因素都导致了ResNet迅速被广泛使用。

DenseNet(稠密连接网络):
ResNet中的跨层连接设计引申出了数个后续工作。本节我们介绍其中的一个:稠密连接网络
(DenseNet)。 它与ResNet的主要区别如下图所示。
深度学习网络——卷积神经网络_第8张图片
具体详情请看博客

你可能感兴趣的:(深度学习网络——卷积神经网络)