CN113591482A - 文本生成方法、装置、设备及计算机可读存储介质 - Google Patents

文本生成方法、装置、设备及计算机可读存储介质 Download PDF

Info

Publication number
CN113591482A
CN113591482A CN202110214294.8A CN202110214294A CN113591482A CN 113591482 A CN113591482 A CN 113591482A CN 202110214294 A CN202110214294 A CN 202110214294A CN 113591482 A CN113591482 A CN 113591482A
Authority
CN
China
Prior art keywords
semantic unit
semantic
text
key
renderer
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN202110214294.8A
Other languages
English (en)
Inventor
李扬名
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Tencent Technology Shenzhen Co Ltd
Original Assignee
Tencent Technology Shenzhen Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Tencent Technology Shenzhen Co Ltd filed Critical Tencent Technology Shenzhen Co Ltd
Priority to CN202110214294.8A priority Critical patent/CN113591482A/zh
Publication of CN113591482A publication Critical patent/CN113591482A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/30Semantic analysis
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/20Natural language analysis
    • G06F40/237Lexical tools
    • G06F40/242Dictionaries

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Health & Medical Sciences (AREA)
  • Artificial Intelligence (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Computational Linguistics (AREA)
  • General Health & Medical Sciences (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Machine Translation (AREA)

Abstract

本申请实施例提供一种文本生成方法、装置、设备及计算机可读存储介质,涉及人工智能技术领域。方法包括:对待处理信息中的每一键值对进行向量化处理,对应得到一个语义单元;采用至少一种渲染器对每一语义单元进行语义渲染,对应得到语义单元的状态表示、和语义单元在预定义词典或在键值对上的概率分布;通过模式切换器对渲染器得到的所述状态表示和概率分布进行整合处理,得到每一语义单元的渲染类型和每一语义单元在输出文本中的位置;根据每一语义单元的渲染类型和在输出文本中的位置,生成对应于待处理信息的输出文本。通过本申请,能够提高最终生成的输出文本的准确性,并实现对输出文本的语义渲染过程进行解释。

Description

文本生成方法、装置、设备及计算机可读存储介质
技术领域
本申请实施例涉及人工智能技术领域,涉及但不限于一种文本生成方法、装置、设备及计算机可读存储介质。
背景技术
自然语言生成(NLG,Natural Language Generation)是自然语言处理中的一个基础任务,可以将输入的一个表格转化成一个句子,其中,输入表格至少包括若干键值对,而输出文本是一个词序列。
相关技术中,在进行表格转化时,通常是使用去词汇化技术增强NLG模型对低频键值对的泛化能力。其中,一种方法是:采用流水线式的方法,将NLG切分成内容规划和语言实现两个子任务,其中,内容规划将输入表格组织成一个树的结构,然后语言实现将该结构线性化并润色成最后的句子。另一种方法是:基于大量数据驱动型的方法,基于神经网络(NN,Neural Networks)端到端地建模文本生成。
但是,通常输入表格中的键值对可以分成三类:去词汇化、指示和改述。相关技术中的去词汇化技术只适用于可去词汇化的键值对,对于指示和改述类型的键值对无法应用,且使用去词汇化技术会导致大量的词法错误,使得最终生成的输出文本不准确,并且,相关技术中的方法均是一种黑盒模型,缺乏在生成输出文本的同时对输入表格是如何被模型渲染成一个句子的可解释性。
发明内容
本申请实施例提供一种文本生成方法、装置、设备及计算机可读存储介质,涉及人工智能技术领域。分别通过至少一种渲染器和模式切换器,对键值对向量化处理后得到的语义单元进行语义渲染和整合处理,得到每一语义单元的渲染类型和在输出文本中的位置,从而生成对应于待处理信息的输出文本,这样,由于对多个渲染器的渲染结果进行整合处理,因此,能够适用于具有不同类型的键值对的待处理信息,从而极大地避免了词法错误,使得最终生成的输出文本更加准确,并且,通过不同的渲染器对不同类型的键值对进行语义渲染,因此可以根据渲染器的类型对输出文本的语义渲染过程进行解释。
本申请实施例的技术方案是这样实现的:
本申请实施例提供一种文本生成方法,所述方法包括:
获取待处理信息,所述待处理信息中包括至少两个键值对;
对每一所述键值对进行向量化处理,对应得到一个语义单元;
采用至少一种渲染器对每一所述语义单元进行语义渲染,对应得到所述语义单元的状态表示、和所述语义单元在预定义词典或在所述键值对上的概率分布;
通过模式切换器对所述渲染器得到的所述状态表示和所述概率分布进行整合处理,得到每一语义单元的渲染类型和每一语义单元在输出文本中的位置;
根据每一语义单元的所述渲染类型和在所述输出文本中的位置,生成对应于所述待处理信息的所述输出文本。
本申请实施例提供一种文本生成装置,所述装置包括:
获取模块,用于获取待处理信息,所述待处理信息中包括至少两个键值对;
向量化处理模块,用于对每一所述键值对进行向量化处理,对应得到一个语义单元;
语义渲染模块,用于采用至少一种渲染器对每一所述语义单元进行语义渲染,对应得到所述语义单元的状态表示、和所述语义单元在预定义词典或在所述键值对上的概率分布;
整合处理模块,用于通过模式切换器对所述渲染器得到的所述状态表示和所述概率分布进行整合处理,得到每一语义单元的渲染类型和每一语义单元在输出文本中的位置;
生成模块,用于根据每一语义单元的所述渲染类型和在所述输出文本中的位置,生成对应于所述待处理信息的所述输出文本。
本申请实施例提供一种计算机程序产品或计算机程序,所述计算机程序产品或计算机程序包括计算机指令,所述计算机指令存储在计算机可读存储介质中;其中,计算机设备的处理器从所述计算机可读存储介质中读取所述计算机指令,所述处理器用于执行所述计算机指令,实现上述的文本生成方法。
本申请实施例提供一种文本生成设备,包括:存储器,用于存储可执行指令;处理器,用于执行所述存储器中存储的可执行指令时,实现上述的文本生成方法。
本申请实施例提供一种计算机可读存储介质,存储有可执行指令,用于引起处理器执行所述可执行指令时,实现上述的文本生成方法。
本申请实施例具有以下有益效果:对待处理信息中的每一键值对进行向量化处理,对应得到一个语义单元;并采用至少一种渲染器对每一语义单元进行语义渲染,对应得到语义单元的状态表示、和语义单元在预定义词典或在键值对上的概率分布;通过模式切换器对渲染器得到的状态表示和概率分布进行整合处理,得到每一语义单元的渲染类型和每一语义单元在输出文本中的位置;根据每一语义单元的渲染类型和在输出文本中的位置,生成对应于待处理信息的输出文本。如此,由于对多个渲染器的渲染结果进行整合处理,因此,文本生成过程能够适用于具有不同类型的键值对的待处理信息,从而极大地避免了词法错误,使得最终生成的输出文本更加准确,并且,不同的渲染器用于对不同类型的键值对进行语义渲染,因此可以根据渲染器的类型对输出文本的语义渲染过程进行解释。
附图说明
图1是本申请实施例提供的输入表格和输出文本的自然语言生成处理表格示意图;
图2是本申请实施例提供的文本生成系统的一个可选的架构示意图;
图3是本申请实施例提供的文本生成设备的结构示意图;
图4是本申请实施例提供的文本生成方法的一个可选的流程示意图;
图5A是本申请实施例提供的文本生成方法的一个可选的流程示意图;
图5B是本申请实施例提供的一种显示语义渲染类型的界面图;
图5C是本申请实施例提供的另一种显示语义渲染类型的界面图;
图6是本申请实施例提供的文本生成模型的结构示意图;
图7是本申请实施例提供的文本生成方法的一个可选的流程示意图;
图8是本申请实施例提供的文本生成方法的一个可选的流程示意图;
图9是本申请实施例提供的文本生成模型的训练方法的流程示意图;
图10是本申请实施例提供的文本生成模型的整体框架图;
图11是本申请实施例提供的模式切换器的两种实现方式示意图;
图12是本申请实施例提供的从E2E-NLG中挑选验证可解释性的样例图。
具体实施方式
为了使本申请的目的、技术方案和优点更加清楚,下面将结合附图对本申请作进一步地详细描述,所描述的实施例不应视为对本申请的限制,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其它实施例,都属于本申请保护的范围。
在以下的描述中,涉及到“一些实施例”,其描述了所有可能实施例的子集,但是可以理解,“一些实施例”可以是所有可能实施例的相同子集或不同子集,并且可以在不冲突的情况下相互结合。除非另有定义,本申请实施例所使用的所有的技术和科学术语与属于本申请实施例的技术领域的技术人员通常理解的含义相同。本申请实施例所使用的术语只是为了描述本申请实施例的目的,不是旨在限制本申请。
在解释本申请实施例之前,首先对本申请中涉及的名词及关键术语进行解释:
1)神经网络(NN,Neural Networks),又称深度学习,是在机器学习中一种模仿生物神经网络结构和功能的模型。目前,神经网络被广泛应用于自然语言处理中。
2)异质渲染机(HRM,Heterogeneous Rendering Machines),是本申请实施例提出的具有可解释性的文本生成模型中的网络结构。异质渲染机由一个渲染器集合和一个模式选择器构成。
3)自然语言生成(NLG,Natural Language Generation),泛指自然语言处理中生成文本的一类任务。本申请实施例中,输入的可以是语义表示(例如表格信息)。
4)变分自编码器(VAE,Variational Auto-encoder),是变分推断的一种模型,变分自编码器的结构包含一个将输入编码为隐变量的识别模块和一个用隐变量重构输入的生成模块。
在说明本申请实施例的文本生成方法之前,首先对相关技术中的文本生成方法进行说明:
自然语言生成是自然语言处理中的一个基础任务,这里以自然语言生成任务的输入是一个表格为例进行说明。如图1所示,为本申请实施例提供的输入表格和输出文本的自然语言生成处理表格示意图,输入表格包括一个类型101和若干键值对102,而输出句子103是一个词序列,其中,输出句子103是根据输入的键值对102形成的,也就是说,是将输入表格中的全部键值对102对应的文本内容转化成一个连贯的输出句子103。
这里,可以将所有这些键值对分成三类:1)去词汇化,即键值对中的值是一个短语,并且该值在生成的句子中逐词出现(如图1键值对102中的“Blue Spice”);2)指示,其取值是有限的(如图1键值对102中的“familyFriendly”和“yes”);3)改述,其值会在生成的句子中被释义成另外一种形式(如图1键值对102中的“priceRange”和“less than£20”)。对应地,在输出句子103中,去词汇化类型的键值对会直接被复制到输出句子103中(如图1输出句子103中的“Blue Spice”),指示类型的键值对会被直接指示成相应的表示(如图1输出句子103中的“family friendly”),改述类型的键值对会被释义成另外一种符合语言表述的形式(如图1输出句子103中的“low cost”)。
在文本生成过程中,传统的方法大多是流水线式的,传统的方法将NLG切分成内容规划和语言实现两个子任务。内容规划将输入表格组织成一个树的结构,然后语言实现将结构线性化并润色成最后的句子。虽然这类模型具有很好的可解释性,但是这类模型严重依赖人工定义的规则和领域特定的知识。另一些方法则是基于数据驱动型的方法,这些方法基于NN端到端地建模文本生成。例如,Dusek and Jurcicek方法,应用经典的编解码器模型,以压平化的表格为输入,以句子为输出。这些方法促成了在标注数据上的端到端学习并相继达到了目前最好的效果。然而,这些方法都是黑盒模型,缺乏可解释性,这阻碍了这些方法在工业上的实际应用。需要说明的是,一个文本生成模型具有可解释性,是指该文本生成模型能在生成句子的同时说明输入表格中每对键值对的渲染类型以及键值对对应的渲染产物(即词或短语)在输出句子中的位置。
相关技术中,大多使用去词汇化技术增强NLG模型对低频键值的泛化能力。去词汇化技术的核心思想是将句子中逐词出现的短语替换成其对应的键。去词汇化技术一定程度上保证了模型的可解释性,但它只适用于可去词汇化的键值对。而对于包含了大量的改述键值对的数据集,例如端到端NLG(E2E-NLG,End-to-End NLG)这样的数据集,去词汇化技术将无法应用,另外,使用去词汇化技术还会导致大量词法错误。并且,相关技术中,还采用注意力权重的可视化来优化文本生成模型,注意力权重的可视化是另一种理解文本生成模型的办法,但是注意力权重的可视化给出的解释一般没有意义。
基于相关技术中所存在的上述问题,本申请实施例提供一种文本生成方法,该方法提出一个端到端且可解释的生成框架:异质渲染机,通过使用异质渲染机作解码器,可以解释NLG模型是如何将输入表格映射成输出句子的。其中,异质渲染机包含一个渲染器集合和一个模式选择器,渲染器集合中包含若干个结构和功能都不相同的解码器(即渲染器)。
在实现上,可以设置一个条件序列生成器、一个指针网络和一个语言模型。其中,条件序列生成器渲染指示键值对和改述键值对;指针网络渲染可去词汇化键值对;语言模型则生成上下文无关的词,保证生成句子的流利度。使用异质渲染机时,不再必要对数据做去词汇化处理。模式切换器是一个离散隐变量,在每生成步时,模式切换器会选择渲染器集合中一个合适的解码器做生成,从而根据所选择的解码器即可确定出所渲染的键值对的类型,实现对输出文本的语义渲染过程进行解释。
本申请实施例提供的文本生成方法,首先,获取待处理信息,待处理信息中包括至少两个键值对;然后,对每一键值对进行向量化处理,对应得到一个语义单元;采用至少一种渲染器对每一语义单元进行语义渲染,对应得到语义单元的状态表示、和语义单元在预定义词典或在键值对上的概率分布;再然后,通过模式切换器对渲染器得到的状态表示和概率分布进行整合处理,得到每一语义单元的渲染类型和每一语义单元在输出文本中的位置;最后,根据每一语义单元的渲染类型和在输出文本中的位置,生成对应于待处理信息的输出文本。如此,使得文本生成过程能够适用于具有不同类型的键值对的待处理信息,从而极大地避免了词法错误,使得最终生成的输出文本更加准确,并且,不同的渲染器用于对不同类型的键值对进行语义渲染,因此可以根据渲染器的类型对输出文本的语义渲染过程进行解释。
下面说明本申请实施例的文本生成设备的示例性应用,在一种实现方式中,本申请实施例提供的文本生成设备可以实施为笔记本电脑,平板电脑,台式计算机,移动设备(例如,移动电话,便携式音乐播放器,个人数字助理,专用消息设备,便携式游戏设备)、智能机器人等任意的具备表格输入功能或文本输入功能或文本转化应用的终端;在另一种实现方式中,本申请实施例提供的文本生成设备还可以实施为服务器。下面,将说明文本生成设备实施为服务器时的示例性应用。
参见图2,图2是本申请实施例提供的文本生成系统10的一个可选的架构示意图。为实现将输入的待处理信息转化成输出文本并输出,本申请实施例提供的文本生成系统10中包括终端100、网络200和服务器300,终端100上运行有文本转化应用,该文本转化应用能够实现将输入的待处理信息转化成一个输出句子而形成输出文本并输出。本申请实施例中,用户可以在终端上的文本转化应用的客户端输入待处理信息,终端根据待处理信息形成文本生成请求,文本生成请求中包括待处理信息,终端将文本生成请求通过网络200发送给服务器300。本申请实施例中,服务器300可以是文本转化应用的应用服务器。服务器300获取待处理信息,待处理信息中包括至少两个键值对;并对每一键值对进行向量化处理,对应得到一个语义单元;采用至少一种渲染器对每一语义单元进行语义渲染,对应得到语义单元的状态表示、和语义单元在预定义词典或在键值对上的概率分布;以及,通过模式切换器对渲染器得到的状态表示和概率分布进行整合处理,得到每一语义单元的渲染类型和每一语义单元在输出文本中的位置;最后,根据每一语义单元的渲染类型和在输出文本中的位置,生成对应于待处理信息的输出文本。在生成输出文本之后,服务器通过网络200将输出文本发送给终端100,终端100在当前界面100-1上显示输出文本。
在一些实施例中,服务器在生成输出文本的同时,还可以确定出每一键值对的类型和输出文本中每一词或短语的语义渲染类型,在向终端发送输出文本的同时还可以将输出文本中每一词或短语的语义渲染类型发送给终端,以使得终端在显示输出文本的同时还可以向用户解释输出文本中的每一词或短语是采用哪种语义渲染方式进行语义渲染得到的。
本申请实施例所提供的文本生成方法还可以基于云平台并通过云技术来实现,例如,上述服务器300可以是云端服务器,通过云端服务器对待处理信息进行文本生成处理,生成最终的输出文本。或者,还可以具有云端存储器,可以将每一种渲染器和模式切换器中的参数存储于云端存储器中,在进行文本生成处理时,可以从云端服务器中获取每一种渲染器和模式切换器的准确的参数,从而实现对待处理信息中的每一键值对进行准确的语义渲染和整合处理。在一些实施例中,还可以将待处理文本和生成的输出文本存储于云端存储器中,以便于用户在后续想继续查询待处理信息或输出文本时,可以直接从云端存储器中获取信息,无需服务器进行再次文本生成处理,降低了服务器的数据处理量。在一些实施例中,还可以将输入的键值对和键值对对应的语义渲染方式存储于云端存储器中,这样在后续的文本生成处理过程中,如果遇到相同的待处理的键值对,则可以直接从云端存储器中获取与该键值对对应的语义渲染方式,从而快速的获知该键值对对应的语义渲染类型。
这里需要说明的是,云技术(Cloud technology)是指在广域网或局域网内将硬件、软件、网络等系列资源统一起来,实现数据的计算、储存、处理和共享的一种托管技术。云技术基于云计算商业模式应用的网络技术、信息技术、整合技术、管理平台技术、应用技术等的总称,可以组成资源池,按需所用,灵活便利。云计算技术将变成重要支撑。技术网络系统的后台服务需要大量的计算、存储资源,如视频网站、图片类网站和更多的门户网站。伴随着互联网行业的高度发展和应用,将来每个物品都有可能存在自己的识别标志,都需要传输到后台系统进行逻辑处理,不同程度级别的数据将会分开处理,各类行业数据皆需要强大的系统后盾支撑,只能通过云计算来实现。
在一些实施例中,本申请实施例提供的文本生成方法还涉及人工智能技术领域,通过人工智能技术来确定出对应于待处理信息的输出文本,即可以通过人工智能技术对待处理信息中的每一键值对进行语义渲染和整合处理,以确定出每一语义单元的渲染类型和每一语义单元在输出文本中的位置,通过人工智能技术根据每一语义单元的渲染类型和在输出文本中的位置,生成对应于待处理信息的输出文本。在一些实施例中,还可以通过人工智能技术训练一文本生成模型,通过该文本生成模型生成对应于待处理信息的输出文本。
本申请实施例中,至少可以通过人工智能技术中的机器学习技术和自然语言处理技术来实现。其中,机器学习(ML,Machine Learning)是一门多领域交叉学科,涉及概率论、统计学、逼近论、凸分析、算法复杂度理论等多门学科,专门研究计算机怎样模拟或实现人类的学习行为,以获取新的知识或技能,重新组织已有的知识结构使之不断改善自身的性能。机器学习是人工智能的核心,是使计算机具有智能的根本途径,其应用遍及人工智能的各个领域。机器学习和深度学习通常包括人工神经网络、置信网络、强化学习、迁移学习、归纳学习、式教学习等技术。自然语言处理(NLP,Nature Language processing)是计算机科学领域与人工智能领域中的一个重要方向。它研究能实现人与计算机之间用自然语言进行有效通信的各种理论和方法。自然语言处理是一门融语言学、计算机科学、数学于一体的科学。因此,这一领域的研究将涉及自然语言,即人们日常使用的语言,所以它与语言学的研究有着密切的联系。自然语言处理技术通常包括文本处理、语义理解、机器翻译、机器人问答、知识图谱等技术。
图3是本申请实施例提供的文本生成设备的结构示意图,图3所示的文本生成设备包括:至少一个处理器310、存储器350、至少一个网络接口320和用户接口330。文本生成设备中的各个组件通过总线系统340耦合在一起。可理解,总线系统340用于实现这些组件之间的连接通信。总线系统340除包括数据总线之外,还包括电源总线、控制总线和状态信号总线。但是为了清楚说明起见,在图3中将各种总线都标为总线系统340。
处理器310可以是一种集成电路芯片,具有信号的处理能力,例如通用处理器、数字信号处理器(DSP,Digital Signal Processor),或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等,其中,通用处理器可以是微处理器或者任何常规的处理器等。
用户接口330包括使得能够呈现媒体内容的一个或多个输出装置331,包括一个或多个扬声器和/或一个或多个视觉显示屏。用户接口330还包括一个或多个输入装置332,包括有助于用户输入的用户接口部件,比如键盘、鼠标、麦克风、触屏显示屏、摄像头、其他输入按钮和控件。
存储器350可以是可移除的,不可移除的或其组合。示例性的硬件设备包括固态存储器,硬盘驱动器,光盘驱动器等。存储器350可选地包括在物理位置上远离处理器310的一个或多个存储设备。存储器350包括易失性存储器或非易失性存储器,也可包括易失性和非易失性存储器两者。非易失性存储器可以是只读存储器(ROM,Read Only Memory),易失性存储器可以是随机存取存储器(RAM,Random Access Memory)。本申请实施例描述的存储器350旨在包括任意适合类型的存储器。在一些实施例中,存储器350能够存储数据以支持各种操作,这些数据的示例包括程序、模块和数据结构或者其子集或超集,下面示例性说明。
操作系统351,包括用于处理各种基本系统服务和执行硬件相关任务的系统程序,例如框架层、核心库层、驱动层等,用于实现各种基础业务以及处理基于硬件的任务;
网络通信模块352,用于经由一个或多个(有线或无线)网络接口320到达其他计算设备,示例性的网络接口320包括:蓝牙、无线相容性认证(WiFi)、和通用串行总线(USB,Universal Serial Bus)等;
输入处理模块353,用于对一个或多个来自一个或多个输入装置332之一的一个或多个用户输入或互动进行检测以及翻译所检测的输入或互动。
在一些实施例中,本申请实施例提供的装置可采用软件方式实现,图3示出了存储在存储器350中的一种文本生成装置354,该文本生成装置354可以是文本生成设备中的文本生成装置,其可以是程序和插件等形式的软件,包括以下软件模块:获取模块3541、向量化处理模块3542、语义渲染模块3543、整合处理模块3544和生成模块3545,这些模块是逻辑上的,因此根据所实现的功能可以进行任意的组合或进一步拆分。将在下文中说明各个模块的功能。
在另一些实施例中,本申请实施例提供的装置可以采用硬件方式实现,作为示例,本申请实施例提供的装置可以是采用硬件译码处理器形式的处理器,其被编程以执行本申请实施例提供的文本生成方法,例如,硬件译码处理器形式的处理器可以采用一个或多个应用专用集成电路(ASIC,Application Specific Integrated Circuit)、DSP、可编程逻辑器件(PLD,Programmable Logic Device)、复杂可编程逻辑器件(CPLD,ComplexProgrammable Logic Device)、现场可编程门阵列(FPGA,Field-Programmable GateArray)或其他电子元件。
下面将结合本申请实施例提供的文本生成设备的示例性应用和实施,说明本申请实施例提供的文本生成方法,其中,该文本生成设备可以是任意一种具备表格输入功能或文本输入功能或文本转化应用的终端,或者也可以是服务器,即本申请实施例的文本生成方法可以通过终端来执行,也可以通过服务器来执行,或者还可以通过终端与服务器进行交互来执行。
参见图4,图4是本申请实施例提供的文本生成方法的一个可选的流程示意图,下面将结合图4示出的步骤进行说明,需要说明的是,图4中的文本生成方法是通过服务器作为执行主体来实现的文本生成方法。
步骤S401,获取待处理信息,待处理信息中包括至少两个键值对。
这里,待处理信息可以是具有任意一种类型和格式的包含词或短语的文本信息,待处理信息中包括至少两个键值对,其中,键值对由词或短语形成,键值对中具有目标键和目标值。例如,待处理信息可以是表格信息,表格中包括多个表头和与每一表头对应的内容,其中,一个表头与对应的内容形成一组键值对,表头作为该键值对中的目标键,对应的内容作为该键值对中的目标值。
在一些实施例中,待处理信息可以具有预定义格式,该预定义格式预先定义了键值对的数量和每一键值对中的目标键,当用户需要输入待处理信息时,可以基于该预定义格式,输入每一键值对中的目标值即可。或者,在其他实施例中,待处理信息可以具有开放格式,该开放格式并不限定键值对的数量和键值对中的目标键,当用户需要输入待处理信息时,根据待输入信息的内容,依次输入每一键值对中的目标键和目标值。
在一些实施例中,每一键值对可以具有特定的类型,其中,键值对的类型包括但不限于:去词汇化类型、指示类型和改述类型。对于同一词或短语对应的目标值,在不同的待处理信息中对应的键值对的类型可以相同,也可以不同,或者,对于具有多种语义或多种词性的词,在不同的待处理信息中,根据语义或词性的不同,对应的键值对的类型也可以不同。举例来说,对于词汇“book”(即目标值),当该词汇为名词时,则在键值对中为去词汇化类型,当该词汇为动词时,则在键值对中可以为指示类型。
步骤S402,对每一键值对进行向量化处理,对应得到一个语义单元。
这里,向量化处理是指将文本形式的键值对采用向量的形式进行表示的处理过程,其中每一键值对在进行向量化处理之后对应得到一个语义单元,语义单元是键值对采用向量形式进行表示的数据单元。
步骤S403,采用至少一种渲染器对每一语义单元进行语义渲染,对应得到语义单元的状态表示、和语义单元在预定义词典或在键值对上的概率分布。
这里,可以具有多个渲染器,每一渲染器能够对一种类型的键值对进行语义渲染,也就是说,采用不同的渲染器能够实现对语义单元进行不同类型的语义渲染。举例来说,键值对可以包括去词汇化类型、指示类型和改述类型几种类型,则可以采用去词汇化类型对应的渲染器对去词汇化的键值对进行语义渲染,即可以直接将去词汇化类型的键值对中的目标值复制至最终的输出文本中;采用指示类型对应的渲染器对指示类型的键值对进行语义渲染,即将指示类型的键值对中的目标值修改成不同的表述形式,最后插入到最终的输出文本中;采用改述类型对应的渲染器对改述类型的键值对进行语义渲染,即将改述类型的键值对中的目标值进行改述得到不同的表述形式,最后插入到最终的输出文本中。
本申请实施例中,在对语义单元进行语义渲染之后,对应得到语义单元的状态表示、和语义单元在预定义词典或在键值对上的概率分布,其中,语义单元的状态表示用于表征该语义单元在该渲染器进行语义渲染之后的状态参数;语义单元在预定义词典或在键值对上的概率分布用于表征该语义单元的在预定义词典或在键值对上的分布情况。
步骤S404,通过模式切换器对渲染器得到的状态表示和概率分布进行整合处理,得到每一语义单元的渲染类型和每一语义单元在输出文本中的位置。
这里,整合处理可以是线性整合处理,通过线性整合处理多个渲染器得到的状态表示和概率分布,最终能够对于每一语义单元,挑选出一个目标渲染器,通过该目标渲染器对应的语义渲染类型,即可得到该语义单元的渲染类型,并相应的确定出该语义单元对应的目标值在输出文本中的位置。这里,目标值在输出文本中的位置是指目标值在输出文本对应的词序列中的位置。举例来说,对于去词汇化类型的键值对中的目标值A,当输出文本由10个单词组成时,由于目标值A会被直接复制至输出文本中,此时如果目标值A位于10个单词中第5个单词的位置,则目标值A在输出文本对应的词序列中的位置为5。
步骤S405,根据每一语义单元的渲染类型和在输出文本中的位置,生成对应于待处理信息的输出文本。
这里,在确定出每一语义单元的渲染类型和在输出文本中的位置之后,采用不同的渲染类型对语义单元对应的键值对中的目标值进行复制或转化,并将复制或转化后的词或短语置于输出文本中对应的位置上,形成对应于待处理信息的输出文本。
本申请实施例提供的文本生成方法,对待处理信息中的每一键值对进行向量化处理,对应得到一个语义单元;并采用至少一种渲染器对每一语义单元进行语义渲染,对应得到语义单元的状态表示、和语义单元在预定义词典或在键值对上的概率分布;通过模式切换器对渲染器得到的状态表示和概率分布进行整合处理,得到每一语义单元的渲染类型和每一语义单元在输出文本中的位置;根据每一语义单元的渲染类型和在输出文本中的位置,生成对应于待处理信息的输出文本。如此,由于对多个渲染器的渲染结果进行整合处理,因此,文本生成过程能够适用于具有不同类型的键值对的待处理信息,从而极大地避免了词法错误,使得最终生成的输出文本更加准确,并且,不同的渲染器用于对不同类型的键值对进行语义渲染,因此可以根据渲染器的类型对输出文本的语义渲染过程进行解释。
在一些实施例中,文本生成系统中至少包括终端和服务器,终端上运行有文本转化应用,该文本转化应用能够实现将输入的待处理信息转化成一个输出句子而形成输出文本并输出。本申请实施例中,用户可以在终端上的文本转化应用的客户端输入待处理信息,图5A是本申请实施例提供的文本生成方法的一个可选的流程示意图,如图5A所示,方法包括以下步骤:
步骤S501,终端获取用户输入的待处理信息。
本申请实施例中,文本转化应用可以提供预定义格式,用户可以直接基于该预定义格式输入与每一目标键对应的目标值。或者,用户还可以自定义输入格式,并在该自定义输入格式中输入目标键和目标值,形成键值对。
步骤S502,终端将待处理信息封装于文本生成请求中。
文本生成请求用于请求对待处理信息进行文本转化处理,以得到对应于待处理信息的输出文本。
步骤S503,终端将文本生成请求发送给服务器。
步骤S504,服务器对文本生成请求进行解析,以获得待处理信息,其中,待处理信息中包括至少两个键值对。
步骤S505,服务器对每一键值对进行向量化处理,对应得到一个语义单元。
步骤S506,服务器采用至少一种渲染器对每一语义单元进行语义渲染,对应得到语义单元的状态表示、和语义单元在预定义词典或在键值对上的概率分布。
步骤S507,服务器通过模式切换器对渲染器得到的状态表示和概率分布进行整合处理,得到每一语义单元的渲染类型和每一语义单元在输出文本中的位置。
步骤S508,服务器根据每一语义单元的渲染类型和在输出文本中的位置,生成对应于待处理信息的输出文本。
需要说明的是,步骤S505至步骤S508与上述步骤S402至步骤S405相同,本申请实施例不再赘述。
步骤S509,服务器根据每一语义单元的渲染类型,确定出每一键值对的类型和输出文本中每一词或短语的语义渲染类型。
本申请实施例中,对于每一语义单元,通过模式切换器对多个渲染器得到的该语义单元的状态表示和概率分布进行整合处理之后,可以选择出一个合适的目标渲染器,目标渲染器是最适合对该语义单元进行语义渲染的渲染器,因此,最终会基于该目标渲染器的类型,采用对应的语义渲染方式对该语义单元进行语义渲染,那么,通过该目标渲染器对应的语义渲染类型,即可得到该语义单元的渲染类型。
步骤S510,服务器将输出文本和输出文本中每一词或短语的语义渲染类型发送给终端。
本申请实施例中,服务器同时将输出文本和输出文本中每一词或短语的语义渲染类型发送给终端,以使得终端在显示输出文本的同时还能够解释每一词或短语的语义渲染类型,即解释每一词或短语是采用哪一种语义渲染方式进行渲染得到的。
步骤S511,终端在当前界面上显示输出文本和输出文本中每一词或短语的语义渲染类型。
在一些实施例中,可以之间在输出文本中的每一词或短语对应的位置以文字形式显示该词或短语的语义渲染类型,或者,采用不同的标识来表示不同的语义渲染类型。如图5B所示,是本申请实施例提供的一种显示语义渲染类型的界面图,输出文本501上的每一词上具有一提示标识502,当用户点击任一词的提示标识502或者将鼠标移动至该提示标识502所在的位置时,即可显示该词或短语对应的语义渲染类型。如图5C所示,是本申请实施例提供的另一种显示语义渲染类型的界面图,输出文本501上的每一词上具有一选框502,对应于不同的语义渲染类型,选框的形状不同,即不同形状的选框与不同的语义渲染类型具有一对一映射关系,用户通过选框的形状即可确定出该选框所选中的词或短语的语义渲染类型。在其他实施例中,还可以采用不同的显示颜色显示具有不同语义渲染类型的词或短语,例如,可以将去词汇化类型的词或短语显示成红色,将指示类型的词或短语显示成绿色,将改述类型的词或短语显示成蓝色。
本申请实施例的方法中,还可以在形成输出文本的同时确定出每一键值对的类型和输出文本中每一词或短语的语义渲染类型,在向终端发送输出文本的同时还可以将输出文本中每一词或短语的语义渲染类型发送给终端,以使得终端在显示输出文本的同时还可以向用户解释输出文本中的每一词或短语是采用哪种语义渲染方式进行语义渲染得到的,使得用户能够更加直观的获知模型是基于哪种语义渲染方式对输入的待处理文本中的键值对进行语义渲染,进而快速的判断出该模型进行语义渲染的准确性。
在一些实施例中,文本生成方法还可以通过文本生成模型来实现,图6是本申请实施例提供的文本生成模型的结构示意图,如图6所示,文本生成模型60包括层次结构的编码器61和异质渲染机62,异质渲染机62包括至少一种渲染器(如图6中的指针网络621、条件序列生成器622和语言模型623)和模式切换器624。
其中,层次结构的编码器61用于将输入的待处理信息向量化成若干个语义单元;异质渲染机62用于在每个解码步时,组合不同渲染器所做出的预测。对于异质渲染机62来说,具体地,指针网络621用于将每一语义单元对应的键值对中的目标值复制到输出文本中;条件序列生成器622用于将每一语义单元对应的键值对渲染成特定的文本形式,并将文本形式插入至输出文本中;语言模型623用于生成输出文本中的上下文无关的词。也就是说,条件序列生成器622渲染指示类型的键值对和改述类型的键值对;指针网络621渲染可去词汇化类型的键值对;语言模型623则生成上下文无关的词,保证最终所生成的输出文本的句子流利度。
下面以图6所示的文本生成模型为例,对本申请实施例的文本生成方法进行说明。
在一些实施例中,每一键值对中包括一个目标键和一个目标值,这里以待处理信息为输入表格为例,输入表格中至少包括表头和与每一表头对应的内容,其中,表头与对应的内容之间形成一键值对,表头即该键值对中的目标键,对应的内容即该键值对中的目标值。基于图4,图7是本申请实施例提供的文本生成方法的一个可选的流程示意图,如图7所示,步骤S402可以通过以下步骤实现:
步骤S701,通过层次结构的编码器61对每一键值对中的目标值进行RNN编码,得到与目标值对应的RNN向量。
在一些实施例中,步骤S701可以通过以下步骤实现:步骤S7011,对每一键值对中的目标值分别进行正向RNN编码和逆向RNN编码,对应得到目标键的正向RNN表示和逆向RNN表示。步骤S7011,对正向RNN表示和逆向RNN表示进行第二拼接操作,得到与目标值对应的RNN拼接向量。步骤S7011,将RNN拼接向量确定为与目标值对应的RNN向量。
这里,第二拼接操作是指将正向RNN表示对应的向量和逆向RNN表示对应的向量进行按列拼接操作,举例来说,正向RNN表示为向量[1.9,1.1],逆向RNN表示为向量[1.3,2.5],那么在进行第二拼接操作之后,所得到的RNN拼接向量则是[1.9,1.1,1.3,2.5]。
步骤S702,采用预设的词向量矩阵,对每一键值对中的目标键进行词向量化处理,得到目标键的词向量。
步骤S703,对每一键值对中的目标值对应的RNN向量和目标键的词向量进行第一拼接操作,得到语义单元的向量表示。
这里,第一拼接操作可以与上述第二拼接操作的操作方式相同,即也可以是按列拼接操作。
在一些实施例中,在得到语义单元的向量表示之后,还可以建模不同键值对之间的相关性,可以通过以下步骤实现:
步骤S11,根据每一语义单元的向量表示,采用自注意力机制建模至少两个键值对之间的相关性,得到至少两个键值对之间的相关性表示。
在得到至少两个键值对之间的相关性表示之后,在对每一语义单元进行语义渲染时,可以通过以下步骤实现:步骤S12,根据每一语义单元的向量表示和至少两个键值对之间的相关性表示,采用至少一种渲染器对每一语义单元进行语义渲染。
请继续参照图6,异质渲染机62包括至少一种渲染器和模式切换器624,其中,渲染器包括以下任意一种:指针网络621、条件序列生成器622和语言模型623。
在一些实施例中,当渲染器为指针网络621时,指针网络用于将每一语义单元对应的键值对中的目标值复制到输出文本中。基于图4,图8是本申请实施例提供的文本生成方法的一个可选的流程示意图,如图8所示,步骤S403可以通过以下步骤实现:
步骤S801,通过指针网络,对每一语义单元进行基于迭代生成输出文本的第一RNN编码,得到语义单元在迭代生成过程中的第一RNN状态表示。
这里,可以采用LSTM对每一语义单元进行第一RNN编码。
步骤S802,将第一RNN状态表示,确定为语义单元的状态表示。
步骤S803,采用注意力机制对语义单元的状态表示和相关性表示进行向量转换,得到语义单元在输入的键值对上的第一概率分布。
在一些实施例中,当渲染器为条件序列生成器622时,条件序列生成器622用于将每一语义单元对应的键值对渲染成特定的文本形式,并将文本形式插入至输出文本中。请继续参照图8,步骤S403还可以通过以下步骤实现:
步骤S804,通过条件序列生成器,采用自注意力机制对每一语义单元的向量表示进行自注意力转换,得到每一语义单元的自注意力表示向量。
步骤S805,对每一语义单元的状态表示和自注意力表示向量进行基于迭代生成输出文本的第二RNN编码,得到语义单元在迭代生成过程中的第二RNN状态表示。
这里,可以采用LSTM对每一语义单元的状态表示和自注意力表示向量进行第二RNN编码。
步骤S806,将第二RNN状态表示,确定为语义单元的状态表示。
步骤S807,采用预设转换方式,对语义单元的状态表示和自注意力表示向量进行向量转换,得到语义单元在预定义词典上的第二概率分布。
在一些实施例中,当渲染器为语言模型623时,语言模型623用于生成输出文本中的上下文无关的词。请继续参照图8,步骤S403还可以通过以下步骤实现:
步骤S808,通过语言模型,读取当前的语义单元之前且与语义单元相邻的在先生成项。
步骤S809,根据在先生成项更新语言模型的当前状态,得到语义单元在语言模型下的状态表示。
步骤S810,根据语义单元的状态表示预测语义单元在预定义词典上的第三概率分布。
在一些实施例中,当指针网络621、条件序列生成器622和语言模型623分别得到每一语义单元的状态表示、和每一语义单元在预定义词典或在键值对上的概率分布之后,模式切换器624对每一渲染器得到的状态表示和概率分布进行整合处理。请继续参照图8,步骤S404可以通过以下步骤实现:
步骤S811,通过模式切换器对全部渲染器得到的每一语义单元的状态表示进行第一线性整合处理,得到对应语义单元在迭代生成过程中的单步状态表示。
步骤S812,根据单步状态表示确定语义单元的渲染类型。
在一些实施例中,上述单步状态表示可以采用独热码表示,对应地,步骤S812可以通过以下步骤实现:步骤S8121,将独热码表示中数值为1的状态码所对应的渲染器,确定为目标渲染器。步骤S8122,根据目标渲染器的类型,确定语义单元的渲染类型。
步骤S813,通过模式切换器对全部渲染器得到的每一语义单元的概率分布进行第二线性整合处理,得到对应语义单元在预定义词典和键值对上的概率分布。
步骤S814,根据语义单元在预定义词典和键值对上的概率分布,确定语义单元在输出文本中的位置。
在一些实施例中,上述任意一种文本生成方法均可以采用预先训练的文本生成模型来实现,图9是本申请实施例提供的文本生成模型的训练方法的流程示意图,如图9所示,文本生成模型可以通过以下步骤进行训练:
步骤S901,将样本信息输入至文本生成模型中,样本信息中包括至少两个样本键值对。
步骤S902,通过层次结构的编码器对每一样本键值对进行向量化处理,对应得到一个样本语义单元。
步骤S903,通过至少一种渲染器对每一样本语义单元进行语义渲染,对应得到样本语义单元的样本状态表示、和样本语义单元在预定义词典或在键值对上的样本概率分布。
步骤S904,通过模式切换器对渲染器得到的样本状态表示和样本概率分布进行整合处理,得到每一样本语义单元的样本渲染类型和每一语义单元在预测输出文本中的样本位置。
步骤S905,将样本渲染类型和样本位置输入至预设损失模型中,得到损失结果。
这里,预设损失模型中包括损失函数,通过损失函数计算样本渲染类型与真实渲染类型之间的第一相似度,以及,计算样本位置与真实位置之间的第二相似度,对第一相似度和第二相似度进行加权求和,得到损失结果。其中,真实渲染类型是用户预先标注的对样本语义单元的准确的渲染类型,真实位置是真实位置在输出的标注文本中的真实位置。
步骤S906,根据损失结果对层次结构的编码器、每一渲染器和模式切换器中的参数进行优化,得到训练后的文本生成模型。
这里,如果损失结果表明第一相似度和第二相似度进行加权求和结果小于或等于相似度阈值,则需要对文本生成模型中的层次结构的编码器、渲染器和模式切换器中的参数进行修正;如果损失结果表明第一相似度和第二相似度进行加权求和结果大于相似度阈值,则停止对文本生成模型中的层次结构的编码器、渲染器和模式切换器中的参数进行修正,完成对文本生成模型的训练。
在一些实施例中,还可以设置模型训练时长阈值和模型训练次数阈值,当模型训练时长达到该模型训练时长阈值时,停止对文本生成模型中的层次结构的编码器、渲染器和模式切换器中的参数进行修正,完成对文本生成模型的训练;或者,当模型训练次数达到该模型训练次数阈值时,停止对文本生成模型中的层次结构的编码器、渲染器和模式切换器中的参数进行修正,完成对文本生成模型的训练。
下面,将说明本申请实施例在一个实际的应用场景中的示例性应用。
端到端的神经网络在自然语言生成上有着很好的性能。然而,相关技术中的黑盒模型普遍缺乏可解释性,阻碍了该神经网络在工业上的生产应用。为了解决这个问题,本申请实施例提供一种文本生成方法,该方法中提出一个全新的文本生成模型,该文本生成模型中包括异质渲染机,通过异质渲染机可以在生成输出文本的同时解释输入表格是如何被模型渲染成一个句子的。
异质渲染机包含两个模块:渲染器集合和模式选择器。渲染器集合是一个由若干个解码器构成的有限集合,其中不同的解码器有着不同的结构和功能。模式选择器是一个离散隐变量,在每解码步时,模式选择器会选择渲染器集合中的某一个解码器做生成。为了验证异质渲染机的有效性,本申请实施例在多个数据集上做了大量实验,其中,以自动评测度量为指标,例如,双语评估替补(BLEU,Bilingual Evaluation Understudy),本申请实施例提供的文本生成模型与目前最好的方法效果相当。定性实验表明本申请实施例文本生成模型能够很好地解释NN的渲染过程,并且,人工校验同样确认异质渲染机有着很好的可解释性。
图10是本申请实施例提供的文本生成模型的整体框架图,如图10所示,首先,层次结构的编码器1001将输入表格向量化成若干语义单元;然后,在每解码步时时,异质渲染机1002组合不同渲染器做的预测。例如,将一个输入表格表示成一个大小为n的集合:x={(s1,v1),(s2,v2)…,(sn,vn)}。这里s1是表格类型,v1是固值“TYPE”;其他项均为键值对(si,vi),i>1。真值句子(即预先人工标注好的句子)是一个大小为m的序列y=[y1,y2,…,ym],其中每一项是词或者短语(键值)。原始数据中的输出句子是词序列。上述格式是通过去词汇化技术处理后获得的。
在一些实施例中,在层次结构的编码器中,首先,用长短期记忆人工神经网络(LSTM,Long Short-Term Memory),采用以下公式(1-1)编码每个键值对中的值(即词序列)
Figure BDA0002952565390000155
Figure BDA0002952565390000151
其中,li是值vi(一个短语)中词的数量;
Figure BDA0002952565390000152
是值vi中第K个词的正向RN N表示;
Figure BDA0002952565390000153
是1≤i≤n的正向RNN编码,编码所有值vi
Figure BDA0002952565390000154
是值vi中第K个词的逆向RNN表示;
Figure BDA0002952565390000161
是1≤i≤n的逆向RNN编码,编码所有值vi;E是词向量矩阵。
然后,采用以下公式(1-2)向量化列表中的每个键值对中的键:
Figure BDA0002952565390000162
其中,
Figure BDA0002952565390000163
是对i个键值对中的键si进行向量化后的表示;E是预设的词向量矩阵。
再然后,将每对键值表示为
Figure BDA0002952565390000164
其中
Figure BDA0002952565390000165
表示向量的按列拼接操作。在训练时,可以随机的将表格中的词按概率1/(1+p)置换成“未知数(UNK)”,其中p是该词在训练集中的频率。该操作有助于提高模型在测试集上的泛化性。
最后,使用自注意力机制,采用以下公式(1-3)建模不同键值对之间的相关性He
Figure BDA0002952565390000166
其中,[;]是向量的按行拼接操作,d表示隐层的维度;Qd,Kd,Vd都是中间计算量;Wq,Wk,Wv是在训练过程中被调节的参数。公式(1-3)中的最后一个公式是指将左式的矩阵He拆成若干向量,其中,He中包括输入的n个键值对之间的相关性向量表示。
在一些实施例中,在异质渲染机中,结构上异质渲染机包含两个部分:渲染器集合和模式切换器。
渲染器集合包含了多个结构和功能均不相同的解码器。在实现上,可以设置一个指针网络、一个条件序列生成器以及一个语言模型。假设此时是第j生成步,解码器的隐层表示和上一步j-1生成的项分别为
Figure BDA0002952565390000167
和yj-1。注意,如果上一生成项yj-1是由第i个键值复制而来,则它被向量化为
Figure BDA0002952565390000168
本申请实施例中,指针网络显式地将键值复制到生成地句子中。首先,用LSTM采用以下公式(1-4)来更新状态:
Figure BDA0002952565390000169
其中,
Figure BDA00029525653900001610
是指针网络在迭代生成过程中gp的状态表示(即上述第一RNN状态表示);gp是用于指针网络中的RNN。
然后,采用以下公式(1-5)将注意力机制应用到输入键值对地表示上:
Figure BDA00029525653900001611
其中,
Figure BDA00029525653900001612
是vβ的转置,vβ、Wβ和Uβ均是模型参数;
Figure BDA00029525653900001613
是向量H中的第i个分量;
Figure BDA0002952565390000171
是指针网络预测的在输入键值对上的概率分布(即上述语义单元在输入的键值对上的第一概率分布)。
本申请实施例中,条件序列生成器将一个键值对渲染成不同的形式然后插入到句子中。首先,采用以下公式(1-6)将自注意力机制应用到输入表格的表示上:
Figure BDA0002952565390000172
其中,
Figure BDA0002952565390000173
是vα的转置,vα、Wα和Uα均是模型参数;
Figure BDA0002952565390000174
是中间计算量。
然后,使用LSTM采用以下公式(1-7)读取输入并更新解码器的状态:
Figure BDA0002952565390000175
其中,
Figure BDA0002952565390000176
是条件序列生成器在迭代生成过程中gc的状态表示(即上述第二RNN状态表示);gc是用于条件序列生成器中的RNN。
最后,下一项的分布按如下公式(1-8)预测:
Figure BDA0002952565390000177
其中,
Figure BDA0002952565390000178
是条件序列生成器预测的在预定义词典上的概率分布(即上述语义单元在预定义词典上的第二概率分布);Wc是模型参数。
本申请实施例中,语言模型用于生成上下文无关的词(例如图1中的“is”和“a”)。首先,应用LSTM采用以下公式(1-9)读取上一个生成项并更新解码器的状态:
Figure BDA0002952565390000179
其中,
Figure BDA00029525653900001710
是语言模型在迭代生成过程中gl的状态表示(即上述语义单元在语言模型下的状态表示);gl是用于语言模型中的RNN。
然后,按如下公式(1-10)预测下一个词的分布:
Figure BDA00029525653900001711
其中,
Figure BDA00029525653900001712
是语言模型预测的在预定义词典上的概率分布(即上述语义单元在预定义词典上的第三概率分布);Wl是模型参数。
在一些实施例中,模式切换器是一个离散隐变量。模式切换器在每生成单步时从渲染器集合中挑选一个合适的解码器。图11是本申请实施例提供的模式切换器的两种实现方式示意图,如图11所示,采用了两种实现:Gumbel-soft max Trick和VQ-VAE。
模式切换器本身是一个3通道的独热码。用模式切换器分别对解码器的隐层表示和预测的项分布做线性整合。建模过程如以下公式(1-11):
Figure BDA0002952565390000181
这里,
Figure BDA0002952565390000182
是语义单元在迭代生成过程中的单步状态表示;Qj是语义单元在输入的键值对和预定义词表上的概率分布。
Figure BDA0002952565390000183
Figure BDA0002952565390000184
可以Gumbel-softmax Tr ick方式或VQ-VAE方式获取。
本申请实施例中,在测试时,可以使用
Figure BDA0002952565390000185
预测下一项。如图11的左图所示,在Gumbel-softmax Trick中,首先通过多层感知器(MLP,Multila yer Perceptron)对
Figure BDA0002952565390000186
进行MLP处理,对应得到参数
Figure BDA0002952565390000187
然后,通过公式
Figure BDA0002952565390000188
Figure BDA0002952565390000189
进行转化,最终得到
Figure BDA00029525653900001810
Figure BDA00029525653900001811
如图11的右图所示,在VQ-VAE中,首先,将
Figure BDA00029525653900001812
转化成
Figure BDA00029525653900001813
然后,通过Argmax计算得到
Figure BDA00029525653900001814
Figure BDA00029525653900001815
请继续参照图11,在Gumbel-softmax Trick中,解码器的隐层表示中,柱状图中的柱形1、柱形2和柱形3分别表示
Figure BDA00029525653900001816
的值,在经过
Figure BDA00029525653900001817
Figure BDA00029525653900001818
计算之后,解码器的隐层表示变为柱形4、柱形5和柱形6,在最终得到
Figure BDA00029525653900001819
Figure BDA00029525653900001820
时的隐层表示则为柱形7、柱形8和柱形9。在VQ-VAE中,
Figure BDA00029525653900001821
的随机向量表示为柱形10、柱形11和柱形12,最终的
Figure BDA00029525653900001822
Figure BDA00029525653900001823
Figure BDA00029525653900001824
的随机向量表示则只剩下挑选出的一个渲染器的随机向量表示,即柱形13来表示。
Gumbel-softmax Trick解决了离散分布抽样的不可微分性问题,主要思想是用一个抽样可微分的Gumbel-softmax分布去近似给定的离散分布。
如图11的左部分所示。首先,采用以下公式(1-12)预测抽取解码器的离散分布:
Figure BDA00029525653900001825
然后,用以下公式(1-13)近似从如上离散分布中抽样:
Figure BDA00029525653900001826
这里角标r遍历{p,c,l}。γp、γc和γl为从分布Gumbel(0,1)中抽取的样本。
VQ-VAE是离散版本的VAE,VQ-VAE的特点是显式地建模了离散量的向量表示。推断网络输出一个离散变量并且其参数用Straight-through Estimator优化。在实现上,做了两个改进:1)使用重参数化技巧引入随机性;2)编码本(离散值的向量)是动态变化的,而非静态不变。
改进后的VQ-VAE框架如图11的右部分所示。首先,采用以下公式(1-14)对隐层表示
Figure BDA00029525653900001827
应用重参数化技巧以得到一个受到随机值干扰的变量
Figure BDA00029525653900001828
Figure BDA0002952565390000191
其中,Wμ、Uμ、Wσ、Uσ均是模型参数;μj、σj是中间计算量;ε是从标准正态分布中抽取的样本;·是元素级的向量乘法。
然后,使用动态的编码本(即渲染器集合中每个解码器的隐层表示),采用以下公式(1-15)对
Figure BDA0002952565390000192
做量化:
Figure BDA0002952565390000193
其中,||||2是欧几里得距离;
Figure BDA0002952565390000194
是中间计算量;函数OneHot会构建一个3通道独热码,其中第r'个值是1。
在一些实施例中,给定一个训练样本,诱导如下交叉熵损失Lc(1-16)用于训练模型:
Figure BDA0002952565390000195
如果模式切换器是VQ-VAE,则可以添加两个额外的损失。一个损失是:
Figure BDA0002952565390000196
其中,sg表示梯度阶段算子。在实验中,可以设置ρ=0.25。
另一个损失是:
Figure BDA0002952565390000197
其中,公式(1-18)是KL散度,有助于防止后验坍塌。
如果模式切换器基于Gumbel-softmax Trick实现,则可以对Gumbel-softma x中的温度τ做退火,其中,τ表示Gumbel-softmax中的温度参数,用于控制预测分布的平滑程度。
本申请实施例中,可以用HRM解释NN生成器的渲染过程。对生成句子y中的每项yi,对应模式切换器的输出oj指示了渲染器集合中哪个解码器生成了该项。如果解码器是指针网络,则指针注意力Qj p指示了该项是由哪个键值对复制而来。如果解码器是条件序列生成器,则注意力权重[αj,1j,2…,αj,n]指示了该项是由哪个键值对释义而来。否则,该项是由语言模型生成,使句子通畅,没有实际的意义。
基于上述文本生成模型,本申请实施例在5个数据集上做了大量实验以验证HRM的有效性。以自动评价度量(如BLEU)为指标,本申请实施例的模型与目前性能最佳的方法效果相当。样例分析和人工校验均有力的证明HRM能够很好地解释NN生成器的渲染过程。
验证实验采用了5个数据集:Restaurant、Hotel、Laptop、TV和E2E-NLG。Hotel和Restaurant由Wen et al.2015a公布;Laptop和TV由Wen et al.2015b公布;E2E-NLG是一个公开挑战赛的评测集。它们的基本情况如下表1所示。
本申请实施例中,采用两种自动评测方法:BLEU和ERR。BLEU经常用于评价生成模型,ERR用于测量NLG模型生成的准确度。
Figure BDA0002952565390000201
其中N是键值对的总数;p是生成时漏掉的键值对数目;q是生成时冗余的键值对数目。由于E2E-NLG包含大量改述键值对,因此ERR不适用。在其他数据集上,可以同时用BLEU和ERR对模型做评测。
表1各数据集的统计信息
Figure BDA0002952565390000202
以下表2展示了本申请实施例的模型和基线模型在5个数据集上的效果,其中,最后3行Gumbel-softmax、VQ-VAE和softmax为本申请实施例的方法对应的效果。
表2自动度量指标评测模型的效果
Figure BDA0002952565390000203
首先,基于VQ-VAE的实现比基于Gumbel-softmax Trick的实现更有效。除了Laptop数据集,使用VQ-VAE比使用Gumbel-softmax效果要好。以BLE U为测试度量,VQ-VAE比Gumbel-softmax在Restaurant上高1.68%,在Hotel上高1.99%,在Television上高2.84%和在E2E-NLG上高2.06%。考虑正确性,我们显著地降低各个数据集上的ERR值。在Restaurant上降低百分比是14.29%,在Hotel上是28.57%,在TV上是11.39%。其次,HRM不仅具有可解释性,而且接近或超过目前最好的模型。例如,我们的BLEU仅比NLG-LM在Restaurant上低0.75%,在E2E-NLG上低0.44%。
在一些实施例中,如果一个生成项是从输入的第i对键值检索而来,则将该生成项标为P(i),如果一个生成项是由输入的第i对键值转述而来,则将该生成项标为C(i),否则将该生成项标为L。图12是本申请实施例提供的从E2E-N LG中挑选验证可解释性的样例,其中,采用实线和虚线分别标明了释义和去词汇化两种生成类型。这些例子充分证明HRM具有很好的可解释性。
下面是图12中三个不同的例证。请继续参照图12,在第一个例子中,短语“CaféSicilia”原封不动地被复制到了生成的句子中。在第二个例子中,短语“an adultrestaurant”和指示型键值(“familyFriendly”,“no”)对齐。在第三个例子中,短语“haslow customer ratings”与改述型键值“1out of 5”对齐。
在一些实施例中,还通过人工校验对不同的模型在可解释性上做定量的比较。首先,引入一个对齐得分p/N,其中p是正确对齐生成句子的键值对数目,N为所有输入键值对的总数。本申请实施例提供的模型用HRM做解释。而其他模型则用注意力机制产生的权重解释生成过程。这里,从测试集中抽样了200条数据并雇佣了15个人人工判断解释是否正确。
表3中包含了实验结果,从中可以获得两条结论:第一,更好地BLEU得分可能导致更糟糕的可解释性。例如,虽然NLG-LM比TGen在BLEU高一些,但在对齐得分上低13.5%。第二,本申请实施例的模型在可解释性上显著的高于前人的方法。例如,HRM w/VQ-VAE分别比TGen和NLG-LM的对齐得分高35.6%和43.2%。
表3 E2E-NLG数据集上的人工检验结果
Figure BDA0002952565390000211
下面继续说明本申请实施例提供的文本生成装置354实施为软件模块的示例性结构,在一些实施例中,如图3所示,存储在存储器350的文本生成装置354中的软件模块可以是文本生成设备中的文本生成装置,所述装置包括:
获取模块,用于获取待处理信息,所述待处理信息中包括至少两个键值对;向量化处理模块,用于对每一所述键值对进行向量化处理,对应得到一个语义单元;语义渲染模块,用于采用至少一种渲染器对每一所述语义单元进行语义渲染,对应得到所述语义单元的状态表示、和所述语义单元在预定义词典或在所述键值对上的概率分布;整合处理模块,用于通过模式切换器对所述渲染器得到的所述状态表示和所述概率分布进行整合处理,得到每一语义单元的渲染类型和每一语义单元在输出文本中的位置;生成模块,用于根据每一语义单元的所述渲染类型和在所述输出文本中的位置,生成对应于所述待处理信息的所述输出文本。
在一些实施例中,每一所述键值对中包括一个目标键和一个目标值;所述向量化处理模块还用于:对每一所述键值对中的所述目标值进行RNN编码,得到与所述目标值对应的RNN向量;采用预设的词向量矩阵,对每一所述键值对中的所述目标键进行词向量化处理,得到所述目标键的词向量;对每一所述键值对中的所述目标值对应的RNN向量和所述目标键的词向量进行第一拼接操作,得到所述语义单元的向量表示。
在一些实施例中,所述向量化处理模块还用于:对每一所述键值对中的所述目标值分别进行正向RNN编码和逆向RNN编码,对应得到所述目标键的正向RNN表示和逆向RNN表示;对所述正向RNN表示和所述逆向RNN表示进行第二拼接操作,得到与所述目标值对应的RNN拼接向量;将所述RNN拼接向量确定为与所述目标值对应的RNN向量。
在一些实施例中,所述装置还包括:建模模块,用于根据每一所述语义单元的所述向量表示,采用自注意力机制建模所述至少两个键值对之间的相关性,得到所述至少两个键值对之间的相关性表示;所述语义渲染模块还用于:根据每一所述语义单元的所述向量表示和所述至少两个键值对之间的相关性表示,采用至少一种渲染器对每一所述语义单元进行所述语义渲染。
在一些实施例中,所述渲染器包括指针网络,所述指针网络用于将每一所述语义单元对应的所述键值对中的目标值复制到所述输出文本中;所述语义渲染模块还用于:通过所述指针网络,对每一所述语义单元进行基于迭代生成所述输出文本的第一RNN编码,得到所述语义单元在迭代生成过程中的第一RNN状态表示;将所述第一RNN状态表示,确定为所述语义单元的状态表示;采用注意力机制对所述语义单元的状态表示和所述相关性表示进行向量转换,得到所述语义单元在所述键值对上的第一概率分布。
在一些实施例中,所述渲染器包括条件序列生成器,所述条件序列生成器用于将每一所述语义单元对应的所述键值对渲染成特定的文本形式,并将所述文本形式插入至所述输出文本中;所述语义渲染模块还用于:通过所述条件序列生成器,采用自注意力机制对每一所述语义单元的向量表示进行自注意力转换,得到每一所述语义单元的自注意力表示向量;对每一所述语义单元的状态表示和所述自注意力表示向量进行基于迭代生成所述输出文本的第二RNN编码,得到所述语义单元在迭代生成过程中的第二RNN状态表示;将所述第二RNN状态表示,确定为所述语义单元的状态表示;采用预设转换方式,对所述语义单元的状态表示和所述自注意力表示向量进行向量转换,得到所述语义单元在所述预定义词典上的第二概率分布。
在一些实施例中,所述渲染器包括语言模型,所述语言模型用于生成所述输出文本中的上下文无关的词;所述语义渲染模块还用于:通过所述语言模型,读取当前的所述语义单元之前且与所述语义单元相邻的在先生成项;根据所述在先生成项更新所述语言模型的当前状态,得到所述语义单元的状态表示;根据所述语义单元的状态表示预测所述语义单元在所述预定义词典上的第三概率分布。
在一些实施例中,所述整合处理模块还用于:通过所述模式切换器对全部渲染器得到的每一语义单元的所述状态表示进行第一线性整合处理,得到对应语义单元在迭代生成过程中的单步状态表示;根据所述单步状态表示确定所述语义单元的渲染类型;通过所述模式切换器对全部渲染器得到的每一语义单元的所述概率分布进行第二线性整合处理,得到对应语义单元在所述预定义词典和所述键值对上的概率分布;根据所述语义单元在所述预定义词典和所述键值对上的概率分布,确定所述语义单元在输出文本中的位置。
在一些实施例中,所述单步状态表示采用独热码表示;所述整合处理模块还用于:将所述独热码表示中数值为1的状态码所对应的渲染器,确定为目标渲染器;根据所述目标渲染器的类型,确定所述语义单元的渲染类型。
在一些实施例中,所述装置还包括:处理模块,用于采用预先训练的文本生成模型实现所述文本生成方法;所述文本生成模型包括层次结构的编码器和异质渲染机,所述异质渲染机包括所述至少一种渲染器和所述模式切换器。
在一些实施例中,所述文本生成模型通过以下步骤进行训练:将样本信息输入至所述文本生成模型中,所述样本信息中包括至少两个样本键值对;通过所述层次结构的编码器对每一所述样本键值对进行向量化处理,对应得到一个样本语义单元;通过所述至少一种渲染器对每一所述样本语义单元进行语义渲染,对应得到所述样本语义单元的样本状态表示、和所述样本语义单元在预定义词典或在所述键值对上的样本概率分布;通过所述模式切换器对所述渲染器得到的所述样本状态表示和所述样本概率分布进行整合处理,得到每一样本语义单元的样本渲染类型和每一语义单元在预测输出文本中的样本位置;将所述样本渲染类型和所述样本位置输入至预设损失模型中,得到损失结果;根据所述损失结果对所述层次结构的编码器、每一所述渲染器和所述模式切换器中的参数进行优化,得到训练后的文本生成模型。
需要说明的是,本申请实施例装置的描述,与上述方法实施例的描述是类似的,具有同方法实施例相似的有益效果,因此不做赘述。对于本装置实施例中未披露的技术细节,请参照本申请方法实施例的描述而理解。
本申请实施例提供了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中。计算机设备的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该计算机设备执行本申请实施例上述的方法。
本申请实施例提供一种存储有可执行指令的存储介质,其中存储有可执行指令,当可执行指令被处理器执行时,将引起处理器执行本申请实施例提供的方法,例如,如图4示出的方法。
在一些实施例中,存储介质可以是计算机可读存储介质,例如,铁电存储器(FRAM,Ferromagnetic Random Access Memory)、只读存储器(ROM,Read Only Memory)、可编程只读存储器(PROM,Programmable Read Only Memory)、可擦除可编程只读存储器(EPROM,Erasable Programmable Read Only Memory)、带电可擦可编程只读存储器(EEPROM,Electrically Erasable Programmable Read Only Memory)、闪存、磁表面存储器、光盘、或光盘只读存储器(CD-ROM,Compact Disk-Read Only Memory)等存储器;也可以是包括上述存储器之一或任意组合的各种设备。
在一些实施例中,可执行指令可以采用程序、软件、软件模块、脚本或代码的形式,按任意形式的编程语言(包括编译或解释语言,或者声明性或过程性语言)来编写,并且其可按任意形式部署,包括被部署为独立的程序或者被部署为模块、组件、子例程或者适合在计算环境中使用的其它单元。
作为示例,可执行指令可以但不一定对应于文件系统中的文件,可以可被存储在保存其它程序或数据的文件的一部分,例如,存储在超文本标记语言(HTML,Hyper TextMarkup Language)文档中的一个或多个脚本中,存储在专用于所讨论的程序的单个文件中,或者,存储在多个协同文件(例如,存储一个或多个模块、子程序或代码部分的文件)中。作为示例,可执行指令可被部署为在一个计算设备上执行,或者在位于一个地点的多个计算设备上执行,又或者,在分布在多个地点且通过通信网络互连的多个计算设备上执行。
以上所述,仅为本申请的实施例而已,并非用于限定本申请的保护范围。凡在本申请的精神和范围之内所作的任何修改、等同替换和改进等,均包含在本申请的保护范围之内。

Claims (14)

1.一种文本生成方法,其特征在于,所述方法包括:
获取待处理信息,所述待处理信息中包括至少两个键值对;
对每一所述键值对进行向量化处理,对应得到一个语义单元;
采用至少一种渲染器对每一所述语义单元进行语义渲染,对应得到所述语义单元的状态表示、和所述语义单元在预定义词典或在所述键值对上的概率分布;
通过模式切换器对所述渲染器得到的所述状态表示和所述概率分布进行整合处理,得到每一语义单元的渲染类型和每一语义单元在输出文本中的位置;
根据每一语义单元的所述渲染类型和在所述输出文本中的位置,生成对应于所述待处理信息的所述输出文本。
2.根据权利要求1所述的方法,其特征在于,每一所述键值对中包括一个目标键和一个目标值;
所述对每一所述键值对进行向量化处理,对应得到一个语义单元,包括:
对每一所述键值对中的所述目标值进行RNN编码,得到与所述目标值对应的RNN向量;
采用预设的词向量矩阵,对每一所述键值对中的所述目标键进行词向量化处理,得到所述目标键的词向量;
对每一所述键值对中的所述目标值对应的RNN向量和所述目标键的词向量进行第一拼接操作,得到所述语义单元的向量表示。
3.根据权利要求2所述的方法,其特征在于,所述对每一所述键值对中的所述目标值进行RNN编码,得到与所述目标值对应的RNN向量,包括:
对每一所述键值对中的所述目标值分别进行正向RNN编码和逆向RNN编码,对应得到所述目标键的正向RNN表示和逆向RNN表示;
对所述正向RNN表示和所述逆向RNN表示进行第二拼接操作,得到与所述目标值对应的RNN拼接向量;
将所述RNN拼接向量确定为与所述目标值对应的RNN向量。
4.根据权利要求2所述的方法,其特征在于,所述方法还包括:
根据每一所述语义单元的所述向量表示,采用自注意力机制建模所述至少两个键值对之间的相关性,得到所述至少两个键值对之间的相关性表示;
所述采用至少一种渲染器对每一所述语义单元进行语义渲染,包括:
根据每一所述语义单元的所述向量表示和所述至少两个键值对之间的相关性表示,采用至少一种渲染器对每一所述语义单元进行所述语义渲染。
5.根据权利要求4所述的方法,其特征在于,所述渲染器包括指针网络,所述指针网络用于将每一所述语义单元对应的所述键值对中的目标值复制到所述输出文本中;
所述采用至少一种渲染器对每一所述语义单元进行语义渲染,对应得到所述语义单元的状态表示、和所述语义单元在预定义词典或在所述键值对上的概率分布,包括:
通过所述指针网络,对每一所述语义单元进行基于迭代生成所述输出文本的第一RNN编码,得到所述语义单元在迭代生成过程中的第一RNN状态表示;
将所述第一RNN状态表示,确定为所述语义单元的状态表示;
采用注意力机制对所述语义单元的状态表示和所述相关性表示进行向量转换,得到所述语义单元在所述键值对上的第一概率分布。
6.根据权利要求4所述的方法,其特征在于,所述渲染器包括条件序列生成器,所述条件序列生成器用于将每一所述语义单元对应的所述键值对渲染成特定的文本形式,并将所述文本形式插入至所述输出文本中;
所述采用至少一种渲染器对每一所述语义单元进行语义渲染,对应得到所述语义单元的状态表示、和所述语义单元在预定义词典或在所述键值对上的概率分布,包括:
通过所述条件序列生成器,采用自注意力机制对每一所述语义单元的向量表示进行自注意力转换,得到每一所述语义单元的自注意力表示向量;
对每一所述语义单元的状态表示和所述自注意力表示向量进行基于迭代生成所述输出文本的第二RNN编码,得到所述语义单元在迭代生成过程中的第二RNN状态表示;
将所述第二RNN状态表示,确定为所述语义单元的状态表示;
采用预设转换方式,对所述语义单元的状态表示和所述自注意力表示向量进行向量转换,得到所述语义单元在所述预定义词典上的第二概率分布。
7.根据权利要求4所述的方法,其特征在于,所述渲染器包括语言模型,所述语言模型用于生成所述输出文本中的上下文无关的词;
所述采用至少一种渲染器对每一所述语义单元进行语义渲染,对应得到所述语义单元的状态表示、和所述语义单元在预定义词典或在所述键值对上的概率分布,包括:
通过所述语言模型,读取当前的所述语义单元之前且与所述语义单元相邻的在先生成项;
根据所述在先生成项更新所述语言模型的当前状态,得到所述语义单元的状态表示;
根据所述语义单元的状态表示预测所述语义单元在所述预定义词典上的第三概率分布。
8.根据权利要求1所述的方法,其特征在于,所述通过模式切换器对每一所述渲染器得到的所述状态表示和所述概率分布进行整合处理,得到每一语义单元的渲染类型和每一语义单元在输出文本中的位置,包括:
通过所述模式切换器对全部渲染器得到的每一语义单元的所述状态表示进行第一线性整合处理,得到对应语义单元在迭代生成过程中的单步状态表示;
根据所述单步状态表示确定所述语义单元的渲染类型;
通过所述模式切换器对全部渲染器得到的每一语义单元的所述概率分布进行第二线性整合处理,得到对应语义单元在所述预定义词典和所述键值对上的概率分布;
根据所述语义单元在所述预定义词典和所述键值对上的概率分布,确定所述语义单元在输出文本中的位置。
9.根据权利要求8所述的方法,其特征在于,所述单步状态表示采用独热码表示;所述根据所述单步状态表示确定所述语义单元的渲染类型,包括:
将所述独热码表示中数值为1的状态码所对应的渲染器,确定为目标渲染器;
根据所述目标渲染器的类型,确定所述语义单元的渲染类型。
10.根据权利要求1至9任一项所述的方法,其特征在于,所述方法还包括:采用预先训练的文本生成模型实现所述文本生成方法;所述文本生成模型包括层次结构的编码器和异质渲染机,所述异质渲染机包括所述至少一种渲染器和所述模式切换器。
11.根据权利要求10所述的方法,其特征在于,所述文本生成模型通过以下步骤进行训练:
将样本信息输入至所述文本生成模型中,所述样本信息中包括至少两个样本键值对;
通过所述层次结构的编码器对每一所述样本键值对进行向量化处理,对应得到一个样本语义单元;
通过所述至少一种渲染器对每一所述样本语义单元进行语义渲染,对应得到所述样本语义单元的样本状态表示、和所述样本语义单元在预定义词典或在所述键值对上的样本概率分布;
通过所述模式切换器对所述渲染器得到的所述样本状态表示和所述样本概率分布进行整合处理,得到每一样本语义单元的样本渲染类型和每一语义单元在预测输出文本中的样本位置;
将所述样本渲染类型和所述样本位置输入至预设损失模型中,得到损失结果;
根据所述损失结果对所述层次结构的编码器、每一所述渲染器和所述模式切换器中的参数进行优化,得到训练后的文本生成模型。
12.一种文本生成装置,其特征在于,所述装置包括:
获取模块,用于获取待处理信息,所述待处理信息中包括至少两个键值对;
向量化处理模块,用于对每一所述键值对进行向量化处理,对应得到一个语义单元;
语义渲染模块,用于采用至少一种渲染器对每一所述语义单元进行语义渲染,对应得到所述语义单元的状态表示、和所述语义单元在预定义词典或在所述键值对上的概率分布;
整合处理模块,用于通过模式切换器对所述渲染器得到的所述状态表示和所述概率分布进行整合处理,得到每一语义单元的渲染类型和每一语义单元在输出文本中的位置;
生成模块,用于根据每一语义单元的所述渲染类型和在所述输出文本中的位置,生成对应于所述待处理信息的所述输出文本。
13.一种文本生成设备,其特征在于,包括:
存储器,用于存储可执行指令;处理器,用于执行所述存储器中存储的可执行指令时,实现权利要求1至11任一项所述的文本生成方法。
14.一种计算机可读存储介质,其特征在于,存储有可执行指令,用于引起处理器执行所述可执行指令时,实现权利要求1至11任一项所述的文本生成方法。
CN202110214294.8A 2021-02-25 2021-02-25 文本生成方法、装置、设备及计算机可读存储介质 Pending CN113591482A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110214294.8A CN113591482A (zh) 2021-02-25 2021-02-25 文本生成方法、装置、设备及计算机可读存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110214294.8A CN113591482A (zh) 2021-02-25 2021-02-25 文本生成方法、装置、设备及计算机可读存储介质

Publications (1)

Publication Number Publication Date
CN113591482A true CN113591482A (zh) 2021-11-02

Family

ID=78238078

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110214294.8A Pending CN113591482A (zh) 2021-02-25 2021-02-25 文本生成方法、装置、设备及计算机可读存储介质

Country Status (1)

Country Link
CN (1) CN113591482A (zh)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114331904A (zh) * 2021-12-31 2022-04-12 电子科技大学 一种人脸遮挡识别方法
CN114861639A (zh) * 2022-05-26 2022-08-05 北京百度网讯科技有限公司 提问信息生成方法、装置、电子设备及存储介质
WO2023185515A1 (zh) * 2022-03-30 2023-10-05 北京字节跳动网络技术有限公司 特征提取方法、装置、存储介质及电子设备

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114331904A (zh) * 2021-12-31 2022-04-12 电子科技大学 一种人脸遮挡识别方法
CN114331904B (zh) * 2021-12-31 2023-08-08 电子科技大学 一种人脸遮挡识别方法
WO2023185515A1 (zh) * 2022-03-30 2023-10-05 北京字节跳动网络技术有限公司 特征提取方法、装置、存储介质及电子设备
CN114861639A (zh) * 2022-05-26 2022-08-05 北京百度网讯科技有限公司 提问信息生成方法、装置、电子设备及存储介质
CN114861639B (zh) * 2022-05-26 2023-03-10 北京百度网讯科技有限公司 提问信息生成方法、装置、电子设备及存储介质

Similar Documents

Publication Publication Date Title
Alvarez-Melis et al. A causal framework for explaining the predictions of black-box sequence-to-sequence models
Michelucci Applied deep learning
Yin et al. Neural enquirer: Learning to query tables with natural language
US6604094B1 (en) Simulating human intelligence in computers using natural language dialog
CN113591482A (zh) 文本生成方法、装置、设备及计算机可读存储介质
CN112069295B (zh) 相似题推荐方法、装置、电子设备和存储介质
Bowman et al. Recursive neural networks can learn logical semantics
Cotterell et al. Probabilistic typology: Deep generative models of vowel inventories
Tang et al. Modelling student behavior using granular large scale action data from a MOOC
CN111259632A (zh) 一种基于语义对齐的树结构数学应用题求解方法及系统
CN113254581B (zh) 一种基于神经语义解析的金融文本公式抽取方法及装置
KR20210076804A (ko) 기계 번역 모델 트레이닝 방법, 장치 및 기록 매체
CN111368082A (zh) 一种基于层次网络的领域自适应词嵌入的情感分析方法
CN114648032B (zh) 语义理解模型的训练方法、装置和计算机设备
CN113988300A (zh) 一种题目结构推理方法及系统
Aydın et al. A research on the new generation artificial intelligence technology generative pretraining transformer 3
Tang et al. Predictive modelling of student behaviour using granular large-scale action data
Liang et al. HELP-DKT: an interpretable cognitive model of how students learn programming based on deep knowledge tracing
Han et al. Generative adversarial networks for open information extraction
Dunbar Generative grammar, neural networks, and the implementational mapping problem: Response to Pater
WO2020046159A1 (ru) Система и способ для хранения и обработки данных
Cífka et al. Black-box language model explanation by context length probing
Sharma et al. EXPLORING THE ROLE OF GENERATIVE MODELS IN NATURAL LANGUAGE UNDERSTANDING
Sawatzky et al. Visualizing RNN states with predictive semantic encodings
Luo Automatic short answer grading using deep learning

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
REG Reference to a national code

Ref country code: HK

Ref legal event code: DE

Ref document number: 40056124

Country of ref document: HK

SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination