0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

受控文本生成模型的一般架构及故事生成任务等方面的具体应用

深度学习自然语言处理 来源:哈工大讯飞联合实验室 作者:申资卓 2021-10-13 09:46 次阅读

来自:哈工大讯飞联合实验室

本期导读:本文是对受控文本生成任务的一个简单的介绍。首先,本文介绍了受控文本生成模型的一般架构,点明了受控文本生成模型的特点。然后,本文介绍了受控文本生成技术在故事生成任务和常识生成任务上的具体应用,指出了受控文本生成技术在具体应用场景下的改进方向。

0. 什么是受控文本生成

文本生成任务是自然语言处理领域十分重要的一类任务。文本摘要、语法纠错、人机对话等很多自然语言处理任务都可以被视为文本生成任务。GPT-2、BART、T5等文本生成相关的技术也在这些任务上取得了较好的效果。

受控文本生成任务与常规的文本生成任务有一些不同。常规的文本生成任务对生成文本的内容(Content)通常没有强制性的约束,而受控文本生成任务会要求生成文本的内容必须满足一些既定的约束条件,如风格(Style)、主题(Topic)等。

例如,文本风格转换(Text Style Transfer)就是一类十分经典的受控文本生成任务,该任务要求生成文本的内容在语义上需要与转换前保持一致,在风格上需要转换为预定义好的目标风格。从应用的角度来看,受控文本生成技术更有希望构建出场景适配的、用户可接受的文本生成系统。因此,受控文本生成技术已经被越来越多的研究者关注。

1. 受控文本生成模型的一般架构

CMU的一些研究者们发表在COLING 2020的一篇论文对受控文本生成模型的一般架构(见图1)进行了比较细致的描述。受控文本生成模型在生成受控文本时可以通过5个子模块对生成文本进行控制。

第一个模块称为额外输入模块(External Input module),该模块负责提供生成受控文本时的初始信号

第二个模块称为序列输入模块(Sequential Input module),该模块负责提供生成受控文本时每个时间步上的输入。

第三个模块称为生成操作模块(Generator Operations module),该模块决定每个时间步向量表示的计算方式,即是使用RNN计算,还是使用Transformer计算,亦或是使用其他计算方式。

第四个模块称为输出模块(Output module),该模块负责将每个时间步的向量表示映射为输出结果。

第五个模块称为训练目标模块(Training Objective module),该模块负责损失函数的计算。

其中额外输入模块,是受控文本生成模型中比较特殊且重要的一个模块,该模块通常会提供一个与控制目标相关的向量表示作为受控文本生成的初始信号,从而保证生成的文本满足预定义的控制目标。另外,输出模块也是受控文本生成模型致力于改进的一个模块。常规的文本生成任务只需要将每个时间步的向量表示映射为词表分布作为输出空间即可,而在受控文本生成模型中就需要通过某种方式改变输出空间的分布去获得期望的输出结果。

2. 受控文本生成技术在故事生成任务上的应用

本节介绍一个发表在EMNLP 2020上的利用受控文本生成技术改进故事生成的工作。该工作使用的数据集为ROCStories dataset(该数据集中的每个故事都由5个句子组成),其任务设定为给定故事的第一个句子,机器自动生成后面的句子。

如果不使用受控文本生成技术,该任务就是一个简单的语言模型式的文本生成任务,直接使用GPT-2就可以完成。但是,直接使用GPT-2生成的故事很难保证生成的结果是语义连贯且逻辑自洽的。因此,将受控文本生成技术引入到故事生成任务中就有可能控制故事生成的内容,从而改进故事生成的效果。

该工作首先使用一个基于GPT-2的关键词预测模型预测出与下一句相关的关键词,然后使用这些关键词去大规模的知识库中检索出与这些关键词相关的三元组,这些三元组会通过一些模板被转化为句子。

由于这些由三元组转化的句子数量较多且可能存在大量的噪音,因此,还需要一个与下一句信息相关联的基于BERT的排序模型对这些句子进行排序,从而选择出与下一句信息最相关的TopN个句子。在获得这些来源于知识库的句子后,我们就可以将这些句子作为控制信息并与当前句进行拼接一起作为GPT-2的输入去生成下一句。上述流程需要循环进行直到生成故事中所有的句子。图2是该工作整体的流程图。

e3bc4c42-14b5-11ec-8fb8-12bb97331649.png

图2 基于知识库信息控制的故事生成流程图

这个工作虽然没有对受控文本生成模型进行改进,但是从大规模知识库中获取控制信息进行文本生成的思路还是有一定借鉴意义的。

3. 受控文本生成技术在常识生成任务上的应用

本节介绍一个发表在ACL 2021上将受控文本生成技术应用在常识生成任务上的工作。常识生成任务是一项比较新颖的文本生成任务。该任务的设定为给定一个概念集合,机器需要自动生成一个能够描述这个概念集合的句子,并且生成的句子不能违背常识。例如,给定一个概念集合{apple, bag, put},理想情况下机器应该生成“A girl puts an apple in her bag”这样的句子。如果机器生成了“A girl eats an apple”或者“A girl puts a bag in her apple”,都不能算是一个合格的生成结果。因此,要想获得一个较好的生成结果,我们首先需要保证的就是概念集合里的概念都要出现在输出结果中。

本节介绍的工作提出了一种名为“Mention Flags”的方法,通过在解码端引入一个提及标记矩阵(Mention Flag Matrix)来标记输入项与输出项的提及关系,从而控制每个时间步解码时的输出。提及标记矩阵中的元素共有3种不同的取值,取0时表示该输入项不是控制项,取1时表示该输入项是控制项,但在输出项中未出现。取2时表示该输入项是控制项,并已经在输出项中出现。以输入为{apple, bag, put},输出为“A girl puts an apple in her bag”为例。

在训练时,提及标记矩阵可以通过输入与输出的对齐数据直接转换得到。在推理时,我们只需要在每个时间步递增式地扩充提及标记矩阵的每一列即可。

最后是如何将提及标记矩阵融入到模型中的问题。由于该工作使用的是基于Transformer的文本生成模型,其作者将提及标记矩阵视为输入项与输出项的相对位置(Relative Position),在计算输出项与输入项的交叉注意力(Cross Attention)时将相对位置信息融入到模型计算中。

4. 小结

本文简单介绍了受控文本生成与常规文本生成任务的区别,并对受控文本生成模型的一般架构进行了阐述。受控文本生成的特殊点主要在于受控信息的获取以及对输出结果的控制。因此,要想获得一个较好的受控文本生成系统,就可以从这两点上对文本生成的模型或方案进行改进。另外,文本还介绍了受控文本生成技术在故事生成任务和常识生成任务上的应用,这些方法和思想同样可以借鉴到其他受控文本生成任务中。

编辑:jq

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • CMU
    CMU
    +关注

    关注

    0

    文章

    21

    浏览量

    15230
  • 数据集
    +关注

    关注

    4

    文章

    1205

    浏览量

    24635
  • GPT
    GPT
    +关注

    关注

    0

    文章

    351

    浏览量

    15308
  • nlp
    nlp
    +关注

    关注

    1

    文章

    487

    浏览量

    22006

原文标题:受控文本生成任务简述

文章出处:【微信号:zenRRan,微信公众号:深度学习自然语言处理】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    如何训练自己的LLM模型

    于什么任务,比如文本生成、翻译、问答等。 明确你的模型需要达到的性能标准。 数据收集与处理 : 收集大量的文本数据,这些数据将用于训练模型
    的头像 发表于 11-08 09:30 318次阅读

    如何使用 Llama 3 进行文本生成

    使用LLaMA 3(Large Language Model Family of AI Alignment)进行文本生成,可以通过以下几种方式实现,取决于你是否愿意在本地运行模型或者使用现成的API
    的头像 发表于 10-27 14:21 211次阅读

    如何评估AI大模型的效果

    、SuperGLUE、SQuAD等。这些数据集提供了不同任务上的基准评估,使得不同模型在同一任务上的性能可以进行直接比较。 二、多样性和覆盖性测试 测试模型在不同类型的数据和
    的头像 发表于 10-23 15:21 359次阅读

    AI大模型在自然语言处理中的应用

    AI大模型在自然语言处理(NLP)中的应用广泛且深入,其强大的语义理解和生成能力为NLP任务带来了显著的性能提升。以下是对AI大模型在NLP中应用的介绍:
    的头像 发表于 10-23 14:38 308次阅读

    【《大语言模型应用指南》阅读体验】+ 基础知识学习

    习语言的表达方式和生成能力。通过预测文本中缺失的部分或下个词,模型逐渐掌握语言的规律和特征。 常用的模型结构 Transformer
    发表于 08-02 11:03

    llm模型和chatGPT的区别

    LLM(Large Language Model)是指大型语言模型,它们是类使用深度学习技术构建的自然语言处理(NLP)模型。LLM模型可以处理各种语言
    的头像 发表于 07-09 09:55 908次阅读

    生成式AI的基本原理和应用领域

    复杂性和创新性的内容的技术。这种技术不仅限于文本生成,还广泛应用于图像、音频、视频等多个领域。本文将详细探讨生成式AI的原理、关键技术、应用领域以及面临的挑战。
    的头像 发表于 07-04 11:50 1149次阅读

    【大语言模型:原理与工程实践】揭开大语言模型的面纱

    用于文本生成,根据提示或上下文生成连贯、富有创造性的文本,为故事创作等提供无限可能。大语言模型也面临挑战。
    发表于 05-04 23:55

    OpenVINO™协同Semantic Kernel:优化大模型应用性能新路径

    作为主要面向 RAG 任务方向的框架,Semantic Kernel 可以简化大模型应用开发过程,而在 RAG 任务中最常用的深度学习模型就是 Embedding 和 Text com
    的头像 发表于 03-08 10:41 624次阅读
    OpenVINO™协同Semantic Kernel:优化大<b class='flag-5'>模型</b>应用性能新路径

    OpenAI新年开出王炸,视频生成模型Sora问世

    近日,OpenAI在AI生成视频领域取得重大突破,发布了全新的生成式人工智能模型“Sora”。该模型在视频生成方面展现出了惊人的能力,通过
    的头像 发表于 02-20 11:46 733次阅读

    HKA5278 128音符旋律生成一般说明

    电子发烧友网站提供《HKA5278 128音符旋律生成一般说明.pdf》资料免费下载
    发表于 01-10 09:09 0次下载

    高级检索增强生成技术(RAG)全面指南

    ChatGPT、Midjourney等生成式人工智能(GenAI)在文本生成文本到图像生成任务中表现出令人印象深刻的性能。
    的头像 发表于 12-25 15:16 4681次阅读
    高级检索增强<b class='flag-5'>生成</b>技术(RAG)全面指南

    大语言模型简介:基于大语言模型模型全家桶Amazon Bedrock

    本文基于亚马逊云科技推出的大语言模型生成式AI的全家桶:Bedrock对大语言模型进行介绍。大语言模型指的是具有数十亿参数(B+)的预训练语言模型
    的头像 发表于 12-04 15:51 743次阅读

    代码生成:基于 AI 大模型的挑战与前景

    使用AI通用模型来完成代码生成这类非常具体任务可能会带来问题。人工智能生成的代码就像是陌生人的代码,它们可能并不符合你的代码质量标准。这种
    的头像 发表于 11-26 08:05 710次阅读
    代码<b class='flag-5'>生成</b>:基于 AI 大<b class='flag-5'>模型</b>的挑战与前景

    从HumanEval到CoderEval: 你的代码生成模型真的work吗?

    项目中的选取了代码生成任务来构建CoderEval,并根据对外部依赖的程度为标准将这些任务分为6个等级、根据生成的目标分为3类生成
    的头像 发表于 11-25 15:55 1640次阅读
    从HumanEval到CoderEval: 你的代码<b class='flag-5'>生成</b><b class='flag-5'>模型</b>真的work吗?