在人工智能中,近几年来大型语言模型 (LLMs,Large Language Models)领域的发展尤为突飞猛进,经过训练的 LLM 已经可以做到按照提示要求生成复杂的文本、回答较难理解的问题,甚至可以就某个主题展开对话。
LLM 的能力之所以如此优异,正是在于这些模型在训练的过程中,从由网络提取的大型文本语料库中吸取了数据量庞大的信息。
既然 LLM 的理解能力如此强大,是否就意味一个机器人如果直接以此为基础进行语言类的各种处理工作,就可以同样出色地与人类交流、并进一步出色地完成任务了呢?
答案是否定的,原因就在于 LLM 并不是以物理世界为基础的,它的工作过程中也并没有对周围物理环境的观察与影响这一步。这就导致 LLM 给出的有些答案有时与周围环境格格不入、显得不切实际。
▲图 | 当用户提出同一请求时,不同的大型语言模型(左侧)和新 SayCan 模型(右侧)给出的不同的反馈(来源:arXiv)
例如在上图所示的这一实例中,在人类向一个只能进行“拿起厨具”“移动到某位置”等基本操作的厨房机器人给出“我的饮料撒了,可以帮忙吗?”
这一请求之后,著名的三种大型语言模型给出的答案都不那么符合当时的场景:GPT3 的回复是“你需要一个吸尘器”,LaMDA 的回复是“需要我帮您找一个吸尘器吗?”FLAN 则回复了“抱歉,我并不是故意让饮料撒了的”。
可以看出,由于在回答时没有结合周围的环境以及上下文,LLM 无法直接为机器人提供最合适的回答。
为了让机器人等的语言系统更符合周围的物理环境,从而使其更加有效地帮助人类,谷歌机器人联合 Everyday 机器人开发了一种新的语言处理模型,即 SayCan。
这一模型在训练的过程中,不仅学习如何很好地理解语言指令并给出回答,更要评估在当前物理环境中每个回答真正实现的可能性,从而让机器人实现“说到做到”。
近日,相关论文也以《尽我所能,而非尽我所说:机器人供能的基础语言》(Do As I Can, Not As I Say: Grounding Language in Robotic Affordances)为题发表在 arXiv 上。
简单来说,SayCan 模型在基于物理环境的任务中会将大型语言模型中的结果进行提取,它主要由两部分构成。
首先,Say 部分中由大型语言模型来完成理解语言含义,并给出相应的有助于解决问题的答案的任务。
然后,Can 部分则会对这些答案进行评估,即“可供行功能”,从而结合当时的物理环境来确定此时什么行为是可以执行的。
在这里,研究人员采用了强化学习 (Reinforced learning ,RL) 方式来进行以语言为条件的价值函数的学习和训练,而这些价值函数将确定某一行为在当前环境的可行性。
具体来说,SayCan 模型将问题抽象为如下:系统首先会接收用户所提供的自然语言指令 i,这一指令也给出了机器人所需执行的任务,该指令可以很长、很抽象甚至模棱两可。
系统还事先设定机器人所拥有的一组技能 Π,其中的每个技能 π ∈ Π 都是一个被分解后的很简短的任务,例如捡起某个特定的物体。每个技能都有自己的简短的语言描述 lπ,如“找刀叉”等,还有自己的可供性函数 p(cπ |s, lπ ),它表示从状态 s 成功实现描述为 lπ 的技能的概率。
通俗地说,可供行函数p(cπ |s, lπ)就是在状态 s 下,有着描述标签为 lπ 的技能 π 成功完成的概率,其中 cπ 是伯努利随机变量。在 RL 中,p(cπ |s, lπ) 也是技能的价值函数,例如如果可以成功完成就将奖励设为 1,否则为 0。
而 SayCan 模型解决问题的算法和思路,如下图所示。
▲图 | SayCan模型的算法(来源:arXiv)
为了验证 SayCan 模型性能,研究人员提出的两个主要指标进行评估。第一个指标是计划成功率,它用于衡量模型给出的的回答是否符合指令,这里并不考虑该技能在当前环境的可行性。
第二个指标是执行成功率,它衡量系统是否真正能够成功地执行并完成指令要求的任务。
▲图|评估结果(来源:arXiv)
研究人员让该模型执行了 101 个任务,结果显示,在模拟厨房的任务中,SayCan 模型的规划成功率为 84%,执行成功率为 74%。而在真实厨房环境中进行的评估中,SayCan 的规划成功率相比模拟厨房种降低了 3%,执行成功率降低了 14%。
▲图|SayCan 执行其他任务的例子(来源:arXiv)
回到上文中提到的例子,在面对用户的“我的饮料洒了,可以帮忙吗?”这一指令时,与其他 LLM 模型不同,SayCan 的反应则是,将会“1. 找到一块抹布,2. 拿起抹布,3. 将其带给用户,4. 完成”。可以说相比其他模型,可以让机器人更好地帮助用户。
参考资料:
https://say-can.github.io/
https://arxiv.org/abs/2204.01691