边策 鱼羊 发自 凹非寺
量子位 报道 | 公众号 QbitAIOpenAI官方为这只AI机械手激动了:
“机器人的前所未有之境,就算人类也难以做到。”
说的啥新进展?单手玩魔方。
相比之下,人类新手能稳稳拿住魔方都不容易:
而且不仅玩得转魔方,捆绑Play也不在话下。
没人告诉它该怎么调配手指,还需要克服人类强行使的各种绊子,但AI机械手可以随时调整不断学习,最后最短时间内完成魔方翻转。
这就是OpenAI用强化学习最新训练出的AI系统。
并且,还是单手操作。
视频一经放出,迅速蹿红推特,揽下6000+点赞,网友惊呼:
AI玩魔方都玩得比我好了!
这事儿不简单且不说量子位这样的手残党,单手恢复魔方,对于普通人类而言也并不简单。
不信的话,随便拿起身边一个直径6厘米的块状物体,单手转起来。小心拿稳了,砸到脚还挺疼的(别问我怎么知道的)。
而对机械手来说,问题就更复杂了。
机械手远没有人手这样灵活,抓取力度控制也挑战不小。
就算是“媲美”人手,能使用的场景或泛化迁移能力,也道阻且长。
比如这位MIT工程师,就吃过大亏:
△生活大爆炸而更大的挑战,是现实世界中复杂的物理参数。
在玩魔方这个任务当中,机械手跟魔方之间的摩擦力、弹性和其他动力学因素都很难测量,更别说精细建模了。
并且,在模拟仿真环境中训练出来的AI,面对复杂多变的真实物理世界,是否能保持鲁棒,也是一个大问题。
比如说带个橡胶手套,摩擦力就变了:
两个手指被绑住,难度也会与模拟训练时大大不同:
甚至可能会跑出来一只长颈鹿,试图叼走魔方:
如此种种,使得sim2real(从模拟环境到现实环境)变得非常困难,仅凭过去的域随机化(Domain Randomization)算法(见注)已经不足以解决。
注:域随机化(Domain Randomization)由OpenAI提出,能够创建具有随机属性的各种模拟环境,并训练可在任何环境中工作的模型。
论文地址:https://arxiv.org/abs/1710.06537
所以机械手玩转魔方,真真是一次力与美的结合、灵与器的共舞。
而OpenAI的核心秘诀,在于进一步开发了一种新的算法,称为自动域随机化(ADR)。
当然,机械手的构造也来头不小。
先看神奇之手的硬件结构OpenAI的机械手,装载一个巨大的支架中。
在这个支架里,包含一个PhaseSpace运动捕捉系统、一个RGB相机。机械手的每个指尖上都有一个LED灯,系统就是通过这一组灯来捕捉机械手的动作。
操纵魔方的机器人手来自影子机器人公司(Shadow Robot Company),基于旗下 Dextrous E系列机械手打造。
这原本是一家想做双足机器人的公司,因为发现自己的水平远不及本田已经造出的机器人,于是弃脚从手,转而去开发机械手,并造出了世界上第一台拟真机械手。
△ 影子机器人公司开发的机器人具体结构上,Dextrous有20个可驱动的关节:中指和无名指各有3个驱动关节和1个非驱动关节,小指和拇指有5个驱动关节,以及一个有2个驱动关节的腕部。
为了“玩转魔方”,OpenAI和影子机器人公司,还合作提高了机器手组件的坚固性和可靠性。增加了手的握力,并减小了肌腱应力,并且调整了关节之间的交联,最大程度地减小了扭矩的限制。
与人类“十指连心”类似,他们除了在机械手上安装了位置和力传感器,还在指尖上安装了超灵敏的触摸传感器,以达到接近人手的效果。
实验中用到的魔方也不是普通的魔方。
不少米粉或许也会觉得眼熟,它是小米的计客超级魔方(GiiKER cube),内部有可感应方向的蓝牙与运动传感器。
计客超级魔方具有90度的面角分辨率,但OpenAI团队对其进行了修改,将精度提高到了大约5度。
再看软件算法功力:从模拟到现实虽然我们看到拧魔方是在实际的机械手上发生的,但实际上这一过程主要发生在模拟软件中,然后将AI从模拟中学习到的东西转移到了现实世界中。
OpenAI在机械手上用到了两大法宝:
一个是曾经打败Dota 2世界冠军团队的AI系统OpenAI Five;
另一个是自动域随机化(ADR,Automatic Domain Randomization)。
ADR会不断在仿真中生成越来越困难的环境,使系统摆脱精确模型对现实的束缚,从而使模拟环境中的神经网络能够迁移到真实世界。
这里提到的环境中的随机化是什么呢?
其中包括模拟器考虑到的物理特性(如几何形状、摩擦和重力),以及模拟器未能考虑到的一些物理效应。
比如魔方的大小,就是随机化参数之一。
△ADR在魔方大小上的应用
此外,还有照明条件之类的视觉元素、相机位置和角度、物体的材料和外观、背景纹理甚至是渲染图像的后处理效果。
研究人员表示,这项研究的重要意义在于:一旦弄清楚如何在仿真中训练这些模型,就可以有效地获取无穷数据,然后将模型迁移到机器人上,在现实世界中利用它们。
既然是用强化学习,必然会涉及到奖励机制,OpenAI团队在这个实验中定义了三个:
系统当前状态与目标状态之间的差异;
达成目标时给予奖励;
每当手中魔方掉落时就受到惩罚。
为了系统测试每次翻转魔方成功时间,OpenAI还测量了神经网络在不同扰动下的结果,比如重置网络的内存、重置力或断开关节等等。
而且这种“训练”以虚拟仿真为主,能够在受控的环境中平均进行1万多次试验。
最初,随着神经网络成功实现更多翻转,成功的时间会不断缩短,神经网络学会了适应。
从结果上来看,机械手成功翻转魔方的时间,会越来越短。
即便添加新干扰、环境有变化,机械手也会调整策略,重新学习后迅速达到最佳基准。
所以这支神奇之手,现在究竟达到啥水平?
最最最难情况下——一方面是需要旋转26次魔方才能完成,另一方面加入最大外部扰动,机械手成功率20%。
但如果是旋转15次就能完成魔方复原的“平均情况”,机械手成功率就能稳定在60%。
值得一提的是,这也是人类在该方向上的新尝试、新纪录,打开了新前景。
腾讯AI也挑战过魔方OpenAI挑战魔方,倒不是突发奇想。
从去年开始,他们就已经在推进前序工作,当时开发过一个灵巧的机械手系统,叫做Dactyl。
不过那时OpenAI用它“盘”木块,尺寸比现在的魔方小一些,而且也没有转动部件。
只要告诉机械手目标,不必告诉它具体操作步骤,它就能给你把木块转到指定的方向上,而且这套系统也是是在模拟器里训练出来的强化学习算法。
除了OpenAI,还有来自中国的玩家。
最知名的是腾讯。今年年初,腾讯AI与香港中文大学合作,进行了一项模拟实验。
实验有点类似OpenAI的“软件”部分:在虚拟环境中,用一只机械手解决魔方问题。
在腾讯其后发表的论文结果里:1400次试验过程中平均成功率达到了90.3%,而对AI模型再训练3万次,成功率会提高到95.2%。
而现在OpenAI更进一步。
在不牺牲准确性和鲁棒性的情况下,成功地将模拟实验转移到了现实世界的机械手上。
比喻来说,就是腾讯AI在这件事上核心练了口诀和心法,而OpenAI现在把拳脚也练完了,软硬结合,下一步会更有想象空间。
OpenAI自己也坦承,这只神奇之手,会推动通用机器人。
费钱费电:64个V100一开始也介绍过,这项研究结果一发布,就引起网络热议。
这样一只灵活又机智的机械手,首先让网友纷纷联想到了终结者。
有网友说:
它让我感到鹅妹子嘤/瑟瑟发抖的,是它用一种让人感觉既熟悉又完全陌生的方式,在执行人类活动。
不过,比起这些,OpenAI这次的训练投入,更是每一秒都在让经费熊熊燃烧。
他们使用了64个V100和920台32核CPU的主机,并且连续训练了好几个月,这样的训练成本,就够让人瑟瑟发抖的了。
如果有人开心,那也是英伟达老板黄教主。
所以你又怎么看这项酷酷的新进展?
欢迎说说你的想法。
传送门官方博客:
https://openai.com/blog/solving-rubiks-cube/
论文地址:
https://d4mucfpksywv.cloudfront.net/papers/solving-rubiks-cube.pdf
腾讯与港中大相关研究:
https://arxiv.org/pdf/1907.11388.pd
— 完 —
活动推荐 | 品玩2019科技创新者大会
2019年10月25日,PingWest品玩2019科技创新者大会 - 杭州站。阿里钉钉、阿里平头哥、蘑菇街、云浪生、驭势科技、VIPKID等都技术大咖都将来到现场,分享产业实战案例。免费票限时预订中,点击小程序即可报名。
量子位 QbitAI · 头条号签约作者
?'?' ? 追踪AI技术和产品新动态
喜欢就点「好看」吧 !