来源 | AI科技评论
编译 | 陈彩娴
编辑 | 陈大鑫
在过去的十年里,机器学习确实取得了巨大的突破,计算机视觉与语言处理方面也因此出现了许多改变世界的重要应用。但是,这股“春风”却没有吹到智能机器人领域。
针对机器人学习所面临的瓶颈,麻省理工学院机器人专家Leslie Pack Kaebling在《Science》上发表一篇名为《The foundation of efficient robot learning》的文章。她认为,造成这一现象的一个关键因素在于:机器人学习的数据只能通过在现实世界的操作中获得,成本非常高昂。
为此,Leslie女士提出,实现下一代机器人学习的技术革新,需要应用新的算法、从自然体系中获取灵感,并灵活使用多项机器学习技术。
1
强化学习是否真的那么灵?
尽管监督学习取得了许多重要的成果,但在机器人学习领域,强化学习(RL)更具有优势,因为机器人要在人类世界中执行一系列不同的任务。
在监督学习中,学习算法被赋予输入与期望输出的配对示例,并学会将输入与期望输出关联起来。而在强化学习中,智能体能够根据事先设置的奖励信号来判断自己的表现是出色的,或是差劲的,进而选择恰当的行动方式,这与机器人所应用的复杂环境有利相关。简而言之,监督学习与强化学习的本质区别在于:在强化学习里,智能体的行为对数据产生重大影响,并能控制自己的学习探索,这对整体成功至关重要。
在一开始,RL是通过奖励和惩罚机制来学习动物行为的模型。之后,如果应用RL处理现实世界里的问题,那么RL必须拓展,以处理巨大空间的输入和动作,并且,即使成功执行关键动作后奖励“姗姗来迟”,RL也能维持正常运行状态。这时候,便出现了深度强化学习(DRL)方法。
DRL使用了神经网络来解决上述的现实问题,并展现了惊人的性能,比如机器人下国际象棋和围棋游戏,以及用机器手臂3秒钟解出魔方。此外,RL也带来了许多实用性强的应用,比如提高安装计算机的能效。
有了这些成功的机器人案例后,人们自然而然便会想象:在物理世界中,RL是否会完全取代以往运用在机器人身上的传统工程方法和其他行为复杂的系统呢?
从技术层面上看,这种想象是荒谬的。
我们可以想象一个专门帮助老人料理家务的机器人:在“上岗”之前,机器人必须先具备大量知识与能力,同时还需要在工作中学习新的知识、不断积累工作经验。后者的学习必须是样本高效的(需要相对较少的训练示例)、可泛化的(适用于特定学习以外的其他情况)、组合性的(能与以往的知识相结合)和增量式的(能够随着时间的推移增加新知识和新能力)。
但是,现有的DRL方法都不具备以上特性。虽然它们可以学习许多令人震惊的新技能,但总的来说,它们无法将所积累的大量经验很好地泛化至其他方面,且在训练与执行的过程中表现单一,比如既没有增长新的知识,也没有组合以往的经验。
如何能使一个智能系统同时具有样本高效性、泛化性、组合性和增量性呢?经证明,现代神经网络能有效处理插值问题。
如果有大量参数,神经网络能够牢记训练数据,并在相似的示例上做出可靠预测。我们可以通过内置知识或结构的形式,向学习算法赋予“归纳偏置”(inductive bias),进而获取泛化能力。比方说,在拥有归纳偏置的自动驾驶系统中,系统的刹车方案只需要参考在规定距离范围内的其他车辆的位置。该系统的知识能从相对较少的示例中获取,因为良好拟合观察数据的可选解决方案有限。
总体而言,归纳偏置能够提高样本高效性和泛化能力。组合性和增量性则可以通过搭建有特定结构的归纳偏置模型来获得,在这个模型里,通过学习获得的“知识”被分解成具有独立语义的的因子(factor),这些因子可以组合起来解决大量的新问题。
2
如何巧妙建立归纳偏置?
基于先验知识或结构的观点不一定是“真知灼见”。
强化学习领域的先驱者Richard Sutton坚信,人类不应该将任何先验知识构容纳到学习系统中,因为纵观历史,这种做法往往是错的。Richard Sutton的文章引起了强烈的反响,并指明了学习系统设计中的一个关键问题:在学习系统中建立什么样的归纳偏置,才能使系统具有从大量数据中学习可泛化知识、又不会因为数据不正确或过约束而失灵呢?
目前有两种设置恰当偏置的方法。这两种方法具有连贯性,但具有不同的时间范围和权衡取舍(trade-offs),可以同时应用于寻找学习智能体所需的强大而灵活的先验结构。
方法1:在“元”层面运用机器学习技术
这种方法指的是,在系统设计阶段,离线使用机器学习技术来发现能提高智能体在线学习效率的结构、算法和先验知识。
元学习的基本概念至少从上世纪80年代在机器学习和统计学中出现,基本思路是:在系统设计阶段,元学习过程便能访问系统在线学习时可能面临的许多潜在任务或环境的样本。
元学习器的目的不在于掌握适应单个环境的多种策略或适用于全部环境的单项策略,而是掌握一种在线学习时面临新任务或新环境时也尽可能高效学习的算法。这个目标可以通过在训练任务间引入共性,并使用这些共性形成有力的先验或归纳偏置,使在线学习的智能体只学习那些将新任务与训练任务区分开来的方面。
元学习可以非常出色地形式化为一种分层的贝叶斯(概率)推理。在这种推理形式中,训练任务可以看作是在提供在线学习的任务会如何表现的证据,并基于这些证据利用好在线学习所获得的数据。但是,贝叶斯形式在计算上可能很难实现,因为它是对系统设计阶段中所遇到的大量任务进行推理,其中也可能包含在线学习的实际任务。
方法2:将元学习明确地描述为两个嵌套的优化问题
内部优化在线进行指的是:智能体试图从系统设计阶段生成的一系列假设中找到在线学习数据中“得分”最佳的假设。内部优化的特色在于假设空间、评分标准和将用于搜索最佳假设的计算机算法。在传统的机器学习中,这些成分由人类工程师提供。
但在元学习中,至少一部分是由系统设计阶段进行的外部“元”优化过程所提供的。元优化试图找到内部学习过程本身的参数。这些参数能使学习在与元学习的环境相似的新环境中进行(源于相同的分布)。
最近有研究介绍了一种新的元学习形式,叫做“与模型无关的元学习”(model-agnostic meta-learning,MAML)。MAML是一个嵌套的优化框架,其中外部优化选择的是一些内部神经网络权重的初始值,能通过在线学习的标准梯度下降优化方法进一步调整。RL2算法在系统设计阶段中使用DRL来学习在线学习运行的一般小型程序,但这些小型程序不一定具有机器学习程序的形式。另一个变体试图在系统设计阶段发现可以组合起来以解决在线学习出现的问题的模块构造块(modular building blocks,如小型神经网络)。
自然界中的进化过程可以被认为是元学习的一种极端形式。在自然进化中,自然界会为了动物去寻找一个含有潜在学习算法的、极其不受限制的空间。(当然,从本质上讲,智能体的生理状况也会发生改变。)在机器人生命周期内,对内部优化问题的处理越灵活,越需要更多用于提高鲁棒性的资源,包括系统设计阶段的示例环境、在线学习的性能不佳的机器人,以及在两个阶段运行的计算容量。
这时候,我们又回到最初的问题:标准的强化学习方法不会被采用,因为尽管它是一种通用的学习方法,但它需要大量的在线学习经验。然而,元强化学习(meta-RL)需要丰富的系统设计经验,这可能会使开发过程变得迟钝、缓慢而花费高昂。因此,也许元学习也不是一个好的解决方法。
那还有什么解决方法呢?有很多方向可以探索,包括人类教学、与其他机器人协作学习,以及更改机器人的硬件和软件。在所有这些情况下,关键的一步还是设计出有效的方法来开发机器人软件。通过运用从计算机科学和工程学中所获得的见识以及认知神经科学的启发,我们可以找到能够内置到学习智能体中的算法和结构,并提供在系统设计阶段和在线学习算法和结构的杠杆。
卷积神经网络的发展是上述方法的典型例子。卷积神经网络的理念是设计出一种用于图像处理的神经网络,以使其执行“卷积”,即在整个图像上使用相同的计算模式对图像块进行局部处理。这个设计同时对先验知识进行了编码。在此处,先验知识指的是无论物体处于图像中的什么位置,物体都具有基本相同的外观(平移不变性),以及接近的像素组共享图像内容的信息(空间局部性)。与没有卷积结构的情况相比,以这种方式训练一个神经网络意味着需要的参数数量更少,因此训练次数也相应减少。
图像卷积的点子由工程师和自然启发,是早期信号处理和计算机视觉的基础概念。一直以来,人们都认为,哺乳动物视觉皮层中的细胞似乎也在执行类似的计算。
3
总结
由此可见,发现更多能为机器人学习提供实质性的杠杆作用、又不会阻止机器人进行一般智能行为的基本结构或算法约束,比如卷积,是非常重要的一步。
现在也有一些不错的解决方法,比如说:一,用有行动效应的“心理模型”来进行某种形式的正向搜索,类似于规划或推理;二,学习并表示从单个对象中提取、但可以广泛应用的知识,比如,对所有的A和B而言,如果A在B之上,移动B时,A可能也会移动;三,对三维空间进行推理,包括在三维空间内规划和执行动作、将三维空间作为存储的组织原理。
此外,我们也许还需要更多可能有效的原理,也需要解决许多其他问题,包括如何开发能同时在系统设计阶段和在线进行训练的基础设施,还有帮助人类明确奖励和维系安全的方法。综合考虑工程原理、生物学灵感、系统设计阶段学习以及最终的在线学习,人类最终才有可能打造出类人的智能机器人。
原文链接:
https://science.sciencemag.org/content/369/6506/915
未来智能实验室的主要工作包括:建立AI智能系统智商评测体系,开展世界人工智能智商评测;开展互联网(城市)云脑研究计划,构建互联网(城市)云脑技术和企业图谱,为提升企业,行业与城市的智能水平服务。
如果您对实验室的研究感兴趣,欢迎加入未来智能实验室线上平台。扫描以下二维码或点击本文左下角“阅读原文”