发表时间:CoRL 2017
论文链接:https://readpaper.com/pdf-annotate/note?pdfId=4667206488817680385¬eId=2408726470680795136
作者单位:University of California, Berkeley
Motivation:为了使机器人成为可以执行广泛工作的通才,它必须能够在复杂的非结构化环境中快速高效地获取各种各样的技能。深度神经网络等大容量模型可以使机器人代表复杂的技能,但从头开始学习每个技能变得不可行。
解决方法:在这项工作中,我们提出了一种元模仿学习方法,使机器人能够更有效地学习如何学习,使其能够仅从单个演示中获取新的技能(a new object into a new container from a single demonstration)。与之前关于一次性模仿的方法不同,我们的方法可以扩展到原始像素输入,并且需要来自明显更少的先前任务的数据来有效地学习新技能。
实现方式:combine meta-learning with imitation learning
与之前将任务区分 或演示 作为上下文策略的输入的方法不同,我们的方法学习了一个参数化策略,该策略可以通过梯度更新来适应不同的任务,有效地学习模仿学习。
通过跨任务的适应训练,元学习有效地将整个任务视为数据点。每个单独任务可用的数据量相对较小。在机器人的背景下,这正是我们想要开发通才机器人所需要的——能够为机器人应该执行的每个新任务提供少量监督的能力。a policy π that maps observations o to predicted actions a。
在元训练期间,每个元优化步骤包含以下内容:采样一批任务,每个任务采样两个演示。使用其中一个演示,使用公式 2 的梯度下降为每个任务 Ti 计算 θ′i。然后,使用每个任务的第二个演示通过使用等式 1 和等式 2 中的损失来计算元目标的梯度。最后,根据元目标的梯度更新 θ。实际上,一对演示用作训练验证对。(也就是说,并不是但不纯意义上的one-shot,实际上是two-shot)
在元训练结束时,从 p(T) 中采样新任务,并通过策略从一个演示中学习后的性能来衡量元性能。用于元测试的任务在元训练期间被保留。(也就是说,元测试使用的是元训练过程中从one demonstration 学习到的知识。)
在元测试时,对新任务 T 进行采样,为该任务提供一个演示,并更新模型以获得该任务的策略。在元测试期间,新任务可能涉及新的目标或操纵新的、以前看不见的对象。
-
Two-Head Architecture:在标准的MAML框架中,在“前梯度更新”和“后梯度更新”中(没搞懂这两个的区别,好像是类似MAML外循环和内循环),使用的网络是相同的,都输出的是action,并且都使用标准的loss function。本文中,我们做出了这样的尝试:“前梯度更新”和“后梯度更新”依旧共用前面所有的架构,只是输出动作之前的最后一个隐藏层不再共享,而是一人一个隐藏层,称之为两个不同的“head”。
-
a bias transformation:我们发现提高元学习性能的一种特殊修改是将参数向量连接到突触后激活的隐藏层,这导致我们将其称为bias transformation。变换偏差的梯度更新可以通过W2和z的值更直接地控制,其值不直接影响网络中其他参数的梯度。总之,偏差变换增加了梯度的表征能力,而不影响网络本身的表征能力。
实验:one-shot imitation in three experimental domains
尝试了好多种policy:
-
random policy: A policy that outputs random actions from a standard normal distribution.
-
contextual policy: A feedforward policy, which takes as input the final image of the demonstration, to indicate the goal of the task, and the current image, and outputs the current action.
-
LSTM: A recurrent neural network which ingests the provided demonstration and the current observation, and outputs the current action, as proposed by Duan et al. [5].
-
LSTM+attention: A recurrent neural network using the attention architecture proposed by Duan et al. [5]. This method is only applicable to non-vision tasks.
Simulated Pushing:We designed the pushing environment starting from the OpenAI Gym PusherEnv.We see that the LSTM approach has difficulty learning without the expert actions.
Real-World Placing:a 7-DoF PR2 robot arm,每个演示包括摄像机视频、末端执行器姿态序列和动作序列——末端执行器线速度和角速度。
结论:基于梯度的元学习使得我们的方法在元训练所需的演示数量(只需要1-shot)方面更有效。