第三部分 游戏与推理:开发具有更接近人类水平的学习和推理能力的机器
10 游戏只是手段,通用人工智能才是目标
开发超人类的游戏程序的成功对人工智能更长远的发展有什么启示。对此,哈萨比斯表达过他的一些看法:
游戏只是我们的开发平台……它是开发并测试这些人工智能算法的最快途径,但最终我们希望把它们应用于解决现实世界的问题,并在健康和科学等领域产生巨大影响。关键在于,它必须是一种通用人工智能,也就是它可以根据自身的经验和数据来学习如何做事。
理解为什么错误至关重要
AlphaGo所有的版本除了下围棋,其他什么也不会,即便是其最通用的版本AlphaGo Zero,也不是一个同时学会了围棋、国际象棋和日本将棋的独立系统,每种游戏都有自己单独的ConvNets,对每一种游戏,网络都必须从头开始进行训练。与人类不同的是,这些程序中没有一个能够将其在一款游戏中学到的知识迁移到其他游戏中,来帮助其学习不同的游戏。每个程序都需要从头学习自己的网络权重。
在机器学习领域,有一个充满前景的学习方法,那就是“迁移学习”(transfer learning),它是指一个程序将其所学的关于一项任务的知识进行迁移,以帮助其获得执行不同的相关任务的能力。
- 对于人类来说,迁移学习是自动进行的
- 人类这种从一种任务到另一种任务的能力迁移看起来毫不费劲;我们对所学知识进行泛化的能力正是思考的核心部分。因而,我们可以说,迁移学习的本质就是学习本身。
- 与人类形成鲜明对比的是,当今人工智能领域中的大多数学习算法在相关的任务之间不是可迁移的。
无须人类的任何指导
与监督学习不同,强化学习可以使程序能够真正靠自己去学习,简单地通过在预设的环境中执行特定动作并观察其结果即可。DeepMind对于其成果,特别是在AlphaGo项目上取得的成果的最为重要的声明是:“我们的结果全面地证明了一个纯粹的强化学习方法是完全可行的,即便在最具挑战性的领域,不用人类的示例或指导,除基本规则之外不提供任何其他领域的知识,程序也有可能训练到超人类水平。”
- 注意其中需要警惕的地方。
- AlphaGo Zero确实没有在学习过程中使用任何人类示例,但并不是说它不需要人类的指导,相反,某些方面的人类指导对其成功至关重要,包括它的ConvNets的具体架构、对蒙特卡洛树搜索方法的使用,以及这两者所涉及的众多超参数的设置。
- 正如心理学家和人工智能研究人员盖瑞·马库斯所指出的:“AlphaGo的这些关键部分没有一个是通过纯粹的强化学习,从数据中学到的,相反,它们是由DeepMind的程序员在一开始就植入其内的……”
DeepMind的雅达利游戏程序实际上是比AlphaGo更好的、不用人类指导进行学习的案例,和AlphaGo不同的是,雅达利游戏程序没有被植入游戏的规则(例如,《打砖块》游戏的目标是击毁砖块),甚至与游戏相关的“对象”的概念(例如,“球拍”或“球”)都完全不具备,它只是通过在屏幕上的一次次尝试来学习这些东西,并最终掌握了玩好这些游戏的技巧。
对人工智能而言,人类的很多游戏都很具挑战性
DeepMind的声明中有一句话需要考量——即便是在最具挑战性的领域。我们如何能够评估某个领域对人工智能的挑战性?
- 许多我们人类认为相当容易的事情,例如,描述一张照片的内容,对计算机来说却极具挑战性。
- 相反,许多对于我们人类来说极其艰难的事情,例如,正确地将两个50位的数字相乘,计算机却可以用一行代码在瞬间完成。
- 有一种方法可以评估一个领域对计算机的挑战性:观察一些非常简单的算法在该领域中表现如何。2018年,优步(Uber)人工智能实验室的一组研究人员发现:在几款雅达利电子游戏上,一些相对简单的算法的表现几乎可以媲美DeepMind的深度Q学习算法,有时甚至更好。其中最令人意外的算法是“随机搜索”:这种算法不是通过多个片段的强化学习来训练深度Q网络,而是通过随机选择权重的方式来测试不同的ConvNets6。也就是说,这种算法完全通过随机试错来进行学习。
- 你可能会认为一个随机选择权重的网络在雅达利电子游戏上会表现得很差。确实,大多数此类网络都是糟糕的“玩家”,但优步的研究人员持续尝试新的随机权重网络,最终他们用比训练一个深度Q网络更少的时间,找到了一个能在他们测试的13款游戏的5款中与深度Q学习算法训练的网络表现得一样好甚至更好的网络。
- 另外一种相对简单的算法,即所谓的“遗传算法”,在13款游戏中的7款都表现得优于深度Q学习算法。不知道该对这些结果说什么,很可能雅达利游戏对人工智能来说,并不像人们最初认为的那样具有挑战性。
- 围棋对人工智能来说算是一个真正具有挑战性的领域。
- 马库斯给出的一个示例是猜字谜游戏
- 这个游戏需要远超任何现有人工智能系统的复杂的视觉、语言和社会理解能力。如果你能制造出一个可以像6岁的小孩那样玩猜字谜游戏的机器人,那么我认为你可以很有把握地说,你已经征服了多个对人工智能来说最具挑战性的领域。
它并不真正理解什么是一条隧道,什么是墙
DeepMind的“打砖块”程序是否真的理解了“挖隧道”这一概念?马库斯提醒我们在这里需要谨慎:
系统没有学会这样的东西,它并不真正理解什么是隧道、什么是墙,它仅仅学会了针对特定场景的应变措施。迁移测试表明深度强化学习的解决方案通常极端肤浅。在迁移测试中,深度强化学习系统所面临的场景与其在训练时所面临的场景仅存在细微的不同,然而,系统都无法通过测试。
迁移测试指的是一些这样的研究,它们试图探究深度Q学习系统在多大程度上能将它们学到的能力进行迁移,即便是非常小的、在同种游戏上的能力迁移。例如,
- 一组研究人员研发了一个类似于DeepMind“打砖块”程序的系统。他们发现,即使这个玩家被训练到超人水平,只要将球拍在屏幕上的位置移动几个像素,系统的表现就会骤然下降。这意味着系统甚至没有学到“球拍”这种基本概念的含义。
- 另一组研究人员发现:对于在《乒乓球》游戏中训练的深度Q学习系统,当屏幕的背景颜色被改变时,系统的表现会显著下降。而且,系统需要经过许多片段的重新训练才能适应这种变化。
以上只是深度Q学习无法将其学到的能力进行泛化的两个案例,这与人类智能形成了惊人的对比。
马库斯指出:
这些案例清楚地表明,用“墙”或“球拍”这种归纳性的概念来评估深度强化学习是具有误导性的,这样的现象在比较心理学(动物领域)上有时被称为过度分配偏见(overattributions)。DeepMind“打砖块”程序并没有真正掌握“坚固的墙”这一概念,而只是在一组高度集中的训练场景中完成了通过挖隧道穿过墙壁这种行为。
尽管这些深度Q学习系统已经在某些细分领域上取得了超人类的表现,甚至展现出了类似人类直觉的特性,但是它们缺乏一些对人类智能而言非常基本的东西,比如抽象能力、“域泛化”(domain generalization)能力,以及迁移学习能力,如何使系统获得这些能力仍然是人工智能领域最重要的开放问题之一。
我们认为这些系统并未以人类的方式来学习人性化的概念或理解它们的领域的另一个原因是:与监督学习系统一样,这些深度Q学习系统极易受到我在第06章中描述的那种对抗样本的攻击。例如,一个研究小组表明:在一个雅达利游戏程序的输入中对图像做出某种人类无法察觉的微小改变,会严重损害程序的游戏表现。
除去思考“围棋”,AlphaGo没有“思考”
像国际象棋或围棋这样的游戏可以教会人们如何更好地思考:如何进行逻辑思考、抽象推理和战略规划。这些都是能够让人受用一生的能力,也是可以在所有事情中使用的通用能力。
对于AlphaGo来说,尽管它在训练期间下了数百万盘棋,但是却并没有学会更好地“思考”除围棋之外的其他任何事情。事实上,除了围棋之外,它不具备任何思考、推理和规划的能力。据我所知,它所学到的能力没有一项是通用的,也没有一项可以被迁移到任何其他任务上。AlphaGo是终极的“白痴天才”(一个人对某个学科知识渊博,但对其他事物一无所知)。
对于人类来说,智能的一个关键点并非在于能够学习某一特定的技能,而在于能够学会思考,并且可以灵活地将这种思考能力用于应对任何可能遇到的情况或挑战,这也是我们希望孩子们能够通过下国际象棋或围棋学习到的真正技能。从这个意义上讲,学校的国际象棋或围棋俱乐部里最低年级的小朋友都比AlphaGo聪明得多。
从游戏到真实世界,从规则到没有规则
哈萨比斯关于这些在游戏上的各种尝试的终极目标的声明:“把它们应用于解决现实世界的问题,并在健康和科学等领域产生巨大影响。”
从游戏到现实世界还有很长的路要走。
- 迁移学习的能力就是其中一个障碍
- 现实世界并不是如此清晰划定的。
- 侯世达指出:“‘状态’这一概念在现实生活中根本不存在明确的定义。如果你仔细观察现实生活中的各种情形,你会发现它们并不都像国际象棋或围棋那样具有条条框框的规则……现实世界中的各种情形根本就没有边界,你不知道情形之中是什么,也不知道情形之外是什么。”
- 像《打砖块》和围棋这样的游戏非常适合使用强化学习,因为它们有清晰的规则、直截了当的奖励机制,以及相对较少的可能动作(如行棋)。此外,玩家有获得完整信息的途径:游戏的所有部分始终对玩家可见,玩家的状态没有隐藏或不确定的部分。
考虑使用强化学习来训练一个机器人执行一项非常有用的现实世界中的任务:把堆在水槽里的脏盘子放入洗碗机中。
- 我们应如何定义机器人的状态?
- 应该包含它视野中的所有东西吗?
- 比如,水槽和洗碗机里的东西。那么跑过来舔盘子的狗呢?
- 无论我们如何定义其状态,这个机器人都必须能够识别不同的物体,例如,
- 识别一个应该被放到洗碗机底部的架子上的盘子、
- 一个应该被放在洗碗机架子顶部的咖啡杯,
- 或一块根本不应该被放进洗碗机中的海绵。
- 可是到目前为止,计算机的目标识别还远算不上完美。
- 此外,机器人还必须对不在其视野内的物体有所感知,
- 比如隐藏在水槽底部的锅碗瓢盆。
- 机器人还需要学会捡起不同的物体,并小心仔细地把它们放在适当的插槽中。
- 所有这一切都需要机器人学会在众多可能的动作中做出选择,
- 包括调整机器人身体的位置、
- 用于抓取的“手指”的动作、
- 由电机控制的将物体从水槽移动到洗碗机正确卡槽的动作等。
如果我们不想要数百万个破碎的盘子,就必须在模拟环境中训练这些智能机器人。
但是模拟一个洗碗机装载机器人依然非常不容易。模拟越逼真,在计算机上运行的速度就越慢,并且即便使用一台速度非常快的计算机,要把所有的物理作用力和装载碗碟的其他方方面面的相关参数都精确地置入模拟中也极其困难。然后还有那只烦人的狗,以及现实世界中所有其他不可预测的情况,我们如何弄清楚哪些需要包含在模拟中,哪些又可以被适当地忽略掉呢?
特斯拉的人工智能总监安德烈·卡帕西注意到了以上这些问题,他表示:“像这样的现实世界中的任务,基本上与所有围棋满足的并且为AlphaGo设定的每一个单独的假设都相违背,所以,任何成功的方法都绝不可能是像AlphaGo那样的。”
没有人知道这种成功的方法会是什么。确实,深度强化学习领域的发展才刚起步。我在本章中的论述可算作是对如下原则的证明:深度网络和Q学习的组合在某些细分但非常有趣的领域中的表现出奇地好,并且尽管我的论述凸显了该领域当前面临的一些局限性,还是有非常多的同行正致力于拓展强化学习,并努力使其应用更广泛。
《AI 3.0》读书笔记
《AI 3.0》读书笔记 序1
《AI 3.0》读书笔记 序2
《AI 3.0》读书笔记 序3
《AI 3.0》读书笔记 译者序
《AI 3.0》读书笔记 第一部分 若想对未来下注,先要厘清人工智能为何仍然无法超越人类智能01
《AI 3.0》读书笔记 第一部分 若想对未来下注,先要厘清人工智能为何仍然无法超越人类智能02
《AI 3.0》读书笔记 第一部分 若想对未来下注,先要厘清人工智能为何仍然无法超越人类智能03
《AI 3.0》读书笔记 第二部分 视觉识别:始终是“看”起来容易“做”起来难 04 何人,何物,何时,何地,为何
《Ai 3.0》读书笔记 第二部分 视觉识别:始终是“看”起来容易“做”起来难 05 ConvNets和ImageNet,现代人工智能的基石
《AI 3.0》读书笔记 第二部分 视觉识别:始终是“看”起来容易“做”起来难 06 难以避免的长尾效应
《AI 3.0》读书笔记 第二部分 视觉识别:始终是“看”起来容易“做”起来难 07 确保价值观一致,构建值得信赖、有道德的人工智能
《AI 3.0》第三部分 游戏与推理:开发具有更接近人类水平的学习和推理能力的机器
《AI 3.0》第三部分 08 强化学习,最重要的是学会给机器人奖励
《AI 3.0》第三部分 09 学会玩游戏,智能究竟从何而来从