标签: AGI

  • 动态标记化对大型语言模型的改造

    摘要

    在当今的自然语言处理(NLP)领域,大型语言模型(LMs)如同冰山一角,潜藏着巨大的潜力。然而,现有的语言模型通常依赖于固定的子词标记器,这一选择往往被视为理所当然,结果却是导致在非英语语言上的表现不佳,且在新的领域或语言中应用这些模型时面临挑战。为了解决这些问题,我们提出了一种动态标记化的方法,旨在根据输入文本动态决定标记边界。通过对编码器风格模型引入一种基于字节对编码(BPE)的子词合并算法,我们在批量层面上合并频繁的子词序列,并运用预训练的嵌入预测超网络动态计算标记嵌入。我们的实验表明,动态标记化在不损失任务性能的情况下,平均减少超过20%的标记序列长度,同时提升了跨语言的公平性。

    1 引言

    语言模型是现代自然语言处理应用的核心,能够实现高级的语言理解和生成。然而,它们的有效性在很大程度上依赖于标记器,这一过程将原始文本分割为更小的单位称为标记(Minaee et al., 2024;Minixhofer et al., 2024)。传统的子词标记器在多语言背景下经常出现过度分割的问题,使得模型在不同语言间的表现不平衡,增加了推理成本,降低了整体模型的有效性(Ahia et al., 2023)。因此,开发一种能够根据输入文本动态调整标记边界的标记化方法是十分必要的。

    2 背景与相关工作

    2.1 标记器的定义

    根据Uzan等(2024)和Minixhofer等(2024)的定义,标记器可以由词汇V和标记化函数T构成。现有的标记器主要分为字符级、字节级、子词和词标记化方法。尽管字符级和字节级方法可以处理稀有词,但它们在处理速度上较慢,而子词标记化则由于词汇限制,常常面临不适应新数据的挑战(Nawrot et al., 2022)。

    2.2 动态标记化的提出

    本研究提出的动态标记化通过适应性调整标记边界,能够在处理数据时实时更新词汇和标记化函数。这种方法不仅在编码器模型中应用,还扩展到解码器模型,通过引入近似最近邻索引实现快速生成,展示出动态标记化在处理大规模词汇时的可扩展性。

    3 方法

    3.1 动态标记化的实现

    动态标记化的核心在于通过对输入数据的批量处理,更新初始标记化函数。我们引入BPE风格的合并算法,以减少输入数据的过度分割,从而实现更紧凑的表示。在这一过程中,超网络被用来生成任何标记的嵌入参数,允许模型根据批量数据动态调整标记。

    3.2 词汇扩展与自动回归生成

    为了在解码器中有效应用动态标记化,我们扩展了初始词汇,构建了一个包含一百万个标记的词汇表,并结合近似最近邻索引,实现了快速的标记生成。这种方法有效解决了传统大型词汇带来的模型参数分配不均的问题。

    4 实验设置

    我们的实验使用XLM-R作为多语言编码器模型,并以MISTRAL-7B的基础和指令版本作为解码器模型,通过XNLI和UNER数据集评估动态标记化的有效性。我们比较了原始嵌入、快速词汇迁移嵌入和超网络嵌入的效果,结果表明动态标记化显著提高了推理速度,并在多语言间实现了更公平的计算分配。

    5 结果与讨论

    5.1 编码器结果

    通过动态标记化,我们在XNLI数据集上实现了平均22.5%的序列长度减少,任务性能损失小于2%。与传统的子词标记化相比,这一方法在效率和跨语言公平性方面表现出色。

    5.2 解码器结果

    在解码器模型中,我们观察到动态标记化可以在保留模型参数分配的同时,处理更大规模的词汇,提升生成速度。尤其是在使用一百万个标记的设定下,动态标记化展现出了良好的可扩展性。

    6 结论

    本研究提出了一种新颖的动态标记化方法,通过超网络动态生成嵌入,克服了传统静态标记化的局限性。实验结果表明,该方法有效减少了标记序列长度,提高了推理效率,并在多语言场景中实现了更公平的模型表现。未来的工作将致力于进一步优化这一方法,以应对更复杂的语言和领域需求。

    参考文献

    1. Minaee, S. , et al. (2024).
    2. Minixhofer, B. , et al. (2024).
    3. Ahia, F. , et al. (2023).
    4. Uzan, O. , et al. (2024).
    5. Nawrot, A. , et al. (2022).

  • 🤖 一统江山:自然语言如何统摄沟通、感知与行动

    摘要

    近年来,人机交互领域的研究重心逐渐转向开发能够理解复杂人类指令并能在动态环境中执行任务的机器人。这些系统的应用范围广泛,从个人助理到工业机器人,无不强调机器人与人类灵活、自然且安全的互动。本论文介绍了一种先进的机器人动作规划架构,集成了通信、感知和以大型语言模型(LLMs)为基础的规划。我们的系统旨在将自然语言表达的命令转化为可执行的机器人动作,同时结合环境信息,并根据实时反馈动态更新计划。

    1. 引言

    1.1 背景与动机

    机器人技术的发展正如熊熊燃烧的火焰,而这火焰的最新催化剂便是大型语言模型(LLMs)的引入。LLMs在自然语言理解和常识推理方面表现出色,极大地提升了机器人的指令理解能力。然而,LLMs自身无法独立进行规划,它们需要与能够理解环境、机器人的能力和状态的架构相结合。这项研究旨在赋予机器人理解用户请求并在多样环境中自主生成可执行计划的能力。

    1.2 研究目标

    传统机器人系统通常依赖于静态的、预先编程的指令或封闭世界的预定义知识,这限制了它们在动态环境中的适应性。与人类在复杂环境中的日常任务交互打破了这些假设。LLMs和视觉语言模型(VLM)可以提供开放领域知识来表示新条件,而无需人为干预。然而,过于详细的信息可能导致不切实际的计算需求和响应时间,而忽略关键信息可能导致失败。我们的目标是通过引入执行控制和故障管理,增强LLM基础的机器人系统的鲁棒性和灵活性。

    1.3 方法概述

    我们提出的系统通过实时感知模块和集成执行控制和故障管理的规划模块来应对动态环境的挑战。系统包括一个控制器,用于监控任务执行并检测错误,而解释器分析失败并根据过去的经验提出调整建议。通过这种反馈回路,系统能够自适应地重新规划,使其能够根据需要修改其行动。特别是,我们提出使用ReAct框架,通过技巧、机器人的物理动作以及感知动作来扩展其操作空间,以从环境中获取信息。

    2. 相关工作

    2.1 语言模型在机器人规划中的应用

    大量文献探讨了LLMs在机器人任务规划中的利用。最近的研究强调了LLMs在机器人规划中的潜力。例如,DEPS引入了一种在开放世界环境(如Minecraft)中为代理规划的迭代方法。它利用LLMs分析执行中的错误并完善计划,从而改善推理和目标选择过程。然而,这种方法主要在虚拟环境中开发和测试,与现实世界的动态和不可预测的自然差异显著。此外,DEPS不利用先前的问题和解决方案,而仅依赖于人类和视觉语言模型(VLM)的反馈。

    2.2 场景图作为环境表示

    场景图作为表示机器人环境的一种手段越来越受欢迎。它们提供了一种结构化的空间和语义信息表示方法。某些研究采用3D场景图来表示环境,并使用LLMs生成规划域定义语言(PDDL)文件。这种方法将长期目标分解为自然语言指令,并通过解决子目标来提高计算效率。然而,它缺乏在执行过程中基于反馈重新规划的机制,这可能会限制其在动态场景中的适应性。

    3. 系统架构

    我们的系统基于两个主要组件:

    3.1 感知模块

    感知模块负责感知和解释环境。它以有向图的形式构建并维护一个语义地图,该地图集成了几何和语义信息。

    3.2 规划模块

    规划模块利用感知模块提供的信息制定计划和行动,使机器人能够执行特定任务。图1展示了这些组件如何交互,以便机器人理解其环境并相应地采取行动以满足用户请求。感知模块使用机器人传感器提供的数据为规划模块提供语义地图,后者则处理这些信息以生成特定的行动计划。

    3.3 规划模块的构成

    规划模块被设计为将用户请求(以自然语言表达)转化为机器人可执行的具体行动。该模块负责理解指令、规划适当的行动,并在动态环境中管理这些行动的执行。规划模块由五个子模块组成:

    • 任务规划器:将用户请求(以自然语言表达)翻译为一系列高级技能。
    • 技能规划器:将高级技能翻译为具体的低级可执行命令。
    • 执行者:执行由技能规划器生成的低级行动。
    • 控制器:监控行动的执行并管理过程中的任何错误或意外事件。
    • 解释者:通过分析从控制器接收到的数据解释执行失败的原因,并向任务规划器提供关于如何调整计划的建议。

    4. 任务规划器

    任务规划器的决策过程由策略驱动,策略通过LLM实现。策略是定义基于当前状态或上下文选择行动的规则。

    任务规划器使用ReAct框架实现,该框架在过程中交替进行推理和行动阶段。在推理阶段,任务规划器可以访问各种“感知”行动以从环境中收集信息,如语义地图和机器人当前状态,也可以执行一个或多个“技能”行动以执行物理行动。

    在我们的工作中,我们通过两种类型的行动扩展了代理的动作空间:

    • 技能行动:涉及与环境的物理交互,例如操控物体或导航。技能行动的结果提供了新的反馈以更新当前上下文。
    • 感知行动:涉及从环境中获取信息,如查询语义地图或传感器,并将该信息整合到上下文中。

    5. 技能规划器

    一旦提出执行技能的高级请求,技能规划器负责将任务规划器提供的高级技能翻译为机器人可执行的低级命令序列。技能规划器操作过程包括三个功能:

    1. 前提条件验证:在将技能翻译为低级命令之前,技能规划器验证执行所需的前提条件是否满足。
    2. 目标节点提取:根据技能的参数,技能规划器从语义地图中提取目标节点。
    3. 低级命令的生成:当前提条件满足时,技能规划器将技能翻译为控制机器人行为的低级命令序列。

    6. 执行者

    执行者负责直接与机器人的硬件交互,以执行技能规划器提供的命令。它通过控制各种硬件元件(如电机、机器人手臂抓取器和其他执行器)将低级命令翻译为物理动作。

    7. 控制器

    控制器负责在命令执行过程中监控机器人的状态和环境,确保它们按计划执行。在每个命令执行后,执行者发送反馈,指示成功或失败。如果发生故障,它将导致整个技能的失败。

    8. 解释者

    解释者在执行阶段发生故障时,通过为任务规划器提供见解来增强规划过程。解释者通过搜索包含特定技能和用户请求相关失败记录的数据集来分析故障,并提供建议。

    9. 行为示例

    为了说明所提出系统在动态环境中的行为,考虑一个场景:机器人被要求从房间的桌子上取下一个瓶子并放置在另一个房间的指定区域。系统必须对意外变化做出反应,例如任务过程中瓶子被外部代理移动。

    10. 结论

    所提出的规划系统展示了显著的优势,尤其是在其适应性和与机器人的多样技能无缝配合以执行复杂任务方面。系统的核心优势在于其通过自然语言处理解释用户命令的能力,将其转化为高级行动,然后进一步精炼为低级可执行任务。通过集成来自感知模块的实时环境反馈,系统能够动态调整以应对意外情况,如障碍物或执行失败。

    通过此架构,任务规划器、技能规划器、控制器和解释者组件协同工作,确保即使在变化环境中任务执行也能顺利进行。该系统在Oversonic Robotics开发的类人机器人RoBee上的实施已展示了其实际潜力,使其成为需要先进人机交互和适应性的不确定环境应用中的一种有价值工具。


    参考文献

    1. Simone Colombani, Dimitri Ognibene, Giuseppe Boccignone. “One to rule them all: natural language to bind communication, perception, and action”. University of Milan & Oversonic Robotics, 2024.
    2. DEPS: A Method for Iterative Planning in Open-World Environments.
    3. Scene Graphs in Robotic Environment Representation.
    4. ReAct Framework for Robotic Task Planning.
    5. Oversonic Robotics: RoBee Humanoid Robot Specifications.
人生梦想 - 关注前沿的计算机技术 acejoy.com 🐾 步子哥の博客 🐾 背多分论坛 🐾 知差(chai)网
快取状态: No
内存使用量: 11.445 MB
资料库查询次数: 79
页面产生时间: 1.034 (秒)