人形机器人的AI技术 —— 将一个大问题拆解为若干个小问题
前文:
人形机器人 —— Figure 01机器人亮相 | OpenAI多模态能力加持 | 与人类流畅对话交互 | 具身智能的GPT-4时刻
所需的AI技术:
人形机器人的软件层面其实有:
- 视觉模块/导航模块;
- 语言模块;
- 决策模块;
视觉模块,可以有3D点云(计算机视觉)、NeRF(Neural Radiance Fields)、全景分割技术,等等;导航模块,如:SLAM等等,但是由于导航模块可以和视觉模块耦合在一起,,并且导航模块往往可以和决策模块或规划模块耦合在一起,所以导航模块可以不单独列成一个模块。
语言模块,这里是指大模型,但是往往语言模块和视觉模块也有很强的耦合,比如都交给多模态大模型模块处理。人形机器人的直接输入输出并不是语言而是语音,因此我们还需要语音与语言转换模块。
决策模块,根据视觉模块和语言模块提供的信息,也包括从导航系统提供的模块,也包括从多模态模糊提供的信息,得到下一步动作,该动作往往不是对电机的扭矩的直接控制,而是电压等信息,这个动作还需要交给电子控制器转为扭矩控制信息,最终的扭矩信息交给电机进行具体执行。
人形机器人所需实现的功能:
- 识别周围环境,并进行准确描述;
- 推理决策下一步的行动;
- 将模棱两可的请求翻译为符合上下文的请求;
- 用语言解释推理的过程;
人形机器人的输入数据在chatGPT3.5出现之前是只有图像数据的,但是在ChatGPT3.5出现后就实现了自然语言的高度拟人化,这样有就有了人形机器人的多模态数据输入了,也就是将图像数据和语音数据一并作为输入了。其实准确的来说语音数据并不是人形机器人直接使用的数据,我们需要将语音数据转换为文字数据,也就是将图像和语音转换为文本输入到OpenAi预训练的多模态大模型中,而多模态大模型输出的数据再和图像数据一并输入到强化学习模型中,获得决策动作。
人形机器人的动作控制和常见的强化学习控制场景中的一样存在action repeation的现象,比如一般的人形机器人的视觉图像的输入(相机拍照)的频率为10hz,强化学习模型的动作输入为200hz,实际的电机控制器的制动频率为1000hz,也就是说机器人接受到一个图像后会输出20个重复的动作,而这20个重复的动作发送给电机控制器后会具体形成1000个重复的制动控制(可以理解为保持某个电压值的频率为1000hz),也可以理解为机器人接收到一个图像数据后会使电机保持1000个时长的相同的制动控制。
大致形式:
10hz采集图像 -> OpenAI大模型 -> 强化学习模型 -> 产生200hz的控制动作(24自由度的动作的电压值) -> 动作执行控制器(动作执行的电机) -> 产生1000hz的执行控制器的动作(电机的扭矩等等)
可以看到,机器人接采集一帧图像后给电机的具体执行东西要保持100倍的图像采集时间,也就是说明电机具体执行时的动作要重复100次。
正如OpenAI的模型其实并不是一个模型一样(OpenAI的大模型由多个大模型组成,具体执行时会根据任务的具体情况选择具体的大模型进行执行),人形机器人的模型也不是只有一个的,而是多个模型联合工作的。
比如,机器人的视觉模块,一般需要使用SLAM算法、3D点云算法、NeRF算法、物体识别算法、人体动作捕捉和识别算法,等等,多个算法组成。照比视觉模块相比语言模块会相对显得少些,一般只用一个或两个大模型就可以解决,但是由于大模型难以在终端上直接运行,因此语言模块往往采用远端调用云资源的方式来进行解决,这也导致了未来的一个研究,那就是边缘计算和云计算的均衡负载问题。
虽然当所有的模型训练好后联合在一起使用时是一个end-to-end的结构,但是这些模型往往在训练时是存在先后顺序和分开训练的问题的,因此一个人形机器人的AI模型往往是多个研究方向的组合,单一方向的研究是难以使其真正工作的,可以说人形机器人的研发工作更偏向于一种系统工程,即使在不考虑硬件(电机、电池、机械控制、传感器,等等)的前提下只考虑软件层面的AI算法就已经包含了多个方向的研究。虽然最终做决策的算法是强化学习算法,但是其上游的视觉算法和语言算法也是十分关键和重要的,可以说如果没有很好的视觉算法和语言算法,单独的强化学习算法只能运行在仿真环境下而无法运行在真实的实体(实体机器人)上的。
而且,在完成了视觉模型和语言模型后这时的强化学习模型也并不能保证仿真环境下的决策算法可以很好的运行在实体机器人上的,这时候还存在一个sim2real的问题,而这个问题是仿真环境下无法解决的,也就是说仿真环境和实体的实际运行情况之间的这个gap是需要单独算法来进行处理的,而这又属于一个独立的研究方向。
可以说人形机器人是多个领域的联合的一个场景,并不是单一领域、单一研究方向就可以解决的,如何完成单个方向的研发很重要,但是最后决定这个机器人最终的performance的还在于将这些单独模块/算法组合在一起的算法,而这个最终的组合也是一个难点,如何可以使多个部件/模型更好的联合在一起工作也是需要不断调整和优化的。
相关资料:
https://www.youtube.com/watch?v=vO1wnHA0tZg
https://www.youtube.com/watch?v=_HjGppyK0Po
人形机器人的AI技术 —— 将一个大问题拆解为若干个小问题的更多相关文章
- Linux下的split 命令(将一个大文件根据行数平均分成若干个小文件)
将一个大文件分成若干个小文件方法 例如将一个BLM.txt文件分成前缀为 BLM_ 的1000个小文件,后缀为系数形式,且后缀为4位数字形式 先利用 wc -l BLM.txt 读出 BL ...
- AI:机器人与关键技术--总是被科普
AI:机器人与关键技术--总是被科普 原文链接:www.csdn.net/article/2014-04-22/2819430 机器人发展建议: 有需求才有生产,有更高的需求才有发展: 第一条:我们的 ...
- 四种 AI 技术方案,教你拥有自己的 Avatar 形象
大火的 Avatar到底是什么 ? 随着元宇宙概念的大火,Avatar 这个词也开始越来越多出现在人们的视野.2009 年,一部由詹姆斯・卡梅隆执导 3D 科幻大片<阿凡达>让很多人认识了 ...
- IBM沃森会成为第一个被抛弃的AI技术吗?
作者|William Vorhies 译者|姚佳灵 编辑|Debra 导读:IBM 的沃森问答机(Question Answering Machine,简称 QAM),因 2011 年参加综艺节目&l ...
- 福利:42套AI技术视频免费领取
<福利:33套AI技术视频免费领取> 视频获取方式:请加机器学习和自然语言(QQ群号:436303759)群后,私信群主获取(备注上自己想要获取是视频名称),仅限本群公众号粉丝成员,多套视 ...
- 如今领占主导地位的19种AI技术!
如今领占主导地位的19种AI技术! http://blog.itpub.net/31542119/viewspace-2212797/ 深度学习的突破将人工智能带进全新阶段. 2006 年-2015 ...
- 蚂蚁金服首席数据科学家漆远:AI技术开放,与业界融合共创
小蚂蚁说: 11月8日,在第五届世界互联网大会-<人工智能:融合发展新机遇>论坛上,蚂蚁金服副总裁.首席数据科学家漆远认为AI具有控制风险.降本增效和提升用户体验三大作用. 11月8日,第 ...
- (原创)我对未来的人类的发展,以及AI技术发展的一些思考。
最近AI非常的火,不仅仅是阿尔法狗的成功,因为它击败了人类最强的大脑,颠覆了人类几千年来的对传统的认识,也让人类意识 到了一个问题:天外有天,人外有AI. 那么AI究竟会对人类的未来造成什么深远的影响 ...
- AI技术在智能海报设计中的应用
背景 在视觉设计领域中,设计师们往往会因为一些简单需求付出相当多的时间,比如修改文案内容,设计简单的海报版式,针对不同机型.展位的多尺寸拓展等.这些工作需要耗费大量的时间.人力成本(5~6张/人日), ...
- AI 技术咖们说,进入未来世界首先需要一个“虚拟的我” | 科技生活节倒计时8天
http://www.tmtpost.com/3367762.html 未来世界是什么样子? 斯皮尔伯格在<头号玩家>中构建了一个充满科技感.富有浓烈浪漫主义色彩的虚拟世界.戴上VR眼镜, ...
随机推荐
- LeetCode 685. Redundant Connection II 冗余连接 II (C++/Java)
题目: In this problem, a rooted tree is a directed graph such that, there is exactly one node (the roo ...
- 剑指Offer-59.按之字形顺序打印二叉树(C++/Java)
题目: 请实现一个函数按照之字形打印二叉树,即第一行按照从左到右的顺序打印,第二层按照从右至左的顺序打印,第三行按照从左到右的顺序打印,其他行以此类推. 分析: 实际上是二叉树的层次遍历,只不过每一行 ...
- C# .NET 拉卡拉支付接口解析 付款码支付 条码支付
C# .NET 拉卡拉支付接口解析 付款码支付 条码支付 被扫 反扫 刷卡支付 B扫C. 简要: 1.测试环境给的私钥是PKCS8.签名用. 2.CRT证书用X509Certificate2 读取出 ...
- 手动解压安装mysql8.0 on windows my.ini
1.解压"mysql-8.0.24-winx64.zip"到d:\Soft 2.在"D:\Soft\mysql-8.0.24-winx64"目录新建一个my.i ...
- 一款.NET开源、功能强大、跨平台的绘图库 - OxyPlot
前言 今天大姚给大家分享一款.NET开源(MIT License).免费.跨平台.功能强大的绘图库,支持多平台使用(包括:WPF.UWP.WinForm.Silverlight.Xamarin.iOS ...
- OOM异常的4种可能分析及常见的OOM异常演示
OOM异常的4种可能分析及常见的OOM异常演示 OOM异常: OutOfMemoryError 1.JAVA堆溢出JAVA堆用于存储对象实例,只要不断的创建对象,并且保证GC Roots到这些对象之间 ...
- WebUI自动化测试-监听元素有无变化
from datetime import datetime,timedelta from selenium.webdriver.common.by import By def get_inocSum( ...
- .NET下 支持大小写不敏感的JSON Schema验证方法
问题 有很多应用程序在验证JSON数据的时候用到了JSON Schema. 在微服务架构下,有时候各个微服务由于各种历史原因,它们所生成的数据对JSON Object属性名的大小写规则可能并不统一,它 ...
- Nacos + Gateway网关搭建微服务
文章所有代码GtiHub:https://github.com/Tom-shushu/work-study 里面的gateway-server和server1项目 1.Docker 部署 Nacos ...
- hynitron ts 驱动分析
# hynitron ts 驱动分析 背景 在公司项目中搞LCD移植的时候,在TP功能上,有时候频繁操作屏幕时会导致i2c总线返回-2错误. 问题描述: 1.安卓桌面起来以后,点击屏幕有响应. 2.此 ...