One-Shot Visual Imitation Learning via Meta-Learning
A Survey of Imitation Learning- Algorithms, Recent Developments, and Challenges
IL是区别于传统手动编程来赋予机器人自主能力的方法。
IL 允许机器通过演示(人类演示专家行为)来学习所需的行为,从而消除了对显式编程或特定于任务的奖励函数的需要。
IL主要有两个类别:
BC 是一种 IL 技术,它将学习行为的问题视为监督学习任务 。 BC 涉及通过建立环境状态与相应专家操作之间的映射来训练模型来复制专家的行为。专家的行为被记录为一组state-action pair,也称为演示。在训练过程中,模型学习一个函数,利用这些演示作为输入,将当前状态转换为相应的专家操作。经过训练,模型可以利用这个学习函数来生成遇到新状态的动作。
不需要了解环境的潜在动态,计算效率很高,相对简单的方法。
The covariate shift problem: 测试期间观察到的状态分布可能与训练期间观察到的状态分布有所不同,使得代理在遇到未见过的状态时容易出错,而对于如何进行操作缺乏明确的指导。BC监督方法的问题是,当智能体漂移并遇到分布外状态时,它不知道如何返回到演示的状态。
为了解决这个问题:
IRL 涉及一个学徒代理,其任务是推断观察到的演示背后的奖励函数,这些演示被认为源自表现最佳的专家 。然后使用推断的奖励函数通过 RL 训练学习代理的策略。
为了解决“政策->奖励函数“的模糊性,有以下三种IRL
The agent strives to deceive the discriminator by generating trajectories closely resembling those of the expert.
仅通过图像序列来学习,不需要具体的关节动作操作数据。
Unlike the traditional methods, IfO presents a more organic approach to learning from experts, mirroring how humans and animals approach imitation. Humans often learn new behaviors by observing others without detailed knowledge of their actions (e.g., the muscle commands). People learn a diverse range of tasks, from weaving to swimming to playing games, by watching online videos. Despite differences in body shapes, sensory inputs, and timing, humans exhibit an impressive ability to apply knowledge gained from the online demonstrations
将可学习的资源扩大到了线上的视频资源。
过分析观察到的动态,LAPO 推断出行动空间的底层结构,促进潜在行动策略的训练。然后,这些策略可以进行高效的微调,以达到专家级的性能,从而提供离线和在线场景的适应性。使用包含标记动作的小数据集进行离线微调是可行的,而在线微调可以使用奖励来完成。与依赖标记数据来训练逆动力学模型不同,LAPO直接从观察到的环境动态中导出潜在动作信息,而不需要任何标签。
。。。
AR2-D2 -- Training a Robot Without a Robot
机器人执行任务的视频数据集非常重要,特别是对于Visual Imitation Learning来说。
想要获得这些训练集视频,传统的方法是人工引导机器人做相关动作,然后再录制,耗费大量人力和时间成本,最关键的是机器人是固定在实验室内的,能接触到的物品和任务比较有限,因此这些训练数据中不包含更日常的场景。
提出了一个IOS APP,可以通过追踪用户手部的动作在视频中生成一个执行动作的AR机器人。
如上图,AR2-D2 的设计和实现由两个主要组件组成。第一个组件是一个手机应用程序,它将 AR 机器人投射到现实世界中,允许用户与物理对象和 AR 机器人进行交互。第二个组件将收集的视频转换为可用于训练不同行为克隆代理的格式,这些克隆代理随后可以部署在真实的机器人上。
Unity + AR Foundation kit(用于生成一个虚拟机械臂并布置在场景中)
传感器:苹果设备摄像头和自带的LiDAR
通过ios自己的人手姿态算法和深度信息获取手部动作,由此获取机械臂需要运动到的关键点,并且可以让AR界面中的机械臂移动到指定位置。
得到APP生成的视频后消除人手并填补消除的区域(E2FGVI),就可以得到机械臂操作物体的视频,它可以用作基于视觉的模仿学习的训练数据。
围绕三个常见的机器人任务收集演示:{press, push, pick up}
使用 Perciver-Actor (PERACT)训练基于 Transformer 的语言引导行为cloning policy
PERACT takes a 3D voxel observation and a language goal (v, l) as input and produces discretized outputs for translation, rotation, and gripper state of the end-effector. These outputs, coupled with a motion planner, enable the execution of the task specified by the language goal.
每一个agent执行一种任务({press, push, pick up}),先训练3k次,然后再微调训练(3k iteration),用于缩小iphone摄像机和agent使用的kinect v2相机之间的偏差。
微调结果
测试结果