CN113255292A - 基于预训练模型的端到端文本生成方法及相关设备 - Google Patents
基于预训练模型的端到端文本生成方法及相关设备 Download PDFInfo
- Publication number
- CN113255292A CN113255292A CN202110698936.6A CN202110698936A CN113255292A CN 113255292 A CN113255292 A CN 113255292A CN 202110698936 A CN202110698936 A CN 202110698936A CN 113255292 A CN113255292 A CN 113255292A
- Authority
- CN
- China
- Prior art keywords
- original input
- input text
- model
- text
- predicted output
- 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.)
- Granted
Links
Images
Classifications
-
- 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
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/21—Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
- G06F18/214—Generating training patterns; Bootstrap methods, e.g. bagging or boosting
-
- 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/30—Semantic analysis
-
- 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/58—Use of machine translation, e.g. for multi-lingual retrieval, for server-side translation for client devices or for real-time translation
-
- 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)
- General Physics & Mathematics (AREA)
- Artificial Intelligence (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Health & Medical Sciences (AREA)
- Computational Linguistics (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Health & Medical Sciences (AREA)
- Data Mining & Analysis (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Evolutionary Computation (AREA)
- Evolutionary Biology (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Bioinformatics & Computational Biology (AREA)
- Life Sciences & Earth Sciences (AREA)
- Machine Translation (AREA)
Abstract
本申请实施例属于语音语义处理领域,应用于智慧城市领域中,涉及一种基于预训练模型的端到端文本生成方法,包括获取原始输入文本;通过编码器对所述原始输入文本进行数字化处理,并通过预训练的第一语言模型将数字化处理后的始输入文本进行向量化处理,得到与所述原始输入文本对应的第一上下文表达;将第一上下文表达与历史预测输出输入到预训练的第二语言模型中,得到对所述原始输入文本进行转换后的第二上下文表达;通过所述插入组件预测得到所述第二上下文表达中的待插入位置;通过所述填充组件预测所述待插入位置的预测字词,得到与所述原始输入文本对应的预测输出,直到预测输出与上一预设输出相同。采用本方法大大提高了模型预测的灵活性。
Description
技术领域
本申请涉及语音语义处理领域,特别是涉及一种基于预训练模型的端到端文本生成方法、装置、计算机设备和存储介质。
背景技术
端到端的文本生成模型类似一个黑盒子,往往用于翻译、文本摘要等输入输出不定长度的生成场景。自回归的端到端文本生成模型中,seq2seq是一种典型的结构,由编码器encode和解码器decode组成,编码器负责理解输入,解码器负责参考编码器理解到的内容和之前已经解码出来的内容,来生成新的单个文字的输出,具体可以参考图1所示。
其中,模型在训练时,encode一次读入所有的输入,得到中文“知识就是力量”的隐藏表达,假设为C(其实就是一个高维向量),在解码环节的时候,解码器根据C,和历史的解码器输出,来学习下一个输出应该是什么,相对应图案的例子就是解码器要学习如下几个数据样例(<s>和</s>分别表示字符串的开始和结束):
输入:C,“<s>”输出:Knowledge
输入:C,“<s>Knowledge”输出:is
输入:C,“<s>Knowledge is”输出:power
输入:C,“<s>Knowledge is power”输出:</s>
在预测的时候动作类似:
第一轮:输入:C,“<s>”假设模型输出为:Knowledge
第二轮:在做自回归动作的时候,将上一步输出的Knowledge作为新一轮的输入,有:
输入:C,“<s>Knowledge”假设模型输出为:is
第三轮:输入:C,“<s>Knowledge is”假设模型输出为:force(注意,这里模型是个出错的距离)
第四轮:输入:C,“<s>Knowledge is force”假设模型输出:</s>
可见,自回归模型在预测的时候,经过四轮才能完整输出<s>Knowledge is force</s>,整个过程中必须穿行操作去等待每一轮的输出作为下一轮的输入,性能较差。当上一部的预测包含错误之后,没有很好的办法回头改正,将force改为power,可见可控性交叉,不够灵活。
发明内容
基于此,针对上述技术问题,本申请提供一种基于预训练模型的端到端文本生成方法、装置、计算机设备及存储介质,以解决现有技术中自回归模型可控性差,导致的性能差的技术问题。
一种基于预训练模型的端到端文本生成方法,所述预训练模型为改进后的seq2seq自回归模型,其中,所述自回归模型包括编码器和解码器,所述解码器包括插入组件以及填充组件,所述方法包括:
获取原始输入文本;
通过编码器对所述原始输入文本进行数字化处理,并通过预训练的第一语言模型将数字化处理后的原始输入文本进行向量化处理,得到与所述原始输入文本对应的第一上下文表达;
将所述第一上下文表达与历史预测输出输入到预训练的第二语言模型中,得到对所述原始输入文本进行转换后的第二上下文表达,其中,所述第二上下文表达包括至少一个单词;
通过所述插入组件预测得到所述第二上下文表达中的待插入位置;
通过填充组件预测待插入位置的预测字词,得到与原始输入文本对应的预测输出,将预测输出与历史预测输出进行对比,当不相同时,将预测输出更新为历史预测输出,并重复将第一上下文表达与历史预测输出输入到预训练的第二语言模型中,得到对原始输入文本进行转换后的第二上下文表达的操作,直到至少一次预测输出与历史预测输出相同。
一种基于预训练模型的端到端文本生成装置,所述预训练模型为改进后的seq2seq自回归模型,其中,所述自回归模型包括编码器和解码器,所述解码器包括插入组件以及填充组件,所述装置包括:
文本获取模块,用于获取原始输入文本;
文本编码模块,用于通过编码器对所述原始输入文本进行数字化处理,并通过预训练的第一语言模型将数字化处理后的原始输入文本进行向量化处理,得到与所述原始输入文本对应的第一上下文表达;
文本翻译模块,用于将所述第一上下文表达与历史预测输出输入到预训练的第二语言模型中,得到对所述原始输入文本进行转换后的第二上下文表达,其中,所述第二上下文表达包括至少一个单词;
字词预测模块,用于通过所述插入组件预测得到所述第二上下文表达中的待插入位置;
循环预测模块,用于通过填充组件预测待插入位置的预测字词,得到与原始输入文本对应的预测输出,将预测输出与历史预测输出进行对比,当不相同时,将预测输出更新为历史预测输出,并重复将第一上下文表达与历史预测输出输入到预训练的第二语言模型中,得到对原始输入文本进行转换后的第二上下文表达的操作,直到至少一次预测输出与历史预测输出相同。
一种计算机设备,包括存储器和处理器,以及存储在所述存储器中并可在所述处理器上运行的计算机可读指令,所述处理器执行所述计算机可读指令时实现上述基于预训练模型的端到端文本生成方法的步骤。
一种计算机可读存储介质,所述计算机可读存储介质存储有计算机可读指令,所述计算机可读指令被处理器执行时实现上述基于预训练模型的端到端文本生成方法的步骤。
上述基于预训练模型的端到端文本生成方法、装置、计算机设备和存储介质,通过对seq2seq自回归模型中的解码器进行改进,通过预测组件和填充组件预测与原始输入文本对应的第二上下文表达中的需要插入字词的待插入位置,以及待插入位置最大概率的预测字词,通过预测待插入位置,可以实现灵活地可变的对第二上下文表达进行预测改进,解决第二上下文表达不准确的情况下,对其进行多变的改进,实现预测可控和灵活多变,解决了现有技术中自回归模型可控性差,导致的性能差的技术问题。
附图说明
为了更清楚地说明本发明实施例的技术方案,下面将对本发明实施例的描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为现有技术中端到端生成方式的流程示意图;
图2为基于预训练模型的端到端文本生成方法的应用示意图;
图3为基于预训练模型的端到端文本生成的流程示意图;
图4为基于预训练模型的端到端文本生成装置的示意图;
图5为一个实施例中计算机设备的示意图。
具体实施方式
除非另有定义,本文所使用的所有的技术和科学术语与属于本申请的技术领域的技术人员通常理解的含义相同;本文中在申请的说明书中所使用的术语只是为了描述具体的实施例的目的,不是旨在于限制本申请;本申请的说明书和权利要求书及上述附图说明中的术语“包括”和“具有”以及它们的任何变形,意图在于覆盖不排他的包含。本申请的说明书和权利要求书或上述附图中的术语“第一”、“第二”等是用于区别不同对象,而不是用于描述特定顺序。
在本文中提及“实施例”意味着,结合实施例描述的特定特征、结构或特性可以包含在本申请的至少一个实施例中。在说明书中的各个位置出现该短语并不一定均是指相同的实施例,也不是与其它实施例互斥的独立的或备选的实施例。本领域技术人员显式地和隐式地理解的是,本文所描述的实施例可以与其它实施例相结合。
为了使本申请的目的、技术方案及优点更加清楚明白,下面结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本发明实施例提供的基于预训练模型的端到端文本生成方法,可以应用于如图2所示的应用环境中。其中,该应用环境可以包括终端202、网络以及服务端204,网络用于在终端202和服务端204之间提供通信链路介质,网络可以包括各种连接类型,例如有线、无线通信链路或者光纤电缆等等。
用户可以使用终端202通过网络与服务端204交互,以接收或发送消息等。终端102上可以安装有各种通讯客户端应用,例如网页浏览器应用、购物类应用、搜索类应用、即时通信工具、邮箱客户端、社交平台软件等。
终端202可以是具有显示屏并且支持网页浏览的各种电子设备,包括但不限于智能手机、平板电脑、电子书阅读器、MP3播放器(Moving Picture Experts Group AudioLayer III,动态影像专家压缩标准音频层面3)、MP4(Moving Picture Experts GroupAudio Layer IV,动态影像专家压缩标准音频层面4)播放器、膝上型便携计算机和台式计算机等等。
服务端204可以是提供各种服务的服务器,例如对终端202上显示的页面提供支持的后台服务器。
需要说明的是,本申请实施例所提供的基于预训练模型的端到端文本生成方法一般由服务端/终端执行,相应地,基于预训练模型的端到端文本生成装置一般设置于服务端/终端设备中。
本申请可用于众多通用或专用的计算机系统环境或配置中。例如:个人计算机、服务器计算机、手持设备或便携式设备、平板型设备、多处理器系统、基于微处理器的系统、置顶盒、可编程的消费电子设备、网络PC、小型计算机、大型计算机、包括以上任何系统或设备的分布式计算环境等等。本申请可以在由计算机执行的计算机可执行指令的一般上下文中描述,例如程序模块。一般地,程序模块包括执行特定任务或实现特定抽象数据类型的例程、程序、对象、组件、数据结构等等。也可以在分布式计算环境中实践本申请,在这些分布式计算环境中,由通过通信网络而被连接的远程处理设备来执行任务。在分布式计算环境中,程序模块可以位于包括存储设备在内的本地和远程计算机存储介质中。
本申请可应用于智慧城市领域中,例如应用于智慧企业、智慧图书馆或者智慧公交上的语言翻译、书籍翻译或者指路导航的场景中,从而推动智慧城市的建设。
应该理解,图1中的终端、网络和服务端的数目仅仅是示意性的。根据实现需要,可以具有任意数目的终端设备、网络和服务器。
其中,终端202通过网络与服务端204进行通信。用户通过终端202向服务端204发送一个语音或者文本,或者用户直接在服务端204输入语音或者文本,作为原始输入文本,并通过改进后的自回归模型中的编码器对该原始输入文本进行编码处理,然后通过改进后的解码器中的插入组件对第二上下文表达进行预测,得到第二上下文表达中还需要插入的字词的位置,即待插入位置,再通过填充组件填充预测待插入位置合适的字词,实现自回归模型的灵活可控。其中,终端202和服务端204之间通过网络进行连接,该网络可以是有线网络或者无线网络,终端202可以但不限于是各种个人计算机、笔记本电脑、智能手机、平板电脑和便携式可穿戴设备,服务端204可以用独立的服务器或者是多个组成的服务器集群来实现。
在一个实施例中,如图3所示,提供了一种基于预训练模型的端到端文本生成方法,以该方法应用于图2中的服务端为例进行说明,包括以下步骤:
步骤302,获取原始输入文本。
本申请的技术方案主要应用于智慧企业、智慧图书馆或者智慧交通上的语言翻译系统中,例如可以用于不同语言之间的转译,比如,中文译英文的翻译系统;其中,预训练模型为改进后的seq2seq自回归模型实现,其中,所述自回归模型包括编码器和解码器,所述解码器包括插入组件以及填充组件。
本实施例以智慧企业中,中译英翻译系统为例对本申请的技术方案进行说明,用户通过终端录入一句话或者一句文本,例如:知识就是力量,服务端将“知识就是力量”作为原始输入文本,并通过改进后的自回归模型中的编码器对“知识就是力量”进行编码处理。
步骤304,通过编码器对所述原始输入文本进行数字化处理,并通过预训练的第一语言模型将数字化处理后的原始输入文本进行向量化处理,得到与所述原始输入文本对应的第一上下文表达。
在本实施例中,编码器可以是独热编码器(one-hot),主要用于对原始输入文本进行编码处理,以便于计算机的理解和处理。通过one-hot对原始输入文本进行编码后,可以得到一维的原始输入文本的token-id,然后将其输入到预训练的第一语言模型中。
具体地,第一语言模型为中文语言模型,例如bert,主要用于对token-id进行降维处理,提取代表原始输入文本的语义特征,得到与原始输入文本对应的第一上下文表示。一般地,预训练的第一语言模型,如bert这样的模型,其特点在于在公开的大量语料中吸收和存储文本理解能力,后续可以转变为各种形态接入到神经网络中,这样后续的训练过程中对语料的要求就会大大降低,而且效果会由之前的预训练过程的大量语料指示大加持,一般都会有比较大的提升。
其中,第一上下文表示的特点在于为原始输入文本的隐藏表达,假设设为C,即,C为原始输入文本“知识就是力量”的高维文本向量。
具体地,编码器包括第一语言模型和one-hot编码器至少两个组件,以完成以上操作。
步骤306,将所述第一上下文表达与历史预测输出输入到预训练的第二语言模型中,得到对所述原始输入文本进行转换后的第二上下文表达,其中,所述第二上下文表达包括至少一个单词。
其中,历史预测输出为当前预测之前的历史预测结果,如果当前预测为第一轮预测,则该历史预测输出为空;在本实施例中,会将每一轮的端到端文本预测生成结果都更新到历史预测输出中,以替换上一次的预测输出,作为新的历史预测输出。
第二语言模型为需要翻译成哪种语言的语言模型,当为需要范围英文时,则该第二语言模型为英文的语言模型,对应的第一语言模型为中文的语言模型,反之同理。
在解码环节,解码器根据上个步骤生成的第一上下文表示以及历史预测输出,来学习下一个输出应该是什么,最终得到一个表示转译后的原始输入文本的第二上下文表示。
例如:中文“知识就是力量”的英文转译“Knowledge is force”或者“Knowledgeis power”的第二上下文表示,即其英文转译的高维文本向量。
步骤308,通过所述插入组件预测得到所述第二上下文表达中的待插入位置。
在本实施例中,插入组件可以为transformer模型,通过自注意力机制的方式对第二上下文表达中的需要补充的单词的位置进行标记。
例如:
第一轮:输入:C,“<s>”输出:<s>knowledge is</s>
第二轮:插入组件预测第一轮的得到“is”后对应的空位上缺少单词,则对该处进行标记,例如通过预设标记[MASK]进行标记。
进一步地,若需要标记之处的数量为多个,可以通过[MASK][MASK][MASK]…的方式进行标记。
在本实施例中,通过对模型进行改进,在得到第二上下文表达后,还可以通过插入组件对其进行进一步地改进,使得模型有了自己纠错历史结果的能力,更加灵活和鲁棒,而且预测的轮数大大降低,性能大大提升。
具体地,待插入位置的预测步骤可以是:对所述第二上下文表示中的各个单词进行词性标注;获取所述第二上下文表示的语法结构;根据所述词性标注和所述语法结构得到各个单词之间待插入位置。
在一些实施例中,可以通过NLTK进行词性标注,NLTK是一种自然语言工具包,是一开源的Python模块、数据集和教程,支持自然语言处理的研究和开发。
可选地,还可以N-gram标注模型进行标注,此处不再赘述。
本申请可以通过树形分析树分析每个单词在每个句子中角色,该角色包括主语、宾语、飞猪与、非宾语等等,然后,得到一个句子的语法结构,例如主谓宾,通过识别句子中缺少的成分,确定该翻译文本中待插入位置。
进一步地,为了提升端到端文本生成方法的灵活性,提高模型的预测效率,还可以在解码器中加入删除组件,用于删除第二上下文表达中的待删除字段,其中待删除字段为第二上下文表示中不适合的翻译,例如,假设模型输出为“knowledge is force”,当删除组件检测到上一部的预测输出包含错误,则会对该词进行删除处理,并以特殊符号[MASK]代替。
进一步地,所述删除组件为transformer模型,将所述第二上下文表示输入到所述transformer模型中进行语义识别,并将语义识别结果中的异常字词作为待删除字段;并通过预设标记替换所述待删除字段进行待删除字段的删除。
具体地,获取第二上下文表示,其中,第二上下文表示中包括至少一个单词所代表的表示向量X,具体地,表示向量X为一个向量矩阵,每一行是单词的表示;然后将其输入到transformer的encoder中,经过6个encoderblock后提取得到所有单词的编码信息矩阵;最后,将编码信息矩阵传递到transformer的decoder中,该解码器decoder会对单词进行依次翻译,计算下一个翻译单词的概率,并将概率低于预设值的位置对应的异常字词作为待删除字段。
进一步地,在训练语料的缺乏的情况下,模型会出现预测不准确的情况,这样得到的待删除字段不一定是翻译不合适,或者翻译出错,为了解决类似情况导致的预测不准确的技术问题,在一些实施例中,本申请还可以通过搜索引擎搜索判断是否存在与异常字词所在第二上下文表达的翻译文本对应的索引信息,其中,所述索引信息为根据所述异常字词在所述搜索引擎中搜索得到的超链接信息;若不存在所述索引信息,则将所述异常字词作为所述待删除字段。
若存在,则认为不存在待删除字段。
具体地,该过程用于检查一个句子在互联网上是否存在超链接信息,对于以HTML语言公布的文本,可以通过搜索引擎很容易搜索出来,并与翻译文本进行对比后,判断是否存在这样一个句子,通过这种方式能够快速复查模型得到的结果是否准确,提高文本生成的效率。
例如,解码器中的预训练好的删除组件会对第二上下文表示进行识别,预测第二上下文表示中是否存在不适合的翻译,假设模型输出为“knowledge is force”。当删除组件检测到上一部的预测输出包含错误,则会对该词进行删除处理,并以特殊符号[MASK]代替,然后再通过插入组件,检测第二上下文表示中是否存在缺失的字词,若存在,也通过特殊符号[MASK]标记缺失的字词在第二上下文表示中的位置。
具体地,删除组件预测需要删除的字词,以及插入组件预测需要插入的字词的位置的具体技术实现为:
a.输入:C,“<s>knowledge is force</s>”
b.经过删除组件的计算,要删除force,所以经过删除组件后的输出是“<s>knowledge is</s>”
c.根据上一步中间结果:C和“<s>knowledge is</s>”,预测各个单词间隔的空隙应该插入的[mask]的个数,得到“<s>(0)knowledge(0)is(1)</s>”,也就是“<s>knowledgeis[MASK]</s>”
d.将C和“<s>knowledge is[MASK]</s>”送入填充组件,预测[MASK]具体内容,得到最终结果。
步骤310,通过所述填充组件预测所述待插入位置的预测字词,得到与所述原始输入文本对应的预测输出,将所述预测输出与上一预测输出进行对比,当不相同时,将所述预测输出更新到所述历史输出中,并重复将所述第一上下文表达与历史预测输出输入到预训练的第二语言模型中,得到对所述原始输入文本进行转换后的第二上下文表达的操作,直到至少一次预测输出与上一预测输出相同。
将经删除组件和插入组件之后的第二上下文表示通过预训练的填充组件预测待插入位置的预测字词以及删除的字词的准确表示,得到预测后的端到端生成结果。
最后将该生成结果与历史输出结果进行对比,若一致,则将其作为最终的输出结果,若不一致,则将当前输出结果作为新的历史输出,结合第一上下文表示重新进行下一轮的预测,直到得到的当前预测输出与上一轮的预测输出一致,则认为。例如:
历史输出为“knowledge is power”,当前输出也是“knowledge is power”。
另外,假如本申请要将“hello world”翻译到“您好世界”;
对应的生成步骤为:将原始输入文本首先输入到第一语言模型,即英文bert模型中,得到第一上下文表示,即代表原始输入文本的语义特征,同时初始化历史输出,即将原始输入文本拷贝到历史输出作为第一轮的模型的输入的一部分,并放入英文bert中,得到第二上下文表示,然后经过:
a.删除组件,delete步骤,<s></s>,删除组件预测发现并没有需要删除的字符;
b.插入组件,insert-plh步骤,<s></s>=><s>[MASK][MASK][MASK][MASK]</s>;插入组件预测到缺少多个字词,则在对应的位置以特殊符号[MASK]来代替;
c.填充组件,fill-in步骤,<s>[MASK][MASK][MASK][MASK]</s>=><s>您好世界</s>;
另外,本申请的模型可自由灵活地拓展,针对上面的步骤,可以循环调用之,直到输入与输出不再改变,可控地提升了翻译精度。
上述基于预训练模型的端到端文本生成方法中,对自回归模型天生的框架缺陷,结合非自回归模型和预训练的语言模型的优点,开创性地将预训练的语言模型应用在非自回归的文本生成模型框架中;打破了自回归模型的限制,模拟人的编辑过程,解码过程可以一次性输出多个文字,大大提升了生成速度,提升模型生成的性能,且通过引入删除组件,可以更灵活地针对历史的错误进行文本修正,提升了模型的灵活性;而且,本实施例还引入预训练语言模型,大大提升文本的语义理解能力和生成能力;此外,还可以引入额外的特征模块,多一条通路引入生成过程中的业务自定义的指示,提升灵活性和扩展能力。
需要强调的是,为进一步保证上述翻译过程中信息的私密和安全性,上述原始输入文本信息还可以存储于一区块链的节点中。
应该理解的是,虽然图3的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,图3中的至少一部分步骤可以包括多个子步骤或者多个阶段,这些子步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些子步骤或者阶段的执行顺序也不必是依次进行,而是可以与其它步骤或者其它步骤的子步骤或者阶段的至少一部分轮流或者交替地执行。
在一个实施例中,如图4所示,提供了一种基于预训练模型的端到端文本生成装置,该基于预训练模型的端到端文本生成装置与上述实施例中基于预训练模型的端到端文本生成方法一一对应。该基于预训练模型的端到端文本生成装置,预训练模型为改进后的seq2seq自回归模型,其中,所述自回归模型包括编码器和解码器,所述解码器包括插入组件以及填充组件,所述装置包括:
文本获取模块402,用于获取原始输入文本;
文本编码模块404,用于通过编码器对所述原始输入文本进行数字化处理,并通过预训练的第一语言模型将数字化处理后的原始输入文本进行向量化处理,得到与所述原始输入文本对应的第一上下文表达;
文本翻译模块406,用于将所述第一上下文表达与历史预测输出输入到预训练的第二语言模型中,得到对所述原始输入文本进行转换后的第二上下文表达,其中,所述第二上下文表达包括至少一个单词;
字词预测模块408,用于通过所述插入组件预测得到所述第二上下文表达中的待插入位置;
循环预测模块410,用于通过填充组件预测待插入位置的预测字词,得到与原始输入文本对应的预测输出,将预测输出与历史预测输出进行对比,当不相同时,将预测输出更新为历史预测输出,并重复将第一上下文表达与历史预测输出输入到预训练的第二语言模型中,得到对原始输入文本进行转换后的第二上下文表达的操作,直到至少一次预测输出与历史预测输出相同。
进一步地,文本编码模块404,包括:
编码子模块,用于对所述原始输入文本进行编码处理,得到一维的原始输入文本的文本编码;
特征提取子模块,用于将所述文本编码输入到所述第一语言模型中,提取得到表示所述原始输入文本的语义特征,作为所述第一上下文表达。
进一步地,在文本翻译模块406之前,还包括:
删除模块,用于通过所述删除组件删除所述第二上下文表达中的待删除字段。
进一步地,删除组件为transformer模型,删除模块,包括:
识别子模块,用于将所述第二上下文表示输入到所述transformer模型中进行语义识别,并将语义识别结果中的异常字词作为待删除字段;
删除子模块,用于通过预设标记替换所述待删除字段进行待删除字段的删除。
进一步地,在识别子模块之前,还包括:
搜索单元,用于通过搜索引擎搜索判断是否存在与所述异常字词所在的第二上下文表示对应的索引信息,其中,所述索引信息为根据所述异常字词在所述搜索引擎中搜索得到的超链接信息;
删除单元,用于若不存在所述索引信息,则将所述异常字词作为所述待删除字段。
进一步地,字词预测模块408,包括:
标注子模块,用于对所述第二上下文表示中的各个单词进行词性标注;
语法获取子模块,用于获取所述第二上下文表示的语法结构;
插入识别子模块,用于根据所述词性标注和所述语法结构得到各个单词之间待插入位置。
需要强调的是,为进一步保证上述翻译过程中信息的私密和安全性,上述原始输入文本信息还可以存储于一区块链的节点中。
上述基于预训练模型的端到端文本生成装置中,对自回归模型天生的框架缺陷,结合非自回归模型和预训练的语言模型的优点,开创性地将预训练的语言模型应用在非自回归的文本生成模型框架中;打破了自回归模型的限制,模拟人的编辑过程,解码过程可以一次性输出多个文字,大大提升了生成速度,提升模型生成的性能,且通过引入删除组件,可以更灵活地针对历史的错误进行文本修正,提升了模型的灵活性;而且,本实施例还引入预训练语言模型,大大提升文本的语义理解能力和生成能力;此外,还可以引入额外的特征模块,多一条通路引入生成过程中的业务自定义的指示,提升灵活性和扩展能力。
在一个实施例中,提供了一种计算机设备,该计算机设备可以是服务器,其内部结构图可以如图5所示。该计算机设备包括通过系统总线连接的处理器、存储器、网络接口和数据库。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作系统、计算机可读指令和数据库。该内存储器为非易失性存储介质中的操作系统和计算机可读指令的运行提供环境。该计算机设备的数据库用于存储原始输入文本。该计算机设备的网络接口用于与外部的终端通过网络连接通信。该计算机可读指令被处理器执行时以实现一种基于预训练模型的端到端文本生成方法。
其中,本技术领域技术人员可以理解,这里的计算机设备是一种能够按照事先设定或存储的指令,自动进行数值计算和/或信息处理的设备,其硬件包括但不限于微处理器、专用集成电路(Application Specific Integrated Circuit,ASIC)、可编程门阵列(Field-Programmable Gate Array,FPGA)、数字处理器(Digital Signal Processor,DSP)、嵌入式设备等。
在一个实施例中,提供了一种计算机可读存储介质,其上存储有计算机可读指令,计算机可读指令被处理器执行时实现上述实施例中基于预训练模型的端到端文本生成方法的步骤,例如图3所示的步骤302至步骤310,或者,处理器执行计算机可读指令时实现上述实施例中基于预训练模型的端到端文本生成装置的各模块/单元的功能,例如图4所示模块402至模块410的功能。
本实施例通过对自回归模型天生的框架缺陷,结合非自回归模型和预训练的语言模型的优点,开创性地将预训练的语言模型应用在非自回归的文本生成模型框架中;打破了自回归模型的限制,模拟人的编辑过程,解码过程可以一次性输出多个文字,大大提升了生成速度,提升模型生成的性能,且通过引入删除组件,可以更灵活地针对历史的错误进行文本修正,提升了模型的灵活性;而且,本实施例还引入预训练语言模型,大大提升文本的语义理解能力和生成能力;此外,还可以引入额外的特征模块,多一条通路引入生成过程中的业务自定义的指示,提升灵活性和扩展能力。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机可读指令来指令相关的硬件来完成,所述的计算机可读指令可存储于一非易失性计算机可读取存储介质中,该计算机可读指令在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和/或易失性存储器。非易失性存储器可包括只读存储器(ROM)、可编程ROM(PROM)、电可编程ROM(EPROM)、电可擦除可编程ROM(EEPROM)或闪存。易失性存储器可包括随机存取存储器(RAM)或者外部高速缓冲存储器。作为说明而非局限,RAM以多种形式可得,诸如静态RAM(SRAM)、动态RAM(DRAM)、同步DRAM(SDRAM)、双数据率SDRAM(DDRSDRAM)、增强型SDRAM(ESDRAM)、同步链路(Synchlink)DRAM(SLDRAM)、存储器总线(Rambus)直接RAM(RDRAM)、直接存储器总线动态RAM(DRDRAM)、以及存储器总线动态RAM(RDRAM)等。
本申请所指区块链是分布式数据存储、点对点传输、共识机制、加密算法等计算机技术的新型应用模式。区块链(Blockchain),本质上是一个去中心化的数据库,是一串使用密码学方法相关联产生的数据块,每一个数据块中包含了一批次网络交易的信息,用于验证其信息的有效性(防伪)和生成下一个区块。区块链可以包括区块链底层平台、平台产品服务层以及应用服务层等。
所属领域的技术人员可以清楚地了解到,为了描述的方便和简洁,仅以上述各功能单元、模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能单元、模块完成,即将所述装置的内部结构划分成不同的功能单元或模块,以完成以上描述的全部或者部分功能。
以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
以上所述实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形、改进或者对部分技术特征进行等同替换,而这些修改或者替换,并不使相同技术方案的本质脱离本发明个实施例技术方案地精神和范畴,都属于本申请的保护范围。因此,本申请专利的保护范围应以所附权利要求为准。
Claims (10)
1.一种基于预训练模型的端到端文本生成方法,其特征在于,所述预训练模型为改进后的seq2seq自回归模型,其中,所述自回归模型包括编码器和解码器,所述解码器包括插入组件以及填充组件,所述方法包括:
获取原始输入文本;
通过编码器对所述原始输入文本进行数字化处理,并通过预训练的第一语言模型将数字化处理后的原始输入文本进行向量化处理,得到与所述原始输入文本对应的第一上下文表达;
将所述第一上下文表达与历史预测输出输入到预训练的第二语言模型中,得到对所述原始输入文本进行转换后的第二上下文表达,其中,所述第二上下文表达包括至少一个单词;
通过所述插入组件预测得到所述第二上下文表达中的待插入位置;
通过所述填充组件预测所述待插入位置的预测字词,得到与所述原始输入文本对应的预测输出,将所述预测输出与历史预测输出进行对比,当不相同时,将所述预测输出更新为所述历史预测输出,并重复将所述第一上下文表达与历史预测输出输入到预训练的第二语言模型中,得到对所述原始输入文本进行转换后的第二上下文表达的操作,直到至少一次所述预测输出与上一预测输出相同。
2.根据权利要求1所述的方法,其特征在于,所述通过预训练的第一语言模型将数字化处理后的原始输入文本进行向量化处理,得到与所述原始输入文本对应的第一上下文表达,包括:
对所述原始输入文本进行编码处理,得到一维的原始输入文本的文本编码;
将所述文本编码输入到所述第一语言模型中,提取得到表示所述原始输入文本的语义特征,作为所述第一上下文表达。
3.根据权利要求1所述的方法,其特征在于,所述解码器还包括删除组件,在所述插入组件预测得到所述第二上下文表达中的待插入位置之前,还包括:
通过所述删除组件删除所述第二上下文表达中的待删除字段。
4.根据权利要求3所述的方法,其特征在于,所述删除组件为transformer模型,所述通过所述删除组件删除所述第二上下文表达中的待删除字段,包括:
将所述第二上下文表示输入到所述transformer模型中进行语义识别,并将语义识别结果中的异常字词作为待删除字段;并
通过预设标记替换所述待删除字段进行待删除字段的删除。
5.根据权利要求2所述的方法,其特征在于,在所述将语义识别结果中的异常字词作为待删除字段之前,还包括:
通过搜索引擎搜索判断是否存在与所述异常字词所在的第二上下文表示对应的索引信息,其中,所述索引信息为根据所述异常字词在所述搜索引擎中搜索得到的超链接信息;
若不存在所述索引信息,则将所述异常字词作为所述待删除字段。
6.根据权利要求1所述的方法,其特征在于,所述通过所述插入组件预测得到所述第二上下文表达中的待插入位置,包括:
对所述第二上下文表示中的各个单词进行词性标注;
获取所述第二上下文表示的语法结构;
根据所述词性标注和所述语法结构得到各个单词之间待插入位置。
7.根据权利要求1所述的方法,其特征在于,所述原始输入文本数据存储于区块链中。
8.一种基于预训练模型的端到端文本生成装置,其特征在于,所述预训练模型为改进后的seq2seq自回归模型,其中,所述自回归模型包括编码器和解码器,所述解码器包括插入组件以及填充组件,所述装置包括:
文本获取模块,用于获取原始输入文本;
文本编码模块,用于通过编码器对所述原始输入文本进行数字化处理,并通过预训练的第一语言模型将数字化处理后的原始输入文本进行向量化处理,得到与所述原始输入文本对应的第一上下文表达;
文本翻译模块,用于将所述第一上下文表达与历史预测输出输入到预训练的第二语言模型中,得到对所述原始输入文本进行转换后的第二上下文表达,其中,所述第二上下文表达包括至少一个单词;
字词预测模块,用于通过所述插入组件预测得到所述第二上下文表达中的待插入位置;
循环预测模块,用于通过所述填充组件预测所述待插入位置的预测字词,得到与所述原始输入文本对应的预测输出,将所述预测输出与历史预测输出进行对比,当不相同时,将所述预测输出更新为所述历史预测输出,并重复将所述第一上下文表达与历史预测输出输入到预训练的第二语言模型中,得到对所述原始输入文本进行转换后的第二上下文表达的操作,直到至少一次所述预测输出与上一预测输出相同。
9.一种计算机设备,包括存储器和处理器,所述存储器存储有计算机可读指令,其特征在于,所述处理器执行所述计算机可读指令时实现权利要求1至7中任一项所述方法的步骤。
10.一种计算机可读存储介质,其上存储有计算机可读指令,其特征在于,所述计算机可读指令被处理器执行时实现权利要求1至7中任一项所述的方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110698936.6A CN113255292B (zh) | 2021-06-23 | 2021-06-23 | 基于预训练模型的端到端文本生成方法及相关设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110698936.6A CN113255292B (zh) | 2021-06-23 | 2021-06-23 | 基于预训练模型的端到端文本生成方法及相关设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113255292A true CN113255292A (zh) | 2021-08-13 |
CN113255292B CN113255292B (zh) | 2023-07-21 |
Family
ID=77189329
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110698936.6A Active CN113255292B (zh) | 2021-06-23 | 2021-06-23 | 基于预训练模型的端到端文本生成方法及相关设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113255292B (zh) |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20190130249A1 (en) * | 2017-10-27 | 2019-05-02 | Salesforce.Com, Inc. | Sequence-to-sequence prediction using a neural network model |
CN109885673A (zh) * | 2019-02-13 | 2019-06-14 | 北京航空航天大学 | 一种基于预训练语言模型的自动文本摘要方法 |
CN111538831A (zh) * | 2020-06-05 | 2020-08-14 | 支付宝(杭州)信息技术有限公司 | 一种文本生成方法、装置及电子设备 |
CN111597778A (zh) * | 2020-04-15 | 2020-08-28 | 哈尔滨工业大学 | 一种基于自监督的机器翻译译文自动优化的方法和系统 |
CN112668347A (zh) * | 2021-03-17 | 2021-04-16 | 腾讯科技(深圳)有限公司 | 文本翻译方法、装置、设备及计算机可读存储介质 |
-
2021
- 2021-06-23 CN CN202110698936.6A patent/CN113255292B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20190130249A1 (en) * | 2017-10-27 | 2019-05-02 | Salesforce.Com, Inc. | Sequence-to-sequence prediction using a neural network model |
CN109885673A (zh) * | 2019-02-13 | 2019-06-14 | 北京航空航天大学 | 一种基于预训练语言模型的自动文本摘要方法 |
CN111597778A (zh) * | 2020-04-15 | 2020-08-28 | 哈尔滨工业大学 | 一种基于自监督的机器翻译译文自动优化的方法和系统 |
CN111538831A (zh) * | 2020-06-05 | 2020-08-14 | 支付宝(杭州)信息技术有限公司 | 一种文本生成方法、装置及电子设备 |
CN112668347A (zh) * | 2021-03-17 | 2021-04-16 | 腾讯科技(深圳)有限公司 | 文本翻译方法、装置、设备及计算机可读存储介质 |
Non-Patent Citations (1)
Title |
---|
ILYA SUTSKEVER ET AL.: "Sequence to Sequence Learning with Neural Networks", 《ARXIV:1409.3215V3》 * |
Also Published As
Publication number | Publication date |
---|---|
CN113255292B (zh) | 2023-07-21 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11501182B2 (en) | Method and apparatus for generating model | |
US11151177B2 (en) | Search method and apparatus based on artificial intelligence | |
CN111581229B (zh) | Sql语句的生成方法、装置、计算机设备及存储介质 | |
CN111222317B (zh) | 序列标注方法、系统和计算机设备 | |
CN112101041B (zh) | 基于语义相似度的实体关系抽取方法、装置、设备及介质 | |
CN109740158B (zh) | 一种文本语义解析方法及装置 | |
CN111814482B (zh) | 文本关键数据的提取方法、系统和计算机设备 | |
CN112396049A (zh) | 文本纠错方法、装置、计算机设备及存储介质 | |
CN112215008A (zh) | 基于语义理解的实体识别方法、装置、计算机设备和介质 | |
CN112633003A (zh) | 一种地址识别方法、装置、计算机设备及存储介质 | |
CN112084752A (zh) | 基于自然语言的语句标注方法、装置、设备及存储介质 | |
CN112084779B (zh) | 用于语义识别的实体获取方法、装置、设备及存储介质 | |
CN112528654A (zh) | 自然语言处理方法、装置及电子设备 | |
CN111783471A (zh) | 自然语言的语义识别方法、装置、设备及存储介质 | |
CN117217207A (zh) | 文本纠错方法、装置、设备和介质 | |
CN112232052A (zh) | 文本拼接方法、装置、计算机设备及存储介质 | |
CN113449081A (zh) | 文本特征的提取方法、装置、计算机设备及存储介质 | |
CN113743101A (zh) | 文本纠错方法、装置、电子设备和计算机存储介质 | |
CN113255292B (zh) | 基于预训练模型的端到端文本生成方法及相关设备 | |
CN114429106B (zh) | 页面信息处理方法、装置、电子设备和存储介质 | |
CN113836308B (zh) | 网络大数据长文本多标签分类方法、系统、设备及介质 | |
CN114781359A (zh) | 文本纠错方法、装置、计算机设备及存储介质 | |
CN113420869A (zh) | 基于全方向注意力的翻译方法及其相关设备 | |
CN113112007B (zh) | 神经网络中序列长度选择方法、装置、设备及存储介质 | |
CN112860919B (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 |