随着深度学习、强化学习、计算机图形学、机器人学等方向的快速发展,人们对于从互联网上获取的“静态”数据有着越来越强的学习能力。这促使了学界由“互联网AI”(Internet AI)向着“具身智能”(Embodied AI)发展。所谓具身智能,指的是通过与周边环境交互进行学习。这种学习方式就像古人类产生生物智慧的历程一样,古人类通过与自然环境交互学会了分辨同类伙伴和危险的猎食动物,通过与自然环境的交互学会了各项必须的生命活动,进而产生了人与人之间交流的语言。具身智能要求具有交互功能的环境来进行训练学习。过去几年里,我们所熟知的深度学习训练数据集有很多(如Image Net和CIFAR),但是这些并不是具身智能学习训练所能够使用的训练集,具身智能要求具备一个机器人可以进行探索和交互的虚拟环境。这样使得一个具备听说读写看能力的机器人成为必要。
图2-1 可以听说读写的机器人
基于对于交互环境的复杂要求,我们有一些常见的虚拟环境可供使用,如AI2-THOR, Habitat-Sim, Deep Mind Lab等。不同于只用于训练强化学习智能体的游戏模拟环境,这些环境可以用于训练通用任务的智能体,包括上面所说的听说读写各个方面。
在具身智能交互环境中,我们可以提出一系列相关的具身任务 ,如视觉探索(Visual Exploration)、视觉导航(Visual Navigation)、具身问答(Embodied QA)、视觉语言交互理解(Vision-and-Language Interaction)等任务。这些任务之间本身可能就具有一些相关性或者包容度,例如,视觉探索在视觉导航里就是一个重要的模块,机器人需要首先对于环境有一个大致探索的认知,才能识别到目的地并进行导航。
具身智能被认为是人工智能最终需要实现的目标,因为从认知和神经科学的角度,智能是通过与环境的交互并最终进行感知认识活动产生的。但是聚焦于当下,具身智能更多地将关注点投入在视觉、语言、因果推断的融合模型之上,并将融合模型放入一个可交互环境当中。接下来我们将具体地讨论集中具身智能研究的任务,这些任务不仅仅要求机器人对于已知的环境进行正确认识,同时对于未知环境仍然具有较好的迁移性。
目前研究较多的是视觉探索(Visual Exploration)任务。该任务要求智能体通过自发的探索环境,收集3D环境的各种信息,从而为一些涉及更高层次理解,如导航、操控等的任务提供先验信息。视觉探索往往发生在导航等任务之前或者与导航等任务同时进行。通常,智能体可以在导航等任务开始前自由地在一定预算内探索环境(例如有限的步骤数)。视觉探索过程中会利用自身探索的内部环境记忆对于环境构建一个先验的地图,下游的导航等任务会依据该地图实现物体的定位等。但这样的地图往往会因为探索的局限性导致地图与真实环境的偏差,所以智能体也需要在进行导航等任务时同步更新地图,这会使其与下游任务的结合更加紧密。
在传统的机器人控制中,视觉探索的模块往往涉及即时定位与地图构建(Simultaneous Localization and Mapping,以下简称SLAM)的使用。SLAM方法常常涉及搭载特定传感器的主体,在没有环境先验信息的情况下,于运动过程中建立环境的模型,同时估计机器人自身的运动。传统的SLAM方法主要包括定位和建图两个问题,这两个问题目前已经有许多深入细致的研究,但是这种纯依赖建图的方法仍然存在改进空间。由于SLAM依赖于传感器的数据,SLAM对于传感器的测量误差敏感,实际运用中往往需要精细的微调。而基于网络学习的方式只需要机器人的RGB图像,使其更具准确性和鲁棒性。
智能化的视觉探索应用前景十分广泛,特别是探索那些动态变化的陌生环境,例如救援机器人或者深海探索机器人,智能化探索显得尤为重要。进行视觉探索最普通的方法即是让智能体在环境中进行随机游走,当碰到障碍物时就更改方向或停止探索,但这样的探索显然不能探测到一些不易观察的环境,所以在实际运用当中有以下几种更为实用的探索途径。
基于角点的探索:让智能体优先去寻找较难预测的角落,这样可以保证智能体对于不易到达的点的探索。但是这种对于角点的预测往往并非完全准确,所以实际仍然会遇到动作执行不稳定、误差大的问题。
基于覆盖的探索:让智能体尽可能地覆盖更多的区域。这种方法确实能保证探索的质量,但是过多的探索过程往往对于下游的任务来说是多余的,同时在环境足够大时,全部的探索对于机器人来说并不现实。
基于重建的探索:智能体根据自身视角获取的观测信息去构建基于其他视角的地图。例如,假想在房间的一个地方放置一个摄像头,构建基于摄像头角度的辅助视图。这样可以帮助机器人判断视线之外的位置是否有障碍物,某个位置是否存在特定路标等,对于机器人建图有补充效果。
视觉导航任务中,智能体可以给定一些先验知识或者语义指导。通常智能体会被告知前往某个具体的位置点,或者根据定位导航到某个物品处。正如前文提到,基于网络学习的方法往往对于传感器测量误差不敏感,同时这种方法可以融入对于环境的语义理解,利用已经探索过的环境对于未知环境作出理解和认知。随着研究的深入,专家们针对视觉导航任务举行了一些不同的挑战赛。最著名的包括:Habitat Challenge ,机器人挑战赛(RoboTHOR Challenge),iGibson Sim2Real Challenge等,其中iGibson Sim2Real Challenge是基于位置的导航任务,任务中包括无障碍的场景、有可交互物品的场景、存在其他智能体的场景;Habitat Challenge中,有基于位置和基于物品的导航任务;RoboTHOR Challenge是单纯的基于物品的导航任务。
基于物品的导航任务(Object Navigation)是具身智能任务中最直观也是最具有挑战性的任务之一。任务聚焦于导航到未知环境中某个具体标签的物品。智能体在一个随机的位置初始化,被要求寻找并定位到特定物体。这个任务与基于位置的导航不同的是,智能体需要理解任务要求的物品是什么,这就涉及更深层次的语义理解的问题,也是该任务的挑战所在。
目前一些方法包括通过强化学习,使智能体尝试从自监督的方式中,学习到一个交互损失函数,并通过自监督的方式让智能体调整或纠正行动错误。另外一种方式是通过构建物体关联图(ORG),学习物体之间的类别关联或空间关联信息,进而辅助智能体进行定位导航。
具身问答任务(Embodied Question Answering)的提出大大推进了通用人工智能系统领域的发展。在具身情形下,为了实现问答任务,智能体需要具备多方面的AI智能理解能力,包括视觉认知、语言理解、问答系统、常识推理、任务规划、导航等。因此,具身问答被认为是当下最复杂、最有前景的具身智能研究话题。具身问答任务可以拆分为两大类子任务类型:导航任务和问答任务。导航模块对于智能体探索环境并找到问答相关的问题具有重要作用。一旦智能体停止导航,路径当中的序列图像会被传入问答模块,利用深度学习方法输出问题的答案。
图2-2 具身问答任务
当前具身智能的仿真环境在功能和保真度方面都达到了一定水平,这使得它们与用于强化学习的传统环境不同。尽管具身智能仿真环境如此多种多样,但具身智能虚拟环境在现实性、可扩展性和交互性等领域仍存在一些挑战。具身智能仿真环境具备的仿真性和物理引擎对于具身智能的研究有极大的影响,甚至可以说,很多时候,虚拟环境的不完善性成为具身智能任务突破的瓶颈。当前,仍然缺乏一个具备高物理特性、高仿真度的虚拟环境。目前很多虚拟环境仍然是基于游戏模拟器,例如著名游戏《我的世界》,基于真实环境的模拟器只有Habitat-Sim 、iGibson 等,屈指可数。但我们相信随着3D重建技术和物理引擎的发展,这样的虚拟环境可以逐渐成为现实。
除了虚拟引擎的仿真性限制,具身智能的数据可扩展性较差。与基于图像的数据集不同,它可以很容易地从众包或互联网中获得。收集大规模基于世界的3D场景数据集和3D对象资产的方法和工具是稀缺的。这些3D场景数据集对于构建各种具身虚拟环境至关重要,当前收集逼真的3D场景数据集的方法需要通过摄影测量扫描物理房间,例如Matterport扫描仪、Meshroom ,甚至是移动3D扫描应用程序。但是,这类产品在收集大型3D对象和场景扫描方面成本巨大,因为用于摄影测量的3D扫描仪成本高昂且无法有效普及。因此,可扩展性的瓶颈在于开发用于大规模收集高保真3D对象或场景扫描的工具。但随着神经渲染等新兴技术的发展,我们也许很快就可以获得大规模的优质数据集。
在当前许多具身仿真虚拟环境中,与物体的交互往往可以简单地通过一些范式,如“拿起某个桌子上的花瓶”这样的句式进行交互,或者简单地调用一些预先设定好的交互接口即可完成。但实际上,真实环境的智能体往往涉及机械臂的控制等复杂因素。真实环境中智能体往往能对物体进行粗略的运动控制,但缺少对于对象状态变化的精确把控,因此,需要在对象属性和具体的操作复杂性之间进行有效平衡。具身智能对“互联网AI”的复杂度进行了提升,需要智能体能够在3D仿真环境中利用多感官的传感器数据,对于长序列特征进行学习,这对于记忆长序列的特征提出了新的挑战,更进一步,对模型识别时序特征的重要部分也提出了要求。我们所熟识的处理时序数据的网络有循环神经网络、注意力机制模型、预期占用度量图、语义地图等。但是究竟哪一种网络最适合,如今人们仍没有定论。对于更复杂一点的任务如具身问答任务,有两种具有前景的方法可以减少搜索空间,降低样本复杂度从而提升模型鲁棒性。分别是模块化方法和引入先验知识。
具身虚拟环境的发展一直是具身智能研究取得进展的关键驱动力。为了了解具身智能的虚拟环境和具身智能的一些任务类型,本章对具身智能进行了一个简要的概述,希望能够给予读者一个对具身智能较为全面的理解。