机器学习huihoo.ppt

  1. 1、本文档共34页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
2003.12.18 机器学习-遗传算法 作者:Mitchell 译者:曾华军等 讲者:陶晓鹏 机器学习 第9章 遗传算法 概述 遗传算法是一种大致基于模拟进化的学习方法 假设通常被描述为二进制位串,也可以是符号表达式或计算机程序 搜索合适的假设从若干初始假设的群体或集合开始 当前群体的成员通过模拟生物进化的方式来产生下一代群体,比如随机变异和交叉 每一步,根据给定的适应度评估当前群体中的假设,而后使用概率方法选出适应度最高的假设作为产生下一代的种子 遗传算法已被成功用于多种学习任务和最优化问题中,比如学习机器人控制的规则集和优化人工神经网络的拓扑结构和学习参数 本章主要介绍了基于位串描述假设的遗传算法和基于计算机程序描述假设的遗传编程 动机 遗传算法(GA)是一种受生物进化启发的学习方法,它不再是从一般到特殊或从简单到复杂地搜索假设,而是通过变异和重组当前已知的最好假设来生成后续的假设 每一步,更新被称为当前群体的一组假设,方法是使用当前适应度最高的假设的后代替代群体的某个部分 这个过程形成了假设的生成测试的柱状搜索,其中若干个最佳当前假设的变体最有可能在下一步被考虑 动机(2) 遗传算法的普及和发展得益于下面的因素 在生物系统中,进化被认为是一种成功的自适应方法,具有很好的健壮性 遗传算法搜索的假设空间中,假设的各个部分相互作用,每一部分对总的假设适应度的影响难以建模 遗传算法易于并行化 本章内容安排 描述了遗传算法,举例演示了它的用法,分析了它搜索的空间的特性 描述了遗传算法的一个变体:遗传编程,这个方法中,整个计算机程序向着某个适应度准则进化 介绍了一些有关生物进化的课题(遗传算法和遗传编程是进化计算领域中的两种普遍方法),比如鲍德温效应,它描述了个体的学习能力与整个群体进化速度之间的相互作用 遗传算法 遗传算法研究的问题是搜索候选假设空间并确定最佳假设 最佳假设被定义为使适应度最优的假设 适应度是为当前问题预先定义的数字度量,比如: 如果学习任务是在给定一个未知函数的输入输出训练样例后逼近这个函数,适应度可被定义为假设在训练数据上的精度 如果是学习下国际象棋的策略,适应度可被定义为该个体在当前群体中与其他个体对弈的获胜率 遗传算法(2) 遗传算法具有以下的共同结构: 算法迭代更新一个假设池,这个假设池称为群体 在每一次迭代中,根据适应度评估群体中的所有成员,然后用概率方法选取适应度最高的个体产生新一代群体 在被选中的个体中,一部分保持原样地进入下一代群体,其他被用作产生后代个体的基础,其中应用交叉和变异这样的遗传方法 表9-1 遗传算法原型 GA(Fitness, Fitness_threshold, p, r, m) Fitness:适应度评分函数 Fitness_threshold:指定终止判据的阈值 p:群体中包含的假设数量 r:每一步中通过交叉取代群体成员的比例 m:变异率 初始化群体:P?随机产生的p个假设 评估:对于P中每个假设h,计算Fitness(h) 当 Fitness_threshold,产生新一代PS,做: 选择:用概率方法选择P的(1-r)p个成员加入PS,概率公式是 交叉:按概率从P中选择rp/2对假设,对于每对假设h1,h2,应用交叉算子产生两个后代,把所有的后代加入PS 变异:使用均匀的概率从PS中选择m%的成员,应用变异算子 更新:P?PS 评估:对于P中每个h计算Fitness(h) 从P中返回适应度最高的假设 遗传算法(3) 算法的每一次迭代以3种方式产生新一代群体 直接从当前群体中选择 在选中的个体中进行交叉操作 在新群体上进行变异操作 遗传算法执行一种随机的、并行柱状的搜索,根据适应度函数发现好的假设 表示假设 遗传算法中的假设常常被表示成二进制位串,这便于用变异和交叉遗传算子来操作 把if-then规则编码成位串 首先使用位串描述单个属性的值约束 比如考虑属性Outlook,它的值可以取以下3个中的任一个:Sunny、Overcast、Rain,因此一个明显的方法是使用一个长度为3的位串,每位对应一个可能值,若某位为1,表示这个属性可以取对应的值 多个属性约束的合取可以很容易地表示为对应位串的连接 整个规则表示可以通过把描述规则前件和后件的位串连接起来 表示假设(2) 位串的特点 表示规则的位串对假设空间中的每个属性有一个子串,即使该属性不被规则的前件约束。 得到一个固定长度的规则位串表示,其中特定位置的子串描述对应特定属性的约束 规则集的表示:单个规则的位串表示连接起来 有必要让每个句法合法的位串表示一个有意义的假设 假设也可以用符号描述来表示,而不是位串,比如计算机程序 遗传算子 遗传算法使用一系列算子来决定后代,算子对当前群

文档评论(0)

youbika + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档