CN112464650A - 一种文本纠错方法和装置 - Google Patents
一种文本纠错方法和装置 Download PDFInfo
- Publication number
- CN112464650A CN112464650A CN202011261361.3A CN202011261361A CN112464650A CN 112464650 A CN112464650 A CN 112464650A CN 202011261361 A CN202011261361 A CN 202011261361A CN 112464650 A CN112464650 A CN 112464650A
- Authority
- CN
- China
- Prior art keywords
- text
- error
- training
- model
- trained
- 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
Links
- 238000012937 correction Methods 0.000 title claims abstract description 71
- 238000000034 method Methods 0.000 title claims abstract description 70
- 238000012549 training Methods 0.000 claims abstract description 101
- 238000001514 detection method Methods 0.000 claims abstract description 28
- 238000004590 computer program Methods 0.000 claims description 8
- 230000015654 memory Effects 0.000 claims description 8
- 238000009499 grossing Methods 0.000 claims description 6
- 238000012805 post-processing Methods 0.000 claims description 5
- 238000010276 construction Methods 0.000 claims description 4
- 230000002829 reductive effect Effects 0.000 abstract description 4
- 230000008569 process Effects 0.000 description 15
- 241000393496 Electra Species 0.000 description 12
- 241000282376 Panthera tigris Species 0.000 description 12
- 238000012545 processing Methods 0.000 description 7
- 230000006870 function Effects 0.000 description 6
- 230000000670 limiting effect Effects 0.000 description 6
- 238000012015 optical character recognition Methods 0.000 description 6
- 238000010586 diagram Methods 0.000 description 3
- 230000002457 bidirectional effect Effects 0.000 description 2
- 238000004364 calculation method Methods 0.000 description 2
- 238000002372 labelling Methods 0.000 description 2
- 238000010606 normalization Methods 0.000 description 2
- 230000036961 partial effect Effects 0.000 description 2
- 238000013519 translation Methods 0.000 description 2
- 230000003042 antagnostic effect Effects 0.000 description 1
- 238000013459 approach Methods 0.000 description 1
- 238000012512 characterization method Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000014509 gene expression Effects 0.000 description 1
- 230000002452 interceptive effect Effects 0.000 description 1
- 230000005291 magnetic effect Effects 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 229920001690 polydopamine Polymers 0.000 description 1
- 230000002441 reversible effect Effects 0.000 description 1
- 230000011218 segmentation Effects 0.000 description 1
- 230000009466 transformation Effects 0.000 description 1
- 230000003936 working memory Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/20—Natural language analysis
- G06F40/232—Orthographic correction, e.g. spell checking or vowelisation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/20—Natural language analysis
- G06F40/205—Parsing
- G06F40/216—Parsing using statistical methods
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Health & Medical Sciences (AREA)
- Artificial Intelligence (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Computational Linguistics (AREA)
- General Health & Medical Sciences (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Probability & Statistics with Applications (AREA)
- Machine Translation (AREA)
Abstract
本发明的目的是提供一种文本纠错方法和装置。所述方法包括以下步骤:基于输入文本,生成输入至待训练模型的错误文本;基于所述错误文本进行预训练和微调,从而对所述待训练模型进行文本错误位置检测的训练;基于所述错误文本进行遮罩训练,从而对所述待训练模型进行文本错误纠正的训练。本申请实施例具有以下优点:通过进行检测错误位置和纠正错误位置的训练,能够定位错误位置并准确地进行纠错;通过在进行文本错误位置检测的训练中进行预训练和微调,提升了模型的泛化能力,降低了漏检率,使得最终训练出来的模型具有较好的鲁棒性。
Description
技术领域
本发明涉及计算机技术领域,尤其涉及一种文本纠错方法和装置。
背景技术
基于现有技术的文本纠错方案大致可以分为以下四类:第一类是基于规则的方法;第二类是基于统计学习的方法;第三类是基于机器翻译的方法;第四类是基于预训练模型的方法。
然而,这些方案均存在各自的缺陷,基于规则的方法需要大量的人力去构建,基于统计的方法和基于机器翻译的方法没办法捕获文本的更深层次的语义信息。
基于预训练模型的方法在许多任务上都取得了领先的效果,在文本纠错上,预训练的方法包含了遮罩(MASK)的训练。但是预训练的方法中的BERT(Bidirectional EncoderRepresentations from Transformers)模型并不是为了文本纠错而设计,纠错能力有限,有待改进。其中,BERT是一种基于Transformer单元的双向编码表征方法,Transformer单元是一种基于自注意力机制的编码单元。
发明内容
本发明的目的是提供一种文本纠错方法和装置。
根据本申请的实施例,提供了一种文本纠错方法,其中,所述方法包括以下步骤:
基于输入文本,生成输入至待训练模型的错误文本;
基于所述错误文本进行预训练和微调,从而对所述待训练模型进行文本错误位置检测的训练;
基于所述错误文本和混淆集合进行遮罩训练,从而对所述待训练模型进行文本错误纠正的训练。
根据本申请的实施例,提供了一种文本纠错装置,其中,所述文本纠错装置包括:
文本生成模块,用于基于输入文本,生成输入至待训练模型的错误文本;
错误检测模块,用于基于所述错误文本进行预训练和微调,从而对所述待训练模型进行文本错误位置检测的训练;
纠错训练模块,用于基于所述错误文本和混淆集合进行遮罩训练,从而对所述待训练模型进行文本错误纠正的训练。
根据本申请的实施例,提供了一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述程序时实现本申请实施例的方法。
根据本申请的实施例,提供了一种计算机可读的存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行时实现本申请实施例的方法。
与现有技术相比,本申请实施例具有以下优点:通过进行检测错误位置和纠正错误位置的训练,来提升待训练模型的纠错能力,从而能够定位错误位置并准确地进行纠错,并且这种两阶段的纠错方式能够容易地和其他一阶段的纠错方法相结合,以降低一阶段方法的过纠率;通过在进行文本错误位置检测的训练中进行预训练和微调,提升了模型的泛化能力,降低了漏检率,使得最终训练出来的模型具有较好的鲁棒性;并且,对于输入的错误文本中出现的未登录词,如果通过所述预定模型的生成器和判别器判断出该未登录词是正确的,则不需要对该未登录词进行纠正了,从而能够减少对未登录词的纠错,降低了未登录词引起的错误率。
附图说明
通过阅读参照以下附图所作的对非限制性实施例所作的详细描述,本发明的其它特征、目的和优点将会变得更明显:
图1示出了根据本申请实施例的一种文本纠错方法的流程图;
图2示出了根据本申请实施例的一种文本纠错装置的结构示意图。
附图中相同或相似的附图标记代表相同或相似的部件。
具体实施方式
在更加详细地讨论示例性实施例之前应当提到的是,一些示例性实施例被描述成作为流程图描绘的处理或方法。虽然流程图将各项操作描述成顺序的处理,但是其中的许多操作可以被并行地、并发地或者同时实施。此外,各项操作的顺序可以被重新安排。当其操作完成时所述处理可以被终止,但是还可以具有未包括在附图中的附加步骤。所述处理可以对应于方法、函数、规程、子例程、子程序等等。
在上下文中所称“计算机设备”,也称为“电脑”,是指可以通过运行预定程序或指令来执行数值计算和/或逻辑计算等预定处理过程的智能电子设备,其可以包括处理器与存储器,由处理器执行在存储器中预存的存续指令来执行预定处理过程,或是由ASIC、FPGA、DSP等硬件执行预定处理过程,或是由上述二者组合来实现。计算机设备包括但不限于服务器、个人电脑、笔记本电脑、平板电脑、智能手机等。
所述计算机设备包括用户设备与网络设备。其中,所述用户设备包括但不限于电脑、智能手机、PDA等;所述网络设备包括但不限于单个网络服务器、多个网络服务器组成的服务器组或基于云计算(Cloud Computing)的由大量计算机或网络服务器构成的云,其中,云计算是分布式计算的一种,由一群松散耦合的计算机集组成的一个超级虚拟计算机。其中,所述计算机设备可单独运行来实现本申请,也可接入网络并通过与网络中的其他计算机设备的交互操作来实现本申请。其中,所述计算机设备所处的网络包括但不限于互联网、广域网、城域网、局域网、VPN网络等。
需要说明的是,所述用户设备、网络设备和网络等仅为举例,其他现有的或今后可能出现的计算机设备或网络如可适用于本申请,也应包含在本申请保护范围以内,并以引用方式包含于此。
后面所讨论的方法(其中一些通过流程图示出)可以通过硬件、软件、固件、中间件、微代码、硬件描述语言或者其任意组合来实施。当用软件、固件、中间件或微代码来实施时,用以实施必要任务的程序代码或代码段可以被存储在机器或计算机可读介质(比如存储介质)中。(一个或多个)处理器可以实施必要的任务。
这里所公开的具体结构和功能细节仅仅是代表性的,并且是用于描述本申请的示例性实施例的目的。但是本申请可以通过许多替换形式来具体实现,并且不应当被解释成仅仅受限于这里所阐述的实施例。
应当理解的是,虽然在这里可能使用了术语“第一”、“第二”等等来描述各个单元,但是这些单元不应当受这些术语限制。使用这些术语仅仅是为了将一个单元与另一个单元进行区分。举例来说,在不背离示例性实施例的范围的情况下,第一单元可以被称为第二单元,并且类似地第二单元可以被称为第一单元。这里所使用的术语“和/或”包括其中一个或更多所列出的相关联项目的任意和所有组合。
应当理解的是,当一个单元被称为“连接”或“耦合”到另一单元时,其可以直接连接或耦合到所述另一单元,或者可以存在中间单元。与此相对,当一个单元被称为“直接连接”或“直接耦合”到另一单元时,则不存在中间单元。应当按照类似的方式来解释被用于描述单元之间的关系的其他词语(例如“处于...之间”相比于“直接处于...之间”,“与...邻近”相比于“与...直接邻近”等等)。
这里所使用的术语仅仅是为了描述具体实施例而不意图限制示例性实施例。除非上下文明确地另有所指,否则这里所使用的单数形式“一个”、“一项”还意图包括复数。还应当理解的是,这里所使用的术语“包括”和/或“包含”规定所陈述的特征、整数、步骤、操作、单元和/或组件的存在,而不排除存在或添加一个或更多其他特征、整数、步骤、操作、单元、组件和/或其组合。
还应当提到的是,在一些替换实现方式中,所提到的功能/动作可以按照不同于附图中标示的顺序发生。举例来说,取决于所涉及的功能/动作,相继示出的两幅图实际上可以基本上同时执行或者有时可以按照相反的顺序来执行。
下面结合附图对本发明作进一步详细描述。
图1示出了根据本申请实施例的一种文本纠错方法的流程图。所述方法包括步骤S1、步骤S2和步骤S3。
参照图1,在步骤S1中,基于输入文本,生成输入至待训练模型的错误文本。
优选地,所述待训练模型为BERT模型。
其中,生成输入至待训练模型的错误文本的方式包括但不限于以下至少任一种:
1)通过语音识别生成错误文本;具体地,通过各种语音识别工具来将输入文本对应的语音数据转换为文本,从而得到包含错别字的错误文本;例如,使用ST(SpeechTransformer)模型来进行语音识别;
2)通过光学字符识别(Optical Character Recognition,OCR)生成错误文本;具体地,通过各种OCR工具来将输入文本对应的图片数据转换为文本,从而得到包含错别字的错误文本。
其中,所述步骤S1包括步骤S101。
在步骤S101中,对输入文本进行处理,以基于处理后的输入文本生成错误文本。
其中,对输入文本进行的处理包括对文本进行分句。
优选地,对输入文本进行的处理包括但不限于以下至少任一项:
1)对文本进行分句;
2)去除文本中的语气词;
3)去除文本中的标点符号;
4)如果文本包含英文,将文本中的大写字母转换为对应的小写字母;
5)去除长度小于预定阈值的文本。
在步骤S2中,基于所述错误文本进行预训练和微调,从而对所述待训练模型进行文本错误位置检测的训练。
具体地,可使用各种支持序列标注的基于Transformer单元的语言模型来对所述待训练模型进行文本错误位置检测的训练。
根据一个实施例,所述步骤S2包括步骤S201和步骤S202。
在步骤S201中,通过预定模型的生成器和判别器来进行对抗预训练。
其中,所述预定模型包括各种支持Transformer单元的生成器(Generator)和判别器(Discriminator)对抗预训练的模型。优选地,所述预定模型为ELECTRA模型。
其中,所述生成器用于对文本中的部分单词进行预测和替换。所述判别器用于判断文本中的每个单词是否被替换。
在步骤S202中,预训练完成后,将判别器加入全连接层,并通过标签平滑的正则化方法来进行微调。
根据本申请的第一示例,在步骤S201中,采用ELECTRA模型的生成器和判别器对抗预训练的方式来进行对抗预训练。其中,生成器和判别器均由BERT组成。生成器的输入是被遮罩15%的正确文本,生成器预测出被遮罩的部分,然后判别器判断每个单词的位置是否被遮罩。如果该位置被遮罩了,则输出为“1”,否则,输出为“0”。加载了ELECTRA base中文预训练模型来进行预训练。
具体地,本示例使用检测器来进行文本错误位置检测。并且,该检测器有两部分组成,一个部分是ELECTRA的判别器,加载了上一步预训练后的ELECTRA的判别器的参数,另一部分是分类器。该检测器进行微调训练。并且,该用于文本错误位置检测的检测器的公式表示如下:
Y=Detector(X) (1)
Yout=G(X,Y) (2)
对于公式(1),Y表示检测器Detector的输出,Detector的输入X={x0,x1,…,xn},其表示错误文本。Detector的输出Y={y0,y1,...,yn},其中,yi∈{0,1}。如果判断出相应位置的文字是错误的,则其取值为1,否则取值为0。
对于公式(2),Yout表示将错误文本中的错误文字设置为空格后的文本,其是G的输出,G函数表示将模型的输出转换成文本的变换。Yout的取值yi∈{blank,xi},其中blank表示空白。对于错误文本中的每个文字,如果该文字是错误的,则输出空格,否则输出该文字。
接着,在步骤S202中,预训练完成后,将判别器加入全连接层,并通过标签平滑的正则化方法来进行数据微调。对于输入的错误文本中的每个字,如果是错误的字,则输出“1”,否则输出“0”。
假设错误文本为“兰州哪有卖路虎骑车的”,基于上述公式(1)对其进行错误位置检测,相应的输出Y为“兰0州0哪0有0卖0路0虎0骑1车0的0”。基于上述公式(2)进行转换后输出的文本Yout为“兰州哪有卖路虎_车的”。
需要说明的是,上述举例仅为更好地说明本发明的技术方案,而非对本发明的限制,本领域技术人员应该理解,任何通过预定模型的生成器和判别器来进行对抗预训练并进行微调的实现方式,均应包含在本发明的范围内。
根据本实施例,通过在预训练过程中加入对抗训练的方式,进一步提升了错误位置检测的准确性;并且,本实施例通过预训练和微调两个过程,提升了模型的泛化能力,使得最终训练出来的模型具有较好的鲁棒性,召回率高;并且,对于输入的错误文本中出现的未登录词,如果通过所述预定模型的生成器和判别器判断出该未登录词是正确的,则不需要对该未登录词进行纠正了,从而能够减少对未登录词的纠错,降低了未登录词引起的错误率。
继续参照图1进行说明,在步骤S3中,基于所述错误文本进行遮罩训练,从而对所述待训练模型进行文本错误纠正的训练。
具体地,可使用各种支持显式的遮罩训练并且能够输入句子对的、基于Transformer单元的语言模型来对所述待训练模型进行文本错误纠正的训练。例如,BERT模型、RoBERTa模型、ALBERT模型、ELECTRA的生成器等等。
根据本申请的一个实施例,所述步骤S3包括步骤S301。
在步骤S301中,通过将错误文字的位置用遮罩代替,将遮罩后的文本和对应的原始错误文本作为模型的输入,来对所述待训练模型进行遮罩训练。
继续对上述第一示例进行说明,在步骤S301中,通过将错误的位置用遮罩字符‘[MASK]’代替,然后加入原来的文本来构成纠错模型的输入,并进行遮罩预测训练。该纠错模型中用到的公式表示如下:
Xcorrector=[CLS]+Yout+[SEP]+X+[SEP] (3)
hi=BERT(Xcorrector) (4)
h′i=Layernorm(Whhi+bh) (5)
pi=softmax(Eh′i+bE) (6)
对于公式(3),Xcorrector是纠错模型的输入,[CLS]是第一个句子的首位的标志,[SEP]是用于分开两个句子的标志,Yout是基于上述公式(2)得到的输出文本,X是上述公式(1)中输入的错误文本。
对于公式(4),hi表示BERT预训练模型的序列输出。
对于公式(5),Layernorm表示层归一化,h′i表示层归一化后的输出,Wh和bh为模型的训练参数。
对于公式(6),pi表示一个句子中第i个位置的字符的概率输出,,softmax表示归一化指数函数,h′i表示层归一化后的输出,E和bE为模型的训练参数。
并且,上述公式(2)的Yout中的空白(blank)被遮罩字符‘[MASK]’代替。
在步骤S301中将遮罩后的文本“兰州哪有卖路虎_车的”和对应的原始错误文本“兰州哪有卖路虎骑车的”作为模型的输入,来对所述待训练模型进行遮罩训练。
根据一个实施例,所述方法还包括步骤S4和步骤S5。
在步骤S4中,基于所述错误文本和混淆集合来构建新的混淆集合。
优选地,据现有的文本纠错数据集和SIGHAN混淆集合来构建所述新的混淆集合。
在步骤S5中,基于所述新的混淆集合,按照预定的纠正规则来确定被遮罩的错误文字对应的正确文字,从而得到纠正后的文本。
具体地,判断被遮罩的错误文字是否在混淆集合中,如果在混淆集合中,并且预测出来的混淆字的概率又大于第一预定阈值,则取该混淆集合中的字作为该位置最终输出的正确文字;如果预测出来的字小于该第一预定阈值则不选取混淆集合中的字,并按照被遮罩的错误文字不在混淆集合的情况进行处理。
如果被遮罩的错误文字不在混淆集合中,则按照概率输出的大小选取概率最大的字作为候选,如果该字的概率大于第二预定阈值,则选择该字作为该位置最终输出的正确文字,否则把预测后的文本重新放入模型预测,并循环上述过程。如果最终都不能满足要求,则保持原来的字符不变。例如,所述第一预定阈值被设置为0.5,第二预定阈值被设置为0.01。
继续对上述第一示例进行说明,在步骤S4中基于所述错误文本“兰州哪儿有卖路虎骑车的”和SIGHAN13混淆集合来构建新的混淆集合。接着在步骤S5中基于构建的混淆集合,按照预定的纠正规则来确定被遮罩的错误文字“骑”对应的正确文字为“汽”,从而得到纠正后的文本“兰州哪有卖路虎汽车的”。
需要说明的是,上述举例仅为更好地说明本发明的技术方案,而非对本发明的限制,本领域技术人员应该理解,任何基于所述错误文本和混淆集合进行遮罩训练,从而对所述待训练模型进行文本错误纠正的训练的实现方式,均应包含在本发明的范围内。
根据本申请实施例的方法,通过进行检测错误位置和纠正错误位置的训练,来提升待训练模型的纠错能力,从而能够定位错误位置并准确地进行纠错,并且这种两阶段的纠错方式能够容易地和其他一阶段的纠错方法相结合,以降低一阶段方法的过纠率;通过在进行文本错误位置检测的训练中进行预训练和微调,提升了模型的泛化能力,降低了漏检率,使得最终训练出来的模型具有较好的鲁棒性。
图2示出了根据本申请实施例的一种文本纠错装置的结构示意图。
所述文本纠错这种包括文本生成模块1、错误检测模块2和纠错训练模块3。
参照图2,文本生成模块1基于输入文本,生成输入至待训练模型的错误文本。
优选地,所述待训练模型为BERT模型。
其中,文本生成模块1生成输入至待训练模型的错误文本的方式包括但不限于以下至少任一种:
1)通过语音识别生成错误文本;具体地,通过各种语音识别工具来将输入文本对应的语音数据转换为文本,从而得到包含错别字的错误文本;例如,使用ST(SpeechTransformer)模型来进行语音识别;
2)通过光学字符识别(Optical Character Recognition,OCR)生成错误文本;具体地,通过各种OCR工具来将输入文本对应的图片数据转换为文本,从而得到包含错别字的错误文本。
其中,所述文本生成模块1包括处理模块。
处理模块对输入文本进行处理,以基于处理后的输入文本生成错误文本。
其中,处理模块对输入文本进行的处理包括对文本进行分句。
优选地,处理模块对输入文本进行的处理包括但不限于以下至少任一项:
1)对文本进行分句;
2)去除文本中的语气词;
3)去除文本中的标点符号;
4)如果文本包含英文,将文本中的大写字母转换为对应的小写字母;
5)去除长度小于预定阈值的文本。
错误检测模块2基于所述错误文本进行预训练和微调,从而对所述待训练模型进行文本错误位置检测的训练。
具体地,可使用各种支持序列标注的基于Transformer单元的语言模型来对所述待训练模型进行文本错误位置检测的训练。
根据一个实施例,所述错误检测模块2包括预训练模块和微调模块。
预训练模块通过预定模型的生成器和判别器来进行对抗预训练。
其中,所述预定模型包括各种支持Transformer单元的生成器(Generator)和判别器(Discriminator)对抗预训练的模型。优选地,所述预定模型为ELECTRA模型。
其中,所述生成器用于对文本中的部分单词进行预测和替换。所述判别器用于判断文本中的每个单词是否被替换。
预训练完成后,微调模块将判别器加入全连接层,并通过标签平滑的正则化方法来进行微调。
根据本申请的第一示例,预训练模块采用ELECTRA模型的生成器和判别器对抗预训练的方式来进行对抗预训练。其中,生成器和判别器均由BERT组成。生成器的输入是被遮罩15%的正确文本,生成器预测出被遮罩的部分,然后判别器判断每个单词的位置是否被遮罩。如果该位置被遮罩了,则输出为“1”,否则,输出为“0”。加载了ELECTRA base中文预训练模型来进行预训练。
具体地,本示例使用检测器来进行文本错误位置检测。并且,该检测器有两部分组成,一个部分是ELECTRA的判别器,加载了上一步预训练后的ELECTRA的判别器的参数,另一部分是分类器。该检测器进行微调训练。。并且,该用于文本错误位置检测的检测器的公式表示如以上公式(1)和(2)。
预训练完成后,微调模块将判别器加入全连接层,并通过标签平滑的正则化方法来进行数据微调。对于输入的错误文本中的每个字,如果是错误的字,则输出“1”,否则输出“0”。
假设错误文本为“兰州哪有卖路虎骑车的”,基于上述公式(1)和对其进行错误位置检测,相应的输出Y为“兰0州0哪0有0卖0路0虎0骑1车0的0”。基于上述公式(2)进行转换后输出的文本Yout为“兰州哪有卖路虎_车的”。
根据本实施例,通过在预训练过程中加入对抗训练的方式,进一步提升了错误位置检测的准确性。并且,本实施例通过预训练和微调两个过程,提升了模型的泛化能力,使得最终训练出来的模型具有较好的鲁棒性,召回率高;并且,对于输入的错误文本中出现的未登录词,如果通过所述预定模型的生成器和判别器判断出该未登录词是正确的,则不需要对该未登录词进行纠正了,从而能够减少对未登录词的纠错,降低了未登录词引起的错误率。
继续参照图2进行说明,纠错训练模块3基于所述错误文本和混淆集合进行遮罩训练,从而对所述待训练模型进行文本错误纠正的训练。
具体地,可使用各种支持显式的遮罩训练并且能够输入句子对的、基于Transformer单元的语言模型来对所述待训练模型进行文本错误纠正的训练。例如,BERT模型、RoBERTa模型、ALBERT模型、ELECTRA的生成器等等。
根据本申请的一个实施例,所述纠错训练模块3包括遮罩训练模块。
遮罩训练模块通过将错误文字的位置用遮罩代替,将遮罩后的文本和对应的原始错误文本作为模型的输入,来对所述待训练模型进行遮罩训练。
继续对上述第一示例进行说明,遮罩训练模块将遮罩后的文本“兰州哪有卖路虎_车的”和对应的原始错误文本“兰州哪有卖路虎骑车的”作为模型的输入,来对所述待训练模型进行遮罩训练。
根据一个实施例,所述文本纠错遮罩还包括集合构建模块和后处理模块。
集合构建模块基于所述错误文本和混淆集合来构建新的混淆集合。
优选地,据现有的文本纠错数据集和SIGHAN混淆集合来构建所述新的混淆集合。
后处理模块基于新的混淆集合,按照预定的纠正规则来确定被遮罩的错误文字对应的正确文字,从而得到纠正后的文本。
具体地,后处理模块判断被遮罩的错误文字是否在混淆集合中,如果在混淆集合中,并且预测出来的混淆字的概率又大于第一预定阈值,则取该混淆集合中的字作为该位置最终输出的正确文字;如果预测出来的字小于该第一预定阈值则不选取混淆集合中的字,并按照被遮罩的错误文字不在混淆集合的情况进行处理。
如果被遮罩的错误文字不在混淆集合中,则按照概率输出的大小选取概率最大的字作为候选,如果该字的概率大于第二预定阈值,则选择该字作为该位置最终输出的正确文字,否则把预测后的文本重新放入模型预测,并循环上述过程。如果最终都不能满足要求,则保持原来的字符不变。例如,所述第一预定阈值被设置为0.5,第二预定阈值被设置为0.01。
继续对上述第一示例进行说明,集合构建模块基于所述错误文本“兰州哪儿有卖路虎骑车的”和SIGHAN13混淆集合来构建新的混淆集合。接着,后处理模块基于构建的混淆集合,按照预定的纠正规则来确定被遮罩的错误文字“骑”对应的正确文字为“汽”,从而得到纠正后的文本“兰州哪有卖路虎汽车的”。
需要说明的是,上述举例仅为更好地说明本发明的技术方案,而非对本发明的限制,本领域技术人员应该理解,任何基于所述错误文本和混淆集合进行遮罩训练,从而对所述待训练模型进行文本错误纠正的训练的实现方式,均应包含在本发明的范围内。
根据本申请实施例的方案,通过进行检测错误位置和纠正错误位置的训练,来提升待训练模型的纠错能力,从而能够定位错误位置并准确地进行纠错,并且这种两阶段的纠错方式能够容易地和其他一阶段的纠错方法相结合,以降低一阶段方法的过纠率;通过在进行文本错误位置检测的训练中进行预训练和微调,提升了模型的泛化能力,降低了漏检率,使得最终训练出来的模型具有较好的鲁棒性。
本发明的软件程序可以通过处理器执行以实现上文所述步骤或功能。同样地,本发明的软件程序(包括相关的数据结构)可以被存储到计算机可读记录介质中,例如,RAM存储器,磁或光驱动器或软磁盘及类似设备。另外,本发明的一些步骤或功能可采用硬件来实现,例如,作为与处理器配合从而执行各个功能或步骤的电路。
另外,本发明的一部分可被应用为计算机程序产品,例如计算机程序指令,当其被计算机执行时,通过该计算机的操作,可以调用或提供根据本发明的方法和/或技术方案。而调用本发明的方法的程序指令,可能被存储在固定的或可移动的记录介质中,和/或通过广播或其他信号承载媒体中的数据流而被传输,和/或被存储在根据所述程序指令运行的计算机设备的工作存储器中。在此,根据本发明的一个实施例包括一个装置,该装置包括用于存储计算机程序指令的存储器和用于执行程序指令的处理器,其中,当该计算机程序指令被该处理器执行时,触发该装置运行基于前述根据本发明的多个实施例的方法和/或技术方案。
对于本领域技术人员而言,显然本发明不限于上述示范性实施例的细节,而且在不背离本发明的精神或基本特征的情况下,能够以其他的具体形式实现本发明。因此,无论从哪一点来看,均应将实施例看作是示范性的,而且是非限制性的,本发明的范围由所附权利要求而不是上述说明限定,因此旨在将落在权利要求的等同要件的含义和范围内的所有变化涵括在本发明内。不应将权利要求中的任何附图标记视为限制所涉及的权利要求。此外,显然“包括”一词不排除其他单元或步骤,单数不排除复数。系统权利要求中陈述的多个单元或装置也可以由一个单元或装置通过软件或者硬件来实现。第一,第二等词语用来表示名称,而并不表示任何特定的顺序。
Claims (13)
1.一种文本纠错方法,其中,所述方法包括以下步骤:
基于输入文本,生成输入至待训练模型的错误文本;
基于所述错误文本进行预训练和微调,从而对所述待训练模型进行文本错误位置检测的训练;
基于所述错误文本进行遮罩训练,从而对所述待训练模型进行文本错误纠正的训练。
2.根据权利要求1所述的方法,其中,所述待训练模型为BERT模型。
3.根据权利要求1所述的方法,其中,基于输入文本,生成输入至待训练模型的错误文本包括:
基于输入文本,通过语音识别或OCR模型生成错误文本。
4.根据权利要求1至3中任一项所述的方法,其中,基于输入文本,生成输入至待训练模型的错误文本包括:
对输入文本进行处理,以基于处理后的输入文本生成错误文本。
5.根据权利要求1所述的方法,其中,所述基于所述错误文本进行预训练,从而对所述待训练模型进行文本错误位置检测的训练包括:
通过预定模型的生成器和判别器来进行对抗预训练;
预训练完成后,将判别器加入全连接层,并通过标签平滑的正则化方法来进行数据微调。
6.根据权利要求1所述的方法,其中,所述基于所述错误文本进行遮罩训练,从而对所述待训练模型进行文本错误纠正的训练包括:
通过将错误文字的位置用遮罩代替,将遮罩后的文本和对应的原始错误文本作为模型的输入,来对所述待训练模型进行遮罩训练。
7.根根据权利要求1所述的方法,其中,所述方法包括:
基于所述错误文本和混淆集合来构建新的混淆集合;
基于所述新的混淆集合,按照预定的纠正规则来确定被遮罩的错误文字对应的正确文字,从而得到纠正后的文本。
8.一种文本纠错装置,其中,所述文本纠错装置包括:
文本生成模块,用于基于输入文本,生成输入至待训练模型的错误文本;
错误检测模块,用于基于所述错误文本进行预训练和微调,从而对所述待训练模型进行文本错误位置检测的训练;
纠错训练模块,用于基于所述错误文本进行遮罩训练,从而对所述待训练模型进行文本错误纠正的训练。
9.根据权利要求8所述的文本纠错装置,其中,所述错误检测模块包括:
预训练模块,用于通过预定模型的生成器和判别器来进行对抗预训练;
微调模块,用于预训练完成后,将判别器加入全连接层,并通过标签平滑的正则化方法来进行数据微调。
10.根据权利要求8所述的文本纠错装置,其中,所述纠错训练模块包括:
遮罩训练模块,用于通过将错误文字的位置用遮罩代替,将遮罩后的文本和对应的原始错误文本作为模型的输入,来对所述待训练模型进行遮罩训练。
11.根据权利要求8所述的文本纠错装置,其中,所述文本纠错遮罩包括:
集合构建模块,用于基于所述错误文本和混淆集合来构建新的混淆集合;
后处理模块,用于基于所述新的混淆集合,按照预定的纠正规则来确定被遮罩的错误文字对应的正确文字,从而得到纠正后的文本。
12.一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述程序时实现如权利要求1至7中任一所述的方法。
13.一种计算机可读的存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行时实现如权利要求1至7中任一所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011261361.3A CN112464650A (zh) | 2020-11-12 | 2020-11-12 | 一种文本纠错方法和装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011261361.3A CN112464650A (zh) | 2020-11-12 | 2020-11-12 | 一种文本纠错方法和装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN112464650A true CN112464650A (zh) | 2021-03-09 |
Family
ID=74825551
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011261361.3A Pending CN112464650A (zh) | 2020-11-12 | 2020-11-12 | 一种文本纠错方法和装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112464650A (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114510925A (zh) * | 2022-01-25 | 2022-05-17 | 森纵艾数(北京)科技有限公司 | 一种中文文本纠错方法、系统、终端设备及存储介质 |
CN116662583A (zh) * | 2023-08-01 | 2023-08-29 | 腾讯科技(深圳)有限公司 | 一种文本生成方法、地点检索方法及相关装置 |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1387650A (zh) * | 1999-11-05 | 2002-12-25 | 微软公司 | 对拼写、打字和转换错误具有容错能力的将一种文本形式转换为另一种文本形式的语言输入体系结构 |
JP2005141863A (ja) * | 2003-11-07 | 2005-06-02 | Sharp Corp | トラッキング誤差信号補正装置、トラッキング誤差信号補正方法、および光ディスク装置 |
US20090030671A1 (en) * | 2007-07-27 | 2009-01-29 | Electronics And Telecommunications Research Institute | Machine translation method for PDF file |
CN109753636A (zh) * | 2017-11-01 | 2019-05-14 | 阿里巴巴集团控股有限公司 | 机器处理及文本纠错方法和装置、计算设备以及存储介质 |
CN109784643A (zh) * | 2018-12-14 | 2019-05-21 | 新疆维吾尔自治区产品质量监督检验研究院 | 一种双随机管理系统及方法、信息数据处理终端 |
CN110263883A (zh) * | 2019-04-22 | 2019-09-20 | 国网山东省电力公司威海供电公司 | 基于物联网技术的智能加密取样送检方法及系统 |
CN110281244A (zh) * | 2019-07-09 | 2019-09-27 | 江苏安方电力科技有限公司 | 一种电力物资自动封样系统 |
CN110489760A (zh) * | 2019-09-17 | 2019-11-22 | 达而观信息科技(上海)有限公司 | 基于深度神经网络文本自动校对方法及装置 |
-
2020
- 2020-11-12 CN CN202011261361.3A patent/CN112464650A/zh active Pending
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1387650A (zh) * | 1999-11-05 | 2002-12-25 | 微软公司 | 对拼写、打字和转换错误具有容错能力的将一种文本形式转换为另一种文本形式的语言输入体系结构 |
JP2005141863A (ja) * | 2003-11-07 | 2005-06-02 | Sharp Corp | トラッキング誤差信号補正装置、トラッキング誤差信号補正方法、および光ディスク装置 |
US20090030671A1 (en) * | 2007-07-27 | 2009-01-29 | Electronics And Telecommunications Research Institute | Machine translation method for PDF file |
CN109753636A (zh) * | 2017-11-01 | 2019-05-14 | 阿里巴巴集团控股有限公司 | 机器处理及文本纠错方法和装置、计算设备以及存储介质 |
CN109784643A (zh) * | 2018-12-14 | 2019-05-21 | 新疆维吾尔自治区产品质量监督检验研究院 | 一种双随机管理系统及方法、信息数据处理终端 |
CN110263883A (zh) * | 2019-04-22 | 2019-09-20 | 国网山东省电力公司威海供电公司 | 基于物联网技术的智能加密取样送检方法及系统 |
CN110281244A (zh) * | 2019-07-09 | 2019-09-27 | 江苏安方电力科技有限公司 | 一种电力物资自动封样系统 |
CN110489760A (zh) * | 2019-09-17 | 2019-11-22 | 达而观信息科技(上海)有限公司 | 基于深度神经网络文本自动校对方法及装置 |
Non-Patent Citations (3)
Title |
---|
SHAOHUA ZHANG1: "Spelling Error Correction with Soft-Masked BERT", 《ARXIV》, pages 1 - 9 * |
ZHEDONG ZHENG: "Unlabeled Samples Generated by GAN Improve the Person Re-identification Baseline in vitro", 《2017 IEEE INTERNATIONAL CONFERENCE ON COMPUTER VISION (ICCV)》, pages 3774 * |
龚永罡;汪昕宇;付俊英;王蕴琪;: "面向新媒体领域的错别字自动校对", 信息技术与信息化, no. 10, pages 78 - 80 * |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114510925A (zh) * | 2022-01-25 | 2022-05-17 | 森纵艾数(北京)科技有限公司 | 一种中文文本纠错方法、系统、终端设备及存储介质 |
CN116662583A (zh) * | 2023-08-01 | 2023-08-29 | 腾讯科技(深圳)有限公司 | 一种文本生成方法、地点检索方法及相关装置 |
CN116662583B (zh) * | 2023-08-01 | 2023-11-10 | 腾讯科技(深圳)有限公司 | 一种文本生成方法、地点检索方法及相关装置 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110196894B (zh) | 语言模型的训练方法和预测方法 | |
US11170257B2 (en) | Image captioning with weakly-supervised attention penalty | |
EP3582114A1 (en) | Method of training a descriptive text generating model, and method and apparatus for generating descriptive text | |
CN101730898B (zh) | 采用神经网络的手写识别 | |
CN112464650A (zh) | 一种文本纠错方法和装置 | |
CN110209802B (zh) | 一种提取摘要文本的方法及装置 | |
CN110390110B (zh) | 用于语义匹配的预训练生成句子向量的方法和装置 | |
CN114386371B (zh) | 中文拼写纠错方法、系统、设备及存储介质 | |
CN111753530B (zh) | 一种语句处理方法、装置、设备及介质 | |
CN111460793A (zh) | 纠错方法、装置、设备及存储介质 | |
CN112966476B (zh) | 文本处理方法、装置、电子设备及存储介质 | |
JP7155625B2 (ja) | 検査装置、検査方法、プログラム及び学習装置 | |
CN110991175A (zh) | 多模态下的文本生成方法、系统、设备及存储介质 | |
CN111814479A (zh) | 一种企业简称生成及其模型的训练方法及装置 | |
JP6846666B2 (ja) | 翻訳文生成方法、翻訳文生成装置及び翻訳文生成プログラム | |
CN117407507A (zh) | 基于大语言模型的事件处理方法、装置、设备及介质 | |
CN112749551A (zh) | 文本纠错方法、装置、设备及可读存储介质 | |
WO2020166125A1 (ja) | 翻訳用データ生成システム | |
CN110569030B (zh) | 代码推荐方法及装置 | |
CN116187304A (zh) | 一种基于改进bert的自动文本纠错算法及系统 | |
CN111460224A (zh) | 评论数据的质量标注方法、装置、设备及存储介质 | |
JP6782944B2 (ja) | 情報処理装置、情報処理方法、およびプログラム | |
CN115689603A (zh) | 用户反馈信息收集方法、装置及用户反馈系统 | |
JP2018077677A (ja) | 文字列変換装置、モデル学習装置、方法、及びプログラム | |
CN115759087B (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 |