归纳总结:五大机器学习范例:神经网络、遗传算法、规则归纳?

优采云 发布时间: 2022-10-22 05:14

  归纳总结:五大机器学习范例:神经网络、遗传算法、规则归纳?

  假设有一个代理人想在大联盟级别打棒球。要达到这个水平,通常需要 15 年或更长时间的培训。虽然规则极其简单,但学习周期很长:“扔球、接球、击球”。

  这句话出自 1988 年由 Ron Shelton 执导的电影 Bull Durham。

  在训练的早期,智能体必须了解棒球比赛中的许多可能状态。

  (1) 我们的团队领先吗?

  (2) 如果我处于防守位置并且球朝我飞来,我必须知道现在在一垒的跑垒员是否跑得快?如果是,那么我必须迅速把球扔出去。

  (3) 对方投手是否投掷了一个旋转球(很难击中!)?如果是,那么也许我今天应该假装生病。

  这个年轻代理收到的这种反馈是学习过程的核心。在机器学习中,反馈有 3 种类型:监督学习、无监督学习和强化学习。

  使用监督学习来学习特征是最直接、最简单的方法。代理执行了一些动作后,它可以立即收到适当的反馈。例如,当一个敏捷的跑垒员给他一个地滚球时,如果他要花一点时间将球传到一垒,那么在这种情况下,在几分钟内,他会被提醒加快速度。第 11 章介绍了神经网络如何使用监督学习来学习布尔函数。我们为网络提供每个可能输入的正确输出列表。

  在无监督学习中,训练期间不提供具体的反馈。但是,如果要学习,代理必须收到一些反馈。假设代理人进攻失败,例如他没有击中垒,但他的防守非常不同 - 他设法完成了两次斜线并拦截了本垒打。这是一场势均力敌的比赛,他的球队赢了。赛后,队友们纷纷恭喜他,他总结说,好的防守也是值得赞赏的。

  在强化学习期间,没有老师为代理提供正确答案。事实上,代理甚至无法提前知道一个动作的后果。更复杂的是,假设即使代理知道一个动作的影响,它也不知道影响会有多大,所以代理必须通过反复试验来学习。因为奖励延迟了,agent 很难判断这个动作是好是坏。任何尝试使用中指平衡伞(未打开)的人都了解强化学习的基础知识,如图 10.2 所示。

  图 10.2 平衡伞,需要在 xy 平面上做一个小的运动来保持伞的平衡

  如果伞向左倾斜,那么你必须向左移动很多,很快你就会发现这是大材小用。让我们回到棒球经纪人的例子。假设他是一名投手,当对手击出本垒打时,代理倾向于将棒球扔给对方的击球手。当对方投手将时速 145 公里的快球投进他的腿时,几局之后,他需要将疼痛的膝盖骨与可能过于激进的比赛联系起来。在这里,我们将讨论严格限制在监督学习上。在 Ballard 的著作 [7] 中,您可以找到关于无监督学习和强化学习的精彩讨论。

  通过监督学习,您可以看到一组有序的对:

  我们将这组有序对称为训练集。在

  是输入的n维空间向量,即

  这个函数在

  at 的值是学习值。函数 f 将每个输入向量映射到正确的输出响应。一般来说,在 m 维空间中

  ,每个分量 tk(k = 1,…, m) 都来自一个预定的集合,例如整数、实数等的集合(输入和输出集合可能不同)。

  10.3 归纳学习

  归纳学习的任务是找到最接近真实函数 f() 的函数 h。我们称 h 为 f() 的假设。学习算法将假设空间 H 视为一组逼近正确函数 f() 的函数。在这个学习中,目标是找到训练集中所有点的 h 与 f 一致。人们把这种尝试称为曲线拟合,如图 10.3 所示。

  图 10.3 如果 h 在所有点上都与 f 一致,则 h 与 f 一致

  在图 10.4 中,有 3 个不同的假设。乍一看,h3 似乎是最好的假设。但是,重要的是要记住,学习的目的不是让智能体在训练集上表现完美,而是让智能体在验证集上表现良好。

  图 10. 43 种不同的假设。请注意,由于只有 h3 通过了所有 6 个点,因此只有 h3 与 f 一致

  验证集是测试代理程序的示例集。如果代理实际上已经学习了一些概念,它不应该仅仅记住输入和输出之间的对应关系,而是应该获得泛化能力,例如对它尚未遇到的输入做出适当的响应。一般来说,一个在训练集上表现完美的假设是过度训练的,并且不能很好地概括这个概念。实现泛化的一种方法是交替训练和验证,需要注意的是,在验证期间应该关闭代理的学习机制。当验证错误而不是训练错误最小化时,训练终止。在第 11 章中,我们将深入研究这种训练方法。最后,让我们谈谈棒球经纪人。如果他真的学会了打棒球,

  再次参考图 10.4(c)。这个函数遍历所有 6 个点。我们可以使用拉格朗日插值来找到具有此属性的许多其他函数,例如 7、8、9 阶多项式等。在学习领域(机器和人类学习),指导原则是当存在多种解释时同样观察到的现象,明智的做法是选择最简单的解释。这个原理就是所谓的奥卡姆剃刀原理。以下是该原则的一些示例。

  (1) 在遥远的天空中,看到一道小小的亮光在移动。解释一,一架飞机从附近的机场起飞或准备降落。解释二,一颗恒星离开了它的星系,正准备进入我们的星系。解释一种是更优选的一种。

  (2) 你在圣诞节的早晨醒来,看到窗外的街道上有雪——你昨晚睡觉的时候没有雪。解释一,因为你今年过得很好,所以圣诞老人委托精灵们把北极的雪带到你家附近。解释二,你睡觉的时候下雪了。解释二的可能性更大。

  (3) 几年前,九月的一个早晨,当你经过曼哈顿的布莱克街和第六大道时,你看到成千上万的纽约人离开这座城市,向北走。解释 1、地铁出现电气故障,列车不运行。解释二,恐怖分子劫持了两架飞机,撞向世贸中心。解释一的可能性更大,但不幸的是,解释二是正确的。

  大多数科学家都同意,当有两种理论可以解释同一现象时,越简单的理论相对越好。然而,正如我们所知,这并不总是保证是正确的。在发现新证据之前,这可能只是一个更好的探索起点。

  

  2001 年的一个星期二早上,其中一位作者 (SL) 约会迟到,无法听到早间新闻。

  还有一个特性适用于学习方法,要么是懒惰的,要么是急切的。懒惰的学习者被认为是懒惰的,因为它延迟了训练数据之外的泛化,直到出现新的查询。懒惰的学习者从不努力压缩数据,因此,当模型被调用时,所有数据都可用。这与渴望学习者不同,后者已经抽象出可以在出现新查询时应用的一般规则。但是这样一来,训练数据本身就没有保留下来。一般来说,训练惰性学习者的速度更快,但使用它们需要更多的时间。急切的学习者坚持单一的假设,因此比懒惰的学习者更不灵活。

  基于案例的推理(见第 9 章)被归类为惰性学习者。在这种情况下的优点是我们有整个案例可用,因此这可能具有更广泛的适用性。相反,神经网络被归类为渴望学习者。在反向传播网络 (BPN) 中,网络学习权重,我们将权重视为训练数据的压缩版本。为了将 BPN 应用于新样本,您只需将新查询用作网络的输入,但不会检索先前用于训练网络的数据。

  10.4 用决策树学习

  对于概念学习,决策树是广泛使用的归纳方法。决策树中的节点对应于对某些属性进行的查询。从节点发出的分支代表假定的属性值,如图 10.5 所示。

  图 10.5 描绘了一位作者(SL)的面食偏好的决策树

  任何熟悉意大利餐厅的人都会很快发现意大利面有多种形状和大小。

  这棵树可以用来将意大利面条实例分为两类——SL 喜欢的和 SL 不喜欢的。查询总是从树的根节点开始,到我们找到类标签的叶节点结束。考虑以下意大利面食列表。

  (1) Spaghetti and Meatballs – 意粉配红酱肉丸。

  (2) 意大利面 Arrabbiata——红酱意大利面。

  (3) 意大利面平静的红酱 Vongole – 意大利面配红酱蛤蜊。

  (4) 意大利面平静的白酱 Vongole – 白酱蛤蜊意大利面。

  (5) 伏特加通心粉。

  如图 10.5 所示,为了从这个列表中分类意大利面和肉丸,我们从根节点开始。这道菜的酱汁是红色的,所以我们选择了左边的树枝。左子书问:这道菜“含”肉吗?这当然收录肉。那棵树将意大利面和肉丸归类为 SL 最喜欢的意大利面。尝试使用相同的决策树跟踪其他 4 个实例。您会注意到所有 5 种意大利面食谱都分为两个不同的类别。

  第一类 - SL 最喜欢的意大利面,收录示例 1、4 和 5。

  第二类——SL不喜欢的意大利面,收录例子2和3。

  免责声明 - 作者之一 (SL) 选择这些属性值仅用于说明目的。SL 在纽约曼哈顿下城的“小意大利”长大,不幸的是(因为他的腰围)他喜欢各种意大利面!事实上,他品尝了他最喜欢的两家餐厅的大部分菜肴,即《小意大利》中汉斯特街 189 号的普利亚和迈伯里街 164 号的丹尼科。

  如图10.5所示,从决策树的根结点到叶结点末端的任意一条路径都表示该路径上属性值的合取(AND)。例如,Spaghetti Arrabbiata 分类的路径是 (sauce = red) ∧ (meat = no)。SL 喜欢的意大利面食的概念对应于所有连词的析取(OR),这些连词沿着通往回答是的节点的路径。在示例中,我们有:[(sauce=red)∧(meat=yes)]∨[(sauce=white)∧(seafood=no)]∨[(sauce=pink)]。

  10.5 适用于决策树的问题

  使用决策树可以有效学习的一些问题的特征如下。

  (1)属性应该只有少数几个值,例如酱=红色、白色或粉红色;实例由一组属性值表示,例如实例 = 意大利面条和肉丸。我们给一些属性赋予一定的值,比如酱汁是否是红色的,其中肉=是。

  (2) 一般来说,目标函数只有几个离散值。在面食示例中,值为 Yes 和 No。

  (3) 训练数据可能存在错误。当属性值或实例分类出现错误时,决策树表现良好(这与第 11 章中神经网络学习的鲁棒性形成对比)。

  这些都是理想的条件。通过参考该领域的文献,您可以了解许多规避这些限制的方法。

  在训练数据的过程中,可能会出现属性值缺失的情况。例如,假设决策树的用户知道 Spaghetti Arrabbiata 不含肉,则该属性也缺失。

  许多现实世界的问题都满足前一个列表所施加的约束。在医疗应用中,属性对应于患者的可见症状或描述(肤色 = *敏*感*词*、鼻子 = 流鼻涕、头痛)或医疗应用中的测试结果(体温升高、高血压或血糖水平、*敏*感*词*酶异常)。的目标函数可能表明存在疾病或状况:患者患有花粉热、肝炎或最近修复的*敏*感*词*瓣膜出现问题。

  决策树广泛用于医疗行业。

  在金融领域,决策树也用于从*敏*感*词*价值确定到房地产投资有利条件的方方面面。商业世界的一个基本应用是期权交易。期权是一种合同,赋予个人以给定价格或在特定日期购买或出售某些资产(例如股票)的权利。

  10.6 熵

  熵量化了样本集中存在的均匀性。为了简化讨论,假设要学习的概念本质上是二元的——例如,一个人是否喜欢意大利面。给定一个集合 S,对于这个二元分类,S 的熵是

  {-:-} 熵 = -p(+) log2 p(+) -p(-) log2 p(-)

  其中,p(+)代表你喜欢的部分,即喜欢面食;p(-) 代表你不喜欢的部分。在讨论熵时,对数总是以 2 为底,即使分类不是二元的。

  图 10.5 中的决策树描述了面食偏好。假设有一组 4 种类型的面食有人喜欢吃——我们将这种情况表示为 [4(+), 0(-)],那么这组中的熵是

  熵[4(+), 0(-)] = -4/4×log2(4/4) - 0/4×log2(0/4)

  = -1 × log2(1) - 0 × log2(0)

  = -1×0 - 0×0

  

  = 0

  如果有人喜欢其中两种意大利面而不喜欢另外两种,那么

  熵[2(+), 2(-)] = -2/4×log2(2/4)-2/4×log2(2/4)

  = -1/2×(-1)-1/2×(-1)

  = 1/2 - (-1/2)

  = 1

  我们观察到,当所有成员属于同一个组时,集合的熵为 0。这个 0 值表示这个集合中没有杂质,并且这个例子中的所有成员都为真。在第二个例子中,一半的成员是正的,一半是负的,在这种情况下,熵的最大值为 1。在二元分类中,集成熵的范围是 0 到 1,如图 10.6 所示。

  图 10.6 在二元分类中,熵函数随着正样本的增加而增加

  尺度变化在区间 [0,1] 内变化

  集合的熵可以被认为是确定所选项目来自哪个类别所需的位数。例如,对于集合 [2(+), 2(-)],需要一位来指定从哪个类别中选择哪个项目,其中 1 表示有人喜欢该项目,0 表示有人不喜欢该项目。反之,当有人喜欢所有项目时,在集合 [4(+), 0(-)] 中,不需要位来标记项目,所以当有人喜欢所有项目时,熵为 0。

  10.7 用 ID3 构建决策树

  1986 年,Quinlan 开发了 ID3 算法。ID3是决策树学习中应用最广泛的算法之一,它以自顶向下的方式构建决策树。它首先搜索将训练集划分为尽可能相等的子集的那个属性。如果您要成功应用决策树,您必须了解它们是如何构建的。在面食示例中,有三个属性——酱汁颜色、肉类和海鲜——见表 10.1。

  表 10.1 用于决策树学习的数据

  No. Pasta Sauce Color 含肉 含海鲜 1Spaghetti with Meatballs Red True False Yes 2Spaghetti Arrabbiata Red False False No 3Linguine Vongole Red False True No 4Linguine Vongole White False True or Not 5Rigatoni alla Vodka Pink False Yes 6Lasagne Red True False Yes 7Rigatoni Lucia White假 假 是 8Fettucine Alfredo White Fake Yes 9Fusilli Boscaiola Red Fake No 10Ravioli Florentine Pink Fake Yes

  有 3 种不同的属性,因此哪个属性先出现有不同的选择,如图 10.7 所示。

  一个属性如果可以根据属性的值将样本分为两个,则认为该属性是好的,例如,某个属性值对应的所有实例都是正的,而其他属性值对应的所有实例都是负的。相反,如果一个属性不收录区分属性值,则该属性被认为是无用的。在示例中,好属性意味着对于每个属性值,意大利面的喜欢和不喜欢的数量是相等的。

  ID3 使用信息增益来定位属性。如果该属性达到最大预期熵减少,则该属性位于更靠近根节点的位置。如图 10.7 所示,为了确定三个子树中哪个子树首先被选中,ID3 首先计算其对中显示的每个子树的平均信息,然后选择能够产生最大信息增益的子树。其中,属性A产生的信息增益是指用A来划分集合S,导致熵减少。

  其中v是属性A所采用的值。这个公式对v的所有值求和Sv(S与值v的子集)。如图10.8到图10.10所示,了解ID3必须进行的计算。

  图 10.7 决策树可以从三个属性中的任何一个开始。在(a)中,酱汁颜色为红色,作者喜欢两种意大利面,不喜欢三种意大利面。其他盒子也可以做类似的解释

  仔细观察图10.8~图10.10,很明显,由于“收录海鲜”的属性,其相关信息增益为0.32,是对应的三个属性中的最大值,所以ID3选择属性“收录海鲜”为决策树。的第一个属性。

  接下来,ID3 必须在图 10.11 中绘制的两棵树之间进行选择。

  一旦选择了第二个属性,则在需要时应用未选择的属性。本书要求你在练习中完成这些计算。

  图 10.8 如果先选择酱汁颜色,则信息增益等于 0.29

  图 10.9 如果先选择收录肉的属性,则信息增益等于 0.17

  图 10.10 如果先选择收录海鲜的属性,则信息增益等于 0.32

  图 10.11 ID3 必须选择哪个属性作为第二个属性——是酱汁的颜色,还是含有肉?

  本文节选自《人工智能》(第2版)

  本书是作者结合多年教学经验精心编写的人工智能教材,堪称“人工智能百科全书”。这本书涵盖了人工智能的简史、搜索方法、知情搜索、游戏中的搜索、人工智能中的逻辑、​​知识表示、生成系统、专家系统、机器学习和神经网络、遗传算法、自然语言处理、自动规划、机器人技术、高级电脑游戏、人工智能的历史和未来。

  本书提供了丰富的教学配套资源,适合作为高校人工智能相关专业的教材,也适合对人工智能相关领域感兴趣的读者阅读和参考。

  技巧:谷歌seo的关键词分析工具 怎么用?

  关键词分析工具

  对于Google SEO至关重要,使用免费或商业关键词分析工具进行适当的关键字分析。关键词分析非常耗时,请花时间分析您的关键词,不要急于求成。关键词分析实际上是分析用户使用搜索引擎搜索关键词搜索的内容,并发现搜索用户搜索关键词的频率。

  通过关键词分析,我们可以找出被忽视的重要关键词,SEO优化器经常发生的事情,经常认为关键词重要的不是我们想要的潜在客户,而是访问我们网站的人正在使用其他关键词。不要以为这个问题不会发生在你身上,你可以试试你认为对的关键词,它会给你带来潜在客户吗?

  如何使用谷歌关键词规划器进行关键词分析?关键词分析实际上是分析关键词搜索用户通过搜索引擎搜索的内容,用户搜索每个关键词的频率,并可能向关键词列表中添加一些新关键词。

  关键词分析工具对于提高关键词采矿效率至关重要

  关键词分析工具:谷歌关键词规划师

  Google 关键词调整规划师来投放广告系列以获得准确的搜索,但必应关键字搜索工具无需投放有效的广告即可查看使用必应搜索关键词的确切搜索次数。

  关键词调查分析工具的商业版

  单词跟踪器

  莫兹

  关键字发现

  

  关键字

  斯皮夫

  塞姆拉什

  溶盐剂

  西莫伊托

  免费的第三方关键词调查分析工具

  例如,免费关键词调查分析工具,关键词分析通常在初始关键词头脑风暴阶段可能很有用,因此我们需要在多个维度上进行关键词分析,充分利用搜索下拉推荐关键词,对搜索结果进行相关推荐,并进一步挖掘更多高质量的关键词。

  关键词分析建议以Google关键词规划师为支柱,辅以必应关键字研究工具。

  谷歌关键词规划器相关功能的简要介绍

  谷歌关键词规划师

  输入您的关键词

  想要,建议开始输入单个单词或几个单词,也可以输入您的网站的URL或竞争对手的URL,Google会检查您的页面并为您提供该页面的相关关键词。这并不容易使用,因为没有优化的页面,Google不会给出很好的关键词。让我们以操作关键词产品类别为例:

  

  设置右侧

  目标市场,选择合适的语言和国家;

  关键词过滤(用于PPC);

  您只能打开显示与我的搜索字词密切相关的想法;

  关键词包括设置;

  告诉谷歌包括我提供关键词;

  时间设置;

  如果您的企业是季节性的,您可以这样做:

  关键字提示

  广告组提示

  重要的是要记住,关键词挖掘非常耗时且耗精力,请花时间挖掘您的关键词,不要急于求成。

0 个评论

要回复文章请先登录注册


官方客服QQ群

微信人工客服

QQ人工客服


线