基于keras的深度学习介绍ppt课件.pptx
《基于keras的深度学习介绍ppt课件.pptx》由会员分享,可在线阅读,更多相关《基于keras的深度学习介绍ppt课件.pptx(85页珍藏版)》请在三一办公上搜索。
1、,基于keras的深度学习介绍,钱国庆,目 录CONTENTS,深度学习的起源,神经网络的原理,深度学习的原理,Keras介绍及基本语法,Keras应用案例,深度学习的起源,Keras,深度学习的起源,DeepLearning,深度学习的起源,五、六十年代,Rosenblatt 感知机(perceptron),拥有输入层、输出层和一个隐含层。对稍复杂一些的函数都无能为力,深度学习的起源,八十年代,Rumelhart、Williams、Hinton、LeCun 多层感知机(multilayer perceptron),即有多个隐含层的感知机使用sigmoid或tanh等连续函数模拟神经元对激励的
2、响应,在训练算法上则使用Werbos发明的反向传播BP算法改名叫神经网络神经网络的层数直接决定了它对现实的刻画能力利用每层更少的神经元拟合更加复杂的函数随着神经网络层数的加深,优化函数越来越容易陷入局部最优解,并且这个“陷阱”越来越偏离真正的全局最优另一个不可忽略的问题是随着网络层数增加,“梯度消失”现象更加严重。具体来说,我们常常使用sigmoid作为神经元的输入输出函数。对于幅度为1的信号,在BP反向传播梯度时,每传递一层,梯度衰减为原来的0.25。层数一多,梯度指数衰减后低层基本上接受不到有效的训练信号。,深度学习的起源,2006年,Hinton利用预训练方法缓解了局部最优解问题,将隐含
3、层推动到了7层,神经网络真正意义上有了“深度”,由此揭开了深度学习的热潮。这里的“深度”并没有固定的定义在语音识别中4层网络就能够被认为是“较深的”,而在图像识别中20层以上的网络屡见不鲜。为了克服梯度消失,ReLU、maxout等传输函数代替了sigmoid,形成了如今DNN的基本形式。单从结构上来说,全连接的DNN和图1的多层感知机是没有任何区别的。高速公路网络(highway network)和深度残差学习(deep residual learning)进一步避免了梯度消失,网络层数达到了前所未有的一百多层(深度残差学习:152层)(Kaiming He,MSRA,2015ImageNe
4、t计算机识别挑战赛,系统错误率已经低至3.57%,人眼辨识的错误率大概为5.1%),何恺明,2015 RsNet,TensorFlow应用成果除了Alpha Go以外,安卓手机新增自拍功能,就是通过应用深度学习训练出来的视觉模型,可以非常准确地分离前景像素和后景像素,对前景像素和后景像素分别处理,这样的话就可以实现背景虚化这样的功能。,实现这种功能,传统上,手机厂商需要增加第二个摄像头,这就会增加手机的成本,同时对现有用户已经获得的手机就不太容易获得这样的效果,,谷歌翻译,其他,京东内部搭建了 TensorFlow 训练平台,用于开发图像、自然语言相关的模型,并且把他们用到客服广告等领域。小米
5、也在尝试类似的技术路线,支持他们生态线上各种特殊的应用。网易的有道笔记、网易翻译君也使用了 TensorFlow 视觉和语言的模型。,我们正处在下一次技术爆炸的门口,人类从直立行走到2003年的四百万年间,一共创造了 5 EB的信息,而到了2010年,人类每两天就会创造 5 EB;再到了2013年,人类每 10 分钟就创造 5 EB;再到今天,人类每1分钟就创造 5 艾字节。谷歌董事长施密特,千年以来世界GDP变动,神经网络基础原理,Keras,梯度下降,1,反向传播算法,2,激活函数,3,梯度下降-成本函数(Cost Function),我们想要根据房子的大小,预测房子的价格,给定如下数据集
6、:,梯度下降,(for fixed , this is a function of x),(function of the parameters ),(for fixed , this is a function of x),(function of the parameters ),(for fixed , this is a function of x),(function of the parameters ),(for fixed , this is a function of x),(function of the parameters ),(for fixed , this is
7、a function of x),(function of the parameters ),(for fixed , this is a function of x),(function of the parameters ),(for fixed , this is a function of x),(function of the parameters ),(for fixed , this is a function of x),(function of the parameters ),(for fixed , this is a function of x),(function o
8、f the parameters ),梯度下降,(1)先确定向下一步的步伐大小,我们称为Learning rate;(2)任意给定一个初始值:;(3)确定一个向下的方向,并向下走预先规定的步伐,并更新;(4)当下降的高度小于某个定义的值,则停止下降;,梯度下降,(1)初始点不同,获得的最小值也不同,因此梯度下降求得的只是局部最小值;(2)越接近最小值时,下降速度越慢;,反向传播算法(Backpropagation),也就是说,对于上层节点p和下层节点q,需要找到从q节点到p节点的所有路径,并且对每条路径,求得该路径上的所有偏导数之乘积,然后将所有路径的 “乘积” 累加起来才能得到的值。,反向传
9、播算法(BP),假设,你有这样一个网络层:第一层是输入层,包含两个神经元i1,i2,和截距项b1;第二层是隐含层,包含两个神经元h1,h2和截距项b2,第三层是输出o1,o2,每条线上标的wi是层与层之间连接的权重,激活函数我们默认为sigmoid函数。,其中,输入数据 i1=0.05,i2=0.10;输出数据 o1=0.01,o2=0.99;初始权重 w1=0.15,w2=0.20,w3=0.25,w4=0.30; w5=0.40,w6=0.45,w7=0.50,w8=0.88 目标:给出输入数据i1,i2(0.05和0.10),使输出尽可能与原始输出o1,o2(0.01和0.99)接近。,
10、反向传播算法(BP),这样前向传播的过程就结束了,我们得到输出值为0.75136079 , 0.772928465,与实际值0.01 , 0.99相差还很远,现在我们对误差进行反向传播,更新权值,重新计算输出。,反向传播算法(BP),反向传播算法(BP),2.隐含层-输出层的权值更新: 以权重参数w5为例,如果我们想知道w5对整体误差产生了多少影响,可以用整体误差对w5求偏导求出:(链式法则),反向传播算法(BP),(其中,是学习速率,这里我们取0.5),同理,可更新w6,w7,w8,以及更前面的w1-w4,这样误差反向传播法就完成了,最后我们再把更新的权值重新计算,总误差E(total)由0
11、.298371109下降至0.291027924。不停地迭代,迭代10000次后,总误差为0.000035085,输出为0.015912196,0.984065734(原输入为0.01,0.99),证明效果还是不错的,激活函数Sigmoid,Sigmoid 非线性函数将输入映射到(0,1)之间。它的数学公式为:历史上,sigmoid 函数曾非常常用,现在实际很少使用了:1. 函数饱和使梯度消失sigmoid 神经元在值为 0 或 1 的时候接近饱和,这些区域,梯度几乎为 0。2. sigmoid 函数不是关于原点中心对称的这个特性会导致后面网络层的输入也不是零中心的,进而影响梯度下降的运作,t
12、anh,tanh 函数同样存在饱和问题,但它的输出是零中心的,因此实际中 tanh 比 sigmoid 更受欢迎。,ReLu(校正线性单元:Rectified Linear Unit),2001年,神经科学家Dayan、Abott从生物学角度,模拟出了脑神经元接受信号更精确的激活模型,这个模型对比Sigmoid系主要变化有三点:单侧抑制 相对宽阔的兴奋边界 稀疏激活性(重点,可以看到红框里前端状态完全没有激活),深度学习的原理,Keras,主要深度学习理论,1,评估函数,2,优化函数,3,卷积神经网络(CNN),假设输入的是一幅像素为1K*1K的图像,隐含层有1M个节点,光这一层就有1012个
13、权重需要训练,这不仅容易过拟合,而且极容易陷入局部最优。图像中有固有的局部模式(比如轮廓、边界,人的眼睛、鼻子、嘴等)可以利用,显然应该将图像处理中的概念和神经网络技术相结合。此时我们可以祭出卷积神经网络CNN,CNN,假设图3中m-1=1是输入层,我们需要识别一幅彩色图像,这幅图像具有四个通道ARGB(透明度和红绿蓝,对应了四幅相同大小的图像),假设卷积核大小为100*100,共使用100个卷积核w1到w100(从直觉来看,每个卷积核应该学习到不同的结构特征)。用w1在ARGB图像上进行卷积操作,可以得到隐含层的第一幅图像;这幅隐含层图像左上角第一个像素是四幅输入图像左上角100*100区域
14、内像素的加权求和,以此类推。同理,算上其他卷积核,隐含层对应100幅“图像”。每幅图像对是对原始图像中不同特征的响应。按照这样的结构继续传递下去。CNN中还有max-pooling等操作进一步提高鲁棒性。在这个例子里,我们注意到输入层到隐含层的参数瞬间降低到了100*100*100=106个!,卷积神经网络(CNN),什么是卷积信号学的概念,卷积层的工作,当从一个大尺寸图像中随机选取一小块,比如说 3x3 作为样本,并且从这个小块样本中学习到了一些特征,这时我们可以把从这个 3x3 样本中学习到的特征作为探测器,应用到这个图像的任意地方中去。特别是,我们可以用从 3x3 样本中所学习到的特征跟
15、原本的大尺寸图像作卷积,从而对这个大尺寸图像上的任一位置获得一个不同特征的激活值。,卷积有什么用,那么当它移动到上面的位置时,按照矩阵操作,将这个区域的图像像素值与滤波器相乘,我们得到一个很大的值(6600):,而当这个滤波器移动到其他区域时,我们得到一个相对很小的值:,池化(Pooling),左侧矩阵A是20*20的矩阵要进行大小为10*10的池化,那么左侧图中的红色就是10*10的大小,对应到右侧的矩阵,右侧每个元素的值,是左侧红色矩阵每个元素的值得和再处于红色矩阵的元素个数,也就是平均值形式的池化。,ooling层有什么用,更关注是否存在某些特征而不是特征具体的位置。可以看作加了一个很强
16、的先验,让学到的特征要能容忍一些的变化,不变性,文本分类的时候输入是不定长的,可以通过池化获得定长输出,获得定长输出,或有可能会带来欠拟合减小下一层输入大小,减小计算量和参数个数,防止过拟合,translation invariance(平移不变性),假设有一个16x16的图片,里面有个数字1,我们需要识别出来,这个数字1可能写的偏左一点(图1),这个数字1可能偏右一点(图2),图1到图2相当于向右平移了一个单位,但是图1和图2经过max pooling之后它们都变成了相同的8x8特征矩阵,主要的特征我们捕获到了,同时又将问题的规模从16x16降到了8x8,而且具有平移不变性的特点。图中的a(
17、或b)表示,在原始图片中的这些a(或b)位置,最终都会映射到相同的位置。,rotation invariance(旋转不变性),下图表示汉字“一”的识别,第一张相对于x轴有倾斜角,第二张是平行于x轴,两张图片相当于做了旋转,经过多次max pooling后具有相同的特征,scale invariance(尺度不变性),下图表示数字“0”的识别,第一张的“0”比较大,第二张的“0”进行了较小,相当于作了缩放,同样地,经过多次max pooling后具有相同的特征,循环神经网络(RNN_Recurrent Neural Networks),全连接的DNN还存在着另一个问题无法对时间序列上的变化进行
18、建模。假设你希望对电影中的每个时间点的时间类型进行分类。传统的神经网络应该很难来处理这个问题使用电影中先前的事件推断后续的事件。RNN 解决了这个问题。RNN 是包含循环的网络,允许信息的持久化。对于自然语言处理、语音识别、手写体识别等应用非常重要,RNN展开,在过去几年中,应用 RNN 在语音识别,语言建模,翻译,图片描述等问题上已经取得一定成功,而这些成功应用的关键之处就是 LSTM 的使用,这是一种特别的 RNN,比标准的 RNN 在很多的任务上都表现得更好。几乎所有的令人振奋的关于 RNN 的结果都是通过 LSTM 达到的。,如果我们将这个循环展开:,主要深度学习理论,1,评估函数,2
19、,优化函数,3,Available metrics,acc(accuracy)binary_accuracy: 对二分类问题,计算在所有预测值上的平均正确率categorical_accuracy:对多分类问题,计算再所有预测值上的平均正确率sparse_categorical_accuracy:与categorical_accuracy相同,在对稀疏的目标值预测时有用top_k_categorical_accracy: 计算top-k正确率,当预测值的前k个值中存在目标类别即认为预测正确sparse_top_k_categorical_accuracy:与top_k_categorical_
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 基于 keras 深度 学习 介绍 ppt 课件
链接地址:https://www.31ppt.com/p-1875176.html