面向灵巧操作的主动感知与技能学习
2019-11-20孙富春
随着机器人技术的不断成熟,在人们日常生活的多个场景中都可以窥见机器人的身影,在承担更多、更重要角色的同时,机器人需要具备的技能和智能要求也越来越高,人们希望它能够像人类一样完成更为灵巧的操作。在2019世界机器人大会上,清华大学教授、清华大学人工智能研究院智能机器人研究中心主任孙富春,结合工作经验,从专业角度分析了机器人灵巧操作过程中所需要的主动感知与技能学习。
马克思曾经说过,劳动创造了人。劳动最主要的成本就是我们勤劳的双手,所以手的操作是智能的直接体现,也是能力进化的一个主要驱动力。
一个儿童从出生开始发育,随着生理和心理的成熟,很快就可以灵巧地搭积木,这样的能力让我们叹为观止。但要让一个机器人像人类一样,哪怕是像儿童那样灵巧地搭积木却是一个具有挑战性的问题。
可以进行灵巧操作的机器人
机器人的装配和打磨需要灵巧操作。我们特别希望厨房机器人能把我们所有的家务都承担了,同时我们也希望機器人能够进入艺术领域,进行艺术表演。比如我们最近在进行机器人弹钢琴的研究,清华大学美术学院进行的机器人表演,以及丰田研发的机器人弹钢琴、拉小提琴等。然而目前大部分机器人产品都没有实现这种操作技能,主要是进行外观和手势的展示,即便它们能够进行一些操作也是非常简单的操作。
要让机器人完成灵巧的操作需要完成感知、目标特性识别等技能的表达和学习,这是一个非常繁琐的工作。现在世界机器人大会上有多个关于机器人灵巧操作的比赛,由此可见,机器人操作离不开像人一样的双手发展。
人工智能经过了漫长的发展过程,20世纪60年代到80年代受到关注,80年代到90年代蓬勃发展,后来经过一段时间的低谷,如今人工智能开始兴起,面向人工智能的智能操作已经成为现在机器人发展当中非常重要的部分。
清华大学智能机器人研究中心研发的带有指间传感器、掌面传感器和节间传感器的多模态感知灵巧手,可以感知多个模态信息,包括对目标特性的识别、操作技能的学习等,是一个非常典型的融合系统。其实,对于钢琴家来说,每天都在弹钢琴,经常会谈到琴键手感特别好,我们如何获得手感?首先要有皮肤感知这个触觉,并且在大脑当中形成感觉,这样才能形成触感。那么机器人该怎么形成触感呢?我们要研究机器人的传感器,包括触觉传感器。
基于视觉的传感是目前的主流方向。清华大学智能机器人研究中心研发的指间传感器用到了弹性体表面的浮作材料,这个材料非常重要,上面有很多标志点,下面就是摄像机,摄像机会把标志点的移动记录下来,根据标志点的移动,通过人工智能的算法就可以得到表面的颜色、纹理、增压力、温度等非常丰富的信息。
清华大学智能机器人研究中心研发的两款触觉传感器,可以接触物体表面的纹理信息。我们设计了43种布料,用它们进行实验可以展示出触觉纹理信息和视觉信息,它们之间是完全不一样的,触觉纹理信息更多的是展示深度信息和结构信息。
前面讲到标志点的移动,那么如何通过人工智能的方法将其处理成三维的计算?目前我们主要从六个指标来进行比较,综合指标应该处于前列,然后用各种样品进行检测。比如勺子、不同温度的盐水、不同盐水的水杯,以及各种豆类、不同纹理的布料和毛巾等。怎么挑选需要的豆类?比如要挑绿豆,这就会是两种实验,一种是仅仅用到温度,一种是用到纹理,二者都用的情况下识别的成功率远远高于单一模态的信息。
如今,这种多模态感知灵巧手在各种操作当中进行应用。基于此,我们研发了一个人工假肢,可以感知到12种行为,并且参加了2018年世界制造业大会,中央电视台也对我们的研发成果进行了报道。
再来看多模态的感知,我们一直在想机器人能不能像人一样做到对环境的感知和理解?比如有两张图,一张上面是花,另一张上面是老虎,我们可以轻松辨认,但机器可以这样做吗?机器根本不认识什么是花?什么是老虎?只知道花的底层特征是什么,老虎的底层特征是什么。我们需要学习从底层特征和语义关联,但是这难以辨别这是画里的老虎还是真实的老虎,老虎未来的行为是什么,我们更无从谈起,所以必须通过认知办法解决这样的问题。
面向灵巧操作的主动感知
想必大家都听过乌鸦喝水的故事,乌鸦是最聪明的,当乌鸦发现一个盛有水的瓶子时,用眼睛一看发现这个高度是嘴难以达到的,所以把石头填进去,水位随之上升,慢慢缩短水和嘴之间的距离,然后重复这样的操作,不断地试探,直到水位上升到足够的高度,成功喝到瓶子里面的水。那么乌鸦的感知过程是什么?就是从感知到行为,行为又帮助它感知,感知得越来越精确,最后再回到行为。实际上,这是一个闭环过程,从感知到行为,行为又来增强感知,最后到行为实现目的这样一个过程。
这就引入了一个问题,机器学习和机器人学习。如今,很多人在进行机器学习相关的研究,机器学习不强调和环境的交互,所以是典型的开放学习。我们研究的是人工智能的学习过程,比如深度学习要研究可解释性的问题,乌鸦的学习过程当中用到了感知过程,就是大脑、眼睛和行为之间形成的行为共融,通过不断地从感知到行为,从行为到感知的闭环过程实现了认知的过程,这是一个非常复杂的操作过程。机器人学习就是在与环境交互过程中,从感知到行为,再从行为到感知的认知过程。
于是,我们提出了一个主动感知的概念。主动感知由三个部分组成:一部分是传感器主动,传感器如何最快地找到感兴趣的目标?另一部分是感知模式主动,那么多的传感器究竟是如何做到传感器的模态选择,包括行为的选择?最后一部分是机器人能不能像上文提到的乌鸦一样,通过不断的实践变得越来越精明?我们把它叫做发育。
“主动控制”,进行自动化研究的人也常常会用这个词,就是目标最开始是在坐标系当中,通过非线性滤波使得它总是在视场中心,但是当它不在你的视场当中你怎么找到它呢?如果伪装了、遮挡了、变形了,你还能找到它吗?我们可以通过场景运动的办法,通过对抗式学习实现这样的认识过程。
我们有一个优点叫做选择注意机制,人的视觉系统就有这种注意机制,比如,人们会对大的物体、近的物体,以及色彩对比度比较大的物体感兴趣,那么如何把人类视觉的认知过程和检测相结合?我们开始把金字塔模型具有的认知过程与卷积网络相结合,实现多尺度不同大小的检测,以提高它的检测率。
我们该如何提高视觉系统对物体的检测率?比如对于无人车来说,从某个角度来看物体检测率比较低,通过深度强化学习找到一个合适的位置,这个位置上的检测率显著提高了,这就是从感知到行为的交互过程。其实对于机器人来讲,操作过程的手感编码非常重要,现在虽然有很多编码,但是编码过程还跟什么有关系?跟手的构型有关,构型也是影响编码的一个非常重要的因素。
我们团队研究了这样几项工作,通过先进动态系统的方式实现对触觉的建模过程,什么东西是具有不变性的?只有不变的东西才能变,先进动态系统当中观测数据具有不变性,这种观测数据很难进行编码。因此,我们提出一种办法,通过核函数的办法进行进一步的研究。
前文提到,编码不只是和接触面有关,还和手的构型有关,那么该如何考虑构型的结构信息?对此,我们提出了联合编码的方法。
机器人身上装载了很多的传感器,那么我们能不能做到面向任何场景,对于有些传感器不用的时候将其关掉,需要用的时候再打开?尤其是在航天领域中,包括现在我国发射的承担月球表面巡视探测任务的嫦娥四号月球车,特别需要这种技术,能不能根据场景和任务选择不同的传感器?此外,我们还看到不同的传感器,比如视觉传感器跟视角有关,哪个角度好?触觉和动作行为有关系,雷达和扫描方式有关系,能不能一下就确定最好的模态内行为?这是摆在我们面前非常重要的问题,如何来做这件事情?我们可以通过强化学习将它们结合在一起。
现在,还有一个更重要的问题,视觉和触觉如何进行融合?对于视觉和触觉的重要性,也许大家不是很清楚,我们可以通过两个例子进行说明。比如桌子上有两个矿泉水瓶,其中一个是空的,另一个里面装满了水,按照视觉表现来看它们非常接近,但是触觉是完全不一样的,通过触觉的显著性很容易对它们进行判别。同样,对于两个用相同材料做的玩具,从视觉上看完全不同,但它们的触觉却是相当接近的,我们通过视觉的显著性很容易判别它们。那么就存在这样一个问题:我们如何利用视觉和触觉的显著性实现对目标的识别,包括对物体材料特性的识别?对此,我们团队也提出了让视觉和触觉能够很好地进行融合的办法。
我们还要研究视觉的发育机理。机器人经常用到视觉、听觉和触觉这些关联部分,如何做到这些关联部分的联合学习?比如我们特别强调感知是为动作服务的,动作又会对感知产生作用,联合学习的过程是不是也需要发育和学习?这是未来机器人学习当中非常重要的部分。
面向灵巧操作的技能学习
对于当前机器人的发展,大家都希望如今的机器人能够像人类一样,哪怕像儿童一样能够从事非常灵巧操作的工作。那么现在的机器人能够做到怎样的程度呢?上文提到,我们用到了人的眼睛、手和大脑这种高度的协同,实现这样的机器人学习。目前,技能学习主要用到了两类方法,一种方法就是机器学习,比如大家经常看到的,给机器人放一段视频,视频内容展示机器人该如何去搭积木,机器人是怎么理解视频内容的呢?因为视频中给我们的信息主要有两个部分,一部分是视觉信息,另一部分是接触力信息,我们要把这个视频通过机器学习进行分段,清楚某个动作过程究竟包含哪几个动作,然后再和力的动作进行配对。我们可以通过深度学习进行学习,就是学习这个联合动作的序列。
由此我们可以看出,机器学习依赖于效用函数,较少依赖于人的参与。比如通过某个特征自动学习而不依赖于模型,但是缺少可解释性,具有很强的普适性。学过控制理论的人都知道,闭环控制就可以做技能学习,只要把理想的学习过程变成期望的行为,深入到闭环系统,然后通过闭环控制使得控制系统的输出跟踪期望的行为,这也是学习控制理论时经常用到的技能学习办法。我们必须知道整个操作过程系统模型是什么,而且还要调整参数,如果发现学得不太好,就要对这个参数进行调整,比较好的地方是具有比较强的可解释性。由此我们可以看到,机器学习和今天谈到的控制系统学习具有很强的互补性,这种互补性的结合就是强化学习。
如今,很多人在研究强化学习,主要通过机器人和环境的交互过程形成奖惩信号,做得好就奖励,做得不好就惩罚,通过奖惩信号指导学习。为什么我们要研究模仿学习和偏好学习?因为强化学习在很多情况下难以应用。比如我们要研究汽车在行驶过程中如何避障,飞机在空中飞行时如何战斗,对于这些情况,我们不好进行环境实验,所以要研究模仿学习和偏好学习。那么另一个问题又出现了,刚才讲到的奖惩和奖励机制难以和技能贯穿起来,所以有人认为我们能不能利用对这些技能操作很好的人,比如在乒乓球比赛中取得好成绩的人,对他们的行为进行学习不是更好吗?所以模仿学习已经可以引入强化学习当中。有些人某些工作做得特别好,如何把这个技能学会?这是未来技能学习非常重要的研究工作。
我们团队围绕着刚才谈到的传感器、人机交互进行人的意图理解研究,通过技能学习演示验证这个工作。我们做的第一项工作就是研究能不能让机器人弹钢琴,利用人的手指进行示教,通过训练集找到对应的动作。我们把这个工作引伸到倒水的技能学习,对此还研制了数据手套,里面有36个关键传感器,能够检测人在操作过程当中所有关节的角度和压力信息,通过它来构造数据集进行技能的学习。
基于主动模仿的学习是目前技能学习非常重要的过程,就是把好的学习行为学习下来。这引出了一个很重要的问题,就是传统的示教特别依赖于示教者的动作行为,学习者的学习是非常繁琐也是非常被动的,我们该如何克服这种难题?为了简化这一过程,我们做了一项工作,就是对于示教者和模仿者来说,如果行为的概率特性一致的话,这个学习就是成功的,如果不一致,这个学习就是失败的。那么如何利用这个差别指导学习?这是数学上的一个问题。最近我们进行了相关的研究,认为可以把概率差别归结为动力学的测度差别,通过这种优化就能够做到基于主动模仿的学习。
机器人在装配过程中拧螺丝是非常重要的环节,我们可以说学得好与不好影响不是很大,但是拧螺丝这个行为是非常重要的,能不能把这种学习的机制做好至关重要。通过这种机制,首先让机器人进行学习,然后让机器人操作各种各样的行为,紧接着让操作比较好的老师判别一下机器人哪里学得比较好,哪里还存在一些问题,操作机制还有哪些问题没有教给机器人,再通过机械学习和人的示教对比学习弥补这个差别,从而让拧螺丝的过程成为学习能力的过程。
我们曾做过这样一项研究工作,四足机器人往往是漫无目的地移动,公安部希望它能够沿着某种气味寻找东西,按照这个方向进行相关的学习。为此我们建立了一个产生库,通过专家自动产生这个库,并且通過差别产生的轨迹做了一个软件系统,并设计了各种场景来展示这种能力,获得了很好的性能表现。
展望未来
现在很多人在研究云端智能,其实云端智能在未来的技能学习中非常重要。技能学习需要通过各种传感器获得信息,包括视觉、听觉、触觉、穿戴设备等,也可以通过云端和网上信息找到各种类似的操作行为。这些数据应该怎么处理?如何把这些多模态的信息分解在一个又一个动作中,并且形成多模态的配对?这就涉及到技能的分割和解析的过程,通过这样两个过程我们就可以进行操作技能的表达,这种知识表达是分层的,然后在这种基础上做到技能的学习和技能的增强,就可以做各种各样的事情了。我们国家3C行业当中一个最大的问题就是非标准件的安装和插件的操作,因为标准件有大有小、各种各样,宽的线,窄的线,机器人有没有这种能力进行这样的操作,知道宽的线可以插,短的线也可以插,这就需要技能迁移和增强学习。
大家都知道,我们国家3C行业目前的产值是15万亿元,而我们国家的GDP是90万亿元,很多标准件装配都可以用机械完成的,但是非标准件和插件现在往往是通过人工去做的。如果我们把这部分用机器人代替,可以把工作效率提高200%以上。做人工智能一定要做有用的人工智能,机器人一定要落地,我们特别希望这项技术能够改变我们国家3C行业制造的现状,造福我们国家的智能制造发展。
(本文根据清华大学教授、清华大学人工智能研究院智能机器人研究中心主任孙富春在“2019世界机器人大会”现场演讲整理而成,未经演讲人审阅)