机器学习04-38.ppt_第1页
机器学习04-38.ppt_第2页
机器学习04-38.ppt_第3页
机器学习04-38.ppt_第4页
机器学习04-38.ppt_第5页
已阅读5页,还剩34页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

第4章人工神经网络 简介神经网络表示适合神经网络学习的问题感知器多层网络和反向传播算法反向传播算法的说明举例 人脸识别人工神经网络的高级课题小结和补充读物 第4章人工神经网络 人工神经网络 ArtificialNeuralNetworks ANN 可以从样例学习值为实数 离散值或向量的函数 反向传播 BACKPROPAGATION 算法使用梯度下降来调节网络参数以最佳拟合由输入 输出对组成的训练集合 ANN学习对于训练数据中的错误健壮性很好 已应用于视觉场景分析 interpretingvisualscenes 学习识别手写字符 学习识别人脸 语音识别以及机器人控制等 对于某些类型的问题 如学习解释复杂的现实世界中的传感器数据 人工神经元网络是目前知道的最有效的学习方法 第4章人工神经网络 胡守仁主编 神经网络导论 神经网络应用技术等丛书 国防科技大学出版社 4 1简介 ANN的研究在一定程度上受到了生物学的启发 因为生物的学习系统是由相互连接的神经元 neuron 组成的异常复杂的网络 据估计 人类的大脑是由大约1011个神经元相互连接的密集网络 评均每一个神经元与其他104个神经元相连 ANN与此相似 它是由一系列简单的单元相互密集连接构成的 其中每一个单元有一定数量的实值输入 可能是其他单元的输出 并产生单一的实值输出 可能成为其他很多单元的输入 4 1简介 ANN只是在一定程度上受生物神经系统的启发 但并未模拟生物神经系统中的很多复杂特征 而且已经知道ANN的很多特征与生物系统是不一致的 如考虑ANN 每个单元输出单一的不变值 然而生物神经元输出的是复杂的时序脉冲 长期以来 人工神经元网络的研究者分为两个团体 一个团体的目标是使用ANN研究和模拟生物学习过程 另一个团体的目标是获得高效的机器学习算法 不管这种算法是否反映了生物过程 关于使用ANN模拟生物系统的更多信息 见参考资料 4 2神经网络表示 ALVINN系统是ANN学习的一个典型实例 该系统使用一个学习到的ANN以正常的速度在高速公路上驾驶汽车 ANN的输入是一个30乘32像素的网格 像素的亮度来自一个安装在车辆上的前向摄像机 ANN的输出是车辆行进的方向 该ANN通过模仿人类驾驶时的操纵命令进行训练 训练过程大约5分钟 ALVINN用学习到的网络在高速公路上以70英里时速成功地驾驶了90英里 在分行公路的左车道行驶 同时有其他车辆 4 3适合神经网络学习的问题 实例是用很多 属性 值 对表示的目标函数的输出可能是离散值 实数值或者由若干实数属性或离散属性组成的向量训练数据可能包含错误 ANN学习算法对于训练数据中的错误有非常好的健壮性可容忍长时间训练 网络训练算法通常比像决策树学习这样的算法需要更长的训练时间 可能需要快速求出目标函数值人类能否理解学到的目标函数是不重要的 神经网络方法学习到的权值经常是人类难以解释的 学习到的神经网络比学到的规则难以传达给人类 4 4感知器 一种类型的ANN系统是以被称为感知器 perceptron 的单元为基础的 感知器以一个实数值向量作为输入 计算这些输入的线性组合 然后如果结果大于某个阀值 就输出1 否则输出 1 其中每一个wi是一个实数常量 或叫做权值 weight 用来决定输入xi对感知器输出的贡献率 数量 w0是一个阀值 它是为了使感知器输出1 输入的加权和必须超过的阀值 感知器学习要考虑的候选假设空间H就是所有可能的实数值权向量的集合 4 4 1感知器的表征能力 可以把感知器看作是n维实例空间 即点空间 中的超平面决策面 对于超平面一侧的实例 感知器输出1 对于另一侧的实例输出 1 该决策超平面的方程是某些正反样例集合不可能被任一超平面分割 那些可以被分割的称为线性可分 linearlyseparable 样例集合单独的感知器可以表示很多布尔函数 如与 或 非 与非 或非等 但不能表达异或函数 所有的布尔函数都可表示为基于这些原子函数的互连单元的某个网络 事实上 仅用两层深度的感知器网络就可以表示所有的布尔函数因为逻辑阀值单元的网络可以表示大量的函数 而单独的单元做不到这一点 所以通常我们感兴趣的是学习阀值单元组成的多层网络 4 4 2感知器训练法则 学习任务是决定一个权向量 它可以使感知器对于给定的训练样例输出正确的1或 1 有几种解决该学习任务的算法 包括感知器法则和delta法则 deltarule 是用来学习评估函数的最小均方法LMS的一个变体 这两种算法保证收敛到可接受的假设 在不同的条件下收敛到的假设略有不同 它们提供了学习多个单元构成的网络的基础 为得到可接受的权向量 一种方法是从随机的权值开始 然后反复地应用这个感知器到每个训练样例 只要它误分类样例就修改感知器的权值 重复这个过程 直到感知器能正确分类所有的训练样例 4 4 2感知器训练法则 每一步根据感知器训练法则 perceptrontrainingrule 来修改权值 也就是修改与输入xi对应的权wi 法则如下 其中 t是当前训练样例的目标输出 o是感知器的输出 是一个正的常数称为学习速率 learningrate 学习速率的作用是缓和每一步调整权的程度 它通常被设为一个小的数值如0 1 而且有时会使其随着权调整次数的增加而调整 4 4 2感知器训练法则 事实证明 在有限次使用感知器训练法则后 训练过程会收敛到一个能正确分类所有训练样例的权向量 前提是训练样例线性可分 并且使用了充分小的 如果数据不是线性可分的 那么不能保证训练过程收敛 4 4 2梯度下降和delta法则 如果训练样例不是线性可分的 那么delta法则会收敛到目标概念的最佳近似 其关键思想是使用梯度下降 gradientdescent 来搜索可能的权向量的假设空间 以找到最佳拟合训练样例的权向量 该法则为反向传播算法提供了基础 而反向传播算法能够学习多个单元的互连网络 该法则重要性的另一个原因在于 对于包含多种不同类型的连续参数化假设的假设空间 梯度下降是必须遍历这样的假设空间的所有学习算法的基础 把delta训练法则理解为训练一个无阀值的感知器 即线性单元 linearunit 它的输出o如下 4 4 2梯度下降和delta法则 为了推导线性单元的权值学习法则 先指定一个度量标准来衡量假设 权向量 相对于训练样例的训练误差为 其中D是训练样例集合 td是训练样例d的目标输出 od是线性单元对训练样例d的输出 可视化假设空间 为了理解梯度下降算法 可视化地表示包含所有可能的权向量和相关联的E值的整个假设空间是有帮助的 如果定义E的方法已知 那么对于线性单元 该误差曲面是具有单一全局最小值的抛物面 梯度下降搜索确定一个使E最小化的权向量是从一个任意的初始权向量开始 以很小的步伐反复修改这个向量 每一步都沿误差曲面产生最陡峭下降的方向修改权向量 继续这个过程直到得到全局的最小误差点 4 4 2梯度下降和delta法则 梯度下降法则的推导 可以通过E相对向量的每个分量的导数来得到这个方向 这个向量导数被称为E对于的梯度 gradient 注意 本身是一个向量 它的成员是E对每个wi的偏导数 当梯度被解释为权空间的一个向量时 它确定了使E最陡峭上升的方向 所以这个方向的反方向给出了最陡峭下降的方向 经推导 梯度下降权值更新法则 梯度下降的随机近似 梯度下降是一种重要的学习范型 它是搜索庞大假设空间或无限假设空间的一种策略 它可应用于满足以下条件的任意情况 假设空间包含连续参数化的假设 误差对于这些假设参数可微应用梯度下降的主要实践问题是 有时收敛过程可能非常慢 如果在误差曲面上有多个局部极小值 那么不能保证这个过程会找到全局最小值缓解这些困难的一个常见的梯度下降变体被称为增量梯度下降 incrementalgradientdescent 或随机梯度下降 stochasticgradientdescent 梯度下降的随机近似 随机梯度下降的思想是根据每个单独样例的误差增量计算权值更新 得到近似的梯度下降 修改后的法则是 梯度下降的随机近似 标准的梯度下降和随机的梯度下降之间的关键区别是 标准的梯度下降是在权值更新前对所有的样例汇总误差 而随机梯度下降的权值是通过考察每个训练样例来实现的在标准的梯度下降中 权值更新的每一步对多个样例求和 这需要更多的计算 另一方面 因为使用真正的梯度 标准的梯度下降对于每一次权值更新经常使用比随机梯度下降大的步长如果有多个局部极小值 随机的梯度下降有可能避免陷入这些局部极小值中 因为它使用不同的而不是来引导搜索 小结 研究了迭代学习感知器权值的两个相似的算法 这两个算法间的关键差异是感知器训练法则根据阀值化 thresholded 的感知器输出的误差更新权值 而增量法根据输入的非阀值化 unthresholded 线性组合的误差来更新权值 感知器训练法则经过有限次的迭代收敛到一个能理想分类训练数据的假设 但条件是训练样例线性可分 增量法则渐近收敛到最小误差假设 可能需要极长的时间 但无论训练样例是否收敛都会收敛 学习权向量的第三种方法是线性规划 linearprogramming 4 5多层网络和反向传播算法 单个感知器仅能表示线性决策面 相反 反向传播算法所学习的多层网络能够表示种类繁多的非线性曲面 图中描述了一个典型的多层网络和它的决策曲面 该语音识别的任务是区分出现在 h d 上下文中的10种元音 输入的语音信号用两个参数表示 它们是通过对声音的频谱分析得到的 4 5 1可微阀值单元 多个线性单元的连接仍产生线性函数 但希望选择能够表征非线性函数的网络 感知器单元是另一种选择 但它的不连续阀值使它不可微 所以不适合梯度下降算法 所需要的是这样的函数 输出是输入的非线性函数 并且输出是输入的可微函数 一种答案是sigmoid单元 unit 它类似于感知器单元 但它基于一个平滑的可微阀值函数 sigmoid单元这样计算它的输出 4 5 1可微阀值单元 被称为sigmoid函数或者可以称为logistic函数 logisticfunction 其输出范围为0到 随输入单调递增 因为这个函数把非常大的输入值域映射到一个小范围的输出 它经常被称为sigmoid单元的挤压函数 squashingfunction Sigmoid函数有一个有用的特征 就是它的导数很容易用它的输出表示 而后面的梯度下降学习法则使用了这个函数 4 5 2反向传播算法 对于由一系列确定的单元互连形成的多层网络 反向传播算法可用来学习这个网络的权值 它采用梯度下降方法试图最小化网络输出值和目标值之间的误差平方 4 5 2多层网络和反向传播算法 考虑多个输出单元的网络 需要先重新定义误差E 以便对所有网络输出的误差求和 其中 outputs是网络输出单元的集合 tkd和okd是训练样例d和第k个输出单元相关的输出值 反向传播算法面临的学习问题是搜索一个巨大的假设空间 该空间由网络中所有可能的权值定义 4 5 3反向传播算法的推导 梯度下降法则的推导 见p74 4 6反向传播算法的说明 反向传播算法实现了一种对可能的网络权值空间的梯度下降搜索 它迭代地减小训练样例的目标值和网络输出间的误差 因为对于多层网络 误差曲面可能含有多个不同的局部极小值 梯度下降可能陷入这些局部极小值中的任何一个 因此对于多层网络 反向传播算法仅能保证收敛到误差E的某个局部极小值 不一定收敛到全局最小误差 人们对用ANN表示的复杂误差曲面的梯度下降理解得还不够 还不知道有何方法能确切地预测局部极小值什么时候会导致困难 4 6 1收敛性和局部极小值 用来缓解局部极小值问题的一些常见的启发式规则包括 为梯度更新法则增加一个冲量项 冲量有时可以带动梯度下降过程冲过狭窄的全局最小值到其他局部极小值 使用随机的梯度下降而不是真正的梯度下降使用同样的数据训练多个网络 但用不同的随机权值初始化每个网络 如果不同的训练产生不同的局部极小值 那么对分离的验证集合性能最好的那个网络将被选中 或者保留所有的网络 并且把它们当做一个网络 委员会 它们的输出是每个网络的平均值 4 6 2前馈网络的表征能力 布尔函数 任何布尔函数可以被具有两层单元的网络准确表示 尽管在最坏的情况下所需隐藏单元的数量随着网络输入数量的增加成指数级增长 连续函数 每个有界的连续函数可以由一个两层的网络以任意小的误差 在有限的范数下 逼近 该理论适用于在隐藏层适用sigmoid单元 在输出层适用线性单元的网络 所需的隐藏单元数量依赖于要逼近的函数任意函数 任意函数可以被一个有三层单元的网络以任意精度逼近 有限深度的前馈网络为反向传播算法提供了非常有表征力的假设空间 4 6 3假设空间搜索和归纳偏置 假设空间是n个网络权值的n维欧氏空间 该空间是连续的 与决策树学习和其他基于离散表示的方法的假设空间完全不同 假设空间的连续性以及误差E关于假设的连续参数可微导致了一个定义良好的误差梯度 为最佳假设的搜索提供了一个非常有用的结构 归纳偏置依赖于梯度下降搜索和权空间覆盖可表征函数空间的方式的相互作用性 4 6 4隐藏层表示 反向传播算法的一个迷人的特性是 它能够在网络内部的隐藏层发现有用的中间表示 多层网络在隐藏层的自动发现有用表示的能力是ANN学习的一个关键特性 与那些仅限于适用人类设计者提供的预定义特征的学习方法相比 它提供了一种相当重要的灵活性 允许学习器创造出设计者没有明确引入的特征 当然 网络中适用的单元层越多 就可以创造出越复杂的特征 4 6 5泛化 过度拟合和停止判据 终止权值更新循环的合适条件是什么呢 一种选择是继续训练直到对训练样例的误差E降低至某个预先定义的阀值之下 事实上 这不是一个好的策略 因为反向传播算法容易过度拟合训练样例 降低对于其他未见过实例的泛化精度有几种技术可以用于解决反向传播中的过度拟合问题 一种方法称为权值衰减 weightdecay 它在每次迭代过程中以某个小因子降低每个权值解决过度拟合问题的一个最成功的方法是在训练数据外再为算法提供一套验证数据 validationdata 然而 遗憾的是 过度拟合的问题对小训练集合最为严重 4 7举例 人脸识别 任务 对不同人的不同姿态的摄影图像进行分类 收集了20个不同的人的摄影图像 每个人大约有32张图像 对应这个人的不同的表情 快乐 沮丧 愤怒 中性 他们看不同的方向和他们是否戴太阳镜 从这些图像数据中可以学习很多不同的目标函数 例如可以训练一个ANN 使输入给定的一幅图像时输出这个人的唯一标识 脸的朝向 性别 是否戴太阳镜等 设计要素 输入编码采用低分辨率图像 输出编码使用4个不同的输出单元 每一个对应四种朝向中的一种 取具有最高值的输出作为网络的预测值 这种方法通常被称为n取1 网络结构图采用有一个隐藏层的分层前馈网络 采用三个隐藏单元 4 7举例 人脸识别 学习算法的其他参数 在实验中学习速率被设定为0 3 冲量被设定为0 3 学习到的隐藏层表示 4 8人工神经网络的高级课题 其他可选的误差函数只要函数E相对参数化的假设空间可微 那么就可以执行梯度下降 虽然基本的反向传播算法以网络误差平方和的形式定义E 但也有人提出其他的定义 以便把其他的约束引入权值调整法则 包括 为权值增加一个惩罚项 对误差增加一项目标函数的导数 使网络对目标值的交叉熵最小化等 改变有效误差函数也可以通过权值共享 weightsharing 来完成 也就是把与不同单元或输入相关联的权 捆绑 在一起 4 8 2其他可选的误差最小化过程 不妨把权值更新方法看作是这样两个问题 选择一个改变当前权值向量的方向 选择要移动的距离 在反向传播算法中 这个方向是通过取梯度的负值来选择的 距离是通过常量的学习速率决定的 一种被称为 线搜索 linearsearch 的优化方法采用了不同的方法选择权值更新的距离 确切地讲 每当选定了一条确定权值更新方向的路线 那么权更新的距离是通过沿这条线寻找误差函数的最小值来选择的另一种方法是共扼梯度法 conjugategradient 虽然其他的误差最小化方法提高了训练网络的效率 但对最终的网络泛化误差没有明显的影响 对最终误差唯一可能的影响是 不同的误差最小化过程会陷入不同的局部极小值 4 8 3递归网络 我们考虑的往往是有向无环

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论