Task-Embedded Control Networks for Few-Shot Imitation Learning

news2024/12/23 8:09:57

发表时间:CoRL 2018 论文链接:https://readpaper.com/pdf-annotate/note?pdfId=4500197057754718210&noteId=2424798567891365120 作者单位:Imperial College London

Motivation:就像人类一样,机器人应该能够利用来自先前学习任务的知识,以便在新的和不熟悉的环境中快速学习新任务。尽管如此,大多数机器人学习方法都专注于从头开始学习单个任务,泛化概念有限,并且没有利用知识更有效地学习其他任务的方法。一种可能的解决方案是元学习(本文也是采用元学习的训练策略,划分了support setquery set),但许多相关方法在扩展到大量任务的能力方面受到限制,并在不忘记先前学习的任务的情况下学习进一步的任务。

解决方法:考虑到这一点,我们引入了任务嵌入式控制网络(包括两个部分,任务嵌入+控制,训练时候是一起优化的),该网络使用来自度量学习的思想来创建一个任务嵌入,该嵌入可以由机器人从一个或多个演示中学习新任务(每个s是一个或者多个任务的平均(类似类别原型))。

实现方式:演示的图像被嵌入到任务的紧凑表示中,可以组合起来创建一个句子sentence。然后将这句话扩展为从该任务的新配置的最新观察,然后以闭环方式通过控制网络发送。任务嵌入网络和控制网络都经过联合优化以产生丰富的embedding。

任务嵌入式控制网络 (TecNets) 以存在任务嵌入的想法为中心,其中相似(在视觉外观方面)的任务应该在空间上彼此接近,而不同的任务应该彼此远离(伪代码第九行损失函数的设计,有点对比学习的思想)。由一个任务嵌入网络和一个控制网络组成,该网络在给定单个或多个演示的情况下,联合训练输出动作以获得不可见任务的新变化。任务嵌入网络负责学习任务的紧凑表示,我们称之为sentence然后控制网络将这个(静态)句子以及当前对世界的观察来输出动作(也就是说s表示了由o到a的映射关系,通过(‖π(o, s) − a‖这个loss),而control network是想通过o和s再得到a(a = π(o, s)),s由test时候的observation得到。TecNets 对可以学习的任务数量没有严格的限制,并且在训练期间不容易忘记先前学习的任务(因为每个任务的s都是保存好的),或者之后。设置在测试期间仅期望演示者的观察结果(例如视觉),这使得它非常适合从人类演示中学习。

是如何不忘记先前学过的任务的? 通过把每一类任务映射成一个s(而每个s在训练的时候都见过,学到的policy π具有通过test时候的s和o映射到对应的a的能力).

我们可以在模拟中训练我们的元学习能力,然后在现实世界中部署,而不需要任何额外的训练:

Task-Embedded Control Networks:

  • A policy π for task T maps observations o to actions a, and we assume to have expert policies π∗ for multiple different tasks.(感觉应该是不同的任务共用一个 π,因为后面说的是universal policy π(o, s))

  • Corresponding example trajectories consist of a series of observations and actions: τ = [(o1, a1), . . . , (oT , aT }), and we define each task to be a set of such examples, T = {τ1, · · · , τK }.(每一个轨迹表示为 T = {τ1, · · · , τK }

  • TecNets aim to learn a universal policy π(o, s) that can be modulated by a sentence s, where s is a learned description of a task T(s 是 T = {τ1, · · · , τK }的平均,表示当前任务。也就是说,每一个轨迹被映射成s

  • The resulting universal policy π(o, s) should emulate the expert policy π∗ for task T.

Task Embedding:

A combined sentence sj ∈ RN is then computed for that task by taking the normalised mean of the example vectors:(s是同类t的平均),然后在通过上述loss去进行学习(联合优化,伪代码的9-11行)。

Control:

对于我们所有的实验,我们发现我们只需要取示例轨迹 τ 的第一帧和最后一帧来计算Task Embedding,因此丢弃中间的帧,从而产生 (width, height, 6) 的输入。(只用整个轨迹的第一帧和最后一帧)。

然后将来自任务嵌入网络的sentence平铺并逐通道连接到控制网络的输入(如图 2 所示),从而产生(宽度、高度、3+N)的输入图像,其中 N 表示sentence向量的长度。

也就是说s表示了由o到a的映射关系(‖π(o, s) − a‖),而control network是想通过o和s再得到a(a = π(o, s))

实验:two simulated experimental domains; a real-world robot arm

Simulated Reaching:Input to the control network consists of the (current) arm joint angles, end-effector position, and the 80 × 64 RGB image, whilst the taskembedding network receives only images (first and last).

Simulated Pushing:The control network input consists of a 125×125 RGB image and the robot joint angles, joint velocities, and end-effector pose, whilst the task-embedding network again receives images only.

Real-world:our TecNet is trained in simulation with a dataset of 1000 tasks with 12 examples per task.

结论:该方法的工作原理是通过嵌入网络学习任务的紧凑描述,该网络可用于条件控制网络来预测同一任务不同示例的动作。only visual information is available。与许多其他元学习方法不同,我们的方法能够在不忘记旧任务的情况下持续学习新任务,而不会失去其少样本能力。此外,我们证明了小样本能力可以在仿真中进行训练,然后部署在现实世界中。一旦部署,机器人就可以继续从单个或多个演示中学习新任务。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2083797.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

力扣经典题目之->另一颗树的子树(subRoot是否是root的子树)

一:题目 本题需要用到力扣经典题目之->相同的树(递归判断两颗二叉树是否相同)-CSDN博客 中的isSameTree,直接cv即可。 二:代码 三:解释 第一个函数: 力扣经典题目之->相…

模型 分形理论

系列文章 分享 模型,了解更多👉 模型_思维模型目录。自相似,无限细节。 1 分形理论的应用 1.1 字节跳动的分形创新增长引擎 字节跳动作为一家全球领先的科技公司,其快速的发展和创新能力在业界引起了广泛关注。公司通过分形创新…

大数据-105 Spark GraphX 基本概述 与 架构基础 概念详解 核心数据结构

点一下关注吧!!!非常感谢!!持续更新!!! 目前已经更新到了: Hadoop(已更完)HDFS(已更完)MapReduce(已更完&am…

使用myAGV、Jetson Nano主板和3D摄像头,实现了RTAB-Map的三维建图功能!

引言 在现代机器人技术中,高精度的环境感知与建图是实现自主导航的关键。本文将展示如何使用myAGV Jetson Nano移动平台搭载Jetson Nano BO1主板,结合RTAB-Map和3D相机,实现更加立体和细致的环境建图。myAGV Jetson Nano具备SLAM雷达导航功能…

es的简易dsl语句

数据模式为文档,_doc格式数据,也就是json 数据 es根据_id查询数据 GET /index_name/_doc/document_id es根据_id删除数据 DELETE /index_name/_doc/document_id es查询mapping结构 GET /index_name/_mappings es查询index下所有数据(突破100…

9、LLaMA-Factory项目微调介绍

1、LLaMA Factory 介绍 LLaMA Factory是一个在GitHub上开源的项目,该项目给自身的定位是:提供一个易于使用的大语言模型(LLM)微调框架,支持LLaMA、Baichuan、Qwen、ChatGLM等架构的大模型。更细致的看,该项…

UG NX二次开发(C++)-获取曲面的相切曲面

文章目录 1、前言2、创建一个三维模型3、获取相切曲面的方法3、测试结果1、前言 最近一段时间,QQ群中的群友总问我一个问题,那就是如何获取曲面的相切曲面,我今天就把这个方法写出来,以帮助读者。 在UG二次开发中,查询了帮助文档,没有找到获取相切曲面的函数。所以采用N…

「C++系列」继承

文章目录 一、继承1. 基本概念2. 继承类型①公有继承(Public Inheritance)②私有继承(Private Inheritance)③保护继承(Protected Inheritance) 3. 继承的语法4. 构造函数和析构函数①构造函数案例②析构函…

单链表的问题(2)

1.对于一个链表,请设计一个时间复杂度为O(n),额外空间复杂度为O(1)的算法,判断其是否为回文结构。 给定一个链表的头指针A,请返回一个bool值,代表其是否为回文结构。保证链表长度小于等于900。 这个我们可以运用双指针来解决这个…

爆改YOLOv8|利用全新的聚焦式线性注意力模块Focused Linear Attention 改进yolov8(v1)

1,本文介绍 全新的聚焦线性注意力模块(Focused Linear Attention)是一种旨在提高计算效率和准确性的注意力机制。传统的自注意力机制在处理长序列数据时通常计算复杂度较高,限制了其在大规模数据上的应用。聚焦线性注意力模块则通…

EmguCV学习笔记 C# 7.1 角点检测

版权声明:本文为博主原创文章,转载请在显著位置标明本文出处以及作者网名,未经作者允许不得用于商业目的。 EmguCV是一个基于OpenCV的开源免费的跨平台计算机视觉库,它向C#和VB.NET开发者提供了OpenCV库的大部分功能。 教程VB.net版本请访问…

Excel中让第一行始终显示

要在Excel中让第一行始终显示,你可以使用冻结窗格功能。具体步骤如下: 打开需要设置第一行一直显示的工作表。将光标定位在工作表内任意一个单元格内。选择“视图”菜单,单击工具栏中的“冻结窗格”命令。在弹出的下拉菜单中选择“冻结首行”…

字母的大小写转换(tolower、toupper、transform)

字母的大小写转换(tolower、toupper、transform) 1. tolower()、toupper()函数 (这个在之前的一篇文章 “字符串中需要掌握的函数总结(1)”中有较为详细的介绍。&#…

时利和:如何提升工装夹具的加工质量?

在机械加工领域,工装夹具起着至关重要的作用。它不仅能够提高生产效率,还能保证加工精度,确保产品质量的稳定性。那么,如何提升工装夹具的加工质量呢?以下是时利和整理分享的几个关键因素。 一、精准的设计 工装夹具的设计是决定…

使用物联网卡访问萤石云的常见问题

使用物联网卡接入萤石开放平台时经常遇到各种问题,这边总结了常见的一些 用的是哪家运营商的卡? 电信 移动 联通(申请的时候可以自主选择) 卡有什么限制? 定向流量卡,只能访问萤石云平台,只能…

完美解决Jenkins重启后自动杀掉衍生进程(子进程)问题

完美解决Jenkins重启后自动杀掉衍生进程(子进程)问题 本文中使用的Jenkins版本为Version 2.452.3 先罗列一下前置问题:Jenkins任务构建完成自动杀掉衍生进程 用过Jenkins的都知道,Jenkins任务构建完成后,是会自动杀掉衍生进程,这…

安卓AppBarLayout与ViewPager2里的fragment里的webview滑动冲突

今天开发遇见一个头痛的问题,就是AppBarLayout和webview会存在一个冲突问题。如图下 问题出现在webview推到顶端的时候,AppBarLayout并不会跟着响应伸缩,解决办法是 在 webview 包 一个 父的 NestedScrollView 就能解决了。 运行效果入下 更改…

单向链表和双向链表的一些基本算法

单向链表头插尾插 单向链表的销毁与反转 反转原理:将头节点与后面的节点分开,然后从第一个节点开始对每个节点使用头插法 冒泡排 选排 链表环: 判断是否有环:弗洛伊德快慢指针(快指针一般是慢指针的2倍,差为…

Selenium(HTML基础)

一、HTML基础 (在学习自动化时,保证能看懂) 1.1.HTML介绍 英文是HyperText Markup Language,译为:超文本标记语言是Internet上用于设计网页的主要语言,2008年发布了HTML5.0,是目前互联网的标准,并作为互联…

数据结构之 “单链表“

(1)在顺表表中,如果是头插/删的时间复杂度是O(1);尾插/删的时间复杂度是O(N) (2)增容一般是呈2倍的增长,势必会有一定的空间浪费。比如:申请了50个空间,只用了两个&#…