CN113590761B - 文本处理模型的训练方法、文本处理方法及相关设备 - Google Patents
文本处理模型的训练方法、文本处理方法及相关设备 Download PDFInfo
- Publication number
- CN113590761B CN113590761B CN202110932894.8A CN202110932894A CN113590761B CN 113590761 B CN113590761 B CN 113590761B CN 202110932894 A CN202110932894 A CN 202110932894A CN 113590761 B CN113590761 B CN 113590761B
- Authority
- CN
- China
- Prior art keywords
- text
- training
- loss
- encoder
- data set
- 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
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/30—Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
- G06F16/33—Querying
- G06F16/3331—Query processing
- G06F16/334—Query execution
- G06F16/3344—Query execution using natural language analysis
-
- 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/279—Recognition of textual entities
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/044—Recurrent networks, e.g. Hopfield networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/045—Combinations of networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
- G06N3/084—Backpropagation, e.g. using gradient descent
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
- G06N3/088—Non-supervised learning, e.g. competitive learning
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Artificial Intelligence (AREA)
- General Physics & Mathematics (AREA)
- Computational Linguistics (AREA)
- General Engineering & Computer Science (AREA)
- General Health & Medical Sciences (AREA)
- Health & Medical Sciences (AREA)
- Data Mining & Analysis (AREA)
- Biomedical Technology (AREA)
- Molecular Biology (AREA)
- Computing Systems (AREA)
- Evolutionary Computation (AREA)
- Biophysics (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Life Sciences & Earth Sciences (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Databases & Information Systems (AREA)
- Machine Translation (AREA)
Abstract
本公开提供一种文本处理模型的训练方法、文本处理方法及相关设备。该文本处理模型包括:降噪自编码器子模型和循环训练子模型;该方法包括:训练数据集分为包括有高质量文本的第一数据集和包括有低质量文本的第二数据集;将第一训练文本和第二训练文本输入降噪自编码器子模型,以得到第一训练文本对应的第一损失、第二训练文本对应的第二损失,以及第一训练文本和第二训练文本之间的对抗损失;将第一训练文本和第二训练文本输入循环训练子模型,以得到第一训练文本对应的第一循环损失、第二训练文本对应的第二循环损失,以及第一训练文本和第二训练文本之间的循环对抗损失;构建联合损失函数,并根据联合损失函数,训练文本处理模型。
Description
技术领域
本公开涉及自然语言处理技术领域,尤其涉及一种文本处理模型的训练方法、文本处理方法及相关设备。
背景技术
本部分旨在为权利要求书中陈述的本公开的实施方式提供背景或上下文。此处的描述不因为包括在本部分中就承认是现有技术。
随着人工智能技术的发展,自然语言处理(Natural Language Processing,NLP)技术广泛应用于教育产品中,如文本自动纠错、文本自动判分,机器阅卷、机器阅读理解、文本自动摘要、文本自动简化等。其中,文本润色是一个较新的细分技术领域,其旨在用户输入低质量的文本时在保证语义不变的情况下,输出高质量的文本。然而,现有技术中的文本润色方案普遍存在输出文本的流利度不佳、训练成本高、响应速度慢的不足。
发明内容
有鉴于此,非常需要一种改进的方法,能够有效地改善文本润色过程中的存在输出文本的流利度不佳、训练成本高、响应速度慢的问题。
本公开示例性实施例提供了一种文本处理模型的训练方法,其中,所述文本处理模型包括:降噪自编码器子模型和循环训练子模型;
所述方法包括:
获取训练数据集,将所述训练数据集分为包括有高质量文本的第一数据集和包括有低质量文本的第二数据集;
获取来自所述第一数据集的第一训练文本,以及来自所述第二数据集的第二训练文本;
将所述第一训练文本和所述第二训练文本输入所述降噪自编码器子模型,以得到所述第一训练文本对应的第一损失、所述第二训练文本对应的第二损失,以及所述第一训练文本和所述第二训练文本之间的对抗损失;
将所述第一训练文本和所述第二训练文本输入所述循环训练子模型,以得到所述第一训练文本对应的第一循环损失、所述第二训练文本对应的第二循环损失,以及所述第一训练文本和所述第二训练文本之间的循环对抗损失;
至少根据所述第一损失、第二损失、所述对抗损失、所述第一循环损失、所述第二循环损失和所述循环对抗损失,构建联合损失函数,并根据所述联合损失函数,训练所述文本处理模型。
在一些示例性实施例中,所述将所述训练数据集分为包括有高质量文本的第一数据集和包括有低质量文本的第二数据集,具体包括:对于所述训练数据集中的任一文本,对该文本进行文本纠错,响应于确定该文本存在错误,将该文本作为低质量文本并划分至所述第二数据集;根据所述训练数据集,生成用于词嵌入的词表,并确定所述词表中每个单词的出现频率;对于所述训练数据集中的任一文本,响应于确定该文本仅由出现频率大于预定的频率阈值的单词构成,将该文本作为低质量文本并划分至所述第二数据集;确定所述训练数据集中各个文本的长度;对于任一文本,响应于确定该文本的长度小于预定的长度阈值,将该文本作为低质量文本并划分至所述第二数据集;将未被划分至所述第二数据集的全部文本作为高质量文本并划分至所述第一数据集。
在一些示例性实施例中,所述降噪自编码器子模型,包括:第一噪音生成模块、第一编码器、第一解码器、第二噪音生成模块、第二编码器、第二解码器和第一判别器;所述将所述第一训练文本和所述第二训练文本输入所述降噪自编码器子模型之后,具体包括:在所述第一噪音生成模块,对所述第一训练文本进行噪声添加,得到带有噪声的第一训练文本;在所述第一编码器,对所述带有噪声的第一训练文本进行编码,得到第一编码特征;在所述第一解码器,对所述第一编码特征进行解码,得到第一输出文本;根据所述第一训练文本和所述第一输出文本,得到所述第一损失;在所述第二噪音生成模块,对所述第二训练文本进行噪声添加,得到带有噪声的第二训练文本;在所述第二编码器,对所述带有噪声的第二训练文本进行编码,得到第二编码特征;在所述第二解码器,对所述第二编码特征进行解码,得到第二输出文本;根据所述第二训练文本和所述第二输出文本,得到所述第二损失;在所述第一判别器,根据所述第一编码特征和所述第二编码特征进行对抗判别,得到所述对抗损失。
在一些示例性实施例中,所述循环训练子模型,包括:第一正向编码器、第一正向解码器、第三噪音生成模块、第一反向编码器、第一反向解码器、第二正向编码器、第二正向解码器、第四噪音生成模块、第二反向编码器、第二反向解码器和第二判别器;所述将所述第一训练文本和所述第二训练文本输入所述循环训练子模型之后,具体包括:在所述第一正向编码器,对所述第一训练文本进行编码,得到第一正向编码特征;在所述第一正向解码器,对所述第一正向编码特征进行解码,得到第一正向输出文本;在所述第三噪音生成模块,对所述第一正向输出文本进行噪声添加,得到带有噪声的第一正向输出文本;在所述第一反向编码器,对所述带有噪声的第一正向输出文本进行编码,得到第一反向编码特征;在所述第一反向解码器,对所述第一反向编码特征进行解码,得到第一反向输出文本;根据所述第一训练文本和所述第一反向输出文本,得到所述第一循环损失;在所述第二正向编码器,对所述第二训练文本进行编码,得到第二正向编码特征;在所述第二正向解码器,对所述第二正向编码特征进行解码,得到第二正向输出文本;在所述第四噪音生成模块,对所述第二正向输出文本进行噪声添加,得到带有噪声的第二正向输出文本;在所述第二反向编码器,对所述带有噪声的第二正向输出文本进行编码,得到第二反向编码特征;在所述第二反向解码器,对所述第二反向编码特征进行解码,得到第二反向输出文本;根据所述第二训练文本和所述第二反向输出文本,得到所述第二循环损失;在所述第二判别器,根据所述第一反向编码特征和所述第二反向编码特征,得到所述循环对抗损失。
在一些示例性实施例中,所述第一编码特征、所述第二编码特征、所述第一正向编码特征、所述第二正向编码特征、所述第一反向编码特征和所述第二反向编码特征均包括有用于表征高质量文本或低质量文本的文本类别编码。
在一些示例性实施例中,所述训练数据集还包括:有标注文本和对应的标注;所述文本处理模型还包括:有标注训练子模型;所述有标注训练子模型包括:第三编码器、第三解码器、第四编码器、第四解码器;
所述方法还包括:将所述有标注文本和所述标注输入所述有标注训练子模型;在所述第三编码器,对所述有标注文本进行编码,得到有标注文本特征;在所述第三解码器,对所述有标注文本特征进行解码,得到第一有标注输出文本;在所述第四编码器,对所述标注进行编码,得到标注特征;在所述第四解码器,对所述标注特征进行解码,得到第二有标注输出文本;根据所述有标注文本和所述第二有标注输出文本,得到第一有标注损失;根据所述标注和所述第一有标注输出文本,得到第二有标注损失;
所述构建联合损失函数的步骤,具体包括:根据所述第一损失、所述第二损失、所述对抗损失、所述第一循环损失、所述第二循环损失、所述循环对抗损失、所述第一有标注损失和所述第二有标注损失,构建联合损失函数。
基于同一发明构思,本公开示例性实施例还提供了一种文本处理方法,包括:
获取待处理文本;
将所述待处理文本输入预先训练的文本处理模型,得到所述待处理文本对应的处理后文本;所述文本处理模型是基于上述任一方法训练得到的。
基于同一发明构思,本公开示例性实施例还提供了一种文本处理模型的训练装置,其中,所述文本处理模型包括:降噪自编码器子模型和循环训练子模型;
所述装置包括:
获取模块,被配置为获取训练数据集,将所述训练数据集分为包括有高质量文本的第一数据集和包括有低质量文本的第二数据集;
输入模块,被配置为获取来自所述第一数据集的第一训练文本,以及来自所述第二数据集的第二训练文本,并将所述第一训练文本和所述第二训练文本输入所述降噪自编码器子模型和所述循环训练子模型;
降噪自编码器模块,被配置为在所述降噪自编码器子模型,对所述第一训练文本和所述第二训练文本均依次进行噪声添加、编码和解码,得到所述第一训练文本对应的第一损失和所述第二训练文本对应的第二损失;根据所述第一训练文本和所述第二训练文本的编码结果进行对抗判别,得到对抗损失;
循环训练模块,被配置为在所述循环训练子模型,对所述第一训练文本和所述第二训练文本均依次进行编码、解码、噪声添加、编码和解码,得到所述第一训练文本对应的第一循环损失和所述第二训练文本对应的第二循环损失;根据所述第一训练文本和所述第二训练文本在噪声添加后的编码结果进行对抗判别,得到循环对抗损失;
训练模块,被配置为至少根据所述第一损失、第二损失、所述对抗损失、所述第一循环损失、所述第二循环损失和所述循环对抗损失,构建联合损失函数,并根据所述联合损失函数,训练所述文本处理模型。
基于同一发明构思,本公开示例性实施例还提供了一种文本处理模型装置,包括:
获取模块,被配置为获取待处理文本;
处理模块,被配置为将所述待处理文本输入预先训练的文本处理模型,得到所述待处理文本对应的处理后文本;所述文本处理模型是基于上述任一方法训练得到的。
基于同一发明构思,本公开示例性实施例还提供了一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现如上任意一项所述的文本处理模型的训练方法和/或文本处理方法。
基于同一发明构思,本公开示例性实施例还提供了一种非暂态计算机可读存储介质,所述非暂态计算机可读存储介质存储计算机指令,所述计算机指令用于使计算机执行如上任一项所述的文本处理模型的训练方法和/或文本处理方法。
从上面所述可以看出,本公开提供的文本处理模型的训练方法、文本处理方法及相关设备,不依赖于人工标注数据,仅利用单语文本数据就可以训练文本处理模型,该文本处理模型可以针对用户输入的文本给出对应的高质量文本,实现文本润色任务。在训练过程中,将根据低质量文本和高质量本将训练数据集进行划分;使用判别器、编码器、解码器、噪音生成模块搭建带有生成对抗网络的无监督训练框架,并基于划分出的分别包括有低质量文本和高质量本两个数据集进行无监督训练,从而实现高质量、高效率的文本润色。
附图说明
为了更清楚地说明本公开或相关技术中的技术方案,下面将对实施例或相关技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本公开的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本公开示例性实施例的应用场景示意图;
图2为本公开示例性实施例的文本处理模型的训练方法流程示意图;
图3为本公开示例性实施例的文本处理模型的整体训练框架示意图;
图4为本公开示例性实施例的降噪自编码器子模型的训练框架示意图;
图5为本公开示例性实施例的循环训练子模型的训练框架示意图;
图6为本公开示例性实施例的有标注训练子模型的训练框架示意图;
图7为本公开示例性实施例的文本处理方法流程示意图;
图8为本公开示例性实施例的文本处理模型的训练装置结构示意图;
图9为本公开示例性实施例的文本处理装置结构示意图;
图10为本公开示例性实施例的电子设备结构示意图。
具体实施方式
下面将参考若干示例性实施方式来描述本申请的原理和精神。应当理解,给出这些实施方式仅仅是为了使本领域技术人员能够更好地理解进而实现本公开,而并非以任何方式限制本申请的范围。相反,提供这些实施方式是为了使本公开更加透彻和完整,并且能够将本公开的范围完整地传达给本领域的技术人员。
根据本公开的实施方式,提出了一种文本处理模型的训练方法、文本处理方法及相关设备。
在本文中,需要理解的是,附图中的任何元素数量均用于示例而非限制,以及任何命名都仅用于区分,而不具有任何限制含义。
为了方便理解,下面对本公开实施例中涉及的名词进行解释:
机器翻译(Machine Translation,MT):机器翻译是利用计算机将一种自然语言转换为另一种自然语言的过程。
无监督训练:无监督训练(学习)属于深度学习的一个重要领域,其与有监督训练(学习)的区别在于有监督训练(学习)有标注(或者带标签)的数据,而无监督训练(学习)没有标注(或者带标签)的数据。
自编码器(Autoencoder):自编码器通常由编码器和解码器组成。其中编码器将输入样本映射到特征空间中的特征向量,解码器将特征向量映射回原始空间,得到与输入样本对应的重构样本。自编码器通过不断减小重构样本和输入样本之间的误差来优化编码器和解码器。
降噪自编码器(Denoising Autoencoder,DAE):在输入数据中引入噪声,让自编码器学习到较为鲁棒的特征。这种方式可以有效地防止自编码器过拟合,提高自编码器的泛化能力。
生成对抗网络(Generative Adversarial Network,GAN):生成对抗网络是一种无监督学习的生成模型,通常由一个生成器和判别器组成。生成器的目标是生成以假乱真的数据,而判别器的目标是分辨输入数据的真假。训练过程中,生成器和判别器相互对抗,生成器生成的数据将会越来越逼真,判别器的辨别能力也会越来越强。当判别器不再能区分输入数据的真伪时,可以认为训练达到了平衡,生成器和判别器基本收敛。
低质量文本和高质量文本:本公开涉及文本润色技术,即把低质量文本转换为高质量文本的技术。其中,高质量文本和低质量文本的差异包含但不限于:低质量文本包含拼写、语法、标点等错误,而高质量文本不包含此类错误;低质量文本含有不符合表达习惯的表达(如:英文写作场景中常出现的中式英文),而高质量文本的表达较为符合表达习惯;低质量文本使用简单的词汇和简单的句式,而高质量文本使用高级词汇和较为复杂的句式等。
下面参考本公开的若干代表性实施方式,详细阐释本申请的原理和精神。
发明概述
本公开的方案旨在提供文本处理模型的训练方法、文本处理方法及相关设备,以实现一种改进的实现文本润色任务的方案。在自然语言处理技术领域中,文本润色任务与文本纠错任务、文本改写任务存在一定的相似点,但其间又存在显著的区别。具体的,文本纠错任务主要聚焦于修正文本中存在的拼写、语法、标点等错误,而文本润色任务除修正文本中存在的各类错误以外,还需要将其转换为更高质量的文本。文本改写任务的目标是在保持语义不变的情况下改述用户输入的文本,该任务通常不关注改写后的文本相较于用户输入的文本质量是否有提升,而文本润色任务则期望输出文本的质量高于输入文本。此外,文本改写任务中的输入文本通常不包含各类错误,而文本润色任务中的输入文本大概率会包含各类错误。
现有技术中,存在一些实现文本润色任务的方案。一种是,使用规则替换为同(近)义词,同(近)义词组的方法。例如:已知“prevalent”和“very common”是同意替换,那么在用户输入“It is prevalent in North Africa.”时,可以输出“It is very common inNorth Africa.”。另一种是,循环翻译(Round-trip translation)的方法。此类方法首先将源语言的文本翻译为某一个中间语言的文本,再使用反向的翻译引擎(模型)将中间语言的文本翻译为源语言的文本。这里以源语言为英文,中间语言为中文为例说明此类方法。当用户输入“The first I should congratulations for you.”时,首先会使用英—>中翻译引擎(模型)得到“首先我应该为你祝贺”,再使用中—>英翻译引擎(模型)得到“First ofall,I should congratulate you.”。
在实现本公开的过程中,发明人发现上述现有技术均存在明显不足。对于使用规则替换为同(近)义词,同(近)义词组的方法,该方法在进行替换时通常比较生硬,因此容易出现替换后的词(词组)不符合上下文语义的情况。同时,此类替换仅在局部进行,无法对句子进行大范围的调整,生成的句子流利度会有所下降。对于循环翻译方法,该方法要经历两次翻译过程,而翻译过程中难免会引入误差,导致输出文本和输入文本的语义出现偏差(semantic drift)。不仅如此,该方法至少需要两个语言方向的翻译服务(引擎),翻译模型的训练成本和服务的部署成本相对较高。同时,此类解决方案需要翻译两遍文本,意味着其响应速度也会较慢。
基于上述文本润色的特点,以及针对于上述现有技术存在的问题,本公开提供了一种文本处理模型的训练方法、文本处理方法及相关设备,不依赖于人工标注数据,仅利用单语文本数据就可以训练文本处理模型,该文本处理模型可以针对用户输入的文本给出对应的高质量文本,实现文本润色任务。在训练过程中,将根据低质量文本和高质量本将训练数据集进行划分;使用判别器、编码器、解码器、噪音生成模块搭建带有生成对抗网络的无监督训练框架,并基于划分出的分别包括有低质量文本和高质量本两个数据集进行无监督训练,从而实现高质量、高效率的文本润色。
在介绍了本公开的基本原理之后,下面具体介绍本公开的各种非限制性实施方式。
应用场景总览
参考图1,其为本公开实施例提供的文本处理模型的训练方法、文本处理方法的应用场景示意图。该应用场景包括终端设备101、服务器102、和数据存储系统103。其中,终端设备101、服务器102以及数据存储系统103之间均可通过有线或无线的通信网络连接。终端设备101包括但不限于桌面计算机、移动电话、移动电脑、平板电脑、媒体播放器、智能可穿戴设备视、个人数字助理(personal digital assistant,PDA)或其它能够实现上述功能的电子设备等。服务器102和数据存储系统103均可以是独立的物理服务器,也可以是多个物理服务器构成的服务器集群或者分布式系统,还可以是提供云服务、云数据库、云计算、云函数、云存储、网络服务、云通信、中间件服务、域名服务、安全服务、CDN、以及大数据和人工智能平台等基础云计算服务的云服务器。
服务器102用于向终端设备101的用户提供文本润色服务,终端设备101中安装有与服务器102通信的客户端,用户可通过该客户端输入待处理文本。用户通过该客户端发出指令进行文本润色后,客户端将待处理文本发送给服务器102,服务器102将待处理文本输入预先训练的文本处理模型,获得文本处理模型输出的经过文本润色后的处理后文本,然后将处理后文本发送给客户端,客户端向用户展示处理后文本,以完成文本润色任务。
数据存储系统103中存储有大量训练数据,该训练数据可以包括有大量的单语文本。服务器102可基于大量训练数据对文本处理模型进行训练,使得文本处理模型能够对输入文本进行文本润色,修正输入文本中的表述错误并基于语言的表述习惯进行改写,以将低质量的输入文本处理为高质量的处理后文本。其中,训练数据的来源包括但不限于已有的数据库、从互联网爬取的数据或者在用户使用客户端时上传的数据。当文本处理模型的输出满足预定的要求时,服务器102可以基于文本处理模型向用户提供文本润色服务,同时,服务器102还可以基于新增的训练数据不断优化文本处理模型。
下面结合图1的应用场景,来描述根据本公开示例性实施方式的文本处理模型的训练方法、文本处理方法。需要注意的是,上述应用场景仅是为了便于理解本公开的精神和原理而示出,本公开的实施方式在此方面不受任何限制。相反,本公开的实施方式可以应用于适用的任何场景。
示例性方法
首先,本公开实施例提供了一种文本处理模型的训练方法。该文本处理模型主要包括以下几类模块:
编码器,用于将输入文本转换为编码向量。编码器的结构可以为卷积神经网络(Convolutional Neural Network,CNN)模型、循环神经网络(Recurrent Neural Network,RNN)模型,也可以是基于注意力(Attention)机制的模型。
解码器,用于对编码向量进行解码,生成输出文本。解码器的结构可以为卷积神经网络模型、循环神经网络模型,也可以是基于注意力机制的模型。
编码器-解码器,是本公开实施例的文本处理模型的主要构成部分。作为本公开实施例相对于现有技术的改进,为使用同一套编码器-解码器结构完成文本润色(即:给定低质量文本时生成高质量文本)和文本简化(即:给定高质量文本时生成低质量文本),编码器和解码器在计算嵌入(embedding)的时候引入文本类别编码,该文本类别编码用于区分高质量文本和低质量文本。文本类别编码与词嵌入(word embedding)的生成方式类似,会把文本类别转换为一个向量。也即,本公开实施例的文本处理模型中的编码器和解码器进行embedding处理时,除了现有的词嵌入编码和位置编码(Positional Encoding)之外,还会进一步包括有文本类别编码,embedding计算方式可以表示为:嵌入=词嵌入+位置编码+文本类别编码。
判别器,输入编码器生成的编码向量时,判别器负责判别该样本属于根据高质量文本和低质量文本划分出的两个数据集中的哪一个。一般而言,判别器通常与生成器配套使用,从而构成生成对抗网络。为简化本公开实施例的文本处理模型的训练框架,使用上述编码器作为生成器,生成器的目标是生成尽可能相似的编码向量,使判别器无法准确地对二者进行区分。判别器的结构可以为卷积神经网络模型、循环神经网络模型、全连接神经网络(Fully Connected Neural Network),也可以是基于注意力机制的模型。
噪音生成模块,用于模拟实际输入文本中可能存在的错误(如:拼写错误、语法错误、标点错误等)。噪音生成模块会分别在词级别(word-level)和字级别(character-level)为输入文本引入一系列的噪声,其中包括随机的替换(substitution)、删除(deletion)、插入(insertion)和换位(transposition)等。噪音生成模块与编码器-解码器共同组成降噪自编码器,噪音生成模块有利于提高训练出的编码器-解码器的鲁棒性。
需要说明的是,本公开实施例中,编码器、解码器和判别器可以使用相同的网络(模型)结构,也可以使用不同的模型结构,本公开实施例对其不做特殊限定。
参考图2,本公开实施例的文本处理模型的训练方法,包括以下步骤:
步骤S201、获取训练数据集,将所述训练数据集分为包括有高质量文本的第一数据集和包括有低质量文本的第二数据集。
具体实施时,于步骤中先获取训练用的训练数据,并对训练数据进行划分处理。其中,基于本公开实施例的无监督训练框架,该训练数据仅需要包括单语文本即可。对于训练数据,先进行常规的预处理,包括但不限于清洗、分句、分词等,经过预处理得到训练数据集D。
具体实施时,为进行后续的词嵌入处理,对于训练数据集D,先根据训练数据集D包括的全部词,生成对应的词表。对于词表中的全部词,根据其出现的频率由高到低进行排序。在一些情况下,该得到的词表可能会较大,为进一步提升训练效率,可以对词表进行裁剪,具体的裁剪方式可以为将词表中出现频率最低的部分词去除。
具体实施时,将训练数据集D进行划分,具体的是将训练数据集D中的高质量文本与低质量文本分别划分为两个数据集。本公开实施例中,将括有高质量文本的称为第一数据集Dhigh,将括有低质量文本的称为第二数据集Dlow。本公开实施例中,通过分析用户日志发现,低质量文本通常包含以下特征:通常含有拼写、标点、语法等错误;通常仅会使用词表中的高频词;通常使用简单句,句子长度普遍偏短。基于此,对于词表中的每个词相应的进行判定,具体的判定步骤可以表述为:对于训练数据集D中的任一文本,对该文本进行文本纠错,响应于确定该文本存在错误,将该文本作为低质量文本并划分至第二数据集Dlow;对于训练数据集D中的任一文本,响应于确定该文本仅由出现频率大于预定的频率阈值的单词构成,将该文本作为低质量文本并划分至第二数据集Dlow;对于训练数据集D中的任一文本,响应于确定该文本的长度小于预定的长度阈值,将该文本作为低质量文本并划分至第二数据集Dlow;将训练数据集D中未被划分至第二数据集Dlow的全部文本作为高质量文本并划分至第一数据集Dhigh。
其中,在进行文本纠错时,可以选用任意可行的文本纠错算法。在确定频率阈值和长度阈值时,也可以根据具体的实施需要而相应设定。
步骤S202、获取来自所述第一数据集的第一训练文本,以及来自所述第二数据集的第二训练文本。
本步骤中,将第一数据集Dhigh和第二数据集Dlow输入本公开实施例的文本处理模型进行训练。其中,对于来自第一数据集Dhigh的训练用文本称之为第一训练文本Xhigh;对于来自第二数据集Dlow的训练用文本称之为第二训练文本Xlow。
具体实施时,参考图3,本公开实施例的文本处理模型包括降噪自编码器子模型和循环训练子模型两部分训练框架。
降噪自编码器子模型包括:第一噪音生成模块、第一编码器、第一解码器、第二噪音生成模块、第二编码器、第二解码器和第一判别器;其中,第一噪音生成模块、第一编码器、第一解码器构成第一降噪自编码器,用以处理第一训练文本Xhigh;第二噪音生成模块、第二编码器、第二解码器构成第二降噪自编码器,用以处理第二训练文本Xlow;第一编码器、第二编码器还均作为生成器,与第一判别器构成生成对抗网络。
循环训练子模型包括:第一正向编码器、第一正向解码器、第三噪音生成模块、第一反向编码器、第一反向解码器、第二正向编码器、第二正向解码器、第四噪音生成模块、第二反向编码器、第二反向解码器和第二判别器;其中,带有“第一”前缀的部分用于处理第一训练文本Xhigh;带有“第二”前缀的部分用于处理第二训练文本Xlow;第一反向编码器、第二反向编码器还均作为生成器,与第二判别器构成生成对抗网络。
需要说明的是,在循环训练子模型中,“正向”是指将源语言转换为中间语言的过程,“反向”是指将中间语言转换回源语言的过程,也即上述“正向”、“反向”前缀是为了区分执行相应转换过程的编码器、解码器。
步骤S203、将所述第一训练文本和所述第二训练文本输入所述降噪自编码器子模型,以得到所述第一训练文本对应的第一损失、所述第二训练文本对应的第二损失,以及所述第一训练文本和所述第二训练文本之间的对抗损失。
具体实施时,参考图4,将第一训练文本Xhigh和第二训练文本Xlow输入降噪自编码器子模型,由第一降噪自编码器和第二降噪自编码器分别进行处理。
在第一噪音生成模块,对第一训练文本Xhigh进行噪声添加,得到带有噪声的第一训练文本Xnoise_high;在第一编码器,对带有噪声的第一训练文本Xnoise_high进行编码,得到第一编码特征Hnoise_high;在第一解码器,对第一编码特征Hnoise_high进行解码,得到第一输出文本根据第一训练文本Xhigh和第一输出文本计算得到第一损失L0_high,第一损失L0_high的计算方式可以表示为:
在第二噪音生成模块,对第二训练文本Xlow进行噪声添加,得到带有噪声的第二训练文本Xnoise_low;在第二编码器,对所述带有噪声的第二训练文本Xnoise_low进行编码,得到第二编码特征Hnoise_low;在第二解码器,对第二编码特征Hnoise_low进行解码,得到第二输出文本根据第二训练文本Xlow和第二输出文本计算得到第二损失L0_low,第二损失L0_low的计算方式可以表示为:
在第一判别器,根据第一编码特征Hnoise_high和第二编码特征Hnoise_low进行对抗判别,得到对抗损失L1。L1的计算方式可以表示为:L1=E[-logP(label=low∣Hnoise_high)]+E[-logP(label=high∣Hnoise_low)]。其中,label为第一判别器得到的判别结果,P为条件概率;例如,P(label=low∣Hnoise_high)可以理解为将第一编码特征Hnoise_high输入第一判别器后,被第一判别器分类为低质量文本(label=low)的概率。
步骤S204、将所述第一训练文本和所述第二训练文本输入所述循环训练子模型,以得到所述第一训练文本对应的第一循环损失、所述第二训练文本对应的第二循环损失,以及所述第一训练文本和所述第二训练文本之间的循环对抗损失。
具体实施时,参考图5,将第一训练文本Xhigh和第二训练文本Xlow输入循环训练子模型,以对第一训练文本Xhigh和第二训练文本Xlow分别进行循环转换处理。
在第一正向编码器,对第一训练文本Xhigh进行编码,得到第一正向编码特征Hhigh;在第一正向解码器,对第一正向编码特征Hhigh进行解码,得到第一正向输出文本在第三噪音生成模块,对第一正向输出文本进行噪声添加,得到带有噪声的第一正向输出文本在第一反向编码器,对带有噪声的第一正向输出文本进行编码,得到第一反向编码特征在第一反向解码器,对第一反向编码特征进行解码,得到第一反向输出文本根据第一训练文本Xhigh和第一反向输出文本计算得到第一循环损失L2_high,第一循环损失L2_high的计算方式可以表示为:
在第二正向编码器,对第二训练文本Xlow进行编码,得到第二正向编码特征Hlow;在第二正向解码器,对第二正向编码特征Hlow进行解码,得到第二正向输出文本在第四噪音生成模块,对第二正向输出文本进行噪声添加,得到带有噪声的第二正向输出文本Xnoise_high’;在第二反向编码器,对带有噪声的第二正向输出文本Xnoise_high’进行编码,得到第二反向编码特征在第二反向解码器,对第二反向编码特征进行解码,得到第二反向输出文本根据第二训练文本Xlow和第二反向输出文本计算得到第二循环损失L2_low,第二循环损失L2_low的计算方式可以表示为:
具体实施时,在上述各损失的计算方式中,E表示期望计算,Δ用于衡量两个文本之间的差异,本公开实施例中使用交叉熵作为衡量指标;显然,根据具体的实施需要,也可以选用其他的损失计算指标。
步骤S205、至少根据所述第一损失、第二损失、所述对抗损失、所述第一循环损失、所述第二循环损失和所述循环对抗损失,构建联合损失函数,并根据所述联合损失函数,训练所述文本处理模型。
具体实施时,根据第一损失L0_high、第二损失L0_low、对抗损失L1、循环对抗损失L1’、第一循环损失L2_high和第二循环损失L2_low,构建联合损失函数L,该联合损失函数L可以表示为:L=λ0(L0_high+L0_low)+λ1(L1+L1’)+λ2(L2_high+L2_low)。其中,λ0、λ1、λ2为权重系数,该些权重系数可以根据实际的业务场景和数据进行调整。
在训练过程的每一轮迭代中,通过前述步骤S203、步骤S204中得到的各个损失计算,即得到各个编码器的编码参数、解码器的解码参数和判别器的判别参数,各个判别器、编码器和解码器根据计算出的梯度更新其参数,并在下一轮的迭代中使用更新后的参数进行计算;训练过程将会反复进行迭代,直至模型收敛即得到训练好的文本处理模型。其中,在进行参数更新时,第一正向编码器、第一正向解码器、第二正向编码器和第二正向解码器,均可以不进行反向传播来更新参数。
由上述实施例可见,本公开的文本处理模型的训练方法,仅使用单语文本数据即能够进行文本处理模型的无监督训练,减少了数据标注的成本,降低训练的算力消耗,提升训练效率。对于文本处理模型,在给定低质量的文本输入时,可以直接输出对应的高质量的文本。减少了输入文本和输出文本的语义偏差,得到的文本倾向于使用更高级的词汇和更复杂的句式。相较于规则替换的方式,本公开的方案得到的输出文本更加流利;相较于循环翻译的方法,本公开的方案的部署难度和训练成本更低,响应速度更快。
作为一个可选的实施例,在前述实施例的无监督训练框架的基础上,还可以进一步获取有标注的训练数据,从而使得本公开实施例的文本处理模型的训练框架转换为半监督的训练框架。
具体实施时,训练数据集中还包括有带标注的训练数据。对于一个带标注的样本,本实施例中称之为有标注文本X和对应的标注Y。
相应的,参考图6,本实施例的文本处理模型还包括:有标注训练子模型。该有标注训练子模型包括第三编码器、第三解码器、第四编码器、第四解码器。
具体实施时,将有标注文本X和对应的标注Y输入标注训练子模型。
上述第一有标注损失L3_X和第二有标注损失L3_Y的计算方式中,E表示期望计算,Δ用于衡量两个文本之间的差异,本公开实施例中使用交叉熵作为衡量指标。与前述实施例中类似的,也可以根据具体的实施需要选用其他的损失计算指标。
具体实施时,由于进一步使用了带标注的训练数据,则联合损失函数相应的会加入第一有标注损失L3_X和第二有标注损失L3_Y。则本实施例中的联合损失函数L,可以表示为:L=λ0(L0_high+L0_low)+λ1(L1+L1’)+λ2(L2_high+L2_low)+λ3(L3_X+L3_Y)。
在训练过程中,各个判别器的训练方式与前述实施例中相同。各个编码器和解码器则使用上式中的损失函数进行反向传播得到编码器和解码器参数的梯度。根据编码器参数和解码器参数的梯度更新其参数,并在下一轮的迭代中使用更新后的判别器、编码器和解码器参数进行计算,直至模型收敛。
在本实施例中,进一步使用了带标注的训练数据,以实现了半监督的训练框架。通过带标注的训练数据,能够进一步提升文本润色任务中输出文本的质量。
基于同一发明构思,本公开实施例还提供了一种文本处理方法。参考图7,所述的文本处理方法,包括以下步骤:
步骤S701、获取待处理文本;
步骤S702、将所述待处理文本输入预先训练的文本处理模型,得到所述待处理文本对应的处理后文本;所述文本处理模型是基于上述任一实施例中的文本处理模型的训练方法训练得到的。
具体实施时,待处理文本可以是用户通过客户端输入的文本信息,客户端将待处理文本发送给服务器,服务器将待处理文本输入已训练的文本处理模型,获得该待处理文本对应的经过文本润色的处理后文本,并将处理后文本发送给客户端,客户端显示该处理后文本。客户端还可以将处理后文本与待处理文本进行比对,以使用户能够清晰直观的观察到文本润色处理前后的区别。
具体实施时,客户端也可以从服务器端获取到文本处理模型,并存储在终端设备中,当用户通过客户端输入文本信息时,可基于本地存储的文本修处理模模型直接在终端设备上进行文本润色任务。
示例性设备
参考图8,基于与上述任意文本处理模型的训练方法实施例相同的发明构思,本公开实施例还提供了一种文本处理模型的训练装置。其中,所述文本处理模型包括:降噪自编码器子模型和循环训练子模型;
所述的文本处理模型的训练装置,包括:
获取模块801,被配置为获取训练数据集,将所述训练数据集分为包括有高质量文本的第一数据集和包括有低质量文本的第二数据集;
输入模块802,被配置为获取来自所述第一数据集的第一训练文本,以及来自所述第二数据集的第二训练文本,并将所述第一训练文本和所述第二训练文本输入所述降噪自编码器子模型和所述循环训练子模型;
降噪自编码器模块803,被配置为在所述降噪自编码器子模型,对所述第一训练文本和所述第二训练文本均依次进行噪声添加、编码和解码,得到所述第一训练文本对应的第一损失和所述第二训练文本对应的第二损失;根据所述第一训练文本和所述第二训练文本的编码结果进行对抗判别,得到对抗损失;
循环训练模块804,被配置为在所述循环训练子模型,对所述第一训练文本和所述第二训练文本均依次进行编码、解码、噪声添加、编码和解码,得到所述第一训练文本对应的第一循环损失和所述第二训练文本对应的第二循环损失;根据所述第一训练文本和所述第二训练文本在噪声添加后的编码结果进行对抗判别,得到循环对抗损失;
训练模块805,被配置为至少根据所述第一损失、第二损失、所述对抗损失、所述第一循环损失、所述第二循环损失和所述循环对抗损失,构建联合损失函数,并根据所述联合损失函数,训练所述文本处理模型。
在一些可选的实施方式中,获取模块801,具体被配置为对于所述训练数据集中的任一文本,对该文本进行文本纠错,响应于确定该文本存在错误,将该文本作为低质量文本并划分至所述第二数据集;根据所述训练数据集,生成用于词嵌入的词表,并确定所述词表中每个单词的出现频率;对于所述训练数据集中的任一文本,响应于确定该文本仅由出现频率大于预定的频率阈值的单词构成,将该文本作为低质量文本并划分至所述第二数据集;确定所述训练数据集中各个文本的长度;对于任一文本,响应于确定该文本的长度小于预定的长度阈值,将该文本作为低质量文本并划分至所述第二数据集;将未被划分至所述第二数据集的全部文本作为高质量文本并划分至所述第一数据集。
在一些可选的实施方式中,所述降噪自编码器子模型,包括:第一噪音生成模块、第一编码器、第一解码器、第二噪音生成模块、第二编码器、第二解码器和第一判别器。
降噪自编码器模块803,具体被配置为在所述第一噪音生成模块,对所述第一训练文本进行噪声添加,得到带有噪声的第一训练文本;在所述第一编码器,对所述带有噪声的第一训练文本进行编码,得到第一编码特征;在所述第一解码器,对所述第一编码特征进行解码,得到第一输出文本;根据所述第一训练文本和所述第一输出文本,得到所述第一损失;在所述第二噪音生成模块,对所述第二训练文本进行噪声添加,得到带有噪声的第二训练文本;在所述第二编码器,对所述带有噪声的第二训练文本进行编码,得到第二编码特征;在所述第二解码器,对所述第二编码特征进行解码,得到第二输出文本;根据所述第二训练文本和所述第二输出文本,得到所述第二损失;在所述第一判别器,根据所述第一编码特征和所述第二编码特征进行对抗判别,得到所述对抗损失。
在一些可选的实施方式中,所述循环训练子模型,包括:第一正向编码器、第一正向解码器、第三噪音生成模块、第一反向编码器、第一反向解码器、第二正向编码器、第二正向解码器、第四噪音生成模块、第二反向编码器、第二反向解码器和第二判别器。
循环训练模块804,具体被配置为在所述第一正向编码器,对所述第一训练文本进行编码,得到第一正向编码特征;在所述第一正向解码器,对所述第一正向编码特征进行解码,得到第一正向输出文本;在所述第三噪音生成模块,对所述第一正向输出文本进行噪声添加,得到带有噪声的第一正向输出文本;在所述第一反向编码器,对所述带有噪声的第一正向输出文本进行编码,得到第一反向编码特征;在所述第一反向解码器,对所述第一反向编码特征进行解码,得到第一反向输出文本;根据所述第一训练文本和所述第一反向输出文本,得到所述第一循环损失;在所述第二正向编码器,对所述第二训练文本进行编码,得到第二正向编码特征;在所述第二正向解码器,对所述第二正向编码特征进行解码,得到第二正向输出文本;在所述第四噪音生成模块,对所述第二正向输出文本进行噪声添加,得到带有噪声的第二正向输出文本;在所述第二反向编码器,对所述带有噪声的第二正向输出文本进行编码,得到第二反向编码特征;在所述第二反向解码器,对所述第二反向编码特征进行解码,得到第二反向输出文本;根据所述第二训练文本和所述第二反向输出文本,得到所述第二循环损失;在所述第二判别器,根据所述第一反向编码特征和所述第二反向编码特征,得到所述循环对抗损失。
在一些可选的实施方式中,所述第一编码特征、所述第二编码特征、所述第一正向编码特征、所述第二正向编码特征、所述第一反向编码特征和所述第二反向编码特征均包括有用于表征高质量文本或低质量文本的文本类别编码。
在一些可选的实施方式中,所述训练数据集还包括:有标注文本和对应的标注;所述文本处理模型还包括:有标注训练子模型;所述有标注训练子模型包括:第三编码器、第三解码器、第四编码器、第四解码器。
所述文本处理模型还包括:有标注训练模块。该有标注训练模块,被配置为将所述有标注文本和所述标注输入所述有标注训练子模型;在所述第三编码器,对所述有标注文本进行编码,得到有标注文本特征;在所述第三解码器,对所述有标注文本特征进行解码,得到第一有标注输出文本;在所述第四编码器,对所述标注进行编码,得到标注特征;在所述第四解码器,对所述标注特征进行解码,得到第二有标注输出文本;根据所述有标注文本和所述第二有标注输出文本,得到第一有标注损失;根据所述标注和所述第一有标注输出文本,得到第二有标注损失。
训练模块805,具体被配置为根据所述第一损失、所述第二损失、所述对抗损失、所述第一循环损失、所述第二循环损失、所述循环对抗损失、所述第一有标注损失和所述第二有标注损失,构建联合损失函数。
上述实施例的装置用于实现前述示例性文本处理模型的训练方法部分中任一实施例中相应的文本处理模型的训练方法,并且具有相应的方法实施例的有益效果,在此不再赘述。
参考图9,基于与上述任意文本处理方法实施例相同的发明构思,本公开实施例还提供了一种文本处理装置,包括:
获取模块901,被配置为获取待处理文本;
处理模块902,被配置为将所述待处理文本输入预先训练的文本处理模型,得到所述待处理文本对应的处理后文本;所述文本处理模型是基于如上任一实施例的文本处理模型的训练方法训练得到的。
上述实施例的装置用于实现前述示例性文本处理方法部分中任一实施例中相应的文本处理方法,并且具有相应的方法实施例的有益效果,在此不再赘述。
基于与上述任意文本处理模型的训练方法实施例或文本处理方法实施例相同的发明构思,本公开实施例还提供了一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现上任意一实施例所述的文本处理模型的训练方法和/或文本处理方法。
图10示出了本实施例所提供的一种更为具体的电子设备硬件结构示意图,该设备可以包括:处理器1010、存储器1020、输入/输出接口1030、通信接口1040和总线1050。其中处理器1010、存储器1020、输入/输出接口1030和通信接口1040通过总线1050实现彼此之间在设备内部的通信连接。
处理器1010可以采用通用的CPU(Central Processing Unit,中央处理器)、微处理器、应用专用集成电路(Application Specific Integrated Circuit,ASIC)、或者一个或多个集成电路等方式实现,用于执行相关程序,以实现本说明书实施例所提供的技术方案。
存储器1020可以采用ROM(Read Only Memory,只读存储器)、RAM(Random AccessMemory,随机存取存储器)、静态存储设备,动态存储设备等形式实现。存储器1020可以存储操作系统和其他应用程序,在通过软件或者固件来实现本说明书实施例所提供的技术方案时,相关的程序代码保存在存储器1020中,并由处理器1010来调用执行。
输入/输出接口1030用于连接输入/输出模块,以实现信息输入及输出。输入输出/模块可以作为组件配置在设备中(图中未示出),也可以外接于设备以提供相应功能。其中输入设备可以包括键盘、鼠标、触摸屏、麦克风、各类传感器等,输出设备可以包括显示器、扬声器、振动器、指示灯等。
通信接口1040用于连接通信模块(图中未示出),以实现本设备与其他设备的通信交互。其中通信模块可以通过有线方式(例如USB、网线等)实现通信,也可以通过无线方式(例如移动网络、WIFI、蓝牙等)实现通信。
总线1050包括一通路,在设备的各个组件(例如处理器1010、存储器1020、输入/输出接口1030和通信接口1040)之间传输信息。
需要说明的是,尽管上述设备仅示出了处理器1010、存储器1020、输入/输出接口1030、通信接口1040以及总线1050,但是在具体实施过程中,该设备还可以包括实现正常运行所必需的其他组件。此外,本领域的技术人员可以理解的是,上述设备中也可以仅包含实现本说明书实施例方案所必需的组件,而不必包含图中所示的全部组件。
上述实施例的电子设备用于实现前述示例性方法部分中任一实施例中相应的文本处理模型的训练方法和/或文本处理方法,并且具有相应的方法实施例的有益效果,在此不再赘述。
示例性程序产品
基于与上述任意文本处理模型的训练方法实施例或文本处理方法实施例相同的发明构思,本公开实施例还提供了一种非暂态计算机可读存储介质,所述非暂态计算机可读存储介质存储计算机指令,所述计算机指令用于使所述计算机执行前述示例性方法部分中任一实施例中相应的文本处理模型的训练方法和/或文本处理方法。
上述非暂态计算机可读存储介质可以是计算机能够存取的任何可用介质或数据存储设备,包括但不限于磁性存储器(例如软盘、硬盘、磁带、磁光盘(MO)等)、光学存储器(例如CD、DVD、BD、HVD等)、以及半导体存储器(例如ROM、EPROM、EEPROM、非易失性存储器(NAND FLASH)、固态硬盘(SSD))等。
上述实施例的存储介质存储的计算机指令用于使所述计算机执行如上示例性方法部分中任一实施例所述的文本处理模型的训练方法和/或文本处理方法,并且具有相应的方法实施例的有益效果,在此不再赘述。
本领域技术技术人员知道,本发明的实施方式可以实现为一种系统、方法或计算机程序产品。因此,本公开可以具体实现为以下形式,即:完全的硬件、完全的软件(包括固件、驻留软件、微代码等),或者硬件和软件结合的形式,本文一般称为“电路”、“模块”或“系统”。此外,在一些实施例中,本发明还可以实现为在一个或多个计算机可读介质中的计算机程序产品的形式,该计算机可读介质中包含计算机可读的程序代码。
可以采用一个或多个计算机可读的介质的任意组合。计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质。计算机可读存储介质例如可以是,但不限于,电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子(非穷举示例)例如可以包括:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑磁盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本文件中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。
计算机可读的信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读的信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。
计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括但不限于无线、电线、光缆、RF等等,或者上述的任意合适的组合。
可以以一种或多种程序设计语言或其组合来编写用于执行本发明操作的计算机程序代码,所述程序设计语言包括面向对象的程序设计语言—诸如Java、Smalltalk、C++,还包括常规的过程式程序设计语言—诸如“C”语言或类似的程序设计语言。程序代码可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络(包括局域网(LAN)或广域网(WAN))连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。
应当理解,流程图和/或框图的每个方框以及流程图和/或框图中各方框的组合都可以由计算机程序指令实现。这些计算机程序指令可以提供给通用计算机、专用计算机或其它可编程数据处理装置的处理器,从而生产出一种机器,这些计算机程序指令通过计算机或其它可编程数据处理装置执行,产生了实现流程图和/或框图中的方框中规定的功能/操作的装置。
也可以把这些计算机程序指令存储在能使得计算机或其它可编程数据处理装置以特定方式工作的计算机可读介质中,这样,存储在计算机可读介质中的指令就产生出一个包括实现流程图和/或框图中的方框中规定的功能/操作的指令装置的产品。
也可以把计算机程序指令加载到计算机、其它可编程数据处理装置、或其它设备上,使得在计算机、其它可编程数据处理装置或其它设备上执行一系列操作步骤,以产生计算机实现的过程,从而使得在计算机或其它可编程装置上执行的指令能够提供实现流程图和/或框图中的方框中规定的功能/操作的过程。
此外,尽管在附图中以特定顺序描述了本发明方法的操作,但是,这并非要求或者暗示必须按照该特定顺序来执行这些操作,或是必须执行全部所示的操作才能实现期望的结果。相反,流程图中描绘的步骤可以改变执行顺序。附加地或备选地,可以省略某些步骤,将多个步骤合并为一个步骤执行,和/或将一个步骤分解为多个步骤执行。
申请文件中提及的动词“包括”、“包含”及其词形变化的使用不排除除了申请文件中记载的那些元素或步骤之外的元素或步骤的存在。元素前的冠词“一”或“一个”不排除多个这种元素的存在。
虽然已经参考若干具体实施方式描述了本发明的精神和原理,但是应该理解,本发明并不限于所公开的具体实施方式,对各方面的划分也不意味着这些方面中的特征不能组合以进行受益,这种划分仅是为了表述的方便。本发明旨在涵盖所附权利要求的精神和范围内所包括的各种修改和等同布置。所附权利要求的范围符合最宽泛的解释,从而包含所有这样的修改及等同结构和功能。
Claims (11)
1.一种文本处理模型的训练方法,其中,所述文本处理模型包括:降噪自编码器子模型和循环训练子模型;
所述方法包括:
获取训练数据集,将所述训练数据集分为包括有高质量文本的第一数据集和包括有低质量文本的第二数据集;
获取来自所述第一数据集的第一训练文本,以及来自所述第二数据集的第二训练文本;
将所述第一训练文本和所述第二训练文本输入所述降噪自编码器子模型,以得到所述第一训练文本对应的第一损失、所述第二训练文本对应的第二损失,以及所述第一训练文本和所述第二训练文本之间的对抗损失;
将所述第一训练文本和所述第二训练文本输入所述循环训练子模型,以得到所述第一训练文本对应的第一循环损失、所述第二训练文本对应的第二循环损失,以及所述第一训练文本和所述第二训练文本之间的循环对抗损失;
至少根据所述第一损失、第二损失、所述对抗损失、所述第一循环损失、所述第二循环损失和所述循环对抗损失,构建联合损失函数,并根据所述联合损失函数,训练所述文本处理模型;
其中,所述低质量文本满足以下至少一项:包含拼写错误、包含语法错误、包含标点错误、不符合表达习惯、文本的长度小于预定的长度阈值;所述高质量文本满足:不包含拼写错误、语法错误和标点错误,符合表达习惯,以及文本的长度不小于预定的长度阈值。
2.根据权利要求1所述的方法,其中,所述将所述训练数据集分为包括有高质量文本的第一数据集和包括有低质量文本的第二数据集,具体包括:
对于所述训练数据集中的任一文本,对该文本进行文本纠错,响应于确定该文本存在错误,将该文本作为低质量文本并划分至所述第二数据集;
根据所述训练数据集,生成用于词嵌入的词表,并确定所述词表中每个单词的出现频率;对于所述训练数据集中的任一文本,响应于确定该文本仅由出现频率大于预定的频率阈值的单词构成,将该文本作为低质量文本并划分至所述第二数据集;
确定所述训练数据集中各个文本的长度;对于任一文本,响应于确定该文本的长度小于预定的长度阈值,将该文本作为低质量文本并划分至所述第二数据集;
将未被划分至所述第二数据集的全部文本作为高质量文本并划分至所述第一数据集。
3.根据权利要求1所述的方法,其中,所述降噪自编码器子模型,包括:第一噪音生成模块、第一编码器、第一解码器、第二噪音生成模块、第二编码器、第二解码器和第一判别器;
所述将所述第一训练文本和所述第二训练文本输入所述降噪自编码器子模型之后,具体包括:
在所述第一噪音生成模块,对所述第一训练文本进行噪声添加,得到带有噪声的第一训练文本;
在所述第一编码器,对所述带有噪声的第一训练文本进行编码,得到第一编码特征;
在所述第一解码器,对所述第一编码特征进行解码,得到第一输出文本;
根据所述第一训练文本和所述第一输出文本,得到所述第一损失;
在所述第二噪音生成模块,对所述第二训练文本进行噪声添加,得到带有噪声的第二训练文本;
在所述第二编码器,对所述带有噪声的第二训练文本进行编码,得到第二编码特征;
在所述第二解码器,对所述第二编码特征进行解码,得到第二输出文本;
根据所述第二训练文本和所述第二输出文本,得到所述第二损失;
在所述第一判别器,根据所述第一编码特征和所述第二编码特征进行对抗判别,得到所述对抗损失。
4.根据权利要求3所述的方法,其中,所述循环训练子模型,包括:第一正向编码器、第一正向解码器、第三噪音生成模块、第一反向编码器、第一反向解码器、第二正向编码器、第二正向解码器、第四噪音生成模块、第二反向编码器、第二反向解码器和第二判别器;
所述将所述第一训练文本和所述第二训练文本输入所述循环训练子模型之后,具体包括:
在所述第一正向编码器,对所述第一训练文本进行编码,得到第一正向编码特征;
在所述第一正向解码器,对所述第一正向编码特征进行解码,得到第一正向输出文本;
在所述第三噪音生成模块,对所述第一正向输出文本进行噪声添加,得到带有噪声的第一正向输出文本;
在所述第一反向编码器,对所述带有噪声的第一正向输出文本进行编码,得到第一反向编码特征;
在所述第一反向解码器,对所述第一反向编码特征进行解码,得到第一反向输出文本;
根据所述第一训练文本和所述第一反向输出文本,得到所述第一循环损失;
在所述第二正向编码器,对所述第二训练文本进行编码,得到第二正向编码特征;
在所述第二正向解码器,对所述第二正向编码特征进行解码,得到第二正向输出文本;
在所述第四噪音生成模块,对所述第二正向输出文本进行噪声添加,得到带有噪声的第二正向输出文本;
在所述第二反向编码器,对所述带有噪声的第二正向输出文本进行编码,得到第二反向编码特征;
在所述第二反向解码器,对所述第二反向编码特征进行解码,得到第二反向输出文本;
根据所述第二训练文本和所述第二反向输出文本,得到所述第二循环损失;
在所述第二判别器,根据所述第一反向编码特征和所述第二反向编码特征,得到所述循环对抗损失。
5.根据权利要求4所述的方法,其中,所述第一编码特征、所述第二编码特征、所述第一正向编码特征、所述第二正向编码特征、所述第一反向编码特征和所述第二反向编码特征均包括有用于表征高质量文本或低质量文本的文本类别编码。
6.根据权利要求1所述的方法,其中,所述训练数据集还包括:有标注文本和对应的标注;所述文本处理模型还包括:有标注训练子模型;所述有标注训练子模型包括:第三编码器、第三解码器、第四编码器、第四解码器;
所述方法还包括:
将所述有标注文本和所述标注输入所述有标注训练子模型;
在所述第三编码器,对所述有标注文本进行编码,得到有标注文本特征;
在所述第三解码器,对所述有标注文本特征进行解码,得到第一有标注输出文本;
在所述第四编码器,对所述标注进行编码,得到标注特征;
在所述第四解码器,对所述标注特征进行解码,得到第二有标注输出文本;
根据所述有标注文本和所述第二有标注输出文本,得到第一有标注损失;
根据所述标注和所述第一有标注输出文本,得到第二有标注损失;
所述构建联合损失函数的步骤,具体包括:
根据所述第一损失、所述第二损失、所述对抗损失、所述第一循环损失、所述第二循环损失、所述循环对抗损失、所述第一有标注损失和所述第二有标注损失,构建联合损失函数。
7.一种文本处理方法,包括:
获取待处理文本;
将所述待处理文本输入预先训练的文本处理模型,得到所述待处理文本对应的处理后文本;所述文本处理模型是基于权利要求1至6中的任一方法训练得到的。
8.一种文本处理模型的训练装置,其中,所述文本处理模型包括:降噪自编码器子模型和循环训练子模型;
所述装置包括:
获取模块,被配置为获取训练数据集,将所述训练数据集分为包括有高质量文本的第一数据集和包括有低质量文本的第二数据集;
输入模块,被配置为获取来自所述第一数据集的第一训练文本,以及来自所述第二数据集的第二训练文本,并将所述第一训练文本和所述第二训练文本输入所述降噪自编码器子模型和所述循环训练子模型;
降噪自编码器模块,被配置为在所述降噪自编码器子模型,对所述第一训练文本和所述第二训练文本均依次进行噪声添加、编码和解码,得到所述第一训练文本对应的第一损失和所述第二训练文本对应的第二损失;根据所述第一训练文本和所述第二训练文本的编码结果进行对抗判别,得到对抗损失;
循环训练模块,被配置为在所述循环训练子模型,对所述第一训练文本和所述第二训练文本均依次进行编码、解码、噪声添加、编码和解码,得到所述第一训练文本对应的第一循环损失和所述第二训练文本对应的第二循环损失;根据所述第一训练文本和所述第二训练文本在噪声添加后的编码结果进行对抗判别,得到循环对抗损失;
训练模块,被配置为至少根据所述第一损失、第二损失、所述对抗损失、所述第一循环损失、所述第二循环损失和所述循环对抗损失,构建联合损失函数,并根据所述联合损失函数,训练所述文本处理模型;
其中,所述低质量文本满足以下至少一项:包含拼写错误、包含语法错误、包含标点错误、不符合表达习惯、文本的长度小于预定的长度阈值;所述高质量文本满足:不包含拼写错误、语法错误和标点错误,符合表达习惯,以及文本的长度不小于预定的长度阈值。
9.一种文本处理模型装置,包括:
获取模块,被配置为获取待处理文本;
处理模块,被配置为将所述待处理文本输入预先训练的文本处理模型,得到所述待处理文本对应的处理后文本;所述文本处理模型是基于权利要求1至6中的任一方法训练得到的。
10.一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现如权利要求1至6任意一项所述的方法。
11.一种非暂态计算机可读存储介质,所述非暂态计算机可读存储介质存储计算机指令,所述计算机指令用于使计算机执行权利要求1至6任一所述方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110932894.8A CN113590761B (zh) | 2021-08-13 | 2021-08-13 | 文本处理模型的训练方法、文本处理方法及相关设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110932894.8A CN113590761B (zh) | 2021-08-13 | 2021-08-13 | 文本处理模型的训练方法、文本处理方法及相关设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113590761A CN113590761A (zh) | 2021-11-02 |
CN113590761B true CN113590761B (zh) | 2022-03-25 |
Family
ID=78257843
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110932894.8A Active CN113590761B (zh) | 2021-08-13 | 2021-08-13 | 文本处理模型的训练方法、文本处理方法及相关设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113590761B (zh) |
Families Citing this family (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114187517A (zh) * | 2021-12-14 | 2022-03-15 | 广州赋安数字科技有限公司 | 一种融合视频监控和遥感的异常目标检测方法及系统 |
CN114612749B (zh) * | 2022-04-20 | 2023-04-07 | 北京百度网讯科技有限公司 | 神经网络模型训练方法及装置、电子设备和介质 |
CN114925660B (zh) * | 2022-05-23 | 2023-07-28 | 马上消费金融股份有限公司 | 文本处理模型训练方法及装置、文本处理方法及装置 |
CN116052724B (zh) * | 2023-01-28 | 2023-07-04 | 深圳大学 | 肺音增强方法、系统、设备和存储介质 |
CN117041019B (zh) * | 2023-10-10 | 2024-01-02 | 中国移动紫金(江苏)创新研究院有限公司 | 内容分发网络cdn的日志分析方法、装置及存储介质 |
CN117574860A (zh) * | 2024-01-16 | 2024-02-20 | 北京蜜度信息技术有限公司 | 一种用于文本润色的方法与设备 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108334497A (zh) * | 2018-02-06 | 2018-07-27 | 北京航空航天大学 | 自动生成文本的方法和装置 |
CN108829685A (zh) * | 2018-05-07 | 2018-11-16 | 内蒙古工业大学 | 一种基于单语语料库训练的蒙汉互译方法 |
CN110119448A (zh) * | 2019-05-08 | 2019-08-13 | 合肥工业大学 | 基于双重自动编码器的半监督跨领域文本分类方法 |
CN111241287A (zh) * | 2020-01-16 | 2020-06-05 | 支付宝(杭州)信息技术有限公司 | 用于生成对抗文本的生成模型的训练方法及装置 |
CN111767405A (zh) * | 2020-07-30 | 2020-10-13 | 腾讯科技(深圳)有限公司 | 文本分类模型的训练方法、装置、设备及存储介质 |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11416748B2 (en) * | 2019-12-18 | 2022-08-16 | Sap Se | Generic workflow for classification of highly imbalanced datasets using deep learning |
US20210241099A1 (en) * | 2020-02-05 | 2021-08-05 | Baidu Usa Llc | Meta cooperative training paradigms |
CN111709234B (zh) * | 2020-05-28 | 2023-07-25 | 北京百度网讯科技有限公司 | 文本处理模型的训练方法、装置及电子设备 |
CN111767701B (zh) * | 2020-06-18 | 2023-03-07 | 浙江大学 | 一种基于对抗性互信息的文本生成方法 |
CN111951805B (zh) * | 2020-07-10 | 2024-09-20 | 华为技术有限公司 | 一种文本数据处理方法及装置 |
CN112131366B (zh) * | 2020-09-23 | 2024-02-09 | 腾讯科技(深圳)有限公司 | 训练文本分类模型及文本分类的方法、装置及存储介质 |
-
2021
- 2021-08-13 CN CN202110932894.8A patent/CN113590761B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108334497A (zh) * | 2018-02-06 | 2018-07-27 | 北京航空航天大学 | 自动生成文本的方法和装置 |
CN108829685A (zh) * | 2018-05-07 | 2018-11-16 | 内蒙古工业大学 | 一种基于单语语料库训练的蒙汉互译方法 |
CN110119448A (zh) * | 2019-05-08 | 2019-08-13 | 合肥工业大学 | 基于双重自动编码器的半监督跨领域文本分类方法 |
CN111241287A (zh) * | 2020-01-16 | 2020-06-05 | 支付宝(杭州)信息技术有限公司 | 用于生成对抗文本的生成模型的训练方法及装置 |
CN111767405A (zh) * | 2020-07-30 | 2020-10-13 | 腾讯科技(深圳)有限公司 | 文本分类模型的训练方法、装置、设备及存储介质 |
Non-Patent Citations (2)
Title |
---|
Denoising Autoencoder as an Effective Dimensionality Reduction and Clustering of Text Data;Milad Leyli-Abadi 等;《SpringerLink》;20170423;第801-813页 * |
基于对抗训练的文本表示与文本分类方法研究;张晓辉;《中国优秀博硕士学位论文全文数据库(硕士)信息科技辑》;20210315;I138-901 * |
Also Published As
Publication number | Publication date |
---|---|
CN113590761A (zh) | 2021-11-02 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN113590761B (zh) | 文本处理模型的训练方法、文本处理方法及相关设备 | |
US10380996B2 (en) | Method and apparatus for correcting speech recognition result, device and computer-readable storage medium | |
CN113811946B (zh) | 数字序列的端到端自动语音识别 | |
CN107220235B (zh) | 基于人工智能的语音识别纠错方法、装置及存储介质 | |
CN112528637B (zh) | 文本处理模型训练方法、装置、计算机设备和存储介质 | |
JP5128629B2 (ja) | 品詞タグ付けシステム、品詞タグ付けモデルのトレーニング装置および方法 | |
CN110175336B (zh) | 翻译方法、装置和电子设备 | |
CN111401037B (zh) | 自然语言的生成方法、装置、电子设备及存储介质 | |
CN107451106A (zh) | 文本纠正方法及装置、电子设备 | |
KR20200044208A (ko) | 음절 기반의 벡터를 이용한 한글 오류 보정 방법 및 한글 오류 보정 시스템 | |
CN115759119B (zh) | 一种金融文本情感分析方法、系统、介质和设备 | |
US20220028367A1 (en) | Expressive text-to-speech utilizing contextual word-level style tokens | |
CN115906815A (zh) | 一种用于修改一种或多种类型错误句子的纠错方法及装置 | |
CN113822044B (zh) | 语法纠错数据生成方法、装置、计算机设备及存储介质 | |
CN112711943B (zh) | 一种维吾尔文语种识别方法、装置及存储介质 | |
CN115129826B (zh) | 电力领域模型预训练方法、精调方法、装置及设备 | |
CN116644180A (zh) | 文本匹配模型的训练方法、训练系统和文本标签确定方法 | |
CN113591493B (zh) | 翻译模型的训练方法及翻译模型的装置 | |
CN111291576B (zh) | 神经网络内部表示信息量确定方法、装置、设备、介质 | |
Zare et al. | Deepnorm-a deep learning approach to text normalization | |
CN116306612A (zh) | 一种词句生成方法及相关设备 | |
CN114841162B (zh) | 文本处理方法、装置、设备及介质 | |
Rohatgi et al. | DeepNorm-A Deep learning approach to Text Normalization | |
Ma | Research on Computer Intelligent Proofreading System for English Translation Based on Deep Learning | |
CN117953864A (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 |