Task-Embedded Control Networks for Few-Shot Imitation Learning

发表时间: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.mzph.cn/news/878137.shtml

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

相关文章

JVM上篇:内存与垃圾回收篇-07-方法区

笔记来源:尚硅谷 JVM 全套教程,百万播放,全网巅峰(宋红康详解 java 虚拟机) 文章目录 7. 方法区7.1. 栈、堆、方法区的交互关系7.2. 方法区的理解7.2.1. 方法区在哪里?7.2.2. 方法区的基本理解7.2.3. HotSp…

无人机之基本结构篇

无人机(Unmanned Aerial Vehicle, UAV)作为一种无人驾驶的飞行器,其基本结构涵盖了多个关键组件,这些组件共同协作以实现无人机的自主飞行和执行各种任务。以下是无人机基本结构的详细解析: 一、飞机平台系统 机身&am…

vue2表单校验:添加自定义el-form表单校验规则

前言 在vue2表单校验:el-form表单绑定数组并使用rules进行校验_vue2 rules校验-CSDN博客中,使用form原生的rules对表单中每个控件的必填、格式等做了校验。但是保存时,除了验证每一个控件的输入合乎要求外,还需要验证控件之间的数…

SpringBoot集成kafka-生产者发送消息

springboot集成kafka发送消息 1、kafkaTemplate.send()方法1.1、springboot集成kafka发送消息Message对象消息1.2、springboot集成kafka发送ProducerRecord对象消息1.3、springboot集成kafka发送指定分区消息 2、kafkaTemplate.sendDefault()方法3、kafkaTemplate.send(...)和k…

WIN/MAC 图像处理软件Adobe Photoshop PS2024软件下载安装

目录 一、软件概述 1.1 基本信息 1.2 主要功能 二、系统要求 2.1 Windows 系统要求 2.2 macOS 系统要求 三、下载 四、使用教程 4.1 基本界面介绍 4.2 常用工具使用 4.3 进阶操作 一、软件概述 1.1 基本信息 Adobe Photoshop(简称PS)是一款…

springboot嵌入式数据库实践-H2内嵌数据库(文件、内存)

本文章记录笔者的嵌入式数据库简单实现, 记录简要的配置过程。自用文章,仅作参考。 目录 本文章记录笔者的嵌入式数据库简单实现, 记录简要的配置过程。自用文章,仅作参考。 嵌入式数据库 -------------------------------具…

16岁激活交学费银行卡需要本人实名电话卡,线下营业厅不给办,怎么办?

16岁激活交学费银行卡需要本人实名电话卡,线下营业厅不给办,怎么办? 话卡办理规定: 根据《民法典》和《电话用户真实身份信息登记规定》的相关要求,未满16周岁的用户通常需要在监护人的陪同下办理电话卡,并…

uniapp微信小程序 分享功能

uniapp https://zh.uniapp.dcloud.io/api/plugins/share.html#onshareappmessage export default {onShareAppMessage(res) {if (res.from button) {// 来自页面内分享按钮console.log(res.target)}return {title: 自定义分享标题,path: /pages/test/test?id123}} }需要再真机…

衡石科技BI的API如何授权文档解析

授权说明​ 授权模式​ 使用凭证式(client credentials)授权模式。 授权模式流程说明​ 第一步,A 应用在命令行向 B 发出请求。 第二步,B 网站验证通过以后,直接返回令牌。 授权模式结构说明​ 接口说明​ 获取a…

【贪心 决策包容性 】757. 设置交集大小至少为2

本文涉及知识点 贪心 决策包容性 LeetCode757. 设置交集大小至少为2 给你一个二维整数数组 intervals ,其中 intervals[i] [starti, endi] 表示从 starti 到 endi 的所有整数,包括 starti 和 endi 。 包含集合 是一个名为 nums 的数组,并…

Quasar V2.16.4 新版发布,基于 Vue 3 的前端开发框架,一套代码发布到多端

Quasar 又发布新版本了,性能优秀的 Vue 组件开发框架,时隔3年再次推荐给大家。 早在2021年,我就写了一篇简单的文章向大家推荐了 Quasar 这款 Vue.js 开发框架,如今3年过去了,Quasar 发展得很好,更新频率依…

H5开发有哪些技巧?

随着现代社会的飞速发展,网页开发已经从传统的HTML、CSS、JavaScript往H5发展。H5也称为HTML5,可以理解为是HTML的升级版,具有更加优秀的性能、更加完善的功能和更加多样的体验。因其灵活性和跨平台特性,成为了各类移动应用和网页…

面试常问! transformer中dk的大小,以及为什么设成这样,维度,原文分析。

目录: 原文 :翻译:流程:原因: 原文(多头注意力部分) : 李沐b站论文精读 论文网盘下载:链接 提取码: vm3d 翻译: 在这项工作中,我们采用了 h8 个并行注意力层&#xff…

Linux远程管理—SSH协议

SSH协议是远程连接的安全性协议,该协议可以有效防止远程管理过程中的信息泄漏,是西安传输数据加密,能够防止DNS和IP欺骗,传输数据压缩,加快传输速度。 安全验证方法有口令验证和密钥验证两种实现手段,该协…

线上剧本杀小程序,线上游戏新体验

剧本杀作为当下热门的社交型游戏方式,成为了大众社交娱乐的选择,为大众带来新的游戏体验。在数字化发展时期,线上剧本杀为大众带来了新鲜的游戏体验,它打破了时间空间限制,让玩家在手机上体验虚拟游戏,通过…

Oracle发邮件时SMTP服务器配置方法与步骤?

Oracle发邮件功能如何配置?如何优化Oracle发信性能? 为了实现自动化报告和通知,Oracle发邮件功能变得尤为重要。通过配置SMTP服务器,Oracle可以轻松地发送电子邮件。AokSend将详细介绍如何配置Oracle发邮件时的SMTP服务器&#x…

IDEA 编译项目时卡在Parsing java,最终报out of memory

今天在项目运行的时候莫名其妙报错: 报错内容: java.lang.OutOfMemoryError: GC overhead limit exceeded原因: 通常是因为堆内存太小,无法有效管理正在创建和销毁的对象。 解决方法: 在 IDEA 的安装目录下找到 bi…

ABB巨资收购一家电气龙头,为当年卖给日立电气业务回血

导语 大家好,我是社长,老K。专注分享智能制造和智能仓储物流等内容。 新书《智能物流系统构成与技术实践》 战略扩张:ABB携SEAM集团深耕电气服务市场 在电气服务领域,ABB再次展现了其强大的市场扩张能力。近日,ABB宣布…

【CanMV K230】外接传感器

【CanMV K230】外接传感器 外接LED灯 B站视频链接 抖音链接 我们后面主要做是机器视觉。K230能帮我们捕捉到图像信息。更多小功能需要我们自己来做。 比如舵机抬杆,测温报警等 都需要我们外接传感器。 本篇就来分享一下如何使用K230外接传感器 首先需要知道K230…

栈OJ题——有效的括号

文章目录 一、题目链接二、解题思路三、解题代码 一、题目链接 有效的括号 题目描述:给定一个只包括 ‘(’,‘)’,‘{’,‘}’,‘[’,‘]’ 的字符串 s ,判断字符串是否有效。括号匹配。 二、…