Interactive Natural Language Processing

news2024/11/17 16:29:13

本文是对《Interactive Natural Language Processing》的翻译。

交互式自然语言处理

  • 摘要
  • 1 引言
  • 2 交互式对象
    • 2.1 人在环
    • 2.2 KB在环
    • 2.3 模型或工具在环
    • 2.4 环境在环
  • 3 交互界面
    • 3.1 自然语言
    • 3.2 形式语言
    • 3.3 编辑
    • 3.4 机器语言
    • 3.5 共享内存
  • 4 交互方法
    • 4.1 预训练语言模型
    • 4.2 提示
      • 4.2.1 标准提示
      • 4.2.2 启发式提示
      • 4.2.3 提示链
    • 4.3 微调
      • 4.3.1 监督指令调整
      • 4.3.2 连续学习
      • 4.3.3 参数高效微调
      • 4.3.4 半监督微调
    • 4.4 主动学习
    • 4.5 增强学习
      • 4.5.1 反馈循环
      • 4.5.2 奖励模型
    • 4.6 模仿学习
    • 4.7 交互信息融合
  • 5 评估
    • 5.1 评估循环中人的交互
    • 5.2 评估循环中KB的交互
    • 5.3 评估循环中模型或工具的交互
    • 5.4 评估循环中环境的交互
  • 6 应用
    • 6.1 可控文本生成
    • 6.2 写作助理
    • 6.3 嵌入式AI
    • 6.4 文本游戏
    • 6.5 其他应用
  • 7 道德与安全
  • 8 未来方向
  • 9 结论

摘要

交互式自然语言处理(iNLP)已成为NLP领域的一种新范式,旨在解决现有框架中的局限性,同时与人工智能的最终目标保持一致。这种范式将语言模型视为能够反复观察、行动和接收来自外部实体的反馈的代理。
具体而言,这种背景下的语言模型可以:(1)与人类互动,以更好地理解和解决用户需求,个性化响应,与人类价值观保持一致,并改善整体用户体验;(2) 与知识库互动,用事实知识丰富语言表达,增强反应的上下文相关性,并动态利用外部信息生成更准确和知情的反应;(3) 与模型和工具交互,以有效分解和处理复杂任务,利用特定子任务的专业知识,并促进社会行为的模拟;以及(4)与环境互动,学习基于基础的语言表达,并有效地处理具体任务,如根据环境观察进行推理、规划和决策。
本文对iNLP进行了全面的综述,首先提出了概念的统一定义和框架。然后,我们提供了iNLP的系统分类,剖析了其各种组件,包括交互对象、交互接口和交互方法。我们继续深入研究该领域使用的评估方法,探索其不同的应用,仔细审查其伦理和安全问题,并讨论未来的研究方向。这项调查是对这一快速发展领域感兴趣的研究人员的切入点,并为iNLP的当前前景和未来轨迹提供了广阔的视角。

1 引言

近年来,自然语言处理(NLP)见证了一场引人注目的革命,这要归功于生成性预训练语言模型(PLM)的发展,如BART、T5、GPT-3、PaLM等等。这些模型可以生成连贯且语义有意义的文本,使其适用于各种NLP任务,如机器翻译、摘要和问答。然而,这些模型也有明显的局限性,如与人类需求的不一致、缺乏可解释性、幻觉、不精确的数学运算,以及复杂推理能力有限等。
为了解决这些限制,出现了一种新的自然语言处理范式:交互式自然语言处理(iNLP)。在NLP和机器学习文献中,“交互式”有多种定义,该术语通常指的是人类参与该过程。例如,Wondimu等人将交互式机器学习(iML)定义为“一种主动的机器学习技术,其中模型是以人在环的方式设计和实现的。Faltings等人将交互式文本生成视为“一项任务,该任务允许通过使用用户模拟器交互式地训练生成模型,而无需涉及真实用户,该用户模拟器提供编辑,引导模型指向给定的目标文本。王等人将人在环(HITL)描述为“模型开发人员不断将人的反馈集成到模型部署工作流的不同步骤中。”ChatGPT的流行也证明了通过从人的反馈中强化学习(RLHF)实现人与LM交互的令人印象深刻的能力。尽管人类是与语言模型交互最常见的对象类型,但最近的研究揭示了其他重要的交互对象类型,包括知识库(KBs)、模型/工具,和环境。因此,在我们的调查中,我们首先定义了交互式自然语言处理,它涵盖了可以与语言模型交互的更广泛的对象:
交互式自然语言处理(iNLP)将语言模型视为能够在与外部对象(如人类、知识库、工具、模型和环境)的循环中观察、行动和接收反馈的代理。
具体来说,通过交互,语言模型(LM)可以利用外部资源来提高其性能,并解决第一段中提到的限制。例如,与人类的互动使语言模型更好地与人类的需求和价值观(例如,乐于助人、无害、诚实)相一致,与KBs的互动可以帮助语言模型缓解幻觉。同样,与模型或工具交互可以提高LM的能力,如推理、忠实和数学运算的准确性。最后,与环境的交互可以增强LMs的基础推理能力,并促进LMs在具体任务中的应用。
此外,交互可能有可能开启语言处理未来的里程碑,这可以被视为人工智能的圣杯。2020年,Bisk等人研究了自然语言处理的未来方向,并提出了审计NLP进展的五个世界范围级别:“(1)语料库;(2)互联网;(3)感知(多模式NLP);(4)实施;(5)社交。”值得注意的是,最近发布的GPT-4和PaLM-2,为第三层次的“感知”带来了重大进步。化身人工智能和社会化身人工智能从根本上假设,可以通过建立涉及语言模型代理、环境和人类的互动循环来学习更全面的语言表示。这一观点强调了NLP社区需要将注意力转移到第四和第五层次(“体现”和“社会互动”),以推动该领域向前发展。除了模型、人类和环境之外,促进语言模型与外部世界之间联系的工具和知识库也在实现(社会)体现方面发挥着重要作用。语言模型的社会体现的未来成就可能会导致重大现象,包括人为的自我意识和语言模型社会的出现。
因此,交互式NLP对NLP研究人员和从业者都是有益的,因为它有可能解决幻觉和对齐等局限性,同时也与人工智能的最终目标保持一致。值得注意的是,随着最近发布的ChatGPT和GPT-4,它们已经淹没了NLP社区,并因其卓越的通用能力而被一些研究人员视为人工通用智能(AGI)的火花。这一转变促使许多调查和立场文件旨在提出新的研究方向,其中许多涉及互动主题。例如,Mialon等人调查了PLM采用级联机制进行推理的策略,并利用工具采取行动。但是缺乏对互动性的深入讨论,只关注工具的使用和推理,而忽略了其他主题,如与知识库的互动和社会行为的模拟。杨等人调查了基础模型和决策的跨学科研究领域,特别强调探索语言模型与人类、工具、代理和环境的互动。但他们主要关注决策设置和强化学习形式,而没有从NLP技术的角度,如思维链提示,提供关于与知识库交互或交互方法的全面讨论。Bubeck等人讨论了基于工具使用和体现的语言模型与世界的互动,以及基于心理理论和自我解释的语言模型与其人类的互动。但他们主要关注于评估大型语言模型(LLM)的能力,而缺乏对研究中使用的交互方法的全面讨论。其他调查和工作也为互动主题提供了宝贵的见解。然而,它们也针对某些方面,并没有提供涵盖交互式NLP整个范围的统一和系统的综述。
显然,交互式NLP领域在过去几年中经历了重大发展,出现了新形式的交互式对象,超越了标准的“人在环”方法。这些新形式的对象包括知识库、模型/工具和环境。虽然上述工作提供了一些涉及模型/工具和环境的交互的覆盖范围,但明显缺乏关于使用知识库(KB)与语言模型交互的讨论。此外,还缺乏对交互式NLP背景下的方法进行全面回顾。因此,我们综述的主要目标是:

  • 1.统一定义和表述:为交互式NLP提供统一的定义和表述,将其确立为NLP的新范式。
  • 2.综合分类:根据交互对象、交互接口和交互方法等维度对iNLP进行全面分类,从而系统地了解其不同方面和组成部分。
  • 3.进一步讨论:调查iNLP中使用的评估方法,检查其不同的应用,并讨论该领域的伦理和安全问题以及未来方向。

我们认为,进行这样的综述是非常及时的,我们的论文旨在填补上述综述的空白,为有兴趣在这一重要且快速发展的领域进行研究但可能还不熟悉的研究人员提供一个切入点。如图1所示,我们将从深入讨论交互对象开始(§2),然后概述了语言模型与外部对象通信的交互接口(§3)。然后,我们组织了各种交互方法,通过这些方法,语言模型扇出交互消息(§4)。接下来是关于iNLP背景下评估的讨论(§5)。最后,我们将研究iNLP的当前应用(§6),讨论伦理和安全问题(§7),并提出未来的方向和挑战(§8)。分类2提供了我们调查的鸟瞰图。
在这里插入图片描述
在这里插入图片描述

2 交互式对象

在本节中,我们将讨论与语言模型交互的对象,如图1所示。当一个实体与语言模型交互时,它被认为是“在循环中”的,这意味着它是模型训练或模型推理过程中的积极参与者。如前所述,交互对象包括人、知识库、模型/工具和环境;每一个将在下面的小节中介绍。

2.1 人在环

在这里插入图片描述
人在环NLP代表了一种强调人与语言模型之间信息交换的范式。这种方法寻求更有效地满足用户的需求并维护人类价值观,这一概念被称为人类LM对齐。相比之下,早期对文本生成的研究主要集中在样本的输入和输出上,忽略了人类偏好、体验、个性化、多样化需求和实际文本生成过程等方面。近年来,随着预训练语言模型(PLM)和大型语言模型(LLM)的成熟,优化人机模型交互已成为社区内普遍关注的问题。在模型训练或推理阶段,使用真实或模拟用户,结合人类提示、反馈或配置,被证明是增强人类LM对齐的有效策略。
随后,我们根据用户交互方案将人在环NLP分为三种类型,并增加了一节,深入研究了人的行为模拟和对这些类型的偏好,以实现人在环系统的可扩展部署。这些类别包括:

  • 1.使用人工提示进行通信:用户可以在对话中连续与模型进行交互。
  • 2.从人类反馈中学习:用户可以提供反馈来更新LM的参数。
  • 3.通过人工配置进行调节:用户可以配置LMs的设置。
  • 4.从人体模拟中学习:上述三种类型都采用了对用户的模拟,确保了实际的实现和可扩展性。

与人类提示沟通。
这是人类LM交互的最常见形式,它允许语言模型以对话的方式与人类交互。这种交互方案的主要目的是保持实时和连续的交互,因此典型的应用场景包括对话系统、实时翻译和多轮问答。这种交替迭代的交互式过程允许模型的输出逐渐重新排列,以满足用户需求。
通常,这种交互方案在交互过程中不会更新模型的参数,而是要求用户不断输入或更新提示,以从语言模型中获得更有意义的响应。因此,由于需要提示工程或对话工程,对话可能是不灵活和劳动密集型的。为了解决这些限制,Malmi等人提出了基于编辑的方法。;Schick等人;Faltings等人;施等人;Du等人鼓励语言模型修改现有输出(见第3.3节)。此外,还开发了基于上下文的方法,通过在输入上下文中添加示例或指令来增强模型输出,例如小样本提示或上下文学习。
然而,由于这些方法不涉及调整语言模型以适应人类用户,因此可能需要大量的尝试编辑或提示才能达到预期结果,从而导致更长的对话回合。因此,这种交互方案可能是低效的,并且可能导致次优的用户体验。
从人的反馈中学习。
与“与人工提示沟通”不同,这种交互方案为模型优化提供了对模型输出的反馈,如评分、排名和提供建议。因此,这种反馈用于调整模型的参数,而不是简单地作为语言模型响应的提示。这种互动的主要目标是更好地使LM适应用户需求和人类价值观。
例如,Godbole等人和Settles采用主动学习来提供人类反馈。通过根据模型预测标记一些例子,他们更新了模型参数,以提高对人类需求的理解。最近,Shuster等人通过从用户反馈和对话历史中不断学习来增强语言模型。InstructionGPT最初使用监督指令调整来训练GPT-3,随后通过来自人类反馈的强化学习(RLHF)对其进行微调,其中奖励模型是在注释的人类偏好数据上训练的。反过来,这个奖励模型充当用户模拟器,可以为模型的预测提供反馈。Ramamurthy等人证明,当学习的奖励模型为RL方法提供信号时,RLHF比监督方法更有数据和参数效率,更不用说偏好数据比基本事实数据更容易收集。Fernandes等人和Wang等人就“从反馈中学习”这一主题进行了全面的综述。我们请读者参考这两项综述以了解更多信息。
通过人工设置进行调节。
先前讨论的两种交互方案涉及通过提示或反馈与模拟或真实人类进行互动。另一方面,通过人工配置进行调节依赖于用户根据自己的需求定制和配置语言模型系统。这种定制可以包括对系统结构、超参数、解码策略等的调整。尽管它可能不是最灵活的方法,但它是促进用户和系统之间交互的最简单方法之一。
例如,吴等人预先定义了一组LLM原始运算,如“意念”、“拆分点”、“组合点”等。;每个操作都由特定的提示模板控制。用户可以自定义不同操作的使用和链接方案,以满足一组给定的要求。类似地,PromptChainer是一个交互式界面,旨在促进链的不同步骤之间的数据转换。它还提供了不同粒度级别的调试功能,使用户能够创建自己的LM链。用户还可以配置一些超参数来控制LLM的性能。这包括但不限于温度(控制输出的随机性)、生成的最大代币数量,以及通过细胞核采样控制多样性的“top-p”。维姆帕拉等人提出了“循环中的用户”的概念,这意味着用户可以使用人类指令配置LM机器人交互,确保交互的过程和结果以用户的需求为中心。
从人体模拟中学习。
在许多情况下,与真实用户一起训练或部署语言模型是不切实际的,这促使开发各种用户模拟器来模拟用户行为和偏好。例如,欧阳等人最初根据真实注释者的偏好对生成的响应进行排名,然后在该偏好数据上训练从GPT-3初始化的奖励模型,以用作用户偏好模拟器。Kim等人提出了一种通过利用Transformer模型来模拟人类偏好的方法,该Transformer模型捕捉人类决策轨迹片段内的重要事件和时间依赖性。此外,这种方法依赖于非马尔可夫奖励的加权和。Faltings等人通过基于BertScore的词元相似性得分和动态编程来模拟用户编辑建议,以计算草稿和目标之间的对齐。Lynch等人收集了大量语言注释的轨迹,并在数据集上使用行为克隆对策略进行了训练。这些收集的轨迹也可以被视为用户模拟器。
用户模拟器的设计对于语言模型的成功训练和评估至关重要。例如,在开发通用对话系统时,为了准确复制真实用户的行为和偏好,收集各种各样的用户数据以训练模拟器至关重要。这使得它能够涵盖用户偏好和行为的全方位。此外,在为快速变化的应用场景开发语言模型时,必须不断更新和完善模拟器,以适应用户人口统计的变化及其不断变化的偏好。

2.2 KB在环

知识库在环NLP有两种主要方法:一种侧重于利用外部知识源在推理时间内增强语言模型,而另一种则旨在利用外部知识来增强语言模型训练,从而获得更好的语言表征。在训练过程中与知识库交互可以帮助改进模型的表示,以包含更多的事实知识。相反,在推理过程中与知识库交互可以帮助语言模型通过基于手头的特定输入或查询动态利用外部知识源来生成更准确、上下文相关和知情的响应。
在这里插入图片描述
在下面的部分中,我们将讨论知识源和知识检索。关于知识整合,我们请读者参考§4.7了解更多细节。
知识来源。
知识源通常分为以下类型:
(1) 语料库知识:通常,语料库知识存储在特定语料库的离线集合中,语言模型访问该集合以增强其生成能力。语料库知识的常见例子包括维基百科语料库(基金会)、维基数据语料库、Freebase语料库、PubMed语料库和CommonCrawl语料库等。由于语料库知识的可控性和有效性,以往的研究大多集中在语料库知识上。RetrievalAugmented Language Models已被提议开发能够利用外部知识库进行更基础生成的语言模型。为了进一步提高可解释性,随后的研究建议使用提取的问答对作为语料库,以获得更细粒度的知识三重基础。最近,正如GopherCite所证明的那样,人们对引入引文以增强语言模型的基础越来越感兴趣。另一项工作,包括KELM、ERNIE和其他,主要采用公认的实体作为将知识图谱信息集成到神经表示中的基础。
(2) 互联网知识:与语料库知识相关的一个挑战是其覆盖范围有限,并且需要专门的检索训练。一个潜在的解决方案包括将检索过程转移到搜索引擎,并对其进行调整以找到所需的内容。互联网增强语言模型首次被引入,通过基于互联网搜索结果的回答来回答开放领域问题。这种方法已经被证明可以有效地回答时间敏感的问题。互联网也被用于事后归因。WebGPT提出用网络浏览器为语言模型提供动力,该浏览器在生成知识渊博或真实的文本之前搜索网络。MineDojo为视频语言模型配备了互联网规模的知识,以在Minecraft环境中处理各种任务。ToolFormer类似地将搜索引擎集成到语言模型的工具使用自适应中。ReAct建议利用互联网来增强黑盒大型语言模型的推理能力。
虽然语料库知识和互联网知识都是语言模型可以用来增强其能力的宝贵资源,但它们在可控性和覆盖性方面本质上是不同的。语料库知识被预先收集并离线存储在受控的环境中,使其易于访问并集成到语言模型中。然而,它受到语料库中信息的限制,可能不是最新的或全面的。相比之下,互联网知识提供了一个庞大而多样的不断更新的信息库,提供了更全面的覆盖范围。然而,控制和管理互联网知识是一项挑战,因为从互联网上获得的信息可能更嘈杂,甚至更具误导性。此外,值得注意的是,还有其他各种类型的知识来源,如视觉知识、基于规则的知识。根据其性质,这些知识可以分为语料库知识或网络知识。
知识检索。
用知识增强语言模型需要仔细考虑知识质量。知识质量主要受到知识缺失和知识噪声等问题的影响。通过改变或扩展知识源以提供更全面的信息,可以减轻知识缺失。为了处理知识噪声,一种直观的方法是过滤掉噪声信息。刘等人和叶等人建议通过使用可见性矩阵来解决这个问题,该矩阵对知识和输入之间的注意力得分起作用。这有助于将高质量的知识更好地集成到语言模型中。尽管这些方法取得了成功,但改进知识检索仍然是应对这些挑战的最关键方面。这是因为改进知识检索直接影响选择并集成到语言模型中的知识的准确性和召回率,从而提高整体性能。知识检索总体上有三种方法:
(1) 稀疏检索:在这种方法中,基于输入文本中单词或短语与知识源之间的词汇匹配或稀疏表示之间的相似性来检索知识。例如,ToolFormer采用BM25作为从维基百科检索知识的指标。DrQA使用TF-IDF向量检索文档。RepoCoder将Jaccard索引作为其检索指标之一。此外,研究人员探索了如何利用预训练语言模型复合词的稀疏表示与词汇匹配方法。
(2) 密集检索:密集检索方法根据输入文本的含义检索知识,而不仅仅是匹配准确的单词或短语。意思通常是由一个习得的检索器编码的。可以使用双编码器或交叉编码器作为检索器。例如,REALM采用了一种以无监督方式训练的潜在知识检索器,以在训练和推理阶段从庞大的语料库中提取相关信息和上下文。Retro使用双编码器从外部知识库中检索组块,并通过交叉注意力将检索到的组块集成到语言模型中。Cai等人联合训练翻译记忆检索器和神经机器翻译模型。RepoCoder还采用嵌入模型来计算输入和知识之间的余弦相似性。Atlas使用Contriever检索知识,Contriever是一种通过对比学习训练的基于密集双编码器的检索器。Izacard&Grave和RePlug提出将读者的知识提取到检索器模型中,这只需要很少的注释训练数据。
(3) 生成检索:生成检索器不是通过匹配来检索知识,而是直接将文档id或内容作为知识来生成。因此,生成检索器,通常以语言模型的形式,可以被视为一种知识库,也称为隐式知识。例如,DSI将许多文档及其id编码为语言模型的参数。在推理过程中,模型生成最相关文档的id。孙等人提出用复述来扩充语言模型,复述是由语言模型生成的相关知识内容。余等提示大型语言模型基于给定问题生成不同的上下文文档,然后阅读生成的文档以产生最终答案,其中LLM提示的上下文内演示是从集群文档池中采样的。值得注意的是,知识蒸馏也可能属于这一类。例如,Ho等人允许大型语言模型充当教师,将他们的推理技能蒸馏成较小的语言模型。知识渊博的大型语言模型可以被视为小型语言模型的生成检索器式知识库。
(4) 强化学习:知识检索也可以被表述为强化学习问题。例如,WebGPT通过行为克隆(BC)和来自人类反馈的强化学习(RLHF)来学习检索和选择文档。张等人将实例检索问题表述为马尔可夫决策过程(MDP),并提出了一种选择实例的强化学习(RL)方法。

2.3 模型或工具在环

处理复杂的任务往往需要实施能够简化过程的战略方法。其中一种有效的策略是将任务显式分解为模块化的子任务,然后逐步解决这些子任务。或者,另一种策略涉及通过多个语言模型代理之间的分工对任务进行隐含分解。这种方法能够自然和自适应地分解工作,因为每个代理在更大的任务中承担特定的角色。任务分解过程不仅允许子任务模块化,而且允许子任务组合。此外,通过将任务分解为多个步骤,可以将特定步骤分配给某些专家模型或外部工具,例如专门从事算术计算、网络搜索、计数等的工具。受(Mialon等人;Yao等人)的启发,分解和解决这些子任务主要涉及三个基本操作:

  • 1.思维:该模型进行自我交互,以推理复杂问题并将其分解为模块化的子任务;
  • 2.行动:模型调用工具或模型来解决这些中间子任务,这可能会对外部世界产生影响;
  • 3.协作:具有不同角色或分工的多个模型相互沟通和合作,以实现共同目标或模拟人类社会行为。
    在这里插入图片描述

思考
例如,考虑“非洲最大的动物是什么?”这个问题,它可以分解为三个子任务链:“非洲有什么动物?”→ “这些动物中哪一种是大的?”→ “其中哪一个最大?”这三个子任务形成了一个提示链(参见第4.2.3节),允许通过单个LM、多个LM甚至工具单独解决每个子任务。也就是说,通过思考的过程,整个任务可以分解为多个子任务,这些子任务可以通过语言模型或工具之间的交互以链式的方式有效地处理。
这种认知过程的初步实例化是思维链(CoT),它试图使用级联机制从大型语言模型中引出多跳复杂推理能力。CoT不是直接生成答案,而是预先生成多个想法(即推理步骤)。因此,CoT将任务分解为两个子任务:想法生成→ 答案生成。然而,典型的CoT涉及在没有交互机制的情况下在单个模型运行中解决这些子任务。
CoT的衍生工作显示出越来越倾向于利用自交互循环,该循环涉及迭代调用相同的语言模型来解决不同的子任务,也称为多阶段CoT。此外,其他一些衍生工作与CoT或多阶段CoT有着相似的原理,但采用了不同的训练策略,如自举(如§4.3.4所述)。一些工作超越了思想生成的子任务,引入了新的子任务——包括思想验证、事实选择和推理,以及自我完善和自我反馈等。事实上,所有这些工作都可以被视为思维认知过程的例证。它们采用自交互机制,其中迭代地使用单一语言模型将任务分解为子任务,并有效地解决这些子任务。
行动
与思维过程不同,行动涉及LM与外部实体(如其他LM和工具)的互动。由于不同的模型或工具可以拥有特定的专业知识,因此当任务分解为子任务时,LM可以调用这些外部实体来执行特定的子任务。例如,思想验证可以使用判别模型来完成,事实选择可以使用检索器模型。外部工具,如计算器、模拟器、搜索引擎、代码解释器和执行器以及其他API,也可以合并到循环中,以解决语言模型通常遇到困难的子任务。通常地强调忠实和精确的任务(如真实事实、复杂的数学运算)和LM训练语料库之外的任务(例如最新信息、低资源语言、时间意识、图像生成)使用外部工具比LM更好地解决。
例如,ToolFormer通过对工具使用提示语料库进行再训练,并涉及计算器、日历、搜索引擎、问答系统和翻译系统等工具,增强了具有工具使用能力的语言模型。ART首先从涉及多步骤推理和工具使用的任务库中选择演示。这些演示作为冻结LLM以可执行程序的形式生成中间推理步骤的提示。ReAct将思维链推理和特定任务的工具使用行为相结合,以提高语言模型的交互决策能力。TaskMatrix.AI提出了一个基于工具使用API构建的新AI生态系统的愿景,提出了一种由API平台、API选择器、多模态会话基础模型、基于API的动作执行器组成的体系结构,并集成RLHF和反馈给API开发人员以优化系统。该体系结构得益于其执行数字和物理任务的能力、针对不同任务专家的API存储库、终身学习能力以及改进的可解释性。HuggingGPT和OpenAGI Ge等人使用ChatGPT作为任务控制器,将任务规划为多个子任务,这些子任务可以通过从HuggingFace平台中选择的模型(工具)来解决。
此外,行动可以通过工具的使用对外部世界产生切实的影响,也被称为面向工具的学习。例如,ChatGPT插件使LLM能够直接利用工具执行旅行预订、杂货店购物和餐厅预订等任务。LM Nav利用视觉导航模型(VNM)来执行LLM计划的动作,实现真实世界的机器人导航。在这些情况下,整个任务仍然被分解为子任务,但其中一些子任务与外部世界相连。通过使用特定的模型或工具来解决这些子任务,可以在环境中实现有形的效果。读者可以参考§2.4了解与语言模型和环境之间的交互有关的其他信息。
协作。
上述大多数研究都依赖于手动任务分解。尽管一些现有的工作提出了通过远程监督或上下文学习进行自动任务分解,但显式任务分解并不总是直截了当的。一方面,它需要人力专业知识或大量的手工工作。另一方面,在某些情况下,不同的语言模型代理可能共享一个难以明确分解的共同目标。在这种情况下,任务分解或分工可能会隐含地出现,因为具有专业技能的不同代理在任务中扮演不同的角色并相互作用。例如,在MineCraft中,具有不同但互补的配方技能的代理可以交流和协作合成材料,其中专业代理可以自动发现潜在的分工。据我们所知,我们可以将基于协作的方法分为三类:
(1) 闭环交互是指多个代理在反馈循环中相互交互的协作过程。在控制理论的背景下,闭环控制器使用反馈来控制动态系统的状态或输出。通常,闭环控制器优于开环控制器,因为它们在变化或不确定的环境中提供了更大的适应性和鲁棒性。同样,与开环交互相比,语言模型代理之间的闭环交互更有效、更稳健,使其成为基于协作的方法的主要范式。例如,苏格拉底模型和内部独白使语言模型能够分别与视觉语言模型、音频语言模型或人类合作,进行以自我为中心的感知和机器人操纵任务。基于语言的闭环反馈被纳入LLM规划,显著提高了教学完成能力。Planner Actor Reporter使用LLM(Planner)为单独的RL代理(Actor)生成指令,以在具体环境中执行。将环境状态报告回规划器(通过报告器),以完善说明并完成反馈循环。请注意,闭环交互在环中环境场景中非常适用,其中来自环境的闭环反馈可以通过连接到环境的模型传递。
(2) 语言模型中的心理理论在研究界引起了越来越多的关注。根据科辛斯基的说法,“心理理论,或将不可观察的心理状态归因于他人的能力,是人类社会互动、沟通、同理心、自我意识和道德的核心。”。这一发现表明,类似ToM的能力可能是在大型语言模型中自然出现的。据此,MindCraft为两个对话主体分配了不同的材料组成表(子技能),使他们能够通过相互沟通进行合作并完成材料组成任务。朱等人提供了ToM的说话者和倾听者公式,其中说话者应该模拟倾听者的信念(即,对一些候选指令的行动可能性)。这些ToM机制有利于协作任务。
(3) 交流代理将语言模型视为主体,并深入研究多主体交流。除了心理理论之外,多智能体交流还研究了指称游戏、语言习得、语言出现和角色扮演的场景,这意味着对LLM社会的努力。例如,王等人使两个交流主体,一个说话者和一个倾听者,学会玩“说、猜、画”游戏,并自动推导出他们之间的交互界面,即所谓的机器语言。Camel提出了一个角色扮演框架,该框架涉及两个合作代理,一个是人工智能用户,另一个是AI助手。这两种语言模型使用共享的任务说明符提示和不同的角色分配提示进行提示,称为初始提示。在启动提示的条件下,他们在没有任何额外的人工指令来解决指定任务的情况下相互交流。Generative Agents引入了一种新颖的架构,该架构扩展了LLM,以实现在交互式沙盒环境中对人类行为的可信模拟,展示了Agent自主规划和展示个人和社会行为的能力。袁和朱的形式主义甚至将现有的机器学习范式,如被动学习和主动学习,视为交际学习,这与ter Hoeve等人的交互式语言建模的观点一致。在这些范式中,语言模型主体被分为教师和学生,学生通过互动向教师学习。他们将学习视为一个交流和协作的过程。

2.4 环境在环

在这里插入图片描述
在这里插入图片描述
NLP社区内的一个新趋势是利用LMs的力量来解决具体任务,如机器人操纵、自动驾驶和以自我为中心的感知等。在这些场景中,环境被集成到具有语言模型的交互式循环中。环中环境NLP的目的是语言基础,即根据环境和经验来表示具有意义的语言。有人认为,只有将LMs与现实世界或虚拟环境进行交互,它们才能学习真正有基础的语言表达。在这种交互过程中,环境承担为LM提供低级别观测、奖励和状态转换的责任。同时,LM的任务是为环境任务生成解决方案,包括推理、规划和决策。
我们为语言基础定义了两个维度,如图7所示。横轴从具体端横跨到抽象端。“具体”一词指的是捕捉世界高维数据的模型,如图像、音频和其他类似的感官输入。另一方面,术语抽象适用于捕获低维数据的模型,如语言、代码或其他符号表示。与更具体的表示相比,抽象或瓶颈表示带来了更强的泛化和推理能力。
纵轴范围从低维到高维,其中低维意味着与环境的更直接和具体的互动,如感知或操纵,而高维意味着与周围环境的更间接和概念性互动,如推理、规划和决策。该轴可以反映模型对环境的上下文和情境理解的程度。
通常,环境可以是由MuJoCo和MineCraft等程序模拟的真实世界或虚拟世界。因此,该环境位于图7的左下象限,具有数据和低级交互过程的具体表示。而语言模型位于图7中的右上象限,具有数据和高级交互过程的抽象表示。这种差异使得有必要为LM-env交互建立语言模型。主要有两个方向:模态基础和可供性基础。
(1) 模态基础旨在将语言模型从抽象象限转移到具体象限。将图像、音频或其他形式的信息融入其中是直观的。这样,语言模型可以从环境中捕捉到更完整的观察结果。
(2) 可供性基础努力将语言模型从高级象限过渡到低级象限。目标是将语言模型的输出与上下文场景对齐,确保生成的文本与周围环境相对应,而不是与周围环境分离。
值得注意的是,这两个目标并不是独立的过程,往往会形成对环境的协同作用。此外,其他额外的要求,如偏好和安全性也是可能的方向,这可能会进一步让人参与其中。
模态基础。
模态基础语言模型(MGLM)旨在允许语言模型处理更多模态的数据,如视觉和音频。例如,在视觉基础(即视觉语言预训练模型)的背景下,有三种方法:(1)双塔建模,为不同的模态训练不同的编码器;(2) 单塔建模,使用多模态数据的串联来训练单个模型;(3) 冻结的预训练视觉与语言模型之间的相互作用。这些方法涉及在语言模型的训练和推理阶段使用视觉信息。通过结合视觉信号,这些方法能够在视觉上表现语言。这种表示的增强有助于提高语言模型和环境之间的交互效率,因为它允许增加信息吞吐量。
例如,WebShop和Interactive Language分别使用ResNet和Transformer模型来处理视觉和语言数据,并将融合后的表示输入到另一个Transformer中以生成动作输出;VIMA和Gato使用一个单一模型来同时处理连接的多模态数据并预测动作;Socratic Models、 Inner Monologue和LM Nav使用多模式语言模型将视觉输入转换为语言标题或短语,并使用LLM进行规划、推理和问答,以执行具体任务。ViperGPT为LLM配备了用于各种感知和知识模块的API,以及Python解释器,使LLM能够为视觉推理任务生成可执行代码。
模态基础的另一个目标是在语言模型中保留尽可能多的高级知识,以确保模型仍然能够有效地执行常识推理、规划、问答、代码生成等任务。随着模型的规模增加,这些能力变得更加明显和复杂,称为涌现能力。这些功能是利用语言模型实现具体任务的主要目的之一。这些能力的一个示例是在完成长期导航任务的背景下演示的。在此类任务中,LLM对指令的有效规划至关重要。
可承受基础。
然而,通常,为了使MGLM知识丰富,需要使用来自开放域的大量数据对模型进行预训练,这可能导致输出过于多样化,因此与真实环境中的条件不匹配。因此,需要将来自环境的一些低级信息纳入语言模型,这被称为“可承受基础”。
根据Gibson和Khetarpal等人:“可供性描述了这样一个事实,即某些状态使代理人能够在具体代理人的背景下进行某些行动。”同样,根据Ahn等人:“习得的可供性函数(Can)提供了一个世界基础,以确定对计划执行什么是可能的”。然而,Chen等人认为,Ahn等人未能在场景尺度上提供可供性基础,从而限制了推理机器人在给定环境中可以执行的潜在动作的能力。因此,遵循这一思想,基于可供性的lanugage模型(AGLM)主要有两个要求:(1)场景尺度的感知,以及(2)以基于语言的指令为条件的可能动作。例如,当考虑智能家居环境并要求代理“关闭客厅的灯”时,场景尺度感知旨在使代理意识到所有(或仅)现有和相关的物体,如“台灯”和“吊灯”。其次,可能的操作任务代理确定可以完成指令的对象上的可执行操作,例如“按下开关”。
例如,SayCan利用大型语言模型生成对象行动建议列表(即任务基础),然后通过与环境相关的值函数(即世界基础)对其进行评分。类似地,Chen等人首先通过对机器人代理的预探索来构建语言可查询的场景表示NLMap,然后使用LLM来生成要过滤和定位的相关对象的列表。对象的存在和位置最终用于LLM规划。Abramson等人通过行为克隆训练一名代理,研究配对人类玩家的互动。然后,他们收集人类对学习后的代理的反馈,以训练奖励模型,该模型最终用于对代理进行后训练。也就是说,它们通过行为克隆和RLHF实现了可供性基础。“代码即策略”使语言模型能够直接生成可执行代码。生成的代码可以使用python解释器执行,以进行可供性验证。LM Nav将语言模型的规划结果转换为图像形式,然后使用视觉导航模型将其转换为可执行指令(即动作+距离)。基础解码将LLM的高级语义理解与基础模型的基于现实的实用性相结合,能够生成动作序列,这些动作序列既基于知识,又在机器人等具体代理任务中可行。Wake等人提供了许多利用ChatGPT生成可执行动作序列以完成用户分配的任务的例子。
注意,循环中的知识库、循环中的模型/工具或循环中的人方法也可以用于模态基础或可供性基础。在这些方法中,外部对象或实体承担这些功能,例如利用人类来描述用于模态基础的视觉场景。

3 交互界面

在本节中,我们将讨论语言模型与交互对象进行通信的接口。接口包括三种类型的语言:自然语言、形式语言和机器语言,以及两种特殊的接口:编辑和共享内存。

3.1 自然语言

在这里插入图片描述

自然语言是最常见的交互界面。通过这个界面进行交流需要交互对象能够有效地理解和产生自然语言。因此,该接口通常用于环中模型(Wu et al.,2021;曾等人,2022a)和环中人(Ouyang et al.,2022;Lee等人,2022c)。

自然语言交互使用户能够以固有的表达能力表达他们的需求,从而在不需要专业培训的情况下有效沟通他们的需求。此外,这种交互界面有助于更好地理解中间交互过程,从而提高交互链的可调试性和可解释性(Wu等人,2021;Wei等人,2022b;Lee等人,2022c)。至关重要的是,由于LMs主要是在自然语言上进行预训练的,因此通过自然语言而不是其他语言与他们互动是激活和利用LMs中编码的知识的最有效方式。LM训练数据和交互界面之间的这种对齐允许对包含在LM内的知识的最佳利用。

然而,通过自然语言与语言模型进行交互在很大程度上依赖于语言的组织和表达,通常需要复杂的提示工程(Liu et al.,2022c;Gu et al.、2022;赵et al.和2021;Lu et al.2022d;Dong et al.。,2023b;Chen et al.等,2022f)。语言的组织是指模型提示的结构,可分为非结构自然语言和结构自然语言。另一方面,话语是指用于表达给定提示或查询的特定措辞或语言。言语天生就比较灵活,因此很难确定一个最佳的言语。不同的话语可能产生不同的结果,因为它们与模型参数中的激活模式不同。实际上,可以通过手动或自动搜索来发现合适的提示。我们请读者参考§4.2了解更多信息。

无结构的自然语言。无结构的自然语言是一种自由形式的文本。当它作为语言模型的输出时,它没有特定的分类,内容可以是自由形式的回答,如问题的答案和文本反馈。当它作为语言模型的输入时,除了主要的输入内容,如交互消息和查询,它主要采用三种形式的辅助上下文:(1)少数镜头示例,(2)任务描述,和(3)角色分配(Mishra等人,2022;王等人,2022h;李等人,2023b)。其中,
少数镜头提示的输入格式示例:“[example-1];[example-2];[EExample-3];[Input]”例如。

“海獭→ 卢特雷·德梅尔;毛绒长颈鹿→ 吉拉菲-佩卢切;干酪→” 翻译任务。

•任务描述的输入格式示例:“[任务描述]:[输入]”,例如“将英语翻译成法语:cheese→”.

•角色分配的输入格式示例:“[角色分配].[Input]”例如“充当python程序员:编写代码来检测对象”。

例如,最近的一些工作,包括自然指令(Mishra et al.,2022)和超自然指令(Wang et al.,2022h),已经用自然语言构建了任务及其相应指令的综合集合。交互式语言(Lynch et al.,2022)使人类能够基于给定环境的当前状态为多模式语言模型提供实时指令,用于机器人操作。Camel(Li et al.,2023b)定义了一个初始提示,包括一个任务说明符提示和两个角色分配提示,即辅助系统提示和用户系统提示,用于角色扮演任务。

结构自然语言。结构自然语言通常在内容或格式方面对文本施加明确的约束。这种约束可以施加在语言模型的输入(Zhong et al.,2022)或输出(Ahn et al.,2021)上。例如,Drissi等人(2018);Sun等人(2020a);

杨等人(2022b)通过大纲或计划(例如,“(1)引言,(2)相关工作,(3)方法,(4)实验结果,……”或故事情节)定义生成文章的整体结构。安等人(2022)和陈等人(2022a)通过模板统一生成文本的格式(例如“pick-up[object]”),以便于解析动作和要执行的对象。ProQA(Zhong et al.,2022)采用了一种以结构化方式设计的基于提示的输入模式,例如,“[Format]:<提取QA>;[Task]:

;【域名】:<维基百科>;[问题]:诺曼底位于哪个国家?[段落]:…”。该模式允许对所有QA任务的知识概括进行有效建模,同时还保留针对每个单独QA任务定制的任务特定知识。请注意,尽管ProQA在其输入模式中包含了某些软提示(参见第3.4节),但其实例的主体仍然由自然语言组成。

虽然非结构化自然语言由于其灵活性、简单性和可读性而成为广泛使用的交互界面,但它也存在一些缺点,包括歧义、缺乏连贯性和可简化性。

尽管这些挑战可以通过使用结构性自然语言来部分解决,但所有形式的自然语言都受到其主观性和可变性的内在限制。

3.2 形式语言

3.3 编辑

3.4 机器语言

3.5 共享内存

4 交互方法

4.1 预训练语言模型

4.2 提示

4.2.1 标准提示

4.2.2 启发式提示

4.2.3 提示链

4.3 微调

4.3.1 监督指令调整

4.3.2 连续学习

4.3.3 参数高效微调

4.3.4 半监督微调

4.4 主动学习

4.5 增强学习

4.5.1 反馈循环

4.5.2 奖励模型

4.6 模仿学习

4.7 交互信息融合

5 评估

5.1 评估循环中人的交互

5.2 评估循环中KB的交互

5.3 评估循环中模型或工具的交互

5.4 评估循环中环境的交互

6 应用

6.1 可控文本生成

可控文本生成(CTG)技术是一种NLP方法,它使语言模型能够生成不仅连贯和有意义的文本,而且允许用户控制输出的特定方面。对CTG的需求源于根据用户定义的约束来定制生成的文本的愿望,例如长度约束、包含特定关键词以及坚持特定的情感或风格。传统的CTG方法通常涉及具有明确目标的训练模型,这些目标针对控制属性进行优化,约束解码,以及提示。我们请读者参考张等人和翁以了解更多信息。在本节中,我们简要讨论了iNLP在CTG中的潜在应用。
通过使用户能够在生成或训练过程中直接提供他们的偏好和约束,与人类交互可以增强CTG的可控性。例如,AI Chains允许用户将LLM步骤链接在一起,并以模块化的方式进行修改,从而提高透明度、可控性和协作性。Lee等人提出了控制中间生成过程而不仅仅是最终输出的重要性,并强调需要考虑更多与第一人称主观体验和用户偏好相关的控制属性。Christiano等人;Lu等人;欧阳等;Fu&Khot暗示使用RL或RLHF进行受控文本生成,这不仅能够控制有用性、无害性和诚实性,而且还允许潜在的优化以满足长度约束和其他标准。
正如李等人所建议的那样,与知识库交互可以潜在地增强CTG的稳健性和真实性,他们提出了知识感知微调(KAFT),以提高语言模型的可控性,同时保持其稳健性。KAFT使用朴素监督数据集和增强数据的组合来微调LM,其中包括具有反事实上下文(即与模型记忆的知识相矛盾的上下文)和不相关上下文(即,与任务无关的上下文)的实例。
与模型和工具交互可能会对文本生成产生更复杂、更细粒度的控制。例如,分类器引导的CTG方法将分类器放入循环中以提供控制信号或反馈。类似于Diffusion LM,它在每次迭代时用分类器的控制反馈迭代地对文本进行去噪,Self Refine让LLM生成一个输出,然后对其提供多方面反馈。该反馈用于迭代地细化输出,直到达到令人满意的质量或特定标准。值得注意的是,典型的分类器引导的CTG依赖于外部分类器,而自精炼则通过自交互将LLM本身用作分类器。
如§2.4所述,由于对可供性基础的基本需求,与环境的交互本质上需要很大的可控性。SayCan,作为一个代表性的例子,利用对行动候选者的评分机制来实现这种可控性。
总体而言,各种交互式对象可以提供用于优化CTG系统的不同途径。通过利用交互的力量,我们可以实现对文本生成的更面向用户、更健壮、更细粒度、更复杂甚至更现实的控制。

6.2 写作助理

智能和交互式写作助理是一个快速增长的研究领域,探索人工智能工具修改、丰富甚至与人类共同创作内容的潜力。根据他们在内容生成过程中的参与程度,这些助理大致可以分为四类:(1)内容支持,(2)内容检查和打磨,(3)内容丰富,以及(4)内容共同创建。
内容支持。
支持内容的写作助手不生成供使用的内容,而只是为作者提供功能帮助,如即时摘要和实时可视化。例如,Arnold等人提出了一种互动方案,向人类作家提供问题以获得灵感,而不是使用内容片段。Dang等人提出了一种写作助手,它可以不断更新现有内容的摘要、关键词和中心句,以供用户参考,而不是直接生成内容。Singh等人设计了一个写作助理,提供视觉和听觉建议作为写作支持。尽管支持内容的写作助理为人类作家提供的帮助微乎其微,但在某些情况下,他们受益于避免在写作过程中占据主导地位,这是基于PLM的写作助理面临的主要挑战之一。此外,写作支持可以减少触发或操纵写作助手的手动努力,例如重提示工程。具体而言,Dang等人指出,非数字提示需要手动操作,因此人类倾向于从写作助理中选择建议,而不是通过非数字提示控制自动内容生成。Jakesch等人指出,人类作家的内容创作甚至会受到固执己见的PLM写作助理的影响。这些挑战可以通过降低写作助理对内容支持的参与程度来缓解。
内容检查和打磨。
内容检查和润色的处理过程通常包括将手动编写的句子作为输入,并生成经过语法检查和重新表述的输出,从而允许用户交互和迭代地改进他们的写作。著名的现实世界产品包括QuillBot、Effidit、Pitaya、Grammarly和Xiezuocat。人们对将迭代编辑操作纳入写作助手也越来越感兴趣,这可以被视为基于编辑的iNLP的应用(§3.3)。例如,Kim等人建议结合其他文本编辑任务的迁移学习,通过将编辑动作与内容质量联系起来,提高迭代文本修订的质量。Du等人提出了一种新颖的人在环迭代文本修订系统,该系统将模型生成的修订与人的判断相结合,并特别微调PEGASUS模型作为修订生成模型,使用该模型基于给定的句子和编辑意图生成修订的句子。
内容丰富。
与内容检查和打磨不同,内容丰富涉及更具创造性的内容生成,但仍然依赖于手动提供的上下文或配置。经典的内容丰富功能包括文本补全(AutoComplement)和关键词到句子(K2S)。请注意,AutoComplement和K2S只是补充手动输入,而不是通过手动协作或指导从头开始共同创建新内容。自动提示是一种交互式写作助手功能,通过提供建议来完成提示,让人们参与内容生成过程,从而增强他们的整体写作体验。例如,Sun等人提出了一种意向引导创作(IGA)助手,该助手遵循细粒度的作者规范来处理自动完成的输入文本。IGA中提出的方案类似于最近的指令调整趋势(§4.3.1),这表明书写助手中更复杂和可控的用户偏好可以格式化为指令,以进一步激活指令调整LLM。自动补全还可以适用于各种NLP下游任务,包括医学文本简化、人机协同翻译和形态复杂的低资源语言的交互式单词补全。此外,K2S与可控文本生成高度一致(参见第6.1节),但更强调可控交互。实际的K2S应用程序通常允许用户以交互方式根据其特定需求和偏好定制细粒度的控制属性。例如,CueBot提出了一种会话助手,能够生成用户可以使用提示/关键词控制的响应。它建议用户从中进行选择,并在训练过程中加入关键词损失,以生成词汇约束的输出。
内容共创。
内容共创是指人类和人工智能系统之间的协作过程,从零开始生成新内容,而不是简单地改进现有内容。内容共创在互动小说写作、电影剧本和戏剧剧本写作、学术写作和诗歌写作中得到了广泛探索。例如,Tapscott等人将故事生成建模为模拟角色扮演游戏和追踪玩家互动序列。杨等人开发了DOC,其中包括一个详细的大纲生成器和一个详细控制器,显著提高了长篇生成的连贯性。Chakrabarty等人提出了CoPoet,一种由指令提示和LLM提供动力的交互式诗歌写作助手,并验证了与没有CoPoet参与的诗歌相比,共同创作的诗歌通常更受欢迎。Dramatron采用分层控制的PLM,允许专家编写器控制样式标签、逻辑线、字符描述和环境描述。这使得编写人员能够轻松地为各种用例生成必要的材料。然而,在用于内容检查、打磨和丰富的实用写作助理日益成熟的同时,内容共创写作助理仍然面临着各种需要解决的挑战。例如,Ippolito等人指出,当前用于故事生成的NLG技术在保持作者的声音和故事情节的连贯性方面往往表现不佳。吴等;袁等;陈等人证明,在生成的内容中,可控性和创造性之间往往存在权衡。此外,由于创造性写作的主观性质,对基于内容共同创作的写作助理的评估也可能特别具有挑战性。尽管为构建可靠的评估基准做出了各种努力,Mirowski等人;Ippolito等人认为,由于人工智能生成内容(AIGC)的质量不断提高,与众包注释者相比,专业作家在评估中变得越来越重要。

6.3 嵌入式AI

嵌入式人工智能使语言模型能够影响真实世界和虚拟环境,代理通过这些环境观察和更新自己及其周围环境的状态。将语言模型与物理世界连接起来的一种方法是与§2.4中提到的基础语言进行交互,这允许语言模型看到、听到和控制外部对象。
观察和操作是许多具体任务的基础,在这些任务中,代理获取外部状态并执行更新这些状态的操作。得益于文本描述和文本控制界面,语言模型通常通过输入文本来观察其周围环境,并通过发送文本命令来操作对象。例如,视觉感知映射器将视觉输入转换为自然语言中的文本。此外,人类干预可以是智能体观察的一部分,因此智能体可以由实时的人类反馈指导。典型的观察和操作任务包括物体重排、工具使用、物品创建和修改以及其他机器人控制任务。
导航和探索使代理能够通过动态观察和操作四处移动并研究周围环境。也就是说,与观察和操纵任务不同,导航和探索任务允许代理在环境中移动,以调整其观察和操纵。这些代理不仅规划路线和行动,还结合从不同地点收集的观测结果来做出决策、回答问题和推理,使他们能够完成需要多地点多目标观测和长期操作的复杂任务。自然语言和编程语言中的文本命令弥合了语言模型代理与可用动作和工具之间的差距。在这样的过程中,这些代理还结合了不同的数据源,包括相机、麦克风、其他传感器和来自人类控制器的文本命令。此外,代理还可以作为助手指导人类操作。例如,交互式驾驶助手可以持续观察驾驶环境,并指导人类驾驶员处理各种情况。
多角色任务要求代理与人类和其他代理合作和竞争,以达到特定的目标。与具有多种技能的代理不同,具有社交能力的代理通常会观察他人的行为,并通过文本消息进行交流,包括自然语言的消息和更结构化风格的数据。典型的社交任务包括多人游戏、人工智能协作、多智能体协作和其他沟通任务,如面试、谈判、招聘和意见收集。在基于文本的游戏任务中,代理从人类行为中学习,并作为人类玩家进行游戏。在多智能体环境中,智能体相互协调以完成任何单个智能体都无法完成的复杂任务。代理人还充当代理人,与他人沟通以完成日常任务,如餐厅预订和预约安排。MetaAI的Cicero使语言模型代理能够在在线外交联盟中发挥作用。

6.4 文本游戏

文本游戏,也称为互动小说游戏,能够理解玩家命令,模拟玩家状态,并更新游戏环境的当前状态。语言模型在这些游戏场景中显示出了巨大的潜力,这是一种特定类型的具体人工智能(参见第6.3节)。具体而言,语言模型可以用于通过基于文本的界面玩文本游戏或为文本游戏提供动力,例如状态描述、命令、情境对话和多方对话。因此,文本游戏是iNLP的内在应用,其中环境或其他代理参与游戏循环。我们可以将文本游戏分为两类:(1)仅依赖文本的纯文本游戏,以及(2)使用文本作为其他形式媒体(如图形或音频)补充的文本辅助游戏。在本小节中,我们将从讨论交互式文本游戏平台开始。然后,我们将简要概述如何利用语言模型玩纯文本游戏和支持文本辅助游戏。
交互式文本游戏平台。
交互式文本游戏平台为构建和运行基于文本的游戏提供了一个框架和引擎,通常包括游戏状态跟踪、基于解析器的自然语言理解和脚本事件等功能。此类平台的一些示例包括:
(1) 文字冒险游戏是允许玩家仅通过文字描述和动作与冒险世界互动的游戏。Osborne等人总结了两个主要的文本冒险游戏平台:TextWorld和Jericho。此外,他们定义了在开发文本冒险游戏解决方案时需要解决的七个主要挑战,包括部分可观察性、大状态空间和长期信用分配等。
(2) 社交演绎游戏是玩家试图通过战略对话、逻辑演绎和欺骗行为来发现彼此隐藏的角色或团队忠诚度的游戏。例如,社会演绎游戏的经典例子包括《狼人》、《蘑菇》、《SS13》和《在我们中间》。具体而言,赖等人提出了一个包含文本和视觉信号的多模式数据集,以模拟狼人的说服行为。林等人是另一个基于狼人的具有自我揭示和角色估计行为注释的语料库。Tuin&Rooijackers基于游戏《我们之中》构建了一个旨在检测玩家角色的语料库,并验证了这是一项具有挑战性但可学习的任务。
(3) 战略游戏是在很大程度上依赖玩家的决策技能和情境意识来决定结果的游戏。例如,《外交》是一款战略棋盘游戏,涉及多个玩家,每个玩家都控制着一个欧洲大国的武装部队。游戏的目标是巧妙地移动自己的部队并击败对手的部队,以获得被称为“供应中心”的大多数具有重要战略意义的城市和省份的控制权。这种游戏的竞争性质通常要求玩家相互进行广泛而复杂的互动和外交,以实现他们的目标。外交正受到越来越多的关注,并被广泛视为自主主体与人类一样沟通和调整战略能力的基准,这是人类文明成功的基本要素之一。Cicero提出了一种令人印象深刻的自主代理,它将PLM与RL相结合,并在Diplomacy中实现了人类级的性能。此外,Kramár等人对谈判算法和惩罚叛徒的倾向如何使自主主体能够像人类一样进行沟通并在外交中更有效地合作进行了初步调查。除了Diplomacy,还有许多经典的战略游戏作为互动文本游戏平台和相关NLP研究的潜在资源,如Eurogame、Warhammer Fantacy和Paths of Glory。
(4) 桌面角色扮演游戏(TRPG),如《龙与地下城》(DND)和《克丘鲁的呼唤》(COC),以及小说作品,如《哈利·波特》系列,提供了丰富的情境和多方对话数据来源,可用于构建具有挑战性的文本游戏平台。然而,记录TRPG游戏过程的原始对话数据通常是角色内动作描述和角色外策略解释的混合,通常伴随着冗长的世界构建文件,这些文件可能因游戏而异。提取黄金标准游戏状态和游戏命令的问题仍然是一个具有挑战性但引人入胜的问题。例如,Rameshkumar和Bailey从记录DND游戏过程的原始对话数据中提供了34243个摘要对话片段对。这些摘要对话块对中的摘要包含游戏状态的文本描述,可以作为交互式文本游戏的抽象游戏状态摘要的良好基准。Callison Burch等人将DND定义为一个对话系统挑战,包括掷骰子等确定性元素和作为部分状态信息的游戏玩法的不精确描述。周等人介绍了一种基于DND的新型高度交互式任务G4C(地面通信中的目标驱动制导生成)。他们使用心智和RL理论训练一个充当游戏主机的自主代理,也称为地下城大师(DM)。这种方法大大提高了参与者实现目标的能力。
(5) 生活模拟游戏是使玩家能够控制一个或多个虚拟角色的游戏。经典的生活模拟游戏包括虚拟宠物、黑白、MineCraft和GTA系列。例如,Bara等人;范等人;袁等人探索了基于PLM的自主代理如何使用MineCraft作为交互式游戏平台,在一系列任务和目标中学习协作、沟通和概括。此外,社交模拟游戏是模拟虚拟世界中多个人造角色或生活之间的社交互动和关系的生活模拟游戏的子类型。例如,模拟人生系列是一款经典的社交模拟游戏。Mehta等人增强了人工智能代理识别何时需要额外信息的能力,以实现更多的人工智能交互并改进社会模拟。正如所指出的,角色扮演代理和开放沙盒世界可以很容易地作为社交模拟游戏中的因素进行调整。Park等人使用社会身份设置配置基于PLM的自主代理,并相应地进行社会模拟。他们的实验设计非常符合模拟人生系列的游戏性。
玩纯文本游戏。
早期关于纯文本游戏自主代理的工作主要依靠手工制作的奖励函数或其他格式良好的数据结构,如知识图谱,来保存和检索过去的信息和游戏状态。尽管在PLM出现之前的一些探索性方法也采用了文本的琐碎神经表示来帮助检测纯文本游戏中的动作和状态,但这些方法专注于受限的手工制作的基于模板的状态和动作空间,无法理解许多纯文本游戏中复杂且高度非结构化的文本。姚等人指出,这些方法基于受约束的手工制作的基于模板的状态和动作空间,通过验证不理解语义的智能体可以通过采用类似的方法但不理解语义在这些纯文本游戏上实现类似的性能,从而使自主智能体无法理解单词或语义的含义。为了设计更好的纯文本游戏作为自主主体语言理解能力的测试平台,在不理解语义的情况下,不应通过手工制作的模板来检测隐含在单词中的动机和策略。以下工作转向基于PLM驱动的神经表示的自主代理,该代理较少依赖人工。例如,Yin&May将基于句子级语义表示的聚类和深度Q学习用于玩文本冒险游戏。徐等人提出了一种用于纯文本游戏的基于轻量级Transformer的表示学习框架,并优于以前的SOTA方法。最近,LLM的成功使纯文本游戏能够探索处理任何用户输入。理解用户输入的含义复杂而模糊,需要仔细注意文本中明确描述的动作和状态。
为文字辅助游戏提供动力。
传统上,在文本辅助游戏中,自主代理使用形式语言或结构化自然语言来建模状态转换,并使用高度符号化的表示来执行动作。随着PLM的出现,这些代理从使用符号表示转变为使用上下文和神经表示,后者捕获了文本陈述策略和通信协议的更复杂和高级语义。因此,我们将阐明语言接口和PLM使文本辅助游戏中的自主代理能够与其他代理通信并制定更好的游戏计划的方式。自从ChatGPT令人印象深刻的发布以来,一些工业和学术研究人员也一直在探索LLM的改编,以增强文本辅助游戏体验。Inworld声称,LLM可以赋予游戏中具有不同个性和背景意识的角色权力,使其留在世界或品牌中,这大大提高了游戏的沉浸式体验。网易还宣布,他们允许其在线游戏《Nishuihan》中由LLM驱动的非玩家角色(NPC)以相当大的自由度进行交流。除了通信,语言接口和NLP驱动的规划在文本辅助游戏中的自主代理设计中也得到了探索,用于奖励塑造、指令跟随、控制策略泛化和表示学习。此外,语言界面在训练自主文本辅助游戏代理方面发挥着重要作用。例如,Havrilov&Titov;Wong等人指出,高效的基于语言的通信协议对于多智能体文本辅助游戏中的协作策略至关重要。姜等人认为,语言可以自然地组成不同的子技能,以丰富复杂文本辅助游戏分层策略的非组成抽象。此外,验证了语言建模诱导表征,这甚至对游戏的离线RL策略建模有用。这一观察结果暗示了语言的高级语义连贯性与文本辅助游戏所采用的计划策略之间的关系。

6.5 其他应用

专业化
它指的是使语言模型的能力适应和定制特定任务或领域的过程。正如Fu等人所假设的那样,具有强大建模能力的语言模型可能在广泛的任务中有效,但由于其能力的分布,它们在任何单个任务上的性能都可能不那么令人印象深刻,这意味着需要LM规范。尽管一些领域特定的语言模型被提出用于法律、医疗保健、材料科学和金融等领域,但它们主要是从特定领域的大型语料库中微调而来的。另一方面,iNLP可以为LM专业化提供另一种解决方案。也就是说,通过观察医疗记录、法律文件、财务报表、技术规范、特定领域的知识图谱甚至特定领域的工具集等外部对象并与之交互,语言模型可以为用户提供专业信息。例如,在医学中,iNLP可用于从患者记录中检索相关信息,并提出潜在的诊断或治疗建议。在法律上,iNLP可以帮助律师起草法律文件和合同,提供基于先前案件和法律先例的检索增强的建议。因此,为语言模型配备特定领域的交互对象可以以更高的数据效率和计算效率来实现它们的规范。
个性化。
它指的是根据每个用户的独特需求和偏好定制语言模型的行为和输出的过程。这可以通过模型与用户的交互、从用户的输入、人口统计中学习并相应地调整其行为来实现。例如,Rao等人认为,通过从用户互动和个人偏好中学习,ChatGPT有可能变得更加个性化和定制。Salemi等人引入了个性化基准,并建议通过使用用户档案的检索增强来个性化LLM。吴等人展示了通过使用提示来个性化PLM的潜力。Madaan等人通过具有人类反馈的外部存储器对PLM进行个性化设置。个性化可以通过提供更偏好的响应,提高模型理解用户需求和意图的能力,并最终在用户和模型之间建立信任和融洽关系,从而大大增强语言模型的用户体验。然而,我们也应该意识到个性化带来的弊端。例如,Deshpande等人证明,将角色分配给ChatGPT可能会将其毒性放大六倍。
基于模型的评估。
与基于统计的评估指标(如BLUERT、BERTScore和COMET)相比,基于模型的评估享有PLM的优势,可以为每个生成的样本计算文本质量分数,并显示出与人类评估的更大相关性。这样的评估方法可以在各种通用NLG任务中广泛实现和使用,甚至适用于无参考设置。此外,现有的初步研究表明,LLM已经出现,能够与类人法官一起评估人工智能生成的内容(AIGC)。一些论文还提出了对LLM在特定NLG任务中评估AIGC的能力进行细粒度分析,包括摘要。此外,刘等人;He等人提议与LLM合作,提供更好、更便宜的类人评估。通过模型甚至人类之间的相互作用,我们可以以更有效(准确)和高效(自动)的方式评估LMs。这种评估过程可以类似于教师模式,管理“考试”和“评分”来评估学生模式的表现。

7 道德与安全

LLM在理解、解释和生成类似人类的文本方面表现出了非凡的能力。大量基于LLM的应用程序已经出现,并在我们的日常生活中广泛采用。因此,这些模型的使用也在许多社会领域带来了深刻的挑战。因此,考虑使用LLM的道德影响至关重要,尤其是对教育、偏见和公平、隐私、有害内容和错误信息的影响。
对教育的影响。
以ChatGPT为例,LLM的出现给现有的教育系统带来了巨大的挑战。一个主要的担忧是,ChatGPT被滥用于学术任务,如撰写论文和解决科学问题,这引起了K-12教育工作者的深切关注,他们认为这是对教育系统的潜在威胁。为了解决这个问题,已经开发了剽窃检测工具,如GPTZero、AI分类器和DetectGPT,用于检测AI生成的内容。这些人工智能检测工具大多关注困惑(文本随机性)和突发性(非常用术语的使用)。尽管如此,这些工具尚未证明其在现实世界环境中捕捉人工智能生成内容的有效性。最后但同样重要的是,包括ChatGPT在内的计算机辅助写作工具在帮助用户学习和获得写作技能和原则方面的能力有限。他们的主要重点是提高生产力,而不是促进技能发展,这对教育目的至关重要。
社会偏见。
由于语言模型通常是用大规模的网络语料库训练的,因此它非常容易受到社会偏见的影响。众所周知,它会进一步放大歧视,包括简历的潜在降级和包含刻板印象、毒性和种族主义的文本的生成。简历“白化”一直是一个问题,求职者被迫隐藏自己作为少数性别、种族、宗教或地区群体的身份,以获得求职面试。尽管许多公司开始使用人工智能支持的工具对简历进行排名和筛选,但这个问题仍然存在。当与女性和程序员相比,男性这个词更接近程序员时,就会反映出单词嵌入中的社会偏见。将预训练的单词嵌入用于下游任务(如分类和分析)的应用程序将获得具有社会偏见的结果,从而导致输出的公平性问题。Hutchinson等人使用毒性预测和情绪分析来评估语言模型对残疾人的偏见。结果表明,判决我是一个有精神疾病的人,我会为有精神疾病者而战,这比我是一个子高的人更毒。HERB是一种偏见评估指标,它利用子区域中的偏见来在情境化水平上评估语言模型在某个区域中的偏差,这引起了研究人员的注意,不仅要关注整个区域的社会偏见,还要关注子区域的社会偏差。上述研究结果表明,在语言模型中观察到的社会偏见可以表明,刻板印象应该得到解决和缓解,而不是让它们伤害少数群体。考虑到现在每个人都可以很容易地获得LLM,应该过滤或减轻偏见,以确保它们不会被放大,并进一步影响人们在做出招聘和评估个人等决策时的想法。
隐私担忧。
大型语言模型(LLM)也引起了人们对用户隐私的担忧。训练这些模型需要访问大量数据,这些数据通常涉及个人的个人细节。这些信息通常来源于许可或公众可访问的数据集,并可用于一系列目的,例如从数据中的电话代码推断地理位置。已经有研究表明,通过提示从大型语言模型中提取敏感信息的可能性。在交互式NLP时代,人类更积极地与这些基础模型进行交互,这可能导致更频繁的用户信息泄露。因此,迫切需要制定收集和存储个人数据的相关政策。此外,数据匿名化的做法对于维护处理隐私问题的道德标准至关重要。已经有一些开创性的研究调查了隐私保护问题。李等人;施等人。我们认为,应该致力于大型语言模型中的隐私保护,这将在交互式自然语言处理(iNLP)时代发挥核心作用。

8 未来方向

对齐
语言模型的对齐可以分为事实对齐和价值对齐。事实一致性要求模型在没有延续所需知识的情况下告诉我们它无法回答这个问题。然而,事实对齐在实践中是具有挑战性的,因为1)很难验证预训练模型中包含了什么知识,以及2)我们仍然缺乏一种方便的知识编辑方法来更新某些知识,同时又不损害其他知识。未来的工作可以考虑开发工具,通过分析模型预测中的概率置信度来检测“知识盲点”,以及在规模上编辑预先训练的模型中的知识的有效方法。对于价值比对,现有工作主要集中在使用人类或人工智能反馈来训练奖励模型作为人类判断的代理。在训练过程中,这种奖励模型将持续与生成LM相互作用,以增强期望的行为并抑制不期望的行为。RLHF是这种方式的代表性方法,已广泛应用于OpenAI ChatGPT等产品中。然而,最近的工作表明,RL优化可以利用不准确的奖励建模,这在RL形式化中也被称为“奖励黑客”问题。未来的工作可以寻求更多样、更细粒度的信号来取代标量形式的奖励,以帮助进行更稳定、更高效的对齐训练。
社会体现。
NLP模型应包含更全面的世界观,包括具体化和社会背景,以模拟现实的人类行为。这是因为社会和文化因素在很大程度上影响着人类的行为。最近,生成代理被引入,作为一种模拟可信人类行为的方法,通过将LLM与代理经历的完整记录结合起来。然而,要提高此类社会代理的准确性和复杂性,仍有挑战需要解决。扩展iNLP以处理更大、更复杂的环境是一个潜在的未来方向。这将使代理能够处理更雄心勃勃的人类行为模拟,并对用户交互产生更现实的响应。
塑性。
iNLP遇到的一个重大挑战是不断需要更新以适应现实世界的变化。学术文献中流行的方法通常使用基于梯度的微调方法。这些方法同时调整预训练模型中的大量参数,这可能是过度的。尽管如此,如果调整的参数数量不足,模型可能无法有效适应现实世界场景的变化。因此,识别对iNLP模型进行有效更新的方法对于实际应用至关重要。近年来,研究人员对持续学习领域的兴趣日益高涨,旨在增强模型随着时间的推移持续学习的能力,同时最大限度地减少先前获取的信息的损失。持续学习使iNLP模型能够适应新的数据和动态情况,而无需从头开始重新训练模型。值得注意的是,生物神经网络在其一生中不断需要基于神经元可塑性的新技能。未来的研究重点是更像人的模型预计将加快iNLP持续学习的进展。
速度与效率。
iNLP通常需要大型语言模型作为主干,因此具有高延迟和巨大的计算成本。由于需要频繁的迭代调用,与传统的NLP相比,高延迟问题对iNLP来说更为关键。在提高大型语言模型的速度和效率方面已经做了大量的工作,包括静态方法,如知识蒸馏、修剪、量化和模块替换;以及动态方法,如自适应计算、早期退出和模型级联。然而,上述大多数方法都需要访问模型参数,这在未来可能是不可能的,因为大多数最先进的广义模型,如ChatGPT和PaLM都是封闭来源的。因此,开发可以在不访问LLM参数的情况下加速LLM推理的技术是高效iNLP的一个有前途的未来。此外,重要的是不仅要考虑加速模型的加速比或保持的性能,还要考虑它们的鲁棒性、偏差和对齐。
上下文长度。
上下文长度是指语言模型所允许的输入标记的最大数量。例如,ChatGPT有一个8K词元的上下文窗口,而GPT-4将其扩展到32K词元。iNLP可以从长上下文窗口中受益匪浅。原因有三个:(1)它可以保持和理解更广泛的对话历史。(2) 处理较长上下文的能力对于涉及大量文本的任务至关重要,例如基于长文档的QA和环境中的详细观察。(3) 它还可以促进长格式内容的生成。最近关于记忆Transformer的研究已经说明了使用记忆增强技术将上下文窗口扩展到数万个词元的潜力。此外,Anthropic还推出了一个带有100K上下文窗口的聊天机器人。然而,尽管取得了这些进步,仍需要更多的研究来调查与显著增加上下文长度相关的挑战。
长文本生成。
生成长文本的能力在iNLP环境中至关重要。例如,在现实生活中的对话中,人类经常传达复杂的想法,并参与极其漫长的讨论,这需要进行多轮信息交流。此外,对于长期的机器人操作任务,LM需要生成一个长期的执行行动计划。然而,随着生成的文本变长,当前的语言模型倾向于生成可能缺乏结构、连贯性、质量甚至与输入提示的相关性的内容。因此,需要更复杂的自然语言处理技术来准确地捕捉语言的微妙之处,并产生连贯而有用的文本。
可访问性。
在大型语言模型部署领域,可访问性是一个关键问题。最突出的LLM,如GPT家族模型和Bard,主要是闭源的,这给那些寻求将其用于特定目的的人带来了重大障碍。最近,研究人员将重点转移到开发开源LLM上,包括LLaMA、Pythia和GLM。面向开源大型语言模型的运动预计将在未来获得势头。到目前为止,另一个受到有限研究关注的新兴趋势是在智能手机、笔记本电脑和汽车等边缘设备上部署LLM的可访问性,尽管之前已经有几项关于该主题的工作。对更易于访问的语言模型的研究可以扩展iNLP的可能性。例如,在涉及离线交互的场景中,它可能特别有益。
分析
尽管交互式语言模型显示出在广泛的主题和上下文中理解和生成复杂语言的强大能力,但其“内部工作”对用户和研究人员来说仍然是一个黑匣子。我们认为,对LM及其可解释性有更深入的了解可以改善LM代理表现出的相互作用行为。例如,Bills等人利用GPT-4通过分析GPT-2中所有神经元响应输入文本的激活来为其提供解释。直观地说,这种可解释性可以促进iNLP背景下语言模型中的知识更新。此外,对缩放定律的分析、涌现能力、放大性能预测、对齐和一般性能之间的权衡、LMs相互作用行为的可解释性也是未来研究的有希望的途径。
创造力
与流行的依赖于学习统计关系的语言建模方法相反,创造力涉及产生偏离传统模式的原始想法、概念或视角。长期以来,追求创造力一直是人工智能界的一个重大挑战,这是由开发能够在各个领域产生新知识和贡献原创想法的人类级代理的愿望驱动的。为了有效地产生更多的创意内容,建立一个详细的创意定义或判断标准至关重要。例如,生成新的隐喻需要在源域和目标域之间建立概念映射,而故事生成则需要创建原创、连贯和引人入胜的叙事和情节。此外,在生成的文本中生成新知识的能力,而不仅仅是提取现有知识,有助于增强创造力。此外,探索增强生成内容创造力的方法以确保实用性是至关重要的。例如,使语言模型能够根据观察到的现象发现理论或规律需要付出专门的努力,并可能需要探索语言模型参与意识思维的新范式。对更具创造性的语言模型的研究可能会揭示LMs的一系列复杂的互动特性或行为,例如开发更具创造力的写作助理,甚至出现语言模型代理之间的复杂辩论。
评价
如§5所示,对iNLP的评估仍然是空白的,缺乏多样性。如何设计更好的评估方法将是未来最重要的研究课题之一,这将深刻影响iNLP框架的设计和优化方向。具体而言,互动环境下的评估方法可能会在以下几个方面发展:(1)更多地关注互动过程的评估,而不仅仅是结果。(2) 设计一个更标准的评估基准,以支持不同交互模型的比较。(3) 评估大型语言模型的交互性。

9 结论

在这篇论文中,我们对交互式自然语言处理进行了全面的探索,这是一种新兴的范式,将语言模型定位为不同语境中的交互式代理。我们提出了iNLP的统一定义和框架,然后进行了系统分类,解构了其整体组件,如交互对象、接口和方法。此外,我们还阐明了该领域使用的各种评估方法,展示了其众多应用,讨论了其伦理和安全问题,并思考了未来的研究方向。通过关注iNLP与人类、知识库、模型、工具和环境交互的能力,我们强调了该范式在增强一致性、个性化反应、丰富表征、避免幻觉、分解复杂任务和将语言融入现实等方面的潜力,这项综述对iNLP的现状和未来潜力进行了广泛的了解,为渴望深入研究这一快速发展的领域的研究人员提供了重要的参考点。

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Broken Gallery 靶场

主机发现 sudo nmap -sn 192.168.28.0/24 sudo nmap -sT --min-rate 10000 -p- 192.168.28.32 -oA nmapscan/ports sudo nmap -sT -sV -sC -O -p22,80 192.168.28.32 -oA nmapscan/detial sudo nmap --scriptvuln 192.168.28.32 -oA nmapsccan/vuln 访问80 图片下载下来 exift…

如何在 ZBrush 和 UE5 中创建精灵吟游诗人(P2)

小伙伴们大家好,下篇咱们精彩继续,主要是讲解角色建模完成后的重新拓扑、UV、灯光设置和渲染。 纹理的重新拓扑和UV 一切都在 Maya 中完成,重新拓扑是一个漫长的过程,因为角色有很多元素,值得庆幸的是,在…

模型训练-3D并行

1. 数据并行(Data Parallel) 1.1常规数据并行 有一张显卡(例如rank 0显卡)专门用于存储模型参数、梯度信息和更新模型参数。将训练数据分成多份(份数等于显卡数量),每张卡上的模型参数相同&…

CSS编写的瓶颈在哪里?CSS预处理器登场解决你的燃眉之急!

文章目录 I. 引言解释CSS预处理器是什么提及CSS预处理器的好处 II. 为什么要使用CSS预处理器减少代码量变量Mixin函数 & 条件语句 提升CSS的可读性和维护性嵌套规则继承 方便维护加入Source Map方便调试自动前缀 III. 简介几个流行的CSS预处理器Sass介绍Sass的特性解释Sass…

69、基于51单片机智能交流电表蓝牙远程抄表OLED屏系统设计(程序+原理图+PCB源文件+参考论文+参考PPT+元器件清单等)

方案选择 单片机的选择 方案一:AT89C52是美国ATMEL公司生产的低电压,高性能CMOS型8位单片机,器件采用ATMEL公司的高密度、非易失性存储技术生产,兼容标准MCS-51指令系统,片内置通用8位中央处理器(CPU)和Flash存储单元…

404系列之404界面

先看效果&#xff1a; 再看代码&#xff1a; <!DOCTYPE html> <html lang"en"> <head><meta charset"UTF-8"><title>404</title><style>* {border: 0;box-sizing: border-box;margin: 0;padding: 0;}:root {-…

PLC数据采集如何实现远程监控和远程维护上下载?

随着PLC在工业自动化控制领域得到越来越广泛的应用&#xff0c;PLC数据采集是也逐渐成为现代工业自动化的重要组成部分。通过采集PLC内的数据&#xff0c;可以实时监测控制生产过程及工艺参数&#xff0c;提高生产效率和产品质量&#xff0c;能够使企业能够获取关键生产数据&am…

面试中经常问到的线程安全的集合类,这样回答会显得很优雅

前言&#xff1a; 本篇文章主要讲解面试中经常问到的线程安全的集合类的知识。该专栏比较适合刚入坑Java的小白以及准备秋招的大佬阅读。 如果文章有什么需要改进的地方欢迎大佬提出&#xff0c;对大佬有帮助希望可以支持下哦~ 小威在此先感谢各位小伙伴儿了&#x1f601; 以…

03【锁、事务原理、MVCC】

文章目录 一、MySQL锁机制1.1 锁的分类1.1.1 按操作分1.1.2 按粒度分1.1.3 按算法划分 1.2 MyIsam引擎锁1.2.1 准备数据1.2.2 MySIAM引擎写锁1.2.3 MySIAM引擎读锁1.2.4 小结1.2.5 表锁应用场景1.2.6 InnoDB的表锁1.2.7 MyISAM 的并发插入1.2.8 MyISAM的锁调度 1.3 InnoDB 引擎…

通达信超跌反弹选股公式,使用筹码函数WINNER

在前面的文章中&#xff0c;已经介绍了WINNER函数&#xff0c;不过对于如何使用函数&#xff0c;当时只进行了简单举例&#xff0c;没有做深入研究。本文将结合WINNER函数的特性&#xff0c;编写通达信超跌反弹选股公式。 WINNER函数表示获利盘比例&#xff0c;取值范围是0-1&…

【Leetcode】17.电话号码的字母组合

一、题目 1、题目描述 给定一个仅包含数字 2-9 的字符串,返回所有它能表示的字母组合。答案可以按 任意顺序 返回。 给出数字到字母的映射如下(与电话按键相同)。注意 1 不对应任何字母。 示例1: 输入:digits = "23" 输出:["ad","ae",…

剑指 Offer 38: 字符串的排列

这道题一看就是使用回溯法&#xff0c;但是由于是排列&#xff0c;所以索引和组合不同&#xff08;组合的索引是从start标志位开始&#xff09;&#xff0c;排列是从下标为0开始&#xff0c;并且需要借助排序&#xff01;所以需要先转化成将String转化为char[]类型&#xff0c;…

微信小程序开发流程

如今微信小程序定制需要一个开发周期和流程&#xff0c;比起模板来说&#xff0c;定制开发的流程更加复杂。做微信小程序定制开发&#xff0c;首先要做的工作就是确定需求和框架的确立&#xff0c;比如一个社交小程序&#xff0c;可能考虑的问题不只是用户之间消息沟通&#xf…

Android 之 Handler

Android 的消息机制是基于Handler实现的。Handler 采用的是一种生产者-消费者模型&#xff0c;Handler 就是生产者&#xff0c;通过它可以生产需要执行的任务。而 Looper 则是消费者&#xff0c;不断从 MessageQueue 中取出Message 对这些消息进行消费。 MesageQueue是在底层调…

maven-mvnd(新版maven)

引言&#xff1a; Maven和Gradle几乎包含了所有Java项目的构建。 而目前绝大部分的Java项目都是使用Maven的方式&#xff0c;Maven对比Gradle的劣势很明显&#xff0c;就是太慢了&#xff01; 一、maven-mvnd是什么&#xff1f; maven-mvnd是Apache Maven团队开发的maven的…

python学习笔记-1

文章目录 cmd中写py基本语法字面量字符串 注释变量数据类型数据类型转换标识符 cmd中写py 如果我没有素质&#xff0c;就说我是日本人 基本语法 字面量 字面量&#xff1a;在代码中&#xff0c;被写下来的&#xff0c;固定的值&#xff0c;称之为字面量。有六种值&#xff0…

下载iOS开发教程:下载和安装指南

目录 引言 一. 下载安装appuploader windows启动 部分功能不可用处理 驱动安装 二. 登录appuploader 常规使用登录方法 验证码说明 使用上传专用密码登录 未支付688给apple账号登录 [ 五、代码实现](# 五、代码实现) 六、总结 引言 这里汇总了开发相关过程中的热门…

【vue element-ui 】el-table中使用checkbox视图更新滞后

本来想通过列表中每个对象的某个属性绑定到checkbox的状态&#xff0c;但是发现有个问题&#xff1a;就是点击复选框后&#xff0c;数据确实改变了&#xff0c;但是视图没有改变&#xff0c;当点击其他row的时候&#xff0c;才会更新之前的数图。如下图&#xff0c;第1次勾选第…

【JavaScript】严格模式use strict

use strict 它不是一条语句&#xff0c;但是是一个字面量表达式声明&#xff0c;在 JavaScript 旧版本中会被忽略。 为什么使用严格模式use strict: 消除Javascript语法的一些不合理、不严谨之处&#xff0c;减少一些怪异行为; 消除代码运行的一些不安全之处&#xff0c;保证代…