【具身智能】前沿思考与总结(谷歌微软)

0. 总结

0.1 万字长文,当机器人拥抱大模型

只需要告诉机器人它要做的任务是什么,机器人就会理解需要做的事情,拆分任务动作,生成应用层控制指令,并根据任务过程反馈修正动作,最终完成人类交给的任务。整个过程基本不需要或者仅需少量人类的介入和确认,基本实现了机器人自主化运行,无需掌握机器人专业操作知识的机器人应用工程师介入。

image-20230806094836220

(0) My Conclusion:

解决数据,预设安全性,是这个领域的2个重点任务

(1) 挑战

(1-1)不确定的安全性

这里涉及的安全性包括两个部分,操作安全性与数据安全性,其中操作安全性又可分为任务级安全性与操作级安全性。

任务生成的安全性:虽然大模型具备很强的通识能力,但是如何保证每一次生成的任务都符合彼时情境的安全规范,仍然是一个需要持续优化的问题。

操作动作的安全性:除了以上需要常识就能解决的任务生成问题,在很多需要专业技能的领域机器人还要关注细微工艺动作是否符合安全规范,譬如在机器人手术中,机器人生成的磨削骨头或者切割软组织的某个细微动作是否符合手术手法要求,是否会对病人造成额外伤害,也是需要慎重考虑的问题。

(1-2) 高质量训练数据缺乏

机器人需要通过多种传感器感知环境状态,然后执行实际动作来完成任务,因此训练用于机器人的大模型需要用到大量机器人在真实世界中与环境进行交互的数据集。

0.2 大模型在机器人中的应用

具身AI Embodied Artificial Intelligence (微软)

Microsoft Research的Autonomous Systems and Robotics Group

ChatGPT for Robotics

AI研究者们开始不再满足于虚拟环境中的AI,开始希望AI能感知现实世界并与现实世界交互,这个方向在AI领域叫 Embodied AI(具身AI),主要涉及robotics的感知、规划、决策等上层部分。具身AI不再像传统AI仅从图像、视频、文本等数据库中学习,而是基于自身传感器(多是视觉传感器)感知环境并通过与环境交互进行学习(一般是强化学习方法**)**。

image-20230806102845350

image-20230806102831288

(0) My Conclusion:

SayCan:SayCan通过LLM和Afforddance Function模型的结合,在预定义的551种技能库中,选择有高概率的动作执行,完成从语言提示到任务级动作完成。

LM-Nav:LM-Nav通过结合三个预训练大模型LLM,VLM和VNM(视觉-导航模型),完成从语言提示到路径规划的执行。

PaLM-E:通过使用 PaLM-E 多模态大语言模型,添加物体的姿态信息,让机器人可以执行更细粒度的动作完成,比如将指定颜色的物体放入指定位置。

(1) SayCan

Do As I Can, Not As I Say (谷歌)

(2022年4月) M. Ahn et al., “Do As I Can, Not As I Say: Grounding Language in Robotic Affordances.” arXiv, Aug. 16, 2022. doi: 10.48550/arXiv.2204.01691.

问一个LLM(大语言模型)如何清理桌子,LLM可能给出很好的回答,但是这些回答无法部署到实际机器人上。Google Robotics 2022年的工作SayCan为LLM与机器人结合提供了一个思路。SayCan背后的LLM是PalM (540B)。

SayCan的主要思想是LLM将抽象的高级指令拆解为动作(Say),然后有一个affordance function(来判断动作的可行性(Can)。在这个过程中,LLM扮演了推理决策的角色,将人类给出的抽象指令拆解为几个预先设定的子任务,为机器人提供可能的下一步的动作,affordance function(相当于评委)判断这个动作行不行。

实际要预先给定一系列机器人的动作序列,研究者针对17个物体、常见的7类动作(捡去、放置、布置、开抽屉、关抽屉、导航、特殊情形下的放置)共计可开发了551种技能(类似脚本)。人类给出一个抽象的指令,LLM给出下一步动作(对指令有帮助的)的概率分布,affordance 给出这个动作在当前状态下执行的概率(一般是根据视觉判断有没有这个东西),根据这两个概率的乘积选择下一步动作。

(2) LM-Nav

(2023年PMLR) D. Shah, B. Osinski, B. Ichter, and S. Levine, “LM-Nav: Robotic Navigation with Large Pre-Trained Models of Language, Vision, and Action.” arXiv, Jul. 26, 2022. doi: 10.48550/arXiv.2207.04429. (谷歌)

LM-Nav这篇工作实现的效果为:人类向移动机器人给出一连串的自然语言导航指令,这些导航指令中有非常多的具有视觉特征的参照物(就好像你跟人问路别人跟你说在什么建筑附近左拐),然后LLM可以解析人类的自然语言,提取其中的关键地标信息的文本,然后通过视觉-文本多模态模型找到哪些图片出现了对应地标,然后机器人可以根据这些图片生成导航路径,自动找到说的地方。

image-20230806105100280

整个系统由三个预训练的大模型组成:LLM (Large Language Model) + VLM (Vision and Language Model) + VNM (Visual Navigation Model)

image-20230806105136826

三个模型结合相互结合,从自然语言(充满冗余的口语化描述)到文本(地标的字符串)到图像(根据文本找图像中的物体),最终生成机器人的路径规划。

  • LLM(GPT-3)理解人类给出的自然语言,将话语中提到的文本提示中的解析为一系列地标。
  • VLM (CLIP) 将文本和图像联系起来,在图像中找到LLM解析出来的地标。
  • VNM (ViNG) 根据图像进行建图和导航。VNM可以根据一系列有时间(时间戳)和空间(GPS)信息的图片建立空间的拓扑图,生成简化的地图方便后续路径规划。

(3) PaLM-E

(2023年3月) D. Driess et al., “PaLM-E: An Embodied Multimodal Language Model.” arXiv, Mar. 06, 2023. Accessed: Mar. 20, 2023. [Online]. Available: http://arxiv.org/abs/2303.0337 (谷歌)

PaLM-E本身是个多模态的大模型,不仅能理解文本,还能理解图片(因为加了ViT),可以理解图片中的语义信息。

image-20230806111936957

与谷歌之前两篇工作(SayCanLM-Nav)相比,视觉-语言模型进一步提升,之前只是一张图片有对应语义信息(图片分类),谷歌在之前的基础上加入了物体实例级分割,得到了图片中物体的信息。并且将图片中物体的状态信息作为一个新的模态进行了编码,这也是PaLM-E的明显提升:新增了状态估计这个模态,这里状态估计包括机器人的状态,也包括物体的状态(比如位姿、大小、颜色等)。

所以我们可以看到通过PaLM-E可以让机器人执行下面视频这样推方块的任务。人类仅仅给出“将方块按颜色分类到角落”的自然语言指令,PaLM-E自己将任务拆解为什么颜色到什么角落,然后并且推动(有动力学的考量)各颜色方块到各个角落。

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

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

相关文章

小程序自定义tabBar+Vant weapp

1.构建npm,安装Vant weapp: 1)根目录下 ,初始化生成依赖文件package.json npm init -y 2)安装vant # 通过 npm 安装 npm i vant/weapp -S --production 3)修改 package.json 文件 开发者工具创建的项…

如何在 Ubuntu 上部署 ONLYOFFICE 协作空间社区版?

ONLYOFFICE 协作空间是一个在线协作平台,帮助您更好地与客户、业务合作伙伴、承包商及第三方进行文档协作。今天我们来介绍一下,如何在 Ubuntu 上安装协作空间的自托管版。 ONLYOFFICE 协作空间主要功能 使用 ONLYOFFICE 协作空间,您可以&am…

MySQL的关键指标及采集方法

MySQL 是个服务,所以我们可以借用 Google 四个黄金指标的思路来解决问题。 1、延迟 应用程序会向 MySQL 发起 SELECT、UPDATE 等操作,处理这些请求花费了多久,是非常关键的,甚至我们还想知道具体是哪个 SQL 最慢,这样…

用html+javascript打造公文一键排版系统15:一键删除所有空格

现在我们来实现一键删除所有空格的功能。 一、使用原有的代码来实现,测试效果并不理想 在这之前我们已经为String对象编写了一个使用正则表达式来删除所有空格的方法: //功能:删除字符串中的所有空格 //记录:20230726创建 Stri…

机器学习笔记 - 关于GPT-4的一些问题清单

一、简述 据报道,GPT-4 的系统由八个模型组成,每个模型都有 2200 亿个参数。GPT-4 的参数总数估计约为 1.76 万亿个。 近年来,得益于 GPT-4 等高级语言模型的发展,自然语言处理(NLP) 取得了长足的进步。凭借其前所未有的规模和能力,GPT-4为语言 AI​​设立了新标准,并为机…

16 - 初探Linux进程调度

---- 整理自狄泰软件唐佐林老师课程 查看所有文章链接:(更新中)Linux系统编程训练营 - 目录 文章目录 1. 初探Linux进程调度1.1 Linux系统调度1.2 进程调度原理1.3 Linux系统调度策略1.4 进程调度实验设计1.4.1 实验目标1.4.2 实验设计 1.5 实…

Mock.js的基本使用方法

官网网址:Mock.js (mockjs.com) 当前端工程师需要独立于后端并行开发时,后端接口还没有完成,那么前端怎么获取数据? 这时可以考虑前端搭建web server自己模拟假数据,这里我们选第三方库mockjs用来生成随机数据&#xf…

微信小程序开发【从0到1~入门篇】2023.08

一个小程序主体部分由三个文件组成,必须放在项目的根目录,如下: 文件必须作用app.js是小程序逻辑app.json是小程序公告配置app.wxss否小程序公告样式表 3. 小程序项目结构 一个小程序页面由四个文件组成,分别是: 文…

Vue2 第十九节 Vuex (一)

1.理解Vuex 2.Vuex工作原理 3.求和案例 4.Vuex的开发者工具 一.理解Vuex ① 概念:专门在Vue中实现集中式状态(数据)管理的一个Vue插件,对vue应用中多个组件的共享状态进行集中式的管理(读/写)&#xf…

JMeter(二十四)、使用吞吐量控制器实现不同的用户操纵不同的业务

一、需求 需求:博客系统,模拟用户真实行为,80%的用户阅读文章,20%的用户创建文章,创建文章的用户随机的删除或者修改文章。 二、脚本实现 80%的用户查看文章 20%用户创建文章 根据post_id是否能整除2,决…

Lua 使用 —— IO 操作

一、前言 Lua 语言是以一个脚本存在,所以他自身不会提供太多和外部交互的机制。需要交互则由宿主提供或是由外部库。 接下来分享下如何使用以 iso c 作为宿主,进行标准库的 io 操作。 二、io.input、io.output 1、io.input io.input(filename) 会以…

【windows】windows上如何使用linux命令?

前言 windows上的bat命令感觉不方便,想在windows上使用linux命令。 有人提供了轮子,本文简单介绍一些该轮子的安装与使用,希望能够帮助到和我有一起需求的网友。 我的答案是busybox。 1.安装busybox.exe 在这个网站上安装busybox busyb…