人工智能深度学习与神经网络2-课件.pptx

上传人(卖家):晟晟文业 文档编号:3708306 上传时间:2022-10-06 格式:PPTX 页数:96 大小:5.71MB
下载 相关 举报
人工智能深度学习与神经网络2-课件.pptx_第1页
第1页 / 共96页
人工智能深度学习与神经网络2-课件.pptx_第2页
第2页 / 共96页
人工智能深度学习与神经网络2-课件.pptx_第3页
第3页 / 共96页
人工智能深度学习与神经网络2-课件.pptx_第4页
第4页 / 共96页
人工智能深度学习与神经网络2-课件.pptx_第5页
第5页 / 共96页
点击查看更多>>
资源描述

1、深度学习与神经网络深度学习与神经网络2 参考讲义 深度学习 第4-5章:4.3,5.9 第6章:6.1,6.2,6.3,6.4,6.5 第9章:9.1-9.3 动手学深度学习 第5章:5.1,5.2,5.3,5.4,5.7 第6章:6.1,6.2,6.6,6.7,6.8主要内容 深度学习基础 基于梯度的学习,隐藏单元,架构设计 正向传播、反向传播和计算图 模型构造,参数初始化策略 卷积神经网络 卷积层,通道,池化层 卷积神经网络(LeNet),VGG,残差网络ResNet 循环神经网络:序列建模 循环神经网络RNN,双向RNN,深度循环网络 门控循环单元GRU,长短期记忆LSTM 优化算法主要

2、内容 卷积神经网络 卷积层,通道,池化层 卷积神经网络(LeNet),VGG,残差网络ResNet 循环神经网络:序列建模 循环神经网络RNN,双向RNN,深度循环网络 门控循环单元GRU,长短期记忆LSTM 优化算法深度学习基础 深度学习算法都可以被描述为:特定的数据集、损失函数、优化过程和模型模型是 ,优化过程可以定义为求解损失函数梯度为零。神经网络和线性模型的最大区别,在于神经网络的非线性导致大多数我们感兴趣的代价函数都变得非凸。深度学习基础 当模型和损失函数形式较为简单时,上的误差最小化问题的解可以直接公式表达出来。这类解叫做解析解(analytical solution)。多数深度学

3、习模型只能通过优化算法有限次迭代模型参数来尽可能降低损失函数的值。这类解叫做数值解(numerical solution)。小批量(mini-batch)样本的随机梯度下降(stochastic gradient descent,SGD)。算法实现过程:深度学习基础 先选取组模型参数的初始值,例如随机选取;接下来对参数进多次迭代,使得每次迭代都可能降低损失函数的值。在每次迭代中,先随机例均匀采样个由固定数训练数据样本所组成的小批量 ;然后求小批量中数据样本的平均损失有关模型参数的导数(梯度);最后此结果与预先设定的个正数的乘积作为模型参数在本次迭代的减小量。深度学习基础 如针对模型 ,可定义平

4、方损失函数通常,我们用训练数据集中所有样本误差的平均来衡量模型预测的质量,即在模型训练中,我们希望找出组模型参数,记为 ,来使得训练样本平均损失最小:深度学习基础 此模型中,其中,代表每个小批量中的样本个数(批量小,batch size),称作学习率(learning rate)并取正数。这的批量小和学习率的值是为设定的,并不是通过模型训练学出的,因此叫做超参数(hyperparameter)。深度学习基础梯度下降梯度下降(gradient descent)假设连续可导的函数 f:R R 的输和输出都是标量这 f(x)是函数 f 在 x 处的梯度。维函数的梯度是个标量,也称导数。找到个常数 0

5、,使得|f(x)|够小,那么可以将?替换为 f(x)并得到深度学习基础 这意味着,如果我们通过来迭代 x,函数 f(x)的值可能会降低。因此在梯度下降中,我们先选取个初始值 x 和常数 0,然后不断通过上式来迭代 x,直到达到停条件,例如 的值已够小或迭代次数已达到某个值。深度学习基础 隐藏层:不同于输出层,训练数据并没有直接指明其他层应该怎么做。学习算法必须决定如何使用这些层来产生想要的输出,但是训练数据并没有说每个单独的层应该做什么。相反,学习算法必须决定如何使用这些层来最好地实现 的近似。因为训练数据并没有给出这些层中的每一层所需的输出,所以这些层被称为 隐藏层(hidden layer

6、)。深度学习基础 该如何选择隐藏单元的类型,这些隐藏单元用在模型的隐藏层中。如整流线性单元 大多数的隐藏单元都可以描述为接受输入向量 x,计算仿射变换 ,然后使用一个逐元素的非线性函数 g(z)。logistic sigmoid 激活函数双曲正切激活函数深度学习基础架构设计 架构(architecture)一词是指网络的整体结构:它应该具有多少单元,以及这些单元应该如何连接。大多数是链式结构:主要的架构考虑是选择网络的深度和每一层的宽度。万能近似定理万能近似定理。另外一个关键点是如何将层与层之间连接起来。深度学习基础深度学习基础正向传播、反向传播和计算图 正向传播深度学习基础 反向传播:指的是

7、计算神经络参数梯度的法。总的来说,依据微积分中的链式法则,沿着从输出层到输层的顺序,依次计算并存储标函数有关神经络各层的中间变量以及参数的梯度。对输输出 X,Y,Z 为任意形状张量的函数 Y=f(X)和 Z=g(Y),通过链式法则,我们有 例子中,它的参数是 W(1)和 W(2),因此反向传播的目标是计算 J/W(1)和 J/W(2)。应用链式法则依次计算各中间变量和参数的梯度,其计算次序与前向传播中相应中间变量的计算次序相反。首先,分别计算目标函数 J=L+s 有关损失项 L 和正则项 s的梯度:深度学习基础 在训练深度学习模型时,正向传播和反向传播之间相互依赖。,正向传播的计算可能依赖于模

8、型参数的当前值。而这些模型参数是在反向传播的梯度计算后通过优化算法迭代的。例如,计算正则化项 另,反向传播的梯度计算可能依赖于各变量的当前值。而这些变量的当前值是通过正向传播计算得到的。如 参数梯度 需要依赖隐藏层变量的当 前值 h。主要内容 深度学习基础 基于梯度的学习,隐藏单元,架构设计 正向传播、反向传播和计算图 模型构造,参数初始化策略 卷积神经网络 卷积层,通道,池化层 卷积神经网络(LeNet),VGG,残差网络ResNet 循环神经网络:序列建模 循环神经网络RNN,双向RNN,深度循环网络 门控循环单元GRU,长短期记忆LSTM 优化算法卷积神经网络 卷积神经网络CNN(con

9、volutional neural network)是含有卷积层(convolutional layer)的神经网络。最常用的维卷积层。它有高和宽两个空间维度,常用来处理图像数据。卷积核(filter)卷积神经网络 维卷积层将输和卷积核做互相关运算,并加上个标量偏差来得到输出。卷积层的模型参数包括了卷积核和标量偏差。在训练模型的时候,通常我们先对卷积核随机初始化,然后不断迭代卷积核和偏差。卷积神经网络 二维卷积层输出的二维数组可以看作是输入在空间维度(宽和高)上某级的表征,也叫特征特征图图(feature map)。影响元素 x 的前向计算的所有可能输入区域(可能大于输入的实际尺寸)叫做 x的

10、感受野感受野(receptive field)。可以通过更深的卷积神经网络使特征图中单个元素的感受野变得更加阔,从而捕捉输入上更大尺寸的特征卷积神经网络填充和步幅 填充(padding)是指在输和宽的两侧填充元素(通常是 0 元素)。图 5.2 我们在原输和宽的两侧分别添加了值为 0 的元素,使得输和宽从 3 变成了 5,并导致输出和宽由 2 增加到 4。卷积神经网络 般来说,如果在的两侧共填充 ph,在宽的两侧共填充 pw 列,那么输出形状将会是卷积神经网络步幅步幅 卷积窗口从输数组的最左上开始,按从左往右、从上往下的顺序,依次在输数组上滑动。我们将每次滑动的数和列数称为步幅(stride)

11、。卷积神经网络通道 前到的输和输出都是维数组,但真实数据的维度经常更。例如,彩图像在和宽两个维度外还有 RGB(红、绿、蓝)三个颜通道。假设彩图像的和宽分别是 h 和w(像素),那么它在内存中可以表为个 3 h w 的多维数组。我们将小为 3 的这维称为通道(channel)维。卷积神经网络卷积神经网络 多输出通道:当输通道有多个时,由于我们对各个通道的结果做了累加,所以不论输通道数是多少,输出通道数总是为 1。设卷积核输通道数和输出通道数分别为 ci 和 co,和宽分别为 kh 和 kw。如果我们希望得到含多个通道的输出,我们可以为每个输出通道分别创建形状为 ci kh kw 的核数组。将它

12、们在输出通道维上连结,卷积核的形状即 co ci kh kw。在互相关运算时,每个输出通道上的结果由卷积核在该输出通道上的核数组与整个输数组计算而来。卷积神经网络卷积神经网络 卷积窗口形状为 1 1(kh=kw=1)的多通道卷积层。我们通常称之为 1 1 卷积卷积层层,并将其中的卷积运算称为 1 1 卷积。因为使了最小窗口,1 1 卷积失去了卷积层可以识别和宽维度上相邻元素构成的模式的功能。实际上,1 1 卷积的主要计算发在通道维上。卷积神经网络 梯度消失/爆炸卷积神经网络 sigmoid导数最大值1/4 推导卷积神经网络 解决方案解决方案 预训练加微调:DBN,Hinton 非饱和的激活函数

13、(如 ReLU、leakrelu、elu)批量归一化(Batch Normalization)梯度截断(Gradient Clipping)残差结构 好的参数初始化方式,如He初始化 正则化 LSTM非饱和的激活函数 ReLuBN(Batch Normalization)批量归一化批量归一化具有加速网络收敛速度,提升训练稳定性的效果。BN利小批量上的均值和标准差,不断调整神经络中间输出,从而使得整个神经络在各层的中间输出的数值更稳定 通过对每一层的输出规范为均值和方差一致的方法,消除了 带来的放大缩小的影响,进而解决梯度消失和爆炸的问题BN(Batch Normalization)对对全连接层

14、全连接层做做BN:设全连接层的输为 u,考虑由 m 个样本组成的小批量求均值和差:这里 是个很小的常数。引了两个可以学习的模型参数,拉升(scale)参数 和偏移(shift)参数 BN(Batch Normalization)对卷积层对卷积层做做BN BN发在卷积计算之后、应激活函数之前。如果卷积计算输出多个通道,我们需要对这些通道的输出分别做批量归化,且每个通道都拥有独的拉升和偏移参数,且均为标量。设小批量中有 m 个样本。在单个通道上,假设卷积计算输出的和宽分别为 p 和 q。则对该通道中 m p q 个元素同时做BN。对这些元素做标准化计算时,我们使相同的均值和差,即该通道中 m p

15、q VGG VGGVGG 特点:VGG由5层卷积层、3层全连接层、softmax输出层构成,层与层之间使用max-pooling(最大化池)分开,所有隐层的激活单元都采用ReLU函数。VGG使用多个较小卷积核(3x3)的卷积层代替一个卷积核较大的卷积层,一方面可以减少参数,另一方面相当于进行了更多的非线性映射,可以增加网络的拟合/表达能力。VGG认为两个3x3的卷积堆叠获得的感受野大小,相当一个5x5的卷积;而3个3x3卷积的堆叠获取到的感受野相当于一个7x7的卷积。这样可以增加非线性映射,也能很好地减少参数。VGG 6种结构残差网络ResNet 添加过多的层后收敛慢、训练误差增大?残差网络R

16、esNet残差网络ResNet残差网络结构中,通过“shortcut connections”的方式,直接把输入x传到输出作为初始结果,输出结果为H(x)=F(x)+x,当F(x)=0时,那么H(x)=x,也就是上面所提到的恒等映射。于是,ResNet相当于将学习目标改变了,不再是学习一个完整的输出,而是目标值H(X)和x的差值,也就是所谓的残差F(x):=H(x)-x,因此,后面的训练目标就是要将残差结果逼近于0,使到随着网络加深,准确率不下降。残差网络ResNet 性能提高残差网络ResNet Why?残差网络ResNet Why?理论上,对于“随着网络加深,准确率下降”的问题,Resne

17、t提供了两种选择方式,也就是identity mapping和residual mapping,如果网络已经到达最优,继续加深网络,residual mapping将被push为0,只剩下identity mapping,这样理论上网络一直处于最优状态了,网络的性能也就不会随着深度增加而降低了。残差网络ResNet两种ResNet设计两种结构分别针对ResNet34(左图)和ResNet50/101/152 右图),一般称整个结构为一个”building block“。其中右图又称为”bottleneck design”降低参数的数目降低参数的数目:1x1x256x64+3x3x64x64+1

18、x1x64x256=69632 3x3x256x256x2=1179648残差网络ResNet Channel/Dimension不同?Padding Convolution残差网络ResNet ResNet 50 两个基本block Identity Block Conv Block残差网络ResNet Identity Block:输入和输出的dimension一样,可串联多个残差网络ResNet Conv Block:输入和输出的dimension不一样,不能连续串联。本来作用为了改变特征向量的dimension残差网络ResNetResNet五种结构:主要内容 深度学习基础 基于梯度的

19、学习,隐藏单元,架构设计 正向传播、反向传播和计算图 模型构造,参数初始化策略 卷积神经网络 卷积层,通道,池化层 卷积神经网络(LeNet),VGG,残差网络ResNet 循环神经网络:序列建模 循环神经网络RNN,双向RNN,深度循环网络 门控循环单元GRU,长短期记忆LSTM 优化算法循环神经网络RNN 循环神经络(recurrentneural networks,RNN)被设计用来更好地处理时序信息。它引状态变量来存储过去的信息,并与当前的输共同决定当前的输出 循环神经络常用于处理序列数据,例如段字或声、购物或观影的顺序、甚至是图像中的行或列像素。因此,循环神经络在实际中有着极为泛的应

20、用,如语模型、本分类、机器翻译、语识别、图像分析、写识别和推荐系统。循环神经网络RNN语言模型 给定个度为T 的词的序列:语模型将计算该序列的概率:语模型可于提升语识别和机器翻译的性能。例,语识别中,“厨房油完了”厨房油完了?厨房油完了循环神经网络RNN语言模型语言模型语言模型的的计算计算 假设序列 中的每个词是依次生成的,有 需要计算词的概率,以及个词在给定前个词情况下的条件概率,即语模型参数。词的概率可以通过该词在训练数据集中的相对词频来计算。当序列度增加时,计算和存储多个词共同出现的概率的复杂度会呈指数级增加。循环神经网络RNN语言模型N 元语法N 元语法通过马尔可夫假设,个词的出现只与

21、前面 n 个词相关,即 n 阶尔可夫链(Markov chain of order n)。如果 n=1,那么有 。如果基于 n 1 阶尔可夫链,我们可以将语模型改写为循环神经网络RNN语言模型例如,度为 4 的序列 在元、二元和三元语法中的概率分别为:N的长度?循环神经网络RNN RNN并刚性地记忆所有固定长度的序列,而是通过隐藏状态来储存之前时间步的信息。不含隐藏状态的神经网络 考虑个单隐藏层的多层感知机:循环神经网络RNN 含隐藏状态的循环神经络 考虑输数据存在时间相关性的情况。假设 是序列中时间步 t 的小批量输,是该时间步的隐藏层变量。跟MLP不同的是,这里我们保存上时间步的隐藏变量

22、,并引个新的权重参数 ,当前时间步的隐藏变量的计算由当前时间步的输和上时间步的隐藏变量共同决定:在时间步 t,输出层的输出和多层感知机中的计算类似:循环神经网络RNN 含隐藏状态的循环神经络在时间步 t,隐藏状态的计算可以看成是将输 和 前时间步隐藏状态 连结后输个激活函数为 的全连接层。循环神经网络RNN 与MLP相比,我们在这添加了 项。由上式中相邻时间步的隐藏变量 和 之间的关系可知,这里的隐藏变量捕捉了截至当前时间步的序列的历史信息,就像是神经络当前时间步的状态或记忆样。因此,该隐藏变量也称为隐藏状态。由于隐藏状态在当前时间步的定义使用了它在上时间步相同的定义,上式的计算是循环的。使用

23、循环计算的网络即循环神经网络RNN。循环神经网络RNN应:基于字符级循环神经络的语模型循环神经网络RNN One-hot 向量循环神经网络RNN 通过时间反向传播循环神经网络RNN循环神经网络RNN循环神经网络RNN 门控循环单元(gated recurrent neural network,GRU)短期记忆(long short-term memory,LSTM)控循环单元(GRU)GRU(gated recurrent neural network)控循环单元(GRU)重置和更新控循环单元(GRU)候选隐藏状态控循环单元(GRU)隐藏状态控循环单元(GRU)重置有助于捕捉时间序列短期的依赖

24、关系。更新有助于捕捉时间序列期的依赖关系。短期记忆(LSTM)LSTM(long short-term memory)短期记忆(LSTM)短期记忆的隐藏层输出包括隐藏状态和记忆细胞。只有隐藏状态会传递进输出层。短期记忆的输、遗忘和输出可以控制信息的流动。短期记忆可以应对循环神经络中的梯度衰减问题,并更好地捕捉时间序列中时间步距离较的依赖关系。主要内容 深度学习基础 基于梯度的学习,隐藏单元,架构设计 正向传播、反向传播和计算图 模型构造,参数初始化策略 卷积神经网络 卷积层,通道,池化层 卷积神经网络(LeNet),VGG,残差网络ResNet 循环神经网络:序列建模 循环神经网络RNN,双向

25、RNN,深度循环网络 门控循环单元GRU,长短期记忆LSTM 优化算法优化算法 SGD缺点:选择合适的learning rate比较困难 对所有的参数更新使用同样的learning rate。对于稀疏数据或者特征,有时我们可能想更新快一些对于不经常出现的特征,对于常出现的特征更新慢一些,这时候SGD就不太能满足要求了 SGD容易收敛到局部最优,在某些情况下可能被困在鞍点 batch gradient descent,stochastic gradient descent,mini-batch gradient descent优化算法损失平面等高线优化算法鞍点处的比较优化算法 如果数据是稀疏的,

26、就用自适用方法,不用手动调节,而且最好采用默认值,即 Adagrad,Adadelta,RMSprop,Adam。SGD通常训练时间更长,容易陷入鞍点,但是在好的初始化和学习率调度方案的情况下,结果更可靠 RMSprop,Adadelta,Adam 在很多情况下的效果是相似的。如果在意更快的收敛,并且需要训练较深较复杂的网络时,推荐使用学习率自适应的优化方法 随着梯度变的稀疏,Adam 比 RMSprop 效果会好。整体来讲,Adam 是最好的选择。优化算法 把握:每个算法的梯度更新规则和缺点 为了应对这个不足而提出的下一个算法 超参数的一般设定值 几种算法的效果比较 选择哪种算法优化算法MB

27、GD小批量随机梯度下降优化算法Momentum动量法优化算法缺点:盲目地,不具备缺点:盲目地,不具备一些先知一些先知,适应性差强,适应性差强优化算法Nesterov Accelerated Gradient(NAG)l 蓝色是 Momentum 的过程,会先计算当前的梯度,然后在更新后的累积梯度后会有一个大的跳跃。l NAG 会先在前一步的累积梯度上(brown vector)有一个大的跳跃,然后衡量一下梯度做一下修正(red vector),这种预期的更新可以避免我们走的太快。l 超参数设定值:一般 仍取值 0.9 左右 目前为止,我们可以做到,在更新梯度时顺应 loss function 的梯度来调整速度,并且对 SGD 进行加速。优化算法Adagrad可以对低频的参数做较大的更新,对高频的做较小的更新,因此,对于稀疏的数据它的表现很好,很好地提高了 SGD 的鲁棒性减少了学习率的手动调节超参数设定值:一般选取0.01缺点:它的缺点是分母会不断积累,这样学习率就会收缩并最终会变得非常小。优化算法Adadelta 对Adagrad的改进,就是分母的 G 换成了过去的梯度平方的衰减平均值,指数衰减平均值 学习率 换成了 RMS,这样的话,我们甚至都不需要提前设定学习率了 超参数设定值:一般设定为 0.9思考

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 办公、行业 > 各类PPT课件(模板)
版权提示 | 免责声明

1,本文(人工智能深度学习与神经网络2-课件.pptx)为本站会员(晟晟文业)主动上传,163文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。
2,用户下载本文档,所消耗的文币(积分)将全额增加到上传者的账号。
3, 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(发送邮件至3464097650@qq.com或直接QQ联系客服),我们立即给予删除!


侵权处理QQ:3464097650--上传资料QQ:3464097650

【声明】本站为“文档C2C交易模式”,即用户上传的文档直接卖给(下载)用户,本站只是网络空间服务平台,本站所有原创文档下载所得归上传人所有,如您发现上传作品侵犯了您的版权,请立刻联系我们并提供证据,我们将在3个工作日内予以改正。


163文库-Www.163Wenku.Com |网站地图|