第六章深度学习6.1概述6.2人脑神经系统与深度学习6.3深度神经网络6.4软硬件实现of6516.5手写体数字识别项目实例6.6深度学习应用习题6.1概述第六章深度学习of652深度学习(DeepLearning)的概念是由Hinton、YoshuaBengio和YannLecun等人提出的,涉及神经网络、图建模、人工智能、模式识别、最优化理论和信号处理等领域。由于深度学习在各类竞赛中,相对于传统方法有着显著的性能提升,越来越多的学术机构和企业把目光转向了深度学习领域。例如:2010年美国国防部DARPA首次资助深度学习项目;2012年11月,微软在天津展示了全自动同声传译系统,用英文演讲,采用深度学习作为支撑,后台计算机自动完成了语音识别、中英机器翻译和中文语音合成;2013年1月,百度创始人宣布成立百度研究院,其中第一个成立的就是“深度学习研究所”;2013年4月,《麻省理工学院技术评论》杂志将深度学习列为2013年十大突破性技术之首。6.1概述第六章深度学习6.1.1人工智能简史of653发展历程三个阶段20世纪40年代中期到50年代末期被称为人工智能的启蒙探索阶段。20世纪60年代初期到80年代末期被称为人工智能的发展阶段。20世纪90年代初期到现在被称为人工智能的繁荣阶段。6.1概述第六章深度学习of654(1)20世纪40年代中期到50年代末期1950年,英国数学家图灵在论文《计算的机器与智能》为计算机的出现奠定了理论基础。同时期,W.McCullocli和W.Pitts发表了《神经活动内在概念的逻辑演算》,证明了可以严格定义的神经网络。1956年,美国达特茅斯大学的一次暑期专题研讨会上第一次提出了人工智能,开创了人工智能的这一研究领域。1957年,A.Newell和H.Simon等人编写了逻辑理论机的数学定理证明的程序,该程序证明了《数学原理》书中的38个定理。1956年Samuel编写的西洋跳棋程序,到1959年这个程序战胜了他本人,1962年还击败了美国Connecticut州的跳棋冠军。人工智能的启蒙探索阶段6.1概述第六章深度学习of655(2)20世纪60年代初期到80年代末期1968年,第一个用于质谱仪分析有机化合物的分子结构的专家系统DENDRAL研制成功。20世纪70年代初,Winograd提出了积木世界中理解自然语言的程序等。1974年,N.J.Nillson对之前的一些工作进行了综述,并写了一篇论文,把对人工智能的研究归纳为4个核心课题。1980年早期,人工智能的研究者研究出了专家系统,并产生了巨大的经济效益。1982年日本开始了使得逻辑推理与数值运算一样快的第五代计算机的研制计划。1986年,Rumelhart提出了反向传播算法,用以解决人工神经元网络的学习问题,进而人们进一步转向对人工神经元的研究。1987年,第一次神经网络国际会议在美国召开,宣告了这一新学科的诞生。人工智能的发展阶段6.1概述第六章深度学习of656(3)20世纪90年代初期至今1997年IBM公司研制了“深蓝计算机”,首次在正式比赛中以3.5∶2.5的比分战胜了人类国际象棋世界冠军。2016年3月15日,谷歌人工智能AlphaGo与围棋世界冠军李世石的人机大战,最终李世石与AlphaGo以1∶4认输结束。人工智能的繁荣阶段6.1概述第六章深度学习6.1.2大数据与深度学习of6572006年Hinton等人提出深度学习的概念,该方法基于深度置信网络提出非监督逐层训练的算法,为解决深层结构相关的优化难题带来了希望,掀起了深度学习在学术界和工业界的浪潮。随着CPU和GPU计算能力的大幅提升,深度学习拥有了的更高效的硬件平台作为支撑。大数据时代的海量数据解决了早期神经网络由于训练样本不足出现的过拟合、泛化能力差等问题。因此,大数据需要深度学习,深度学习的发展又需要大数据的支撑。在未来几年,深度学习将会被广泛应用于大数据的预测,而不是停留在浅层模型上,这将推动“大数据+深度模型”时代的来临,以及人工智能和人机交互的前进步伐。6.1概述第六章深度学习6.1.3人工智能的未来of348人工智能一直处于计算机技术的前沿,计算机技术的发展方向将很大程度上依赖人工智能理论方面的研究和发现。人工智能对现代社会已经产生了巨大的影响,在工业领域尤其是制造业,已经成功地使用了人工智能技术,例如,智能设计、在线分析、仿真、虚拟制造、智能调度和规划等。在金融业,股票商利用人工智能系统进行分析、判断和决策,信用卡欺诈检测系统也得到了普遍应用;在传媒领域,新华网推出了自主研发的第一代生物传感智能机器人“Star”。人工智能还对人们的日常生活产生了影响,Siri、实时在线地图、语音搜索等一系列智能产品已经给我们的生活带来了极大的方便。6.1概述第六章深度学习of659人工智能的未来人工智能结合数据协助医生诊断病症人工智能操作家用电器,人工智能汽车还可以经预测降低交通事故的发生率在极端的施工场地承担危险的工作,帮助人类降低伤亡的风险帮助人类从事诗歌写作、绘画艺术等复杂的精神活动未来应该是一个人工智能的世界。一朵花可能拥有智能,根据主人的心情来开放;每个人都有一个智能伴侣,让我们更加理性地购物;甚至还能帮助信徒决定他们的人生信仰等。未来的人工智能将很多领域代替人类,并能服务我们人类自身,处理我们日常的生活。第六章深度学习6.1概述6.2人脑神经系统与深度学习6.3深度神经网络6.4软硬件实现全国高校标准教材《云计算》姊妹篇,剖析大数据核心技术和实战应用of65106.6深度学习应用习题6.5手写体数字识别项目实例6.2人脑神经系统与深度学习第六章深度学习6.2.1探秘大脑的工作原理of6511大脑是人类活动的“信息处理中心”,支配着人类大多数的生命活动。大脑中存在着无数神经元,是大脑处理信息的基本单元。神经元之间相互连接,构成神经网络,不同区域的神经网络负责不同的功能,各区域相互协作,完成大脑的所有处理活动。当外界信息通过感官系统,传到大脑时,大脑对其做一个简单的模式分析和识别,再将其交给对应的处理区域。在学习过程中,大脑接收的信息越多,各个区域存储的模式以及模式之间的联系也就越多。如此积累下去,大脑逐渐理解模式分类的规则以及模式之间的联系,最终形成我们对世界各种事物的认知。6.2人脑神经系统与深度学习第六章深度学习6.2.2人脑神经元结构of6512神经元结构示意图树突是神经元两端呈树枝状的突起,是接收其他神经元信息的入口。轴突是神经元中一个细长的突起,每个神经元只有一个。突触是两个神经元传递冲动相互接触的地方。与其他神经元的树突相连,当兴奋达到一定阈值时,突触前膜向突触间隙释放神经传递的化学物质,实现神经元之间的信息传递。人工神经网络中的神经元模仿了生物神经元的这一特性,利用激活函数将输入结果映射到一定范围内,若映射后的结果大于阈值,则神经元被激活。生物神经元又叫神经细胞,是一个长突起的细胞,主要由细胞体、树突、轴突、突触构成。6.2人脑神经系统与深度学习第六章深度学习6.2.3人脑神经网络of6513人类的大脑并不是一开始就能处理一些复杂的问题,而是由外界刺激决定了神经网络的生长,各种信息刺激了脑部发育,脑内的神经元之间不断重组,连接,形成更复杂的神经网络,使个体渐渐具有其他的活动能力。6.2人脑神经系统与深度学习第六章深度学习6.2.4人工神经网络of65141、感知器是一种权衡依据做出的决策方法,随着权重和阈值的变化,可以得到不同的决策模型。110,output1,niiiniiiwxwx≤Rosenblatt提出了一个简单算法来计算输出:通过带权重的连接,表示相应输入对输出的重要性,神经元的输出由加权和和阈值决定,具体的表达形式如下:6.2人脑神经系统与深度学习第六章深度学习6.2.4人工神经网络of65152、神经元是构成神经网络的基本单元,通过调整内部节点之间的相互连接关系,达到处理信息的目的。神经元使用一个非线性的激活函数,得到一个输出,以最简单的两层神经网络为例。这个神经网络有3个神经元:,+1表示偏置节点的运算,则相应的输出为:3,1()wbiiihxfwxb6.2人脑神经系统与深度学习第六章深度学习6.2.4人工神经网络of6516(1)阶跃函数:,函数图像如图所示:1,0()0,0xfxx≥阶跃函数示意图6.2人脑神经系统与深度学习第六章深度学习6.2.4人工神经网络of6517(2)Sigmoid函数:,Sigmod函数是一个输出在(0,1)的开区间的有界函数,函数图像如图所示。双曲线正切函数示意图1()1exfx6.2人脑神经系统与深度学习第六章深度学习6.2.4人工神经网络of6518(3)双曲线正切函数:,双曲正切函数是一个输出在(-1,1)开区间有界函数,函数图像如图所示。Sigmoid函数示意图()tanh()fxx6.2人脑神经系统与深度学习第六章深度学习6.2.4人工神经网络of6519Rectifier函数示意图(4)Rectifier函数:,函数图像如图所示。其中,当激活函数为阶跃函数时,神经元模型就是感知器。()max(0,)fxx6.2人脑神经系统与深度学习第六章深度学习3、神经网络的架构of6520一般的神经网络是层级结构,每层神经元与下一层神经元相互连接,同层神经元及跨层神经元之间相互无连接,每一层神经元的输出作为下一层神经元的输入,这种网络被称为前馈神经网络。最左边的一层(第一层)称为输入层,其中的神经元称为输入神经元。最右边的一层(最后一层)称为输出层,其中的神经元称为输出神经元。中间一层则被称为隐藏层,既不是输入层也不是输出层。本例讨论的是只有一个输出和一个隐藏层。但是,在实际中神经网络可以有多个输出和多个隐藏层。这种多层网络有时被称为多层感知器。三层神经网络示意图6.2人脑神经系统与深度学习第六章深度学习of6521多层神经网络中除了输入层,每个神经元都是一个多输入单输出信息处理单元。如图所示,它表示了一个多层神经网络,需要注意,网络中所有连接都有对应的权重和偏置。但是图中只标记了三个权重w1,w2,w3。第层第层BiasBias,()wbhx输入加权和()iiafziz1w2w3w1a2a3aiabb激活值ia1ls1ll多层神经网络示意图11lsijjjzwab()iiafz6.2人脑神经系统与深度学习第六章深度学习4、误差逆传播算法of6522多层网络的学习能力比单层感知机强得多,如果想要训练多层网络,误差逆传播(简称BP)是迄今为止最杰出的神经网络学习算法。BP是一种按误差逆传播算法训练的多层前馈网络,是目前应用最广泛的神经网络模型之一。梯度下降示意图21,1(,)||()||2wbEwbhxy112()111111(,)(,)2llSSmLlijilijEwbEwbwmbbb第六章深度学习6.1概述6.2人脑神经系统与深度学习6.3深度神经网络6.4软硬件实现全国高校标准教材《云计算》姊妹篇,剖析大数据核心技术和实战应用of65236.5手写体数字识别项目实例6.6深度学习应用习题6.3深度神经网络第六章深度学习6.3.1整体架构of6524深度神经网络发展到今天,学术界已经提出了多种网络模型,其中影响力较大的有以下几种:卷积神经网络包含三种类型的层,分别是卷积层、下采样层及全连接层。通过卷积核与上一层输出进行卷积作为卷积层的输出,这样可以达到权值共享的目的;下采样是在卷积层的基础上,在一个固定区域中采样一个点,使得整个网络具有一定的缩放、平移及形变不变性。深度置信网络由若干层受限玻尔兹曼机及一个反向传播网络组成。深度置信网络的训练过程分为两步,首先利用贪婪算法无监督地训练每一层受限玻尔兹曼机,然后将上一步训练得到的数据作为网络初始值,利用BP算法有监督地训练整个网络。循环神经网络该网络与传统前馈网络的区别