您好,欢迎访问三七文档
当前位置:首页 > 建筑/环境 > 设计及方案 > 周志华-机器学习-西瓜书-全书16章-ppt-Chap05神经网络
机器学习导论五、神经网络什么是神经网络(学习)?neuralnetworksaremassivelyparallelinterconnectednetworksofsimple(usuallyadaptive)elementsandtheirhierarchicalorganizationswhichareintendedtointeractwiththeobjectsoftherealworldinthesamewayasbiologicalnervoussystemsdo[T.Kohonen,NN88]M-P神经元模型[McCullochandPitts,1943]神经网络是一个很大的学科,本课程仅讨论它与机器学习的交集神经网络学得的知识蕴含在连接权与阈值中神经网络是一个具有适应性的简单单元组成的广泛并行互联的网络,它的组织能够模拟生物神经系统对真实世界物体所作出的交互反应。激活函数••理想激活函数是阶跃函数,0表示抑制神经元而1表示激活神经元阶跃函数具有不连续、不光滑等不好的性质,常用的是Sigmoid函数多层前馈网络结构多层网络:包含隐层的网络前馈网络:神经元之间不存在同层连接也不存在跨层连接,即网络中无环或者回路。隐层和输出层神经元亦称“功能单元”(functionalunit),无隐藏层的又称“感知机(Perceptron)”多层前馈网络有强大的表示能力只需一个包含足够多神经元的隐层,多层前馈神经网络就能以任意精度逼近任意复杂度的连续函数[Horniketal.,1989]但是,如何设置隐层神经元数是未决问题.实际常用“试错法”神经网络发展回顾1940年代-萌芽期:M-P模型(1943),Hebb学习规则(1945)1958左右-1969左右~繁荣期:感知机(1958),Adaline(1960),…1969年:Minsky&Papert“Perceptrons”冰河期1985左右-1995左右~繁荣期:Hopfield(1983),BP(1986),…1995年左右:SVM及统计学习兴起沉寂期2010左右-至今~繁荣期:深度学习交替模式:热十(年)冷十五(年)科学的发展总是“螺旋式上升”三十年河东、三十年河西坚持才能有结果!追热门、赶潮流——三思而后行启示误差逆传播算法(BP)最成功、最常用的神经网络算法,可被用于多种任务(不仅限于分类)P.Werbos在博士学位论文中正式提出:P.Werbos.Beyondregression:Newtoolsforpredictionandanalysisinthebehavioralscience.Ph.Ddissertation,HarvardUniversity,1974输入:d维特征向量输出:l个输出值隐层:假定使用q个隐层神经元假定功能单元均使用Sigmoid函数给定训练集BP算法推导对于训练例则网络在,假定网络的实际输出为上的均方误差为:需通过学习确定的参数数目:BP是一个迭代学习算法,在迭代的每一轮中采用如下误差修正:BP算法推导(续)BP算法基于梯度下降策略,以目标的负梯度方向对参数进行调整以为例对误差注意到,给定学习率先影响到,有:,再影响到,然后才影响到,有:“链式法则”BP算法推导(续),有对再注意到于是,()jjjfyBP算法推导(续)类似地,有:其中:不能太大、不能太小()jjjfy()hhhfbBP算法预处理:属性值一般伸缩到[-1,1],Y伸缩到[0,1]标准BP算法vs.累积BP算法标准BP算法•每次针对单个训练样例更新权值与阈值•参数更新频繁,不同样例可能抵消,需要多次迭代累积BP算法•其优化目标是最小化整个训练集上的累计误差•读取整个训练集一遍才对参数进行更新,参数更新频率较低在很多任务中,累计误差下降到一定程度后,进一步下降会非常缓慢,这时标准BP算法往往会获得较好的解,尤其当训练集非常大时效果更明显.21ˆkjjklkjEyy211111ˆ2mjmkkjkkjklEEyymm缓解过拟合主要策略:早停(earlystopping)•若训练误差连续a轮的变化小于b,则停止训练•使用验证集:若训练误差降低、验证误差升高,则停止训练例如正则化(regularization)•在误差目标函数中增加一项描述网络复杂度偏好比较小的连接权和阈值,使网络输出更“光滑”BP算法常常导致过拟合全局最小vs.局部极小神经网络的训练过程可看作一个参数寻优过程:在参数空间中,寻找一组最优参数使得误差最小•存在多个“局部极小”•只有一个“全局最小”“跳出”局部极小的常见策略:不同的初始参数模拟退火随机扰动遗传算法……其他常见神经网络模型RBF:分类任务中除BP之外最常用ART:“竞争学习”的代表SOM:最常用的聚类方法之一级联相关网络:“构造性”神经网络的代表Elman网络:递归神经网络的代表Boltzmann机:“基于能量的模型”的代表……RBF神经网络RBF:RadialBasisFunction(径向基函数)•单隐层前馈神经网络•输出层是隐层神经元输出的线性组合•使用径向基函数作为隐层神经元激活函数例如高斯径向基函数训练:Step1:确定神经元中心,常用的方式包括随机采样、聚类等Step2:利用BP算法等确定参数其他常见神经网络模型SOM神经网络SOM:Self-OrganizingfeatureMap(自组织特征映射)•竞争型的无监督神经网络•将高维数据映射到低维空间(通常为2维),高维空间中相似的样本点映射到网络输出层中邻近神经元•每个神经元拥有一个权向量•目标:为每个输出层神经元找到合适的权向量以保持拓扑结构训练:•网络接收输入样本后,将会确定输出层的“获胜”神经元(“胜者通吃”)•获胜神经元的权向量将向当前输入样本移动级联相关网络CC:Cascade-Correlation(级联相关)构造性神经网络:将网络的结构也当做学习的目标之一,希望在训练过程中找到适合数据的网络结构训练:•开始时只有输入层和输出层•级联-新的隐层结点逐渐加入,从而创建起层级结构•相关-最大化新结点的输出与网络误差之间的相关性递归神经网络:RecurrentNN,亦称RecursiveNNElman网络•网络中可以有环形结构,可让使一些神经元的输出反馈回来作为输入•t时刻网络的输出状态:由t时刻的输入状态和t-1时刻的网络状态共同决定Elman网络是最常用的递归神经网络之一•结构与前馈神经网络很相似,但隐层神经元的输出被反馈回来•使用推广的BP算法训练目前在自然语言处理等领域常用的LSTM网络,是一种复杂得多的递归神经网络深度学习的兴起•2006年,Hinton发表了深度学习的Nature文章•2012年,Hinton组参加ImageNet竞赛,使用CNN模型以超过第二名10个百分点的成绩夺得当年竞赛的冠军•伴随云计算、大数据时代的到来,计算能力的大幅提升,使得深度学习模型在计算机视觉、自然语言处理、语音识别等众多领域都取得了较大的成功最常用的深度学习模型:卷积神经网络CNN:ConvolutionalNN[LeCunandBengio,1995;LeCunetal.,1998]每个卷积层包含多个特征映射,每个特征映射是一个由多个神经元构成的“平面”,通过一种卷积滤波器提取输入的一种特征采样层亦称“汇合(pooling)层”,其作用是基于局部相关性原理进行亚采样,从而在减少数据量的同时保留有用信息连接层就是传统神经网络对隐层与输出层的全连接深度学习典型的深度学习模型就是很深层的神经网络(例如微软研究院2015年在ImageNet竞赛获胜使用152层网络)增加隐层数目比增加隐层神经元数目更有效不仅增加了拥有激活函数的神经元数,还增加了激活函数嵌套的层数误差梯度在多隐层内传播时,往往会发散而不能收敛到稳定状态,因此,难以直接用经典BP算法训练提升模型复杂度提升学习能力•增加隐层神经元数目(模型宽度)•增加隐层数目(模型深度)提升模型复杂度增加过拟合风险;增加训练难度•过拟合风险:使用大量训练数据•训练困难:使用若干启发式诀窍常用诀窍(tricks)预训练+微调•预训练:监督逐层训练,每次训练一层隐结点•微调:预训练全部完成后,对全网络进行微调训练,通常使用BP算法可视为将大量参数分组,对每组先找到较好的局部配置,再全局寻优权共享(weight-sharing)•一组神经元使用相同的连接权值Dropout•在每轮训练时随机选择一些隐结点令其权重不被更新(下一轮可能被更新)减少需优化的参数可能:降低Rademacher复杂度ReLU(RectifiedLinearUnits)•将Sigmoid激活函数修改为修正线性函数求导容易;可能:缓解梯度消失现象绝大部分诀窍并非“新技术”深度学习最重要的特征:表示学习、联合优化传统做法:人工设计特征学习分类FeatureEngineering深度学习:学习特征学习分类Representationlearning所谓end-to-endLearning(并非新东西)大数据、高性能计算设备深度学习常用软件包CAFFE(BerkeleyVisionandLearningCenter,BVLC)MatConvNet(OxfordVisualGeometryGroup,VGG)Torch……前往第六站……
本文标题:周志华-机器学习-西瓜书-全书16章-ppt-Chap05神经网络
链接地址:https://www.777doc.com/doc-5289549 .html