横扫6个SOTA,谷歌行为克隆算法登CoRL顶会,机器人干活10倍速( 二 )


横扫6个SOTA,谷歌行为克隆算法登CoRL顶会,机器人干活10倍速
文章图片
上图所示为隐式模型如何适应不连续性的动画——在这种情况下 , 训练隐式模型来适应一个步长(Heaviside)函数 。 左:拟合黑色训练点的2D图 , 颜色代表能量值(蓝色低 , 棕色高) 。 中间:训练期间能量模型的3D图 。 右图:训练损失曲线 。
一旦经过训练 , GoogleAI发现隐式模型(implicitmodel)特别擅长精确地建模先前显式模型(explicitmodel)难以解决的不连续性问题 , 从而产生新的策略 , 能够在不同行为之间果断切换 。
横扫6个SOTA,谷歌行为克隆算法登CoRL顶会,机器人干活10倍速
文章图片
为什么传统的显式模型(explicitmodel)在这个问题上表现不佳呢?
现代神经网络几乎总是使用连续激活函数——例如 , Tensorflow、Jax和PyTorch都只提供连续激活函数 。
在试图拟合不连续数据时 , 用这些激活函数构建的显式网络无法准确表示 , 因此必须在数据点之间绘制连续曲线 。 隐式模型(implicitmodel)的一个关键优势是 , 即使网络本身仅由连续层组成 , 也能够表示出尖锐的不连续性 。
横扫6个SOTA,谷歌行为克隆算法登CoRL顶会,机器人干活10倍速
文章图片
与显式模型(底部)相比 , 隐式模型(顶部)拟合不连续函数的示例 。 红色突出显示的插图显示 , 隐式模型表示不连续性(a)和(b) , 而显式模型必须在不连续性之间画出连续的线(c)和(d)
GoogleAI在这个方面建立了理论基础 , 提出了一个普遍近似的概念 , 证明了隐式神经网络可以表示的函数类别 , 这将有助于证明和指导未来的研究 。
GoogleAI最初尝试这种方法时面临的一个挑战是「高动作维度」 , 这意味着机器人必须决定如何同时协调多个电机 。 为了扩展到高作用维度 , GoogleAI使用自回归模型或朗之万动力学 。
全新SOTA
在实验中 , GoogleAI发现ImplicitBC在现实世界中表现得特别好 , 在毫米精度的滑块滑动及插槽任务上比基线的显式行为克隆(explicitBC)模型好10倍 。
在此任务中 , 隐式模型(implicitmodel)在将滑块滑动到位之前会进行几次连续的精确调整 。
横扫6个SOTA,谷歌行为克隆算法登CoRL顶会,机器人干活10倍速
文章图片
将滑块精确地插入插槽的示例任务 。 这些是隐式策略的自主行为 , 仅使用图像(来自所示的摄像机)作为输入
这项任务有多种决定性因素:由于块的对称性和推动动作的任意顺序 , 有许多不同的可能解决方案 。
机器人需要决定滑块何时已经被推动足够远 , 然后需要切换到向不同方向滑动 。 这一过程是不连续的 , 所以 , 连续控制型机器人在这一任务上会表现得十分优柔寡断 。
横扫6个SOTA,谷歌行为克隆算法登CoRL顶会,机器人干活10倍速
文章图片
完成这项任务的不同策略 。 这些是来自隐式策略的自主行为 , 仅使用图像作为输入
在另一个具有挑战性的任务中 , 机器人需要按颜色对滑块进行筛选 , 由于挑选顺序是很随意的 , 这就产生了大量可能的解决方案 。
横扫6个SOTA,谷歌行为克隆算法登CoRL顶会,机器人干活10倍速
文章图片
颇具挑战性的连续筛选任务中显式BC模型的表现(4倍速度)
在这项任务中 , 显式模型(explicitmodel)还是表现得很拿不准 , 而隐式模型(implicitmodel)表现得更好 。
横扫6个SOTA,谷歌行为克隆算法登CoRL顶会,机器人干活10倍速
文章图片
颇具挑战性的连续筛选任务中隐式BC模型表现(4倍速度)
而且在GoogleAI的测试中 , ImplicitBC在面临干扰时 , 尽管模型从未见过人类的手 , 也依然可以表现出强大的适应能力 。