CN113553863B - 文本生成方法、装置、电子设备和存储介质 - Google Patents
文本生成方法、装置、电子设备和存储介质 Download PDFInfo
- Publication number
- CN113553863B CN113553863B CN202110731989.3A CN202110731989A CN113553863B CN 113553863 B CN113553863 B CN 113553863B CN 202110731989 A CN202110731989 A CN 202110731989A CN 113553863 B CN113553863 B CN 113553863B
- Authority
- CN
- China
- Prior art keywords
- text
- character
- attribute
- controllable
- coding sequence
- 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.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 44
- 108091026890 Coding region Proteins 0.000 claims abstract description 67
- 238000013528 artificial neural network Methods 0.000 claims description 30
- 125000004122 cyclic group Chemical group 0.000 claims description 25
- 238000004590 computer program Methods 0.000 claims description 12
- 230000004044 response Effects 0.000 claims description 5
- 230000000306 recurrent effect Effects 0.000 claims description 4
- 230000008569 process Effects 0.000 abstract description 11
- 238000003058 natural language processing Methods 0.000 abstract description 3
- 238000012545 processing Methods 0.000 description 10
- 238000010586 diagram Methods 0.000 description 9
- 238000005516 engineering process Methods 0.000 description 9
- 238000004891 communication Methods 0.000 description 8
- 238000012549 training Methods 0.000 description 8
- 238000013519 translation Methods 0.000 description 7
- 238000013473 artificial intelligence Methods 0.000 description 5
- 238000013507 mapping Methods 0.000 description 5
- 230000006870 function Effects 0.000 description 3
- 238000012986 modification Methods 0.000 description 3
- 230000004048 modification Effects 0.000 description 3
- 230000003287 optical effect Effects 0.000 description 3
- 230000003993 interaction Effects 0.000 description 2
- 238000010801 machine learning Methods 0.000 description 2
- 230000006399 behavior Effects 0.000 description 1
- 230000001413 cellular effect Effects 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 238000013135 deep learning Methods 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 230000008451 emotion Effects 0.000 description 1
- 230000002996 emotional effect Effects 0.000 description 1
- 235000019580 granularity Nutrition 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 238000007726 management method Methods 0.000 description 1
- 239000013307 optical fiber Substances 0.000 description 1
- 235000013550 pizza Nutrition 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 230000001953 sensory effect Effects 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 238000011282 treatment Methods 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/40—Processing or translation of natural language
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/40—Processing or translation of natural language
- G06F40/55—Rule-based translation
- G06F40/56—Natural language generation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/10—Text processing
- G06F40/103—Formatting, i.e. changing of presentation of documents
- G06F40/117—Tagging; Marking up; Designating a block; Setting of attributes
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/10—Text processing
- G06F40/12—Use of codes for handling textual entities
- G06F40/126—Character encoding
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/20—Natural language analysis
- G06F40/237—Lexical tools
- G06F40/242—Dictionaries
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/30—Semantic analysis
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
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)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本公开公开了文本生成方法、装置、电子设备和存储介质,涉及自然语言处理技术领域。在对上文文本进行编码得到编码序列后,针对上文文本的编码序列和可控属性进行解码,得到下文文本的隐状态,从而使得下文文本的隐状态是符合可控属性的。进而再对符合可控属性的该隐状态和上文文本的编码序列进行下一步的解码,使得解码出的下文文本在语义上是针对该上文文本的回复。通过对下文文本的生成过程拆分为两步,使得第一步生成的下文文本的隐状态是符合可控属性的,基于此进行下一步解码,使得解码得到的下文文本在语义上是针对该上文文本的回复,同时符合了可控属性,使得下文文本的生成质量得到了提升。
Description
技术领域
本公开涉及数据处理技术领域,尤其涉及自然语言处理技术领域,具体涉及一种文本生成方法、装置、电子设备和存储介质。
背景技术
可控文本生成是一种根据所需的可控属性进行文本生成的方式,例如,可控属性具体可以为情感倾向、语句长度、内容具体程度和语言风格类型等等。
相关技术中,为了使得生成的文本能够满足所需的可控属性,通常采用将上文文本与可控属性拼接后输入翻译模型进以顺序进行编码和解码,从而生成下文文本,但在实际运行中发现,这种方式生成的下文文本质量不高。
发明内容
本公开提供了一种文本生成方法、装置、电子设备和存储介质。
根据本公开的一方面,提供了一种文本生成方法,其中,包括:
对上文文本进行编码,得到所述上文文本的编码序列;
对待生成的下文文本,获取可控属性;
根据所述上文文本的编码序列和所述下文文本的可控属性,预测所述下文文本的隐状态;
根据所述下文文本的隐状态,对所述上文文本的编码序列进行解码,得到所述上文文本对应的下文文本。
根据本公开的另一方面,提供了一种文本生成装置,包括:
编码模块,用于对上文文本进行编码,得到所述上文文本的编码序列;
获取模块,用于对待生成的下文文本,获取可控属性;
预测模块,用于根据所述上文文本的编码序列和所述下文文本的可控属性,预测所述下文文本的隐状态;
解码模块,用于根据所述下文文本的隐状态,对所述上文文本的编码序列进行解码,得到所述上文文本对应的下文文本。
根据本公开的另一方面,提供了一种电子设备,包括:
至少一个处理器;以及
与所述至少一个处理器通信连接的存储器;其中,
所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行前述一方面所述的方法。
根据本公开的另一方面,提供了一种存储有计算机指令的非瞬时计算机可读存储介质,其中,所述计算机指令用于使所述计算机执行前述一方面所述的方法。
根据本公开的另一方面,提供了一种计算机程序产品,包括计算机程序,所述计算机程序在被处理器执行时实现如前述一方面所述的方法。
本公开提供的文本生成方法、装置、电子设备和存储介质,在对上文文本进行编码得到编码序列后,针对上文文本的编码序列和可控属性进行解码,得到下文文本的隐状态,从而使得下文文本的隐状态是符合可控属性的。进而再对符合可控属性的该隐状态和上文文本的编码序列进行下一步的解码,使得解码出的下文文本在语义上是针对该上文文本的回复。通过对下文文本的生成过程拆分为两步,使得第一步生成的下文文本的隐状态是符合可控属性的,基于此进行下一步解码,使得解码得到的下文文本在语义上是针对该上文文本的回复,同时符合了可控属性,使得下文文本的生成质量得到了提升。
应当理解,本部分所描述的内容并非旨在标识本申请的实施例的关键或重要特征,也不用于限制本申请的范围。本申请的其它特征将通过以下的说明书而变得容易理解。
附图说明
附图用于更好地理解本方案,不构成对本公开的限定。其中:
图1为本公开实施例所提供的一种文本生成方法的流程示意图;
图2为文本生成模型的框架图;
图3为本公开实施例提供的另一种文本生成的流程示意图;
图4为下文文本生成的原理图;
图5为本公开实施例提供的一种文本生成装置的结构示意图;
图6为本公开实施例提供的示例电子设备600的示意性框图。
具体实施方式
以下结合附图对本公开的示范性实施例做出说明,其中包括本公开实施例的各种细节以助于理解,应当将它们认为仅仅是示范性的。因此,本领域普通技术人员应当认识到,可以对这里描述的实施例做出各种改变和修改,而不会背离本公开的范围和精神。同样,为了清楚和简明,以下的描述中省略了对公知功能和结构的描述。
下面参考附图描述本公开实施例的文本生成方法、装置、电子设备和存储介质。
相关技术中,为了使得生成的文本能够满足所需的可控属性,通常采用将上文文本与可控属性拼接后输入翻译模型,根据翻译模型的输出确定下文文本。这种方式下,对翻译模型的训练要求较高,翻译模型需要学习得到输入的上文文本与可控属性,与符合该可控属性的下文文本之间的映射关系,对于翻译模型来说,学习到这种较为复杂的映射关系,是比较困难的,从而导致在实际运行中,生成的下文文本质量不高。
本公开中,为了避免翻译模型直接对这种复杂的映射关系进行学习,对学习目标进行了拆分,分别确定了高质量回复和满足可控属性这两个目标。在对上文文本进行编码之后,针对上文文本的编码序列和可控属性进行解码,得到下文文本的隐状态,从而使得下文文本的隐状态是符合可控属性的。进而再对符合可控属性的该隐状态和上文文本的编码序列进行下一步的解码,使得解码出的下文文本在语义上是针对该上文文本的回复。
图1为本公开实施例所提供的一种文本生成方法的流程示意图。
如图1所示,该方法包含以下步骤:
步骤101,对上文文本进行编码,得到上文文本的编码序列。
步骤102,对待生成的下文文本,获取可控属性。
作为第一种可能的实现方式,响应于用户操作,确定可控属性的目标值。
作为第二种可能的实现方式,对上文文本进行编码,得到上文文本的编码序列之后,根据上文文本的编码序列进行可控属性的预测,得到目标值。
需要说明的是,可根据不同场景,执行第一种可能的实现方式,或者第二种可能的实现方式两者中的一个,或者,在第一种可能的实现方式中未探测到用户操作,或者根据用户操作无法确定出目标值的情况下,执行第二种可能的实现方式。
基于前述两种可能的实现方式可知,可控属性可以是用户手动输入的,也可以无需用户手动输入,使得文本生成的方式更加灵活,能够满足用户的不同需求。
步骤103,根据上文文本的编码序列和下文文本的可控属性,预测下文文本的隐状态。
其中,下文文本的隐状态,是符合可控属性的,或者说,下文文本的隐状态是携带有可控属性的
步骤104,根据下文文本的隐状态,对上文文本的编码序列进行解码,得到上文文本对应的下文文本。
为了清楚说明本实施例,本实施例提供了图2所示的文本生成模型的框架,如图2所示,上文文本标记为x,对上文文本采用如图2所示的编码器进行编码,得到上文文本的编码序列Hx,将上文文本的编码序列Hx输入属性预测器,以采用属性预测器根据上文文本的编码序列Hx预测下文文本的可控属性z。进而将编码序列Hx以及下文文本的可控属性z输入解码器进行解码,得到上文文本对应的下文文本y。
其中,在图2所示的解码器进行解码的过程,可以划分为两阶段:
第一个阶段即图2所示的可控属性规划层执行,根据上文文本的编码序列Hx和所述下文文本的可控属性z,预测所述下文文本的隐状态Hz。
第二个阶段即图2所示的输出生成层执行,根据下文文本的隐状态Hz,对所述上文文本的编码序列Hx进行解码,得到所述上文文本对应的下文文本y。
在采用图2所示的文本生成模型进行下文文本生成之前,需要对文本生成模型进行训练。下面对文本生成模型的训练过程进行简要说明。
首先,进行训练样本的准备,训练样本可以从对话中截取得到的上文文本,并采用对应的下文文本进行标注,以及人工标注下文的可控属性,这里标注的可控属性包括全局属性和各字符的局部属性的取值。
进而,将训练样本输入文本生成模型,根据该文本生成模型对训练样本预测出的可控属性与标注的可控属性之间的差异,以及根据该文本生成模型预测的下文文本与标注的下文文本之间的差异,对文本生成模型进行训练。
本实施例中,针对上文文本的编码序列和可控属性进行解码,得到下文文本的隐状态,从而使得下文文本的隐状态是符合可控属性的。进而再对符合可控属性的该隐状态和上文文本的编码序列进行下一步的解码,使得解码出的下文文本在语义上是针对该上文文本的回复。通过对下文文本的生成过程拆分为两步,使得第一步生成的下文文本的隐状态是符合可控属性的,基于此进行下一步解码,使得解码得到的下文文本在语义上是针对该上文文本的回复,同时保留了前述的可控属性。相关技术中,则是将上文文本和可控属性一同输入模型,以得到模型输出的下文,这种方式使得上文文本和可控属性的拼接,与下文文本之间映射复杂,下文文本的生成质量不高。本实施例中,将复杂的映射过程拆分为两步简单过程,使得下文文本的生成质量得到了提升。
基于上述实施例,本实施例提供了一种实现方式,将可控属性划分为全局属性和局部属性。相关技术中,并未将可控属性进行全局属性和局部属性的划分。本公开实施例中,根据可控属性从不同粒度对下文文本的影响,进行了全局属性和局部属性的划分。对于全局属性,是从句子整体上体现的属性,从而下文文本中各字符的全局属性取值均是相同的;而对于局部属性,是句子中各词体现出的属性,下文文本中不同字符的局部属性取值可以是不同的,也就是说各字符具有对应的局部属性的取值。基于前述实施例,本实施例中,分别针对全局属性和局部属性进行说明。
图3为本公开实施例提供的另一种文本生成的流程示意图,如图3所示,包括:
步骤301,对上文文本进行编码,得到上文文本的编码序列。
将上文文本输入编码器进行编码,从而得到上文文本的编码序列。上文文本的编码序列中包括多个向量形式的编码,各编码分别与上文文本中的字符相对应,即上文文本中每个字符具有对应的编码。
步骤302,获取可控属性的目标值。
作为第一种可能的实现方式,响应于用户操作,确定可控属性的目标值。
作为第二种可能的实现方式,对上文文本进行编码,得到上文文本的编码序列之后,根据上文文本的编码序列进行可控属性的预测,得到目标值。
需要说明的是,可根据不同场景,执行第一种可能的实现方式,或者第二种可能的实现方式两者中的一个,或者,在第一种可能的实现方式中未探测到用户操作,或者根据用户操作无法确定出目标值的情况下,执行第二种可能的实现方式。
基于前述两种可能的实现方式可知,可控属性可以是用户手动输入的,也可以无需用户手动输入,使得文本生成的方式更加灵活,能够满足用户的不同需求。
步骤303,在可控属性为局部属性的情况下,根据目标值和上文文本中各字符的编码,预测下文文本中各字符的可控属性的取值。
其中,局部属性,是从每个词语上对下文文本进行属性控制的可控属性。例如:局部属性可以包括内容具体程度和情感倾向。
但由于用户针对下文文本中每个字符分别指定局部属性的取值操作较为复杂,为了简化用户操作,这就需要针对下文文本中各字符进行可控属性的取值预测。本公开实施例中,用户可以仅指定局部属性的一个目标值,基于该目标值预测下文中各字符的局部属性的取值。
可选地,将目标值和上文文本中的编码序列进行融合,并输入第三循环神经网络,得到下文文本中首个字符的可控属性的取值。进而将下文文本中(n-1)个字符的可控属性的取值和所述目标值,以及所述上文文本的编码序列进行融合,并输入所述第三循环神经网络进行解码,得到所述下文文本中第n个字符的可控属性的取值。
步骤304,在可控属性为全局属性的情况下,确定下文文本中各字符的可控属性的取值均为该目标值。
其中,全局属性,是从句子整体上进行属性控制的可控属性。例如:全局属性可以包括句子长度和语言风格类型等。因此,将下文文本中各字符的可用属性的取值均确定为目标值,可使得生成的句子风格统一。
步骤305,将编码序列与所述下文文本中首个字符的可控属性进行融合,并输入第一循环神经网络进行解码,得到所述下文文本中首个字符的隐状态。
可选地,将上文文本的编码序列与下文文本中首个字符的可控属性进行直接拼接,或者,加权求和,得到第一循环神经网络的输入向量。将该输入向量输入到第一训练神经网络之后,通过第一循环神经网络进行解码,得到下文文本中首个字符的隐状态。第一循环神经网络输出的隐状态携带有可控属性的相关信息,但并未携带有回复上文文本的语义。
步骤306,将下文文本中第(n-1)个字符的隐状态和所述下文文本中第n个字符的可控属性,以及所述上文文本中第n个字符的编码进行融合,并输入所述第一循环神经网络进行解码,得到所述下文文本中第n个字符的隐状态,其中,n为大于1的整数。
在第一循环神经网络输出了下文文本中首个字符的隐状态之后,基于该隐状态、下文文本中对应后续字符的可控属性以及上文文本的编码序列,继续进行下文文本中后续字符的解码。
步骤307,将编码序列与所述下文文本中首个字符的隐状态进行融合,并输入第二循环神经网络进行解码,得到所述下文文本中首个字符的编码。
可选地,由于编码序列中对应上文文本最后一个字符的编码通常携带有整个上个文本的语义,因此,可以将编码序列中对应上文文本中最后一个字符的编码与下文文本中首个字符的隐状态进行融合,并输入第二循环神经网络进行解码,得到所述下文文本中首个字符的编码。
步骤308,将所述下文文本中第(n-1)个字符的编码和所述下文文本中第n个字符的隐状态,以及所述上文文本中第n个字符的编码进行融合,并输入所述第二循环神经网络进行解码,得到所述下文文本中第n个字符的编码。
步骤309,根据所述下文文本中各字符的编码,确定下文文本。
下文文本中各字符的编码指示的是词典中各字符处于下文文本中的概率,基于该概率从词典中确定出下文文本该字符位置处的字符内容。
为了清楚说明本实施例,本实施例还提供了图4所示的下文文本生成的原理图。
如图4所示,输入上文文本例如“How do you like the pizza here?”,下文文本中各字符分别具有对应的控制属性,这里的控制属性包括局部属性和全局属性,其中,局部属性用空心圆圈标识,全局属性用实心圆圈标识。基于下文文本中各字符的控制属性,以及上文文本的编码序列,得到下文文本中各字符的隐状态hn z,其中,n为正整数,指示对应字符在下文文本中的顺序或者说位置号。根据下文文本中各字符的隐状态hn z,和上文文本的编码序列进行解码,得到下文文本的编码hn r。根据下文文本的各编码hn r得到最终的下文文本例如“Perfacet!It really hits…”。
本实施例中,针对上文文本的编码序列和可控属性进行解码,得到下文文本的隐状态,从而使得下文文本的隐状态是符合可控属性的。进而再对符合可控属性的该隐状态和上文文本的编码序列进行下一步的解码,使得解码出的下文文本在语义上是针对该上文文本的回复。通过对下文文本的生成过程拆分为两步,使得第一步生成的下文文本的隐状态是符合可控属性的,基于此进行下一步解码,使得解码得到的下文文本在语义上是针对该上文文本的回复,同时保留了前述的可控属性,使得下文文本的生成质量得到了提升。同时,针对局部属性和全局属性分别进行了不同的处理,以确定在下文文本中可控属性对应各字符的取值,进一步提高了下文文本的生成质量。
图5为本公开实施例提供的一种文本生成装置的结构示意图,如图5所示,包括:编码模块51、获取模块52、预测模块53和解码模块54。
编码模块51,用于对上文文本进行编码,得到所述上文文本的编码序列。
获取模块52,用于对待生成的下文文本,获取可控属性。
预测模块53,用于根据所述上文文本的编码序列和所述下文文本的可控属性,预测所述下文文本的隐状态。
解码模块54,用于根据所述下文文本的隐状态,对所述上文文本的编码序列进行解码,得到所述上文文本对应的下文文本。
进一步地,在本实施例一种可能的实现方式中,获取模块52包括:
获取单元,用于获取所述可控属性的目标值;
预测单元,用于在所述可控属性为局部属性的情况下,根据所述目标值和所述编码序列中上文文本各字符的编码,预测所述下文文本中各字符的可控属性的取值。
进一步地,在本实施例的一种可能的实现方式中,获取模块52,还包括:
确定单元,用于在所述可控属性为全局属性的情况下,确定所述下文文本中各字符的可控属性的取值均为所述目标值。
进一步地,在本实施例的一种可能的实现方式中,获取单元,具体用于:
响应于用户操作,确定所述可控属性的目标值;
或者,根据所述上文文本的编码序列进行所述可控属性的预测,得到所述目标值。
进一步地,在本实施例的一种可能的实现方式中,预测模块53,包括:
第一解码单元,用于将所述编码序列与所述下文文本中首个字符的可控属性进行融合,并输入第一循环神经网络进行解码,得到所述下文文本中首个字符的隐状态;
第二解码单元,用于将所述下文文本中第(n-1)个字符的隐状态和所述下文文本中第n个字符的可控属性,以及所述上文文本的编码序列进行融合,并输入所述第一循环神经网络进行解码,得到所述下文文本中第n个字符的隐状态,其中,n为大于1的整数。
进一步地,在本实施例的一种可能的实现方式中,解码模块54,包括:
第三解码单元,用于将所述编码序列与所述下文文本中首个字符的隐状态进行融合,并输入第二循环神经网络进行解码,得到所述下文文本中首个字符的编码;
第四解码单元,用于将所述下文文本中第(n-1)个字符的编码和所述下文文本中第n个字符的隐状态,以及所述上文文本的编码序列进行融合,并输入所述第二循环神经网络进行解码,得到所述下文文本中第n个字符的编码;
输出单元,用于根据所述下文文本中各字符的编码,确定所述下文文本。
进一步地,在本实施例的一种可能的实现方式中,预测单元,具体用于:
将所述目标值和所述上文文本的编码序列进行融合,并输入第三循环神经网络,得到所述下文文本中首个字符的可控属性的取值;
将所述下文文本中(n-1)个字符的可控属性的取值和所述目标值,以及所述上文文本的编码序列进行融合,并输入所述第三循环神经网络进行解码,得到所述下文文本中第n个字符的可控属性的取值。
本实施例提供的装置,在对上文文本进行编码得到编码序列后,针对上文文本的编码序列和可控属性进行解码,得到下文文本的隐状态,从而使得下文文本的隐状态是符合可控属性的。进而再对符合可控属性的该隐状态和上文文本的编码序列进行下一步的解码,使得解码出的下文文本在语义上是针对该上文文本的回复。通过对下文文本的生成过程拆分为两步,使得第一步生成的下文文本的隐状态是符合可控属性的,基于此进行下一步解码,使得解码得到的下文文本在语义上是针对该上文文本的回复,同时符合了可控属性,使得下文文本的生成质量得到了提升。
需要说明的是,前述对方法实施例的解释说明,也适用于本实施例的装置,原理相同,本实施例中不再限定。
根据本公开的实施例,本公开还提供了一种电子设备、一种可读存储介质和一种计算机程序产品。
图6示出了可以用来实施本公开的实施例的示例电子设备600的示意性框图。电子设备旨在表示各种形式的数字计算机,诸如,膝上型计算机、台式计算机、工作台、个人数字助理、服务器、刀片式服务器、大型计算机、和其它适合的计算机。电子设备还可以表示各种形式的移动装置,诸如,个人数字处理、蜂窝电话、智能电话、可穿戴设备和其它类似的计算装置。本文所示的部件、它们的连接和关系、以及它们的功能仅仅作为示例,并且不意在限制本文中描述的和/或者要求的本公开的实现。
如图6所示,设备600包括计算单元601,其可以根据存储在ROM(Read-OnlyMemory,只读存储器)602中的计算机程序或者从存储单元608加载到RAM(Random AccessMemory,随机访问/存取存储器)603中的计算机程序,来执行各种适当的动作和处理。在RAM603中,还可存储设备600操作所需的各种程序和数据。计算单元601、ROM 602以及RAM 603通过总线604彼此相连。I/O(Input/Output,输入/输出)接口605也连接至总线604。
设备600中的多个部件连接至I/O接口605,包括:输入单元606,例如键盘、鼠标等;输出单元607,例如各种类型的显示器、扬声器等;存储单元608,例如磁盘、光盘等;以及通信单元609,例如网卡、调制解调器、无线通信收发机等。通信单元609允许设备600通过诸如因特网的计算机网络和/或各种电信网络与其他设备交换信息/数据。
计算单元601可以是各种具有处理和计算能力的通用和/或专用处理组件。计算单元601的一些示例包括但不限于CPU(Central Processing Unit,中央处理单元)、GPU(Graphic Processing Units,图形处理单元)、各种专用的AI(Artificial Intelligence,人工智能)计算芯片、各种运行机器学习模型算法的计算单元、DSP(Digital SignalProcessor,数字信号处理器)、以及任何适当的处理器、控制器、微控制器等。计算单元601执行上文所描述的各个方法和处理,例如文本生成方法。例如,在一些实施例中,文本生成方法可被实现为计算机软件程序,其被有形地包含于机器可读介质,例如存储单元608。在一些实施例中,计算机程序的部分或者全部可以经由ROM 602和/或通信单元609而被载入和/或安装到设备600上。当计算机程序加载到RAM 603并由计算单元601执行时,可以执行上文描述的方法的一个或多个步骤。备选地,在其他实施例中,计算单元601可以通过其他任何适当的方式(例如,借助于固件)而被配置为执行前述文本生成方法。
本文中以上描述的***和技术的各种实施方式可以在数字电子电路***、集成电路***、FPGA(Field Programmable Gate Array,现场可编程门阵列)、ASIC(Application-Specific Integrated Circuit,专用集成电路)、ASSP(Application Specific StandardProduct,专用标准产品)、SOC(System On Chip,芯片上***的***)、CPLD(ComplexProgrammable Logic Device,复杂可编程逻辑设备)、计算机硬件、固件、软件、和/或它们的组合中实现。这些各种实施方式可以包括:实施在一个或者多个计算机程序中,该一个或者多个计算机程序可在包括至少一个可编程处理器的可编程***上执行和/或解释,该可编程处理器可以是专用或者通用可编程处理器,可以从存储***、至少一个输入装置、和至少一个输出装置接收数据和指令,并且将数据和指令传输至该存储***、该至少一个输入装置、和该至少一个输出装置。
用于实施本公开的方法的程序代码可以采用一个或多个编程语言的任何组合来编写。这些程序代码可以提供给通用计算机、专用计算机或其他可编程数据处理装置的处理器或控制器,使得程序代码当由处理器或控制器执行时使流程图和/或框图中所规定的功能/操作被实施。程序代码可以完全在机器上执行、部分地在机器上执行,作为独立软件包部分地在机器上执行且部分地在远程机器上执行或完全在远程机器或服务器上执行。
在本公开的上下文中,机器可读介质可以是有形的介质,其可以包含或存储以供指令执行***、装置或设备使用或与指令执行***、装置或设备结合地使用的程序。机器可读介质可以是机器可读信号介质或机器可读储存介质。机器可读介质可以包括但不限于电子的、磁性的、光学的、电磁的、红外的、或半导体***、装置或设备,或者上述内容的任何合适组合。机器可读存储介质的更具体示例会包括基于一个或多个线的电气连接、便携式计算机盘、硬盘、RAM、ROM、EPROM(Electrically Programmable Read-Only-Memory,可擦除可编程只读存储器)或快闪存储器、光纤、CD-ROM(Compact Disc Read-Only Memory,便捷式紧凑盘只读存储器)、光学储存设备、磁储存设备、或上述内容的任何合适组合。
为了提供与用户的交互,可以在计算机上实施此处描述的***和技术,该计算机具有:用于向用户显示信息的显示装置(例如,CRT(Cathode-Ray Tube,阴极射线管)或者LCD(Liquid Crystal Display,液晶显示器)监视器);以及键盘和指向装置(例如,鼠标或者轨迹球),用户可以通过该键盘和该指向装置来将输入提供给计算机。其它种类的装置还可以用于提供与用户的交互;例如,提供给用户的反馈可以是任何形式的传感反馈(例如,视觉反馈、听觉反馈、或者触觉反馈);并且可以用任何形式(包括声输入、语音输入或者、触觉输入)来接收来自用户的输入。
可以将此处描述的***和技术实施在包括后台部件的计算***(例如,作为数据服务器)、或者包括中间件部件的计算***(例如,应用服务器)、或者包括前端部件的计算***(例如,具有图形用户界面或者网络浏览器的用户计算机,用户可以通过该图形用户界面或者该网络浏览器来与此处描述的***和技术的实施方式交互)、或者包括这种后台部件、中间件部件、或者前端部件的任何组合的计算***中。可以通过任何形式或者介质的数字数据通信(例如,通信网络)来将***的部件相互连接。通信网络的示例包括:LAN(LocalArea Network,局域网)、WAN(Wide Area Network,广域网)、互联网和区块链网络。
计算机***可以包括客户端和服务器。客户端和服务器一般远离彼此并且通常通过通信网络进行交互。通过在相应的计算机上运行并且彼此具有客户端-服务器关系的计算机程序来产生客户端和服务器的关系。服务器可以是云服务器,又称为云计算服务器或云主机,是云计算服务体系中的一项主机产品,以解决了传统物理主机与VPS服务("Virtual Private Server",或简称"VPS")中,存在的管理难度大,业务扩展性弱的缺陷。服务器也可以为分布式***的服务器,或者是结合了区块链的服务器。
其中,需要说明的是,人工智能是研究使计算机来模拟人的某些思维过程和智能行为(如学习、推理、思考、规划等)的学科,既有硬件层面的技术也有软件层面的技术。人工智能硬件技术一般包括如传感器、专用人工智能芯片、云计算、分布式存储、大数据处理等技术;人工智能软件技术主要包括计算机视觉技术、语音识别技术、自然语言处理技术以及机器学习/深度学习、大数据处理技术、知识图谱技术等几大方向。
应该理解,可以使用上面所示的各种形式的流程,重新排序、增加或删除步骤。例如,本发公开中记载的各步骤可以并行地执行也可以顺序地执行也可以不同的次序执行,只要能够实现本公开公开的技术方案所期望的结果,本文在此不进行限制。
上述具体实施方式,并不构成对本公开保护范围的限制。本领域技术人员应该明白的是,根据设计要求和其他因素,可以进行各种修改、组合、子组合和替代。任何在本公开的精神和原则之内所作的修改、等同替换和改进等,均应包含在本公开保护范围之内。
Claims (13)
1.一种文本生成方法,包括:
对上文文本进行编码,得到所述上文文本的编码序列;
对待生成的下文文本,获取可控属性;
根据所述上文文本的编码序列和所述下文文本的可控属性,预测所述下文文本的隐状态;
根据所述下文文本的隐状态,对所述上文文本的编码序列进行解码,得到所述上文文本对应的下文文本;
其中,所述对待生成的下文文本,获取可控属性,包括:
获取所述可控属性的目标值;
在所述可控属性为局部属性的情况下,根据所述目标值和所述编码序列中上文文本各字符的编码,预测所述下文文本中各字符的可控属性的取值,其中,所述局部属性,是从每个词语上对下文文本进行属性控制的可控属性;
所述根据所述上文文本的编码序列和所述下文文本的可控属性,预测所述下文文本的隐状态,包括:
将所述编码序列与所述下文文本中首个字符的可控属性进行融合,并输入第一循环神经网络进行解码,得到所述下文文本中首个字符的隐状态;
将所述下文文本中第(n-1)个字符的隐状态和所述下文文本中第n个字符的可控属性,以及所述上文文本的编码序列进行融合,并输入所述第一循环神经网络进行解码,得到所述下文文本中第n个字符的隐状态,其中,n为大于1的整数。
2.根据权利要求1所述的文本生成方法,其中,所述获取所述可控属性的目标值之后,还包括:
在所述可控属性为全局属性的情况下,确定所述下文文本中各字符的可控属性的取值均为所述目标值。
3.根据权利要求1所述的文本生成方法,其中,所述获取所述可控属性的目标值,包括:
响应于用户操作,确定所述可控属性的目标值;
或者,根据所述上文文本的编码序列进行所述可控属性的预测,得到所述目标值。
4.根据权利要求1所述的文本生成方法,其中,所述根据所述下文文本的隐状态,对所述上文文本的编码序列进行解码,得到所述上文文本对应的下文文本,包括:
将所述编码序列与所述下文文本中首个字符的隐状态进行融合,并输入第二循环神经网络进行解码,得到所述下文文本中首个字符的编码;
将所述下文文本中第(n-1)个字符的编码和所述下文文本中第n个字符的隐状态,以及所述上文文本的编码序列进行融合,并输入所述第二循环神经网络进行解码,得到所述下文文本中第n个字符的编码;
根据所述下文文本中各字符的编码,确定所述下文文本。
5.根据权利要求1所述的文本生成方法,其中,所述根据所述目标值和所述上文文本中各字符的编码,预测所述下文文本中各字符的可控属性的取值,包括:
将所述目标值和所述上文文本的编码序列进行融合,并输入第三循环神经网络,得到所述下文文本中首个字符的可控属性的取值;
将所述下文文本中(n-1)个字符的可控属性的取值和所述目标值,以及所述上文文本的编码序列进行融合,并输入所述第三循环神经网络进行解码,得到所述下文文本中第n个字符的可控属性的取值。
6.一种文本生成装置,包括:
编码模块,用于对上文文本进行编码,得到所述上文文本的编码序列;
获取模块,用于对待生成的下文文本,获取可控属性;
预测模块,用于根据所述上文文本的编码序列和所述下文文本的可控属性,预测所述下文文本的隐状态;
解码模块,用于根据所述下文文本的隐状态,对所述上文文本的编码序列进行解码,得到所述上文文本对应的下文文本;
所述获取模块,包括:
获取单元,用于获取所述可控属性的目标值;
预测单元,用于在所述可控属性为局部属性的情况下,根据所述目标值和所述编码序列中上文文本各字符的编码,预测所述下文文本中各字符的可控属性的取值,其中,所述局部属性,是从每个词语上对下文文本进行属性控制的可控属性;
其中,所述预测模块,包括:
第一解码单元,用于将所述编码序列与所述下文文本中首个字符的可控属性进行融合,并输入第一循环神经网络进行解码,得到所述下文文本中首个字符的隐状态;
第二解码单元,用于将所述下文文本中第(n-1)个字符的隐状态和所述下文文本中第n个字符的可控属性,以及所述上文文本的编码序列进行融合,并输入所述第一循环神经网络进行解码,得到所述下文文本中第n个字符的隐状态,其中,n为大于1的整数。
7.根据权利要求6所述的文本生成装置,其中,所述获取模块,还包括:
确定单元,用于在所述可控属性为全局属性的情况下,确定所述下文文本中各字符的可控属性的取值均为所述目标值。
8.根据权利要求6所述的文本生成装置,其中,所述获取单元,具体用于:
响应于用户操作,确定所述可控属性的目标值;
或者,根据所述上文文本的编码序列进行所述可控属性的预测,得到所述目标值。
9.根据权利要求6所述的文本生成装置,其中,所述解码模块,包括:
第三解码单元,用于将所述编码序列与所述下文文本中首个字符的隐状态进行融合,并输入第二循环神经网络进行解码,得到所述下文文本中首个字符的编码;
第四解码单元,用于将所述下文文本中第(n-1)个字符的编码和所述下文文本中第n个字符的隐状态,以及所述上文文本的编码序列进行融合,并输入所述第二循环神经网络进行解码,得到所述下文文本中第n个字符的编码;
输出单元,用于根据所述下文文本中各字符的编码,确定所述下文文本。
10.根据权利要求6所述的文本生成装置,其中,所述预测单元,具体用于:
将所述目标值和所述上文文本的编码序列进行融合,并输入第三循环神经网络,得到所述下文文本中首个字符的可控属性的取值;
将所述下文文本中(n-1)个字符的可控属性的取值和所述目标值,以及所述上文文本的编码序列进行融合,并输入所述第三循环神经网络进行解码,得到所述下文文本中第n个字符的可控属性的取值。
11.一种电子设备,包括:
至少一个处理器;以及
与所述至少一个处理器通信连接的存储器;其中,
所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行权利要求1-5中任一项所述的方法。
12.一种存储有计算机指令的非瞬时计算机可读存储介质,其中,所述计算机指令用于使所述计算机执行根据权利要求1-5中任一项所述的方法。
13.一种计算机程序产品,包括计算机程序,所述计算机程序在被处理器执行时实现根据权利要求1-5中任一项所述的方法。
Priority Applications (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110731989.3A CN113553863B (zh) | 2021-06-30 | 2021-06-30 | 文本生成方法、装置、电子设备和存储介质 |
US17/572,930 US20220138435A1 (en) | 2021-06-30 | 2022-01-11 | Method and apparatus for generating a text, and storage medium |
JP2022048414A JP7397114B2 (ja) | 2021-06-30 | 2022-03-24 | テキスト生成方法、装置、電子機器及び記憶媒体 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110731989.3A CN113553863B (zh) | 2021-06-30 | 2021-06-30 | 文本生成方法、装置、电子设备和存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113553863A CN113553863A (zh) | 2021-10-26 |
CN113553863B true CN113553863B (zh) | 2023-10-20 |
Family
ID=78131058
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110731989.3A Active CN113553863B (zh) | 2021-06-30 | 2021-06-30 | 文本生成方法、装置、电子设备和存储介质 |
Country Status (3)
Country | Link |
---|---|
US (1) | US20220138435A1 (zh) |
JP (1) | JP7397114B2 (zh) |
CN (1) | CN113553863B (zh) |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106528858A (zh) * | 2016-11-29 | 2017-03-22 | 北京百度网讯科技有限公司 | 歌词生成方法及装置 |
CN108062388A (zh) * | 2017-12-15 | 2018-05-22 | 北京百度网讯科技有限公司 | 人机对话的回复生成方法和装置 |
CN109670185A (zh) * | 2018-12-27 | 2019-04-23 | 北京百度网讯科技有限公司 | 基于人工智能的文本生成方法和装置 |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP6243072B1 (ja) * | 2017-04-06 | 2017-12-06 | 株式会社 ディー・エヌ・エー | 入出力システム、入出力プログラム、情報処理装置、チャットシステム |
KR20190019748A (ko) * | 2017-08-18 | 2019-02-27 | 삼성전자주식회사 | 자연어 생성 방법 및 장치 |
CN110019471B (zh) * | 2017-12-15 | 2024-03-08 | 微软技术许可有限责任公司 | 从结构化数据生成文本 |
US11301870B2 (en) * | 2018-02-20 | 2022-04-12 | [24]7.ai, Inc. | Method and apparatus for facilitating turn-based interactions between agents and customers of an enterprise |
-
2021
- 2021-06-30 CN CN202110731989.3A patent/CN113553863B/zh active Active
-
2022
- 2022-01-11 US US17/572,930 patent/US20220138435A1/en active Pending
- 2022-03-24 JP JP2022048414A patent/JP7397114B2/ja active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106528858A (zh) * | 2016-11-29 | 2017-03-22 | 北京百度网讯科技有限公司 | 歌词生成方法及装置 |
CN108062388A (zh) * | 2017-12-15 | 2018-05-22 | 北京百度网讯科技有限公司 | 人机对话的回复生成方法和装置 |
CN109670185A (zh) * | 2018-12-27 | 2019-04-23 | 北京百度网讯科技有限公司 | 基于人工智能的文本生成方法和装置 |
Also Published As
Publication number | Publication date |
---|---|
US20220138435A1 (en) | 2022-05-05 |
JP2022088494A (ja) | 2022-06-14 |
CN113553863A (zh) | 2021-10-26 |
JP7397114B2 (ja) | 2023-12-12 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN113553864B (zh) | 翻译模型的训练方法、装置、电子设备及存储介质 | |
JP7432556B2 (ja) | マンマシンインタラクションのための方法、装置、機器および媒体 | |
CN112466288B (zh) | 语音识别方法、装置、电子设备及存储介质 | |
JP7346788B2 (ja) | 音声認識モデルのトレーニング方法、装置、機器、および記憶媒体 | |
KR20220122566A (ko) | 텍스트 인식 모델의 트레이닝 방법, 텍스트 인식 방법 및 장치 | |
EP4113357A1 (en) | Method and apparatus for recognizing entity, electronic device and storage medium | |
CN112786108B (zh) | 分子理解模型的训练方法、装置、设备和介质 | |
CN116152833B (zh) | 基于图像的表格还原模型的训练方法及表格还原方法 | |
CN115309877A (zh) | 对话生成方法、对话模型训练方法及装置 | |
CN115640520B (zh) | 跨语言跨模态模型的预训练方法、设备和存储介质 | |
CN113627536A (zh) | 模型训练、视频分类方法,装置,设备以及存储介质 | |
CN113468857A (zh) | 风格转换模型的训练方法、装置、电子设备以及存储介质 | |
CN113743101A (zh) | 文本纠错方法、装置、电子设备和计算机存储介质 | |
CN113641829A (zh) | 图神经网络的训练与知识图谱的补全方法、装置 | |
CN114758649B (zh) | 一种语音识别方法、装置、设备和介质 | |
CN114416941B (zh) | 融合知识图谱的对话知识点确定模型的生成方法及装置 | |
CN113553863B (zh) | 文本生成方法、装置、电子设备和存储介质 | |
CN113204616B (zh) | 文本抽取模型的训练与文本抽取的方法、装置 | |
CN115565186A (zh) | 文字识别模型的训练方法、装置、电子设备和存储介质 | |
CN115292467A (zh) | 信息处理与模型训练方法、装置、设备、介质及程序产品 | |
CN114841175A (zh) | 机器翻译方法、装置、设备及存储介质 | |
CN113553413A (zh) | 对话状态的生成方法、装置、电子设备和存储介质 | |
CN114896993B (zh) | 翻译模型的生成方法、装置、电子设备及存储介质 | |
CN116050427B (zh) | 信息生成方法、训练方法、装置、电子设备以及存储介质 | |
CN116257611B (zh) | 问答模型的训练方法、问答处理方法、装置及存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |