人类是如何掌握这么多技能的?好吧,我们一开始并不是那样的,但是从婴儿期开始,我们通过自我监督发现并练习了越来越复杂的技能。但这种自我监控不是随机的——儿童发展文献表明,婴儿通过互动和感官反馈,利用他们以前的经验来发展一种可供性的感觉(也称为移动性、吸吮、抓握和消化),翻译为功能性可供性、假定的特征、直观的功能、预设的用途、可操作的提示、启示等,指的是事物的一种属性或特性,可以提示它可以帮助人们做什么)进行定向探索。这种类型的定向探索允许婴儿学习在给定环境中做什么和如何做。那么,在机器人学习系统中,我们是否也可以实例化一个类似于可供性导向探索的策略呢?如下图所示。在左侧,我们首先收集了机器人执行各种任务的视频,例如打开和关闭抽屉、抓取和移动物体。在右侧,我们放置了一个机器人从未见过的盖子。给机器人一小段时间来熟悉新物体,之后它将获得目标图像,并负责将场景与该图像匹配。机器人是如何在没有任何外部监督的情况下快速学会操纵环境并抓住盖子的?为此,我们面临多项挑战。当机器人被置于新环境中时,它必须能够使用其先验知识来思考环境可能提供的潜在有用行为。然后机器人必须能够实际练习这些行为。为了在新环境中提高自己,机器人必须能够在没有外部奖励的情况下以某种方式评估自己的成功。如果我们能够可靠地克服这些挑战,它可能会打开通往强大循环的大门。在这个循环中,我们的智能体利用以前的经验收集高质量的交互数据,然后进一步增强他们以前的经验,不断提高他们的潜在效用!1.VAL:视觉运动功能可供性学习我们的方法,视觉运动功能可供性学习(VAL),解决了这些挑战。在VAL中,我们首先假设在各种环境中表现出可供性的机器人的先验数据集是可用的。此时,VAL进入离线阶段,使用此信息学习1)想象新环境中有用的可供性生成模型,2)有效探索这些可供性的强大离线策略,以及3)改进该政策自我评估措施。最后,VAL准备上线。代理被放置在一个新的环境中,现在可以使用这些学习到的特征进行自我监督的微调。整个框架如下图所示。然后我们深入探讨离线和在线阶段的技术细节。2.VAL:离线阶段给定一个先验数据集显示各种环境的可供性,VAL通过三个离线步骤消化这些信息:用于处理高维真实世界数据的表示学习,在未知环境中实现具有自我监督练习的可供性学习获得高性能的初始策略以加速行为学习中的在线学习效率。首先,VAL使用矢量量化变分自动编码器(VQVAE)学习此数据的低维表示。这个过程将我们的48x48x3图像压缩到一个144维的潜在空间中。这个潜在空间中的距离是有意义的,为我们自我评估成功的关键机制铺平了道路。给定当前图像s和目标图像g,我们将它们编码到潜在空间中并设置它们可以获得奖励的阈值距离。随后,我们还将使用此表示作为潜在空间的策略和Q函数。接下来,VAL通过在潜在空间中训练PixelCNN来学习可供性模型,以了解以环境图像为条件的可达状态的分布。这是通过最大化数据的可能性p(sn|s0)来完成的。我们使用这种可供性模型进行目标的定向探索和重新标记。示能模型如右图所示。在此图的左下角,我们看到条件图像包含一个罐子,右上角的解码潜在目标显示盖子位于不同的位置。这些连贯的目标将允许机器人进行连贯的探索。最后在离线阶段,VAL必须从离线数据中学习行为,然后可以通过额外的在线交互式数据收集来改进。为实现这一目标,我们使用加权强化学习算法(AdvantageWeightedActorCritic)在先验数据集上训练目标条件策略,该算法专为离线训练和在线微调而设计。3.VAL:在线阶段现在,当VAL被置于一个看不见的环境中时,它会使用其先验知识来想象有用的可供性的视觉表示,通过尝试实现这些可供性数据来收集有用的交互,并使用其自我评估指标更新其参数,一路重复整个过程。在这个真实的例子中,在左边我们看到了环境的初始状态,它提供了打开抽屉和其他任务的功能。在步骤1中,可供性模型对潜在目标进行采样。通过解码目标(使用VQVAE解码器,它在RL中从未实际使用过,因为我们完全在潜在空间中操作),我们可以看到可供性正在打开抽屉。在第2步中,我们使用具有抽样目标的训练策略。我们看到它成功地打开了抽屉,而实际上它拉得太用力了,直接把抽屉拉了出来。但这为RL算法提供了一个非常有用的交互,可以进一步微调和完善它们的策略。在线微调完成后,我们现在可以评估机器人在每个环境中实现相应未见目标图像的能力。4.真实环境评估我们在五个真实测试环境中评估我们的方法,并评估VAL在五分钟无监督微调前后执行环境提供的特定任务的能力。每个测试环境包含至少一个看不见的交互对象和两个随机采样的干扰对象。例如,当训练数据中有打开和关闭抽屉时,新抽屉有看不见的把手。对于每个测试,我们从一个离线训练的策略开始,它不会每次都一致地执行任务。然后,我们使用我们的可供性模型对目标进行采样以收集更多经验。最后,我们评估了经过微调的策略,它始终如一地完成了任务。我们发现,在这些设置中,VAL在离线训练后始终表现出有效的零样本泛化,随后通过面向可供性的微调方案快速改进。与此同时,以前的自我监督方法在这些新环境中几乎没有改进。这些令人兴奋的结果表明,像VAL这样的方法有可能成功地操纵机器人,远远超出他们现在习惯的有限工厂设置。我们的数据集包含2,500个高质量的机器人交互轨迹,涵盖20个抽屉把手、20个锅把手、60个玩具和60个干扰器,现已在我们的网站上公开提供。数据集地址:https://sites.google.com/view/val-rl/datasets5.模拟评估和代码为了进一步分析,我们在程序生成的多任务环境中运行VAL,具有视觉和动态变化。场景中的对象连同它们的颜色和位置是随机的。灵媒可以使用把手打开抽屉、抓取物品并移动它们、按下按钮打开隔间等等。机器人被赋予包含各种环境的先验数据集,并根据其在以下测试环境中的微调能力进行评估。同样,给定一个离策略数据集,我们的方法可以快速学习高级操作技能,包括抓取物体、打开抽屉、移动物体以及在各种新物体上使用工具。环境和算法代码都是公开的,请查看我们的代码库。代码地址:https://github.com/anair13/rlkit/tree/master/examples/val6,未来的工作就像计算机视觉和自然语言处理等领域的深度学习一样,由大数据集和泛化驱动,机器人可能需要从类似大小的数据中学习。因此,离线强化学习的改进对于使机器人能够利用大型先验数据集至关重要。此外,这些离线策略需要快速非自主微调或完全自主微调才能使实际部署变得可行。最后,一旦机器人独立运行,我们就会有源源不断的新数据,这凸显了终身学习算法的重要性和价值。
