学习目标:
学习了解神经网络的基础知识
学习内容:
常见的神经网络模型
-
前馈神经网络(Feedforward Neural Networks): 这是最基本的神经网络模型,信息只能从输入层流向输出层,没有反馈连接。常见的前馈神经网络模型包括多层感知机(Multi-Layer Perceptron, MLP)和卷积神经网络(Convolutional Neural Network, CNN)。前馈神经网络适用于处理对输入的独立预测或分类,如图像分类、文本分类等任务。
-
循环神经网络(Recurrent Neural Networks): 模型中存在反馈连接,允许信息在网络中进行循环传播。这种结构使得循环神经网络在处理序列数据(如文本、语音等)时非常有效。常见的循环神经网络模型包括长短期记忆(Long Short-Term Memory, LSTM)和门控循环单元(Gated Recurrent Unit, GRU)。
-
卷积神经网络(CNN): 主要用于图像和视觉相关任务,通过使用卷积层和池化层来提取图像的空间特征。
-
生成对抗网络(Generative Adversarial Networks, GANs): 包括生成器和判别器两个部分,通过对抗训练的方式生成接近真实数据的样本。
-
深度强化学习(Deep Reinforcement Learning, DRL): 将深度神经网络与强化学习相结合,用于解决具有高度复杂、连续状态空间和动作空间的问题。
前馈神经网络,循环神经网络,卷积神经网络的关系
-
前馈神经网络、循环神经网络和卷积神经网络是神经网络的三种不同类型,分别适用于不同的任务和数据类型。
-
可以根据具体需求选择合适的神经网络模型。同时,也有一些混合型的网络结构,如卷积循环神经网络(CRNN),将卷积层和循环层相结合,用于处理同时具有空间结构和时间序列的数据,如图像中的文本识别。
常见的卷积神经网络
LeNet-5
- LeNet-5是由Yann LeCun等人在1998年提出的CNN模型,用于手写数字识别任务。
- LeNet-5 一共由7 层组成,分别是C1、C3、C5 卷积层,S2、S4 降采样层(降采样层又称池化层),F6 为一个全连接层,输出是一个高斯连接层,该层使用softmax 函数对输出图像进行分类。
- LeNet-5网络结构图
AlexNet
-
AlexNet是Alex Krizhevsky等人在2012年设计的CNN模型,通过在ImageNet图像分类竞赛中取得了突破性的结果而广为人知。
-
AlexNet论文地址:AlexNet
-
AlexNet网络结构图:1个输入层(input layer)、5个卷积层(C1、C2、C3、C4、C5)、2个全连接层(FC6、FC7)和1个输出层(output layer)。
3.1 输入层(Input layer):AlexNet的输入图像尺寸是224x224x3,为后续处理方便,普遍改为2272273。
3.2 卷积层(C1):该层的处理流程是:卷积–>ReLU–>局部响应归一化(LRN)–>池化
卷积:输入是227x227x3,使用96个11x11x3的卷积核进行卷积,
padding=0,stride=4,根据公式:(input_size + 2 * padding - kernel_size) / stride + 1=(227+2*0-11)/4+1=55,得到输出是55x55x96。
ReLU:将卷积层输出的FeatureMap输入到ReLU函数中。
局部响应归一化:局部响应归一化层简称LRN,是在深度学习中提高准确度的技术方法。一般是在激活、池化后进行。LRN对局部神经元的活动创建竞争机制,使得其中响应比较大的值变得相对更大,并抑制其他反馈较小的神经元,增强了模型的泛化能力。局部响应归一化的输出仍然是55x55x96。将其分成两组,每组大小是55x55x48,分别位于单个GPU上。
池化:使用3x3,stride=2的池化单元进行最大池化操作(max pooling)。注意这里使用的是重叠池化,即stride小于池化单元的边长。根据公式:(55+2*0-3)/2+1=27,每组得到的输出为27x27x48。
- AlexNet网络模型的创新点
4.1 使用ReLu作为激活函数,成功解决了Sigmoid的梯度弥散问题
4.2 训练时加入了Dropout层,防止过拟合情况发生
4.3 在CNN中使用重叠的最大池化,并提出步长比池化核尺寸要小,这样池化层输出之间有重叠和覆盖,提高了特征的丰富性。
4.4 提出了LRN层,对局部神经元的活动创建竞争机制,,使得其中响应比较大的值变得相对更大,并抑制其他反馈较小的神经元,增强了模型的泛化能力。
VGGNet
- VGGNet是由Karen Simonyan和Andrew Zisserman设计的CNN模型,使用了16或19层深的卷积层,具有非常小的卷积核尺寸(3x3)和池化层。
- VGGNet模型的创新点
2.1 数据层堆叠:通过2至3个33卷积层堆叠来形成55和77大小的感受野,拥有更多的非线性变化。
2.2 得到LRN层作用不大,越深的网络效果越好。
2.3 几个小滤波器(33)卷积层的组合比一个大滤波器(55或77)卷积层好
GoogLeNet (Inception)
- GoogLeNet是Google团队在2014年提出的CNN模型,在ImageNet竞赛中取得了很好的成绩。它引入了Inception模块,以并行方式进行多种尺度的卷积操作。
- GoogLeNet网络模型的创新点
2.1 Inception结构:利用不同大小的卷积核实现不同尺度的感知,最后进行融合,可以得到图像更好的表征。
2.2 使用了1*1卷积:GoogLeNet 在网络中使用了 1x1 的卷积核来进行降维操作,从而减少通道数。这样做既可以减少计算复杂性,又可以提高模型的表达能力。
2.3 全局平均池化: 在网络的最后,GoogLeNet 使用了全局平均池化操作,将最后一个卷积层的特征图的每个通道的空间维度进行平均,得到一个固定大小的特征向量。这种操作可以降低模型中的参数数量,减少过拟合的风险。
ResNet
- ResNet由Kaiming He等人在2015年提出的CNN模型,通过使用残差连接来解决深层网络训练中的梯度消失问题。ResNet具有非常深的网络结构,并在ImageNet竞赛中取得了优异的性能。
- 在ResNet之前普遍认为网络的深度越深,模型的表现就更好,因为CNN越深越能提取到更高级的语义信息。但论文的实验发现,通过和浅层网络一样的方式来构建深层网络,结果性能反而下降了,这是因为网络越深越难训练。
DenseNet
DenseNet 由Gao Huang等人在2016年提出的CNN模型,通过将输入特征与之前所有层的输出连接起来,实现了密集连接的网络结构。这种网络结构有助于特征的重用和梯度传播。
学习时间:
2023.9.1