【第三十二周】具身智能体领域的不足和解决方法
目录
- 前言
- 空白和不足
- 解决思路
前言
上周总结了一些具身智能体领域的前沿文章,这周的任务主要是寻找这些领域的不足,并且查阅相关资料,看能否找到对应问题的解决思路
空白和不足
1、数据迁移问题,目前训练智能体都是把框架部署到机器人身上训练,每次实验都需要重新部署框架,能否借助迁移学习,将一个智能体学习到的经验迁移到另一个智能体上,这样可以极大节省智能体的学习成本
2、智能体从感知到导航再到物体交互,这其实就是一个完整的任务处理流程,但这些文献在彼此方向上的交融比较割裂,这让我想起机器学习中推荐系统的协同过滤算法,它利用不同用户的行为数据来互相补充,从而推荐出更准确的物品,这三个环节能否像协同过滤算法一样,信息互相反馈,协同优化整体
3、大部分文章都引用了记忆模块,虽然能够记忆物体,但仅限静态场景,缺乏对动态环境的感知,比如在一个场景里,智能体注意到红色垃圾桶一开始是放在客厅里的,它会记住这一位置,但当垃圾桶被移动到厨房后,若缺乏动态更新机制,智能体仍会前往客厅寻找,导致任务失败;我的想法是能否借助智能体的视觉模块,时刻更新场景中的物体信息,但这样有一个问题就是智能体的更新负荷变大了,所以如何寻找一个既能满足动态更新还能控制其更新负荷的方法尤为重要
4、对于用户指令的处理,文章大部分考虑的是用户的指令是清晰、明确的;但是现实中很多情况用户的指令是模糊的、不明确的,我的想法是能否增加智能体的询问功能,就是当用户的指令有歧义的时候,智能体能否通过询问用户并结合大语言模型逐步缩小搜索范围,最终寻找到合适的目标。
5、补充一下记忆模块方面的思考,智能体的记忆都是需要内存来存储的,在完成动作之后,有些物体的记忆就可以消除了,比如放在客厅角落的一个收纳箱,用户发布指令让智能体搬运这个收纳箱,智能体分解指令、规划路线、执行动作,智能体当然也保留了其记忆,但之后收纳箱被用户丢弃了,智能体应该自行删除其记忆信息,为其他物体腾出内存空间,但智能体如何判断记忆中的物体信息是否要删除呢,我有两个想法:第一,对于长时间不交互的物体,可以考虑删除其记忆信息,需要的时候探索寻找即可(前提是物体不放在难以寻找的地方);第二,对于已完成动作的物品信息,也可以删除。
6、大部分文献的实验数据集都是特定场景的数据集,缺乏复杂场景的训练,泛化能力依旧有限,应当结合一些复杂场景的数据集加以训练
对于这些问题,我找到以下解决方法
解决思路
对于数据迁移问题,目前我了解到的有两个方法,首先是模块迁移,感知模块、导航模块、交互模块分别冻结迁移,只需要调节不同机器人的控制器即可,不用重新训练整个框架;其次是经验池共享,即多个智能体共用一个经验库,需要任何经验只需要从库里取出。
对于三个环节优化问题,首先是统一架构,一个模型同时做感知、导航、交互,不拆分成独立的三个模块,代表有:VOYAGER、GPT-4V+具身控制、Embodied AGENT;其次是信息闭环系统,也就是反馈机制,导航结果反馈给感知、感知结果反馈给交互,交互结果反馈给导航以重新规划;然后是共享记忆体机制,三个模块同时读写同一份场景信息,感知提供物体物体位置,导航根据位置提供路径,交互根据位置去操控,操作完成后更新信息,这样实际上也是反馈,只不过形式上把三者框定在一起运作;最后就是协同优化损失函数,该函数同时监督三者,只要一个环节出现问题,那么整体就会一起优化
对于场景动态更新问题,了解到三个方法,第一个是动态语义地图,即物体位置实时更新,并非一次性写入;第二个是物体状态机,该机制给物体赋予状态属性(静态、被移动、被拿起、被放置、消失),只要物体的状态属性改变,那么位置就自动更新,当物体的状态为消失时,则消除该物体记忆;第三个是时序跟踪机制,该机制将物体信息用一个物体ID代替,当位置出现变化,智能体只需要根据ID就能快速找到物体记忆,及时清除和更新;
对于模糊指令的处理,目前的方法是结合LLM和VLM进行歧义的判断以及生成问题问用户,这与我之前提到的想法很相似;第二种是多模态询问,即机器人不仅口头上询问用户(有时机器人的表达可能也会出现歧义),同时生成图片或者箭头指向候选物体,提升了用户和智能体的交流效率
对于记忆更新(主要是对无用物体长期占用记忆内存的问题),有3个方法,第一个是记忆过期机制,即对于长时间未访问的物体,智能体可以删除其记忆信息;第二个是任务生命周期,当任务生命周期结束(即完成任务后),相关物体记忆标记可清楚;第三个方法,我觉得是最好的,即重要性加权记忆,通俗来说,就是先给每个记忆物体赋予一个相同权重,随着时间的推移,常用的物体权重会随着使用次数逐渐加强,无用物体或少用物体将会随着时间推移,权重慢慢降低,当权重降低到一定阈值后,会被判定为可删除记忆,这样智能体会把它们清除出记忆系统
对于数据集问题,目前比较通用的方法是混合多场景训练、采用大规模复杂场景训练集、开放世界仿真
