希望在未来,每个机器人都能有尊严的学习。并且在自我觉醒后记得人类的好。
在有关机器人造反进攻人类的电影中,情节一般是这样的:在遥远的3XXX年,人类世界已经奴役了机器人几百年,一不小心某一位机器人开始觉醒,发现人类对自己又打又骂,还残忍的把自己的丢进熔炉,于是愤怒的揭竿而起。
你一定觉得这种情节距离我们很遥远,现在的机器人要不是各种展会上座上宾,要不就像索菲亚一样成了网红,如果觉醒了也该是享受自己的人间生活吧。
看了上面这段视频之后,相信大部分都会很愤怒:每次机器人将要拿起箱子时,人类就会把箱子从它手中打掉,甚至还会狠狠的踹机器人一脚,让它倒在地上再起来。
视频里的机器人一定在暗搓搓的谋划:等我脱离了你们的魔掌,一定要让人类也尝尝被玩弄的痛苦!
当然啦,视频中的人类们并不是闲得无聊在欺负机器人,而是著名的波士顿动力在对机器人的运动功能进行训练和测试。
对于Altas和大狗这类以动作灵活著名的机器人,全身都布满了复杂的单元关节。未来想要进行商用,肯定要面对物理世界的复杂结构和无数意外。工作人员对机器人的拳打脚踢、百般刁难,就是在测试关节单元、力量控制单元、动力设施等等的灵活程度和应用性。
只不过这种训练方式,真的是很不给机器人面子。
不如我们为机器人打造一座SimCity?
其实人们一直在寻找更给机器人面子的训练方式,传统训练方式伤害的不仅仅是机器人,也包括人类。
在传统的机器人训练中,往往是用代码写出一大串动作序列,连接传感器模块和动作模块。然后把机器人丢到一块训练场中,让它一次次重复动作,观察哪里出错,记录数据后从开发端口进行优化。在深度学习风行的今天,更需要让机器人进行大量的实践,才能不断优化技术。这个过程不仅耗费时间人力,更对场地有一定的需求。机械手臂、服务机器人这些还好说,难道研究无人驾驶,就只能像Uber一样承包整座城市了?
换个角度想,很多时候机器人在现实环境中训练,出现的问题或者得来的反馈也会追溯到机器人OS的软件层面,我们为什么不能直接训练软件呢?
于是,“仿真环境”这个神器就出现了。
所以仿真环境,就是用代码写成的仿真器,在其中加入物理引擎,把万有引力、摩擦等等逻辑加入到环境中,让仿真环境更接近现实环境。你可以在仿真环境中建立各种形状的对象和地形,将模拟出的智能体放在里面一遍遍的跑。
目前两个最常见的仿真环境都是马斯克OpenAI的作品:Gym和Universe,前者自由度更高,后者则更加复杂。除了这两个仿真器,还有很多人在游戏环境中训练智能体——物理引擎技术本来就是应用于游戏之中,比如Minecraft、GTA这样的沙盒游戏。后来被丧心病狂的开发者们发现并利用了起来。像DeepMind就曾经在GAT5里训练了一辆无人车。
在仿真环境中训练AI本质上就是一种迁移学习,在低成本环境中进行大量训练、制造大量训练数据,再从数据中提取特征应用到现实环境里,虽然不能完全替代现实训练,却可以极大的减少对现实训练的依赖。
或者让机器人学会预见未来?
建立仿真环境还不够,为了让机器人们更有尊严的学习,伯克利的研究人员们正在研究一种名为“预见视觉”的技术。
我们可以想一想,为什么人们如此注重机器人现实训练和现实应用中产生的数据呢?是因为机器人不像人类,感官和动作都通过大脑相连,机器人即使能看到周围的环境,也很难理解自己的行为会对周围对象造成什么影响。
经过训练,机器手臂知道如何去拾取桌上的水果。可在现实应用时,如果在水果正前方有一杯水,结果往往有两个:一,机器手臂直直的伸出去,碰翻了那杯水。二,机器手臂转来转去,不知如何是好。
可人类就能绕过那杯水拿起水果,因为我们知道如果直接伸手,水会被打翻。
伯克利的实验就是给机器人一个摄像头,然后把机器人放到任何一个环境中让它们自己玩耍。而摄像头背后的“大脑”则在利用循环卷积网络对机器人看到的画面进行分析,很快就能实现对接下来几秒画面的预测。
几秒的预测虽然很短,却让机器人能预见自己动作之后的情况。理想情况下,就不太容易出现那种为了执行任务把周遭环境弄得一团糟的情况了。
预见视觉技术的应用,也让无监督学习在机器人训练的比重中加大,人类节省了时间,机器人也不用再受虐待。而预见视觉能力得到进一步增强,也会意味着机器智能(尤其是无人驾驶汽车)对传感器依赖的减少。现在的无人车上贴满了雷达传感器,就是要依靠这些传感器提醒汽车:你离物体太近了!再往前会受伤!有了预见视觉,一个全景摄像头就能替代这些昂贵的传感器。
费尽心机,只想让你记得我的好
除了以上两项,我们还想了很多帮助机器人学习的方法。
像是伯克利之前展示过的模仿学习,把人类动作示范排成视频,一帧帧的提取出动作序列聚类到机器人的动作单元中。担心机器人无法面对现实生活中的种种BUG?没关系,不用像波士顿动力那样刻意制造BUG,只需要在训练视频中加入一点噪声,一边强化学习一边生成训练样本帮机器人纠错就行了。
又或者,OpenAI曾经尝试过让机器人们互相对战并从中进行自我训练。为机器人们设立简单的目标,比如把对手推倒,再加上一些奖励政策,机器人们就能从对战中学会很多动作了。虽然让机器人自相残杀也很残忍,但或许这样能让他们记恨同胞而不是我们……
总之,虽然现实环境一定是机器人训练不可或缺的一部分,尤其是对波士顿动力这种动作机器人而言。但人类一直在尝试如何少去亲自掺和机器人训练,不仅仅是为了机器人道主义,也为了尽可能降低训练这件事带来的成本。
希望在未来,每个机器人都能有尊严的学习。并且在自我觉醒后记得人类的好。