1.本技术涉及文本处理技术领域,特别涉及一种语句处理方法。本技术同时涉及一种语句处理装置、一种计算设备,以及一种计算机可读存储介质。
背景技术:
2.随着互联网技术的发展,各种类型的文档都开始数据化,而文档纠错在各个场景中都是必不可少的一个环节,如在文章发布前,档案存储前,发送邮件前,都会涉及到对文档中文字进行纠错的功能,以此为基础对文档中的错别字进行识别,并通过对其修改的方式保证文档内容的正确性和连贯性。然而现有技术中在对文档中的错别字进行识别时,通常都是采用计算候选句子困惑度的方式,来对具有错别字的句子直接进行替换,以达到避免错别字破坏文档完整性的问题。然而这种方式并未考虑原句的信息,从用户的角度来讲无法保证纠错任务的准确率,候选句子出现概率更高并不能说明原句就一定是错的,因此亟需一种有效的方案以解决上述问题。
技术实现要素:
3.有鉴于此,本技术实施例提供了一种语句处理方法,以解决现有技术中存在的技术缺陷。本技术实施例同时提供了一种语句处理装置,一种计算设备,以及一种计算机可读存储介质。
4.根据本技术实施例的第一方面,提供了一种语句处理方法,包括:
5.获取包含错别字的待纠错语句;
6.确定所述错别字对应的候选字,并基于所述候选字和所述待纠错语句生成候选语句;
7.构建所述候选语句对应的前向语句特征和后向语句特征;
8.将所述前向语句特征和所述后向语句特征输入至排序模块进行处理,根据处理结果确定所述待纠错语句对应的替换语句。
9.根据本技术实施例的第二方面,提供了一种语句处理装置,包括:
10.获取模块,被配置为获取包含错别字的待纠错语句;
11.确定模块,被配置为确定所述错别字对应的候选字,并基于所述候选字和所述待纠错语句生成候选语句;
12.构建模块,被配置为构建所述候选语句对应的前向语句特征和后向语句特征;
13.处理模块,被配置为将所述前向语句特征和所述后向语句特征输入至排序模块进行处理,根据处理结果确定所述待纠错语句对应的替换语句。
14.根据本技术实施例的第三方面,提供了一种计算设备,包括:
15.存储器和处理器;
16.所述存储器用于存储计算机可执行指令,所述处理器执行所述计算机可执行指令时实现所述语句处理方法的步骤。
17.根据本技术实施例的第四方面,提供了一种计算机可读存储介质,其存储有计算机可执行指令,该指令被处理器执行时实现所述语句处理方法的步骤。
18.根据本技术实施例的第五方面,提供了一种芯片,其存储有计算机程序,该计算机程序被芯片执行时实现所述语句处理方法的步骤。
19.本技术提供的语句处理方法,在获取到包含错别字的待纠错语句后,可以先确定错别字对应的候选字,并以此为基础结合待纠错语句生成候选语句,之后结合候选语句的整体特征构建前向语句特征和后向语句特征,并将其输入至排序模型进行处理,即可根据处理结果得到纠错较为精准的替换语句,实现在对待纠错语句进行纠错时,可以充分融合前后文结构与原始语句的信息,使得排序模型可以输出更加可靠的预测结果,从而保证纠错的精准度。
附图说明
20.图1是本技术一实施例提供的一种语句处理方法的流程图;
21.图2是本技术一实施例提供的一种语句处理方法的示意图;
22.图3是本技术一实施例提供的一种应用于文档纠错场景中的语句处理方法的处理流程图;
23.图4是本技术一实施例提供的一种语句处理装置的结构示意图;
24.图5是本技术一实施例提供的一种计算设备的结构框图。
具体实施方式
25.在下面的描述中阐述了很多具体细节以便于充分理解本技术。但是本技术能够以很多不同于在此描述的其它方式来实施,本领域技术人员可以在不违背本技术内涵的情况下做类似推广,因此本技术不受下面公开的具体实施的限制。
26.在本技术一个或多个实施例中使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本技术一个或多个实施例。在本技术一个或多个实施例和所附权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义。还应当理解,本技术一个或多个实施例中使用的术语“和/或”是指并包含一个或多个相关联的列出项目的任何或所有可能组合。
27.应当理解,尽管在本技术一个或多个实施例中可能采用术语第一、第二等来描述各种信息,但这些信息不应限于这些术语。这些术语仅用来将同一类型的信息彼此区分开。例如,在不脱离本技术一个或多个实施例范围的情况下,第一也可以被称为第二,类似地,第二也可以被称为第一。
28.首先,对本发明一个或多个实施例涉及的名词术语进行解释。
29.统计语言模型:npl领域的基础模型,可用于判断一个句子出现的概率。
30.nlp:(natural language processing,自然语言处理技术)是计算机科学领域与人工智能领域中的一个重要方向,它研究人与计算机之间用自然语言进行有效通信的理论和方法。融语言学、计算机科学、数学等于一体的科学,旨在从文本数据中提取信息,目的是让计算机处理或“理解”自然语言,以执行自动翻译、文本分类和情感分析等。
31.electra:一种预训练的掩码语言模型(mlm),模型结构与bert一致,但训练过程与
bert存在一定的区别;其中,mlm作为生成器,其作用是为自动选择masked tokens提供一种有效的方法,实现electra可以快速学习到相应的预测能力。
32.gpt2:一种预训练的语言模型(lm),与统计语言模型一样适合判断一个句子出现的概率。
33.混淆集:纠错任务中用于寻找错字的候选集,包含每个字的同音字、形近字等。
34.困惑度:语言模型评价句子概率的指标,它的值越小,表明句子出现的概率越大。
35.bert模型:(bidirectionalencoder representations from transformer),是基于transformer的双向编码器表征,bert模型的根基就是transformer,来源于attention is all you need。其中双向的意思表示它在处理一个词的时候,能考虑到该词前面和后面单词的信息,从而获取上下文的语义。
36.n-gram模型:一种基于统计语言模型的算法。它的基本思想是将文本里面的内容按照字节进行大小为n的滑动窗口操作,形成了长度是n的字节片段序列。每一个字节片段称为gram,对所有gram的出现频度进行统计,并且按照事先设定好的阈值进行过滤,形成关键gram列表,也就是这个文本的向量特征空间,列表中的每一种gram就是一个特征向量维度。该模型基于这样一种假设,第n个词的出现只与前面n-1个词相关,而与其它任何词都不相关,整句的概率就是各个词出现概率的乘积。这些概率可以通过直接从语料中统计n个词同时出现的次数得到。
37.在本技术中,提供了一种语句处理方法。本技术同时涉及一种语句处理装置、一种计算设备,以及一种计算机可读存储介质,在下面的实施例中逐一进行详细说明。
38.实际应用中,在对语句进行纠错时,一般方案都是使用一个语言模型对整个候选句子进行一个困惑度的计算,这样可以计算候选句子的概率。但是这样会失去原句的信息,从用户角度看,纠错任务应当保证准确率,候选句子的出现概率更高并不能说明原句就一定是错的,所以在计算候选句子概率时应当考虑原句的信息。此外,一般的语言模型,比如gpt2只会从前往后进行下一个字的预测,只能计算前向句子的困惑度,而纠错任务中的错误部分只占少数,其上下文语句都对候选排序有一定帮助,因此仅考虑前向句子会导致有效信息遗漏,实际应用中应当考虑下文的语句信息。
39.有鉴于此,本技术提供的语句处理方法,在获取到包含错别字的待纠错语句后,可以先确定错别字对应的候选字,并以此为基础结合待纠错语句生成候选语句,之后结合候选语句的整体特征构建前向语句特征和后向语句特征,并将其输入至排序模型进行处理,即可根据处理结果得到纠错较为精准的替换语句,实现在对待纠错语句进行纠错时,可以充分融合前后文结构与原始语句的信息,使得排序模型可以输出更加可靠的预测结果,从而保证纠错的精准度。
40.图1示出了根据本技术一实施例提供的一种语句处理方法的流程图,具体包括以下步骤:
41.步骤s102,获取包含错别字的待纠错语句。
42.具体的,包含错别字的待纠错语句具体是指任意领域中存在书写错误或输入错误字符的语句,如包含错别字的待发表文章,包含错别字的档案,包含错别字的邮件等;且待纠错语句为已经上传至服务器需要进行纠错的语句。相应的,错别字具体是指形近错别字或形音错别字等,即待纠错语句中需要进行纠错的字符。
43.进一步的,由于不同场景下所处理的待纠错语句可能以不同的形式被获取到,且待纠错语句所属的文章或者文档可能包含较多的内容,如果采用以文章或文档为单位进行纠错,将会消耗较多的时间,因此可以通过模型检错的方式实现定位包含错别字的待纠错语句,本实施例中,具体实现方式如下步骤s102-2至步骤s102-6:
44.步骤s102-2获取待处理文本,并基于所述待处理文本构建字符序列;
45.步骤s102-4,将所述字符序列输入至错别字检测模型进行处理,获得所述待处理文本中包含的错别字;
46.步骤s102-6,在所述待处理文本中选择包含所述错别字的语句作为所述待纠错语句。
47.具体的,待处理文本具体是指需要进行纠错的文本,待处理文本可以是一篇文章,一本书,一份档案或者一篇作文等。相应的,字符序列具体是指待处理文本中包含的全部字符构建的序列,以用于错别字检测模型实现以字符为单位进行错别字的定位。
48.其中,所述错别字检测模型可以采用electra模型架构,实现利用生成器和判别器的构思搭建。即训练过程中,生成器部分为mlm,结构与bert模型相似;利用electra模型对语句中任意一个词进行预测,以此确定该词是否包含错别字。也就是说,通过将被选定的词替换为新的词,若替换的词不是原词,则打上被替换的标签,语句的其他词则打上没有被替换的标签;之后判别器部分是训练一个判别模型对所有位置的词进行替换识别,此时electra模型将对语句中所有位置的词进行预测,若通过预测结果分类出某个位置的字符是属于被替换的,则确定该位置对应的字符为错别字;若预测结果分类出某个位置的字符不属于被替换的,则确定该位置对应的字符不是错别字;以此类推,通过对语句中的每个词都采用上述处理,即可遍历出语句中的错别字。也就是说,在应用阶段,错别字检测模型能够对字符序列中每个位置的字符进行分类,以通过分类结果确定每个字符是否为错别字。
49.此外,所述错别字检测模型还可以使用n-gram模型,在错别字检测场景下,通过该模型判断语句的语义合理概率,以此来反映语句合理度;即n-gram模型会对语句进行局部分析,计算语句中的字单元与相邻的字单元进行组合后,组合的词单元相对于语句的语义合理概率,从而得出各个词单元对应的语义合理概率是否满足阈值,若不满足阈值,说明组合的词单元相对于语句是不合理的,则选择低于阈值的字单元作为错别字即可。实际应用中,错别字检测模型可以根据实际需求进行选择,本实施例在此不作任何限定。
50.基于此,当获取到待处理文本之后,为了能够提高纠错效率,此时可以基于待处理文本构建字符序列,之后将字符序列输入至错别字检测模型进行处理,并获得错别字检测模型输出的待处理文本中包含的错别字。而由于待处理文本中包含的语句较多,因此可以选择包含错别字的语句作为待纠错语句,以用于后续的纠错处理操作。
51.需要说明的是,为了能够在应用阶段准确的在语句中定位错别字,需要对错别字检测模型进行充分的训练才能够完成。即:在模型训练阶段,在预设的样本集中获取样本语句,以及样本语句对应的样本错别字;之后将样本语句输入至初始错别字检测模型进行处理,获得模型输出的样本语句中的预测错别字;之后再结合预测错别字和样本错别字对初始错别字检测模型进行调参,直至获得满足训练停止条件的错别字检测模型即可。其中,训练停止条件可以是迭代次数或者损失值比较结果,本实施例在此不作任何限定。
52.举例说明,获取用户上传的待处理文本为一篇待发表的文章,为了避免发表后出
现错别字影响浏览者的体验,可以对其进行检错。基于此,根据用户上传的待处理文本构建由各个字符组成的字符序列,之后将其输入至electra模型进行处理,根据处理结果确定待处理文本中包含的错别字为“甲”,之后在待处理文本中定位包含错别字“甲”的语句,确定该语句为“在绿油油的甲野上”,此时将其作为待纠错语句,以用于后续进行修正。
53.综上,通过结合错别字检测模型完成错别字的识别,不仅可以降低纠错语句的体积,还能够有效的提高后续纠错的效率。
54.步骤s104,确定所述错别字对应的候选字,并基于所述候选字和所述待纠错语句生成候选语句。
55.具体的,在上述获取到包含错别字的待纠错语句后,进一步的,为了能够精准的完成纠错任务,实现对待纠错语句进行替换,此时可以确定错别字对应的多个候选字,以实现在多个候选字中筛选出正确字对错别字进行替换。而在此过程中,如何精准的从多个候选字中筛选出正确字是亟需解决的问题。本实施例提供的语句处理方法为了能够提高筛选正确字的效率,将结合每个候选字和待纠错语句构建候选语句,以通过后续结合上下文信息的方式对每个候选字作为正确字的概率进行检测,从而筛选出符合待纠错语句语义的正确字。
56.其中,候选字具体是指多个可能作为正确字对错别字进行替换的字符,相应的,候选语句具体是指基于多个候选字分别对待纠错语句中的错别字进行替换后得到的多个语句,以用于后续结合每个错别字的上下文信息分析候选字是正确字的概率。
57.进一步的,在确定错别字对应的候选字的过程中,由于在不同场景下能够替换错别字的其他字符较多,如果将全部字符都确定为候选字,再基于全部字符进行筛选正确字,可能会消耗较多的筛选时间,因此为了能够在较短的时间内快速的实现替换语句的确定,可以采用策略和模型结合的方式实现候选字的确定,本实施例中,具体实现方式如步骤s1042至步骤s1044:
58.步骤s1042,将所述错别字输入至召回模型进行处理,获得所述错别字对应的多个初始候选字;
59.步骤s1044,基于预设的筛选策略,在所述多个初始候选字中筛选出所述错别字对应的所述候选字。
60.具体的,召回模型具体是指使用n-gram语言模型和bert掩码语言模型组成的候选字召回模型,实现从大量的字符中召回可能作为错别字对应的初始候选字;相应的,初始候选字具体是指与错别字较为相近的候选字,即候选字召回模型从大量的字符中召回与候选字较为相近的字作为初始候选字;其中,与候选字相近的字符可以是指与候选字形相近和/或音相近的字符;预设的筛选策略具体是指对多个初始候选字进行筛选的策略,以实现在多个初始候选字中筛选出设定数量能够作为候选字的字符。
61.其中,预设的筛选策略可以是计算错别字与每个初始候选字的相似度,以选择相似度较高的设定数量的初始候选字作为错别字对应的候选字,设定数量可以根据实际需求进行选择,如5,8,10等数值,本实施例在此不作任何限定;还可以是初步筛选部分初始候选字作为中间候选字,初步筛选形式可以是随机筛选,或间隔特定数量的字符筛选,或对相邻的特定数量的字符集中筛选等形式;再结合策略中预设的混淆集过滤中间候选字,即通过混淆集过滤掉中间候选字中作为正确候选字的概率较低的候选字,以得到设定数量的候选
字。其中,预设的混淆集具体是指包含每个候选字的形近字和/或同音字的集合。实际应用中,预设的筛选策略可以根据实际应用场景设定,本实施例在此不作任何限定。
62.基于此,在确定错别字之后,可以将错别字输入至召回模型进行处理,以获得召回模型输出的错别字对应的多个初始候选字,之后再基于预设的筛选策略对多个初始候选字进行筛选,即可根据筛选结果获得错别字对应的候选字,以用于后续进行替换语句的确定。
63.此外,为了能够保证召回模型可以精准的完成错别字对应的候选字的确定,需要在训练阶段对召回模型进行充分的训练。即:在预先构建样本错别字与样本错别字相关联的样本候选字之间的关系,之后使得召回模型充分学习该关联关系,实现在模型应用阶段可以完成精准的预测。
64.综上,通过筛选策略和召回模型结合的方式对错别字的候选字进行确定,不仅可以保证候选字的数量,还能够有效减少纠错任务的处理时间,以实现快速的完成替换语句的确定。
65.进一步的,在基于预设的筛选策略进行候选字筛选时,为了能够提高筛选候选字的可解释性,且降低纠错任务的处理时间,可以结合候选字混淆集进行候选字过滤;也就是说,为了能够在初步筛选部分剔除冗余的候选字,减少后续计算成本,可以通过预设的筛选策略过滤掉部分候选字,本实施例中,具体实现方式如步骤1044-2:
66.步骤1044-2,根据所述筛选策略确定筛选比例以及候选字混淆集;基于所述筛选比例在所述多个初始候选字中筛选设定数量的中间候选字;利用所述候选字混淆集对设定数量的所述中间候选字进行过滤,根据过滤结果获得所述候选字。
67.具体的,候选字混淆集具体是指包含每个初始候选字的形近字和同音字的集合,用于过滤掉中间候选字中作为正确字概率较低的候选字;相应的,中间候选字具体是指从多个初始候选字中筛选出的设定数量的初始候选字,且中间候选字的数量可以根据实际应用场景进行设定,本实施例在此不作任何限定。
68.其中,基于候选字混淆集对中间候选字进行过滤,具体是指将在候选字混淆集中确定错别字对应的同音字和/或形近字集合,之后将各个中间候选字与该集合中的字进行比对,剔除设定数量的中间候选字,即根据比对结果选择与中间候选字相似度小于预设阈值的字符,作为设定数量的中间候选字并进行删除;在此过程中,若小于预设阈值的中间候选字数量等于设定数量,则将这部分中间候选字作为需要删除的中间候选字即可;若小于预设阈值的中间候选字数量小于设定数量,则将小于预设阈值的这部分中间候选字全部作为需要删除的中间候选字;若小于预设阈值的中间候选字数量大于设定数量,则可以在这部分中间候选字中随机选择设定数量的中间候选字作为需要删除的中间候选字,或者按照相似度从小到大的顺序选择设定数量的中间候选字作为需要删除的中间候选字;具体实施时,可以根据实际需求进行选择,本实施例在此不作任何限定。此外,还可以直接按照相似度从小到大的顺序选择设定数量的中间候选字作为需要删除的中间候选字。最后将剩余的中间候选字作为错别字对应的候选字即可。
69.基于此,可以根据预设的筛选策略确定筛选比例以及错别字对应的候选字混淆集,之后根据筛选比例从大量的初始候选字中筛选出设定数量的中间候选字,以初步过滤掉偏离正确字的候选字,即:按照设定数量与全部初始候选字的数量的比例,在全部初始候选字中选择对应设定数量的初始候选字作为中间候选字,全部初始候选字中除中间候选字
外的其他初始候选字直接删除即可,以完成初步过滤部分的处理操作;之后再利用候选字混淆集对中间候选字进行过滤,实现深度过滤掉偏离正确字的候选字,最后将剩余的中间候选字作为错别字的候选字即可,以用于后续构建候选语句。
70.综上,通过结合召回模型和候选字混淆集完成候选字的过滤,可以有效的减少候选字的数量,实现提高构建候选语句的效率,从而进一步提高纠错任务的处理效率。
71.更进一步的,在通过候选字混淆集对设定数量的中间候选字进行过滤时,为了能够提高剩余的候选字的质量,即保留接近正确字的候选字,可以通过计算编辑操作次数的方式完成,本实施例中,具体实现如步骤s1044-4:
72.步骤s1044-4,计算所述候选字混淆集中包含的混淆字与每个中间候选字的编辑操作次数;根据所述编辑操作次数对设定数量的所述中间候选字进行过滤,根据过滤结果获得所述候选字。
73.具体的,编辑操作次数具体是指字符之间最少可编辑次数,用于表征两个字符之间的相似程度,编辑操作次数越小表明两个字符之间的相似度越高,反之编辑操作次数越大表明两个字符之间的相似度越低;其中,最少可编辑次数是指从一个字符触发,进行修改、删除和位置移动等操作,变化为另一个字符的编辑次数。
74.基于此,在确定错别字对应的候选字混淆集后,可以计算每个中间候选字与候选字混淆集中的各个混淆字之间的编辑操作次数,之后根据编辑操作次数对设定数量的中间候选字进行过滤,也就是说,剔除设定数量的中间候选字中编辑操作次数较大的候选字,将剩余的中间候选字作为错别字对应的候选字,以用于后续构建候选语句。即在完成编辑操作次数计算后,将编辑操作次数与预设的次数阈值进行比较,大于次数阈值的中间候选字即为编辑操作次数较大的候选字,对其进行剔除处理即可,选择编辑操作次数小于等于次数阈值的中间候选字作为错别字对应的候选字即可。
75.沿用上例,在确定待纠错语句“在绿油油的甲野上”中包含的错别字“甲”之后,将错别字输入至基于n-gram语言模型和bert掩码语言模型构建的召回模型进行处理,根据处理结果选择按照与错别字的相似度从大到小排序后的top5个字作为中间候选字,即通过n-gram语言模型和bert掩码语言模型对错别字“甲”进行处理,得到n个初始候选字,之后再选择n个初始候选字中的5个作为中间候选字,确定中间候选字分别为{甲,由,申,田,日}。
76.进一步的,当确定初始候选字之后,为了降低召回的候选字与原字之间的偏离程度,此时引入候选字混淆集对候选字进行过滤。候选字混淆集中包含错别字对应的同音字和形近字,如{甲,由,申,田,甜,天
…
},此时计算候选字混淆集中包含的各个混淆字与各个中间候选字的编辑操作次数,根据计算结果确定{由,申,田}的编辑操作次数小于次数阈值,则将{由,申,田}作为候选字,剔除中间候选字甲和日,以用于后续构建候选语句进行纠错。
77.综上,在通过候选字混淆集过滤候选字时,为了能够提高过滤精准度,可以采用计算编辑操作次数的方式进行过滤,从而保证剩余的候选字与正确字更加贴近,方便后续得到正确字对待纠错语句进行纠错。
78.更进一步的,当确定错别字对应的候选字之后,为了能够结合候选字完成对待纠错语句的纠错处理,可以将候选字融入待纠错语句,以构建候选语句,之后再利用排序模型完成纠错处理操作,本实施例中,具体实现如步骤s1046:
79.步骤s1046,确定所述错别字在所述待纠错语句中的字符位置;利用所述候选字按照所述字符位置对所述待纠错语句进行更新,获得所述候选语句。
80.具体的,字符位置具体是指错别字在待纠错语句中的位置,且该位置是基于字符顺序确定。基于此,当确定错别字在待纠错语句中的字符位置后,即可将错别字替换为候选字,以根据替换结果得到候选语句,实现后续结合候选字在待纠错语句中的上下文信息预测候选字是否为正确字。
81.沿用上例,在得到候选字{由,申,田}后,同时确定待纠错语句“在绿油油的甲野上”中错别字位置是第六个字符,之后利用每个候选字对待纠错语句进行更新,得到第一候选语句为“在绿油油的由野上”,第二候选语句为“在绿油油的申野上”,第三候选语句为“在绿油油的田野上”,以用于后续进行纠错处理操作。
82.综上,通过构建候选语句的方式,实现候选字融合到待纠错语句中,以方便后续可以结合候选字在待纠错语句中的上下文信息,在候选字中确定正确字,从而保证纠错精准度。
83.此外,需要说明的是,在构建候选语句时,考虑到通过上述处理方式确定的错别字可能会存在误差,如果在此基础上再进行后续的计算以对该错别字进行替换,可能会导致修正后的语句出错,因此为了避免修正后的语句对正确字符进行替换,可以结合错别字和待纠错语句组成额外的候选语句,即候选字为k个的情况下,可以结合错别字和候选字生成k+1个候选语句,以用于后续确定替换语句。
84.步骤s106,构建所述候选语句对应的前向语句特征和后向语句特征。
85.具体的,在上述基于候选字和待纠错语句构建出候选语句后,进一步的,为了能够在处理纠错任务时不会损失原语句和候选语句的前、后文信息,可以从多维度反映候选字的正确率,此时可以针对每个候选语句构建起对应的前向语句特征和后向语句特征,实现后续结合每个候选语句的前/后向语句特征分析候选字在待纠错语句中的正确率,从而得到正确字对待纠错语句进行纠错。其中,前向语句特征具体是指按照候选语句中每个字符的正向顺序所构建的向量表达,后向语句特征具体是指按照候选语句中每个字符的后向顺序所构建的向量表达。
86.基于此,为了能够从多个维度完成正确字的确定,将结合包含错别字的待纠错语句以及包含候选字的候选语句拼接出候选语句对应的前向语句特征和后向语句特征,以实现不损失原句信息的情况下,同时结合候选字在候选语句中的上下文信息完成对每个候选字进行分析。
87.进一步的,在构建候选前向语句对应的前向语句特征时,实则是将包含错别字的待纠错语句与包含候选字的正向语句进行拼接,并映射到向量空间得到前向语句特征,本实施例中,具体实现如步骤s1062-2至步骤s1062-6:
88.步骤s1062-2,根据所述候选字在所述候选语句中的位置对所述候选语句进行划分,获得候选前向语句;
89.步骤s1062-4,将所述待纠错语句与所述候选前向语句进行拼接,获得初始前向语句;
90.步骤s1062-6,在所述初始前向语句中添加语句标识,并基于添加语句标识的初始前向语句构建所述前向语句特征。
91.具体的,候选前向语句具体是指包含候选字的候选语句中,剔除排序在候选字后的字符得到的语句;相应的,初始前向语句具体是指将待纠错语句与候选前向语句进行拼接后得到的语句,其中,拼接是指将待纠错语句和候选前向语句进行前后相连,组成新的语句;相应的,语句标识具体是指在初始前向语句中添加的标识错别字位置的标识,标识候选语句候选前向语句在初始前向语句中开始位置的标识,标识候选前向语句在初始前向语句中结束位置的标识。
92.基于此,当确定候选字对应的候选语句后,可以基于候选字在候选语句中的位置对候选语句进行划分,以实现将候选语句中候选字之后的其他字符删除,基于剩余的字符组成候选前向语句,之后将待纠错语句与候选前向语句进行拼接,以得到对应候选字的初始前向语句;最后在初始前向语句中添加语句标识,结合添加语句标识的初始前向语句构建前向语句特征,以用于后续进行替换语句的确定。
93.其中,在初始前向语句中添加语句标识具体是指在初始前向语句的拼接位置添加设定的标识,如“《s》”,以及在候选字前后添加设定的标识,如“_”,以及在语句末端添加设定的标识,如“《\s》”,以用于后续进行构建特征。
94.综上,通过将待纠错语句与候选前向语句进行拼接,不仅可以结合前向语句对候选字的影响,还能够充分结合待纠错语句的原文信息,有效的提高了后续预测精准度,从而精准的从多个候选字中确定正确字进行替换语句的生成。
95.更进一步的,在构建候选前向语句对应的后向语句特征时,实则是将包含错别字的待纠错语句与包含候选字的后向语句进行拼接,并映射到向量空间得到后向语句特征,本实施例中,具体实现如步骤s1064-2至步骤s1064-8:
96.步骤s1064-2,对所述候选语句进行倒序处理,获得候选后向语句;
97.步骤s1064-4,根据所述候选字在所述候选后向语句中的位置对所述候选后向语句进行划分,获得目标候选后向语句;
98.步骤s1064-6,将所述待纠错语句和所述目标候选后向语句进行拼接,获得初始后向语句;
99.步骤s1064-8,在所述初始后向语句中添加语句标识,并基于添加语句标识的初始后向语句构建所述后向语句特征。
100.具体的,候选后向语句具体是指对候选语句进行倒序处理后得到的语句,如“后会无期”倒序后得到的语句为“期无会后”;相应的,目标候选后向语句具体是指包含候选字的候选后向语句中,剔除排序在候选字后的字符得到的语句;相应的,初始后向语句具体是指待纠错语句与目标候选后向语句进行拼接后得到的语句,其中,拼接是指将待纠错语句和目标候选后向语句进行前后相连,组成新的语句。例如,待纠错语句为abc,候选语句是adc,候选后向语句是cda,目标候选后向语句为cd,之后将待纠错语句abc和目标候选后向语句cd进行拼接,即可得到初始后向语句cbacd。
101.基于此,在得到候选语句后,为了能够考虑到候选语句中候选字之后的语句内容对候选字的影响,可以先对候选语句进行倒序处理,获得候选后向语句,之后根据候选字在候选后向语句中的位置对候选后向语句进行划分,以实现将候选后向语句中候选字之后的其他字符删除,基于剩余的字符组成目标候选后向语句,之后再将待纠错语句对应的倒序纠错语句与目标候选后向语句进行拼接,以得到候选字的初始后向语句,最后在初始后向
语句中添加语句标识,结合添加语句标识的初始后向语句构建后向语句特征,以用于后续进行替换语句的确定。
102.其中,在初始后向语句中添加语句标识具体是指在初始后向语句的拼接位置添加设定的标识,如“《s》”,以及在候选字前后添加设定的标识,如“_”,以及在语句末端添加设定的标识,如“《\s》”,以用于后续进行构建特征。
103.沿用上例,确定候选字为{由,申,田},第一候选语句为“在绿油油的由野上”,第二候选语句为“在绿油油的申野上”,第三候选语句为“在绿油油的田野上”。
104.在此基础上,基于“由”在第一候选语句中的位置对其进行划分,得到第一候选前向语句“在绿油油的由”,之后再将待纠错语句“在绿油油的甲野上”与第一候选前向语句进行拼接,并在拼接后的第一初始前向语句中添加标识错别字位置的标识“_”,标识第一候选前向语句在第一初始前向语句中开始位置的标识“《s》”,以及标识第一候选前向语句在第一初始前向语句中结束位置的标识“《\s》”,根据添加结果得到第一候选语句对应的第一前向语句特征为s11={在,绿,油,油,的,_,甲,_,野,上,《s》,在,绿,油,油,的,_,由,《\s》}。
105.进一步的,对第一候选语句进行倒序处理,得到第一候选后向语句“上野由的油油绿在”,之后基于“由”在第一候选后向语句中的位置对其进行划分,得到第一目标候选后向语句“上野由”;再将待纠错语句对应的倒序纠错语句“上野甲的油油绿在”与第一目标候选后向语句进行拼接,并在拼接后的第一初始后向语句中添加标识“_”“《s》”和“《\s》”,以获得第一候选语句对应的第一后向语句特征为s12={上,野,_,甲,_,的,油,油,绿,在,《s》,上,野,_,由,《\s》}。
106.以此类推,分别构建第二候选语句对应的第二前向语句特征s21和第二后向语句特征s22,第三候选语句对应的第三前向语句特征s31和第二后向语句特征s32,以用于后续进行替换语句的确定。
107.需要说明的是,添加的语句标识是为了能够使得排序模块确定错别字的位置,候选前向语句在前向语句特征,以及目标候选后向语句在后向语句特征中的开始位置和结束位置,以支持排序模块可以精准的对每个候选字进行正确性的判断。同时考虑到更靠后的字符的整体困惑度要远小于更靠前的字符的整体困惑度,即更靠后的字符相对候选语句的困惑度基本不会产生影响,也就是说,在模型进行处理时,更靠后的字符对候选语句的影响程度越小,因此本实施例选择在错别字位置进行截断,以构建各个候选语句对应的前向语句特征和后向语句特征,以提高处理效率的同时保证精准度。
108.步骤s108,将所述前向语句特征和所述后向语句特征输入至排序模块进行处理,根据处理结果确定所述待纠错语句对应的替换语句。
109.具体的,在上述构建每个候选语句对应的前向语句特征和后向语句特征后,即可将前向语句特征和后向语句特征同时输入至排序模块进行处理,实现通过排序模块从多个候选字中预测出正确字,并结合正确字生成待纠错语句对应的替换语句。
110.基于此,排序模块具体是指整合有前向gpt2模型和后向gpt2模型的模块,实现通过前向gpt2模型和后向gpt2模型可以分别计算各个候选语句的前向困惑度和后向困惑度,之后结合候选语句的前向困惑度和后向困惑度确定候选语句的困惑度,以通过困惑度达到结合待纠错语句的原文特征分析各个候选语句是否能够作为替换语句,保证预测精准度。其中,前向gpt2模型用于结合正序情况下前文对错别字的影响,后向gpt2模型用于结合倒
序情况下后文对错别字的影响,以此提高排序精准度。
111.进一步的,在通过排序模块对各个候选语句对应的前向语句特征和后向语句特征进行处理,可选的一种实施方式是计算各个候选语句的候选分值,以通过候选分值筛选出替换语句,本实施例中,具体实现方式如步骤s1082至步骤s1084:
112.步骤s1082,将所述前向语句特征和所述后向语句特征输入至所述排序模块进行处理,获得所述候选语句对应的候选分值。
113.具体的,候选分值具体是指候选语句作为替换语句的概率分值,候选分值越高说明困惑度越大,进一步说明作为替换语句的概率越高,反之候选分值越低说明困惑度越小,进一步说明作为替换语句的概率越低。
114.基于此,在将候选语句对应的前向语句特征和后向语句特征输入至排序模块后,即可通过排序模块从前向维度和后向维度对候选语句的困惑度进行计算,以映射出候选语句的候选分值,方便后续进行替换语句的确定。
115.进一步的,排序模块计算候选分值的过程如步骤s1082-2至步骤s1082-6:
116.步骤s1082-2,将所述前向语句特征和所述后向语句特征输入至所述排序模块;
117.步骤s1082-4,通过所述排序模块中的前向排序模型对所述前向语句特征进行处理,获得前向困惑度,以及通过所述排序模块中的后向排序模型对所述后向语句特征进行处理,获得后向困惑度;
118.步骤s1082-6,通过所述排序模块中的计算单元对所述前向困惑度和所述后向困惑度进行处理,获得所述候选语句对应的候选分值并输出。
119.具体的,当得到任意一个候选语句对应的前向语句特征和后向语句特征后,即可将候选语句对应的前向语句特征和后向语句特征直接输入至排序模块,以通过排序模块中的前向排序模型(如上述前向gpt2模型)对前向语句特征进行处理,根据处理结果得到候选语句对应的前向困惑度;同时通过排序模块中的后向排序模型(如上述后向gpt2模型)对后向语句特征进行处理,根据处理结果得到候选语句对应的后向困惑度。最后再基于排序模块中的前向困惑度和后向困惑度进行目标困惑度的计算,从而实现基于目标困惑度确定候选语句的候选分值,并输出排序模块,以满足后续可以通过比对候选分值的方式确定替换语句。
120.需要说明的是,计算单元在基于前向困惑度和后向困惑度计算目标困惑度时,可以通过将两个困惑度相乘的方式确定目标困惑度。同时对于排序模块中的前向排序模型或后向排序模型在计算困惑度时,都是由候选前向语句的开始标识位置到结束标识位置的预测概率值进行累乘得到。
121.此外,在排序模块训练阶段,用于训练排序模块的样本的标签也都是前/后向语句特征,且需要注意的是,训练阶段会以候选字替换纠错文本中的正确字,以使得排序模块可以学习到预测候选分值的能力,同时保证排序模块不会对错误字的预测值产生失误。
122.步骤s1084,基于所述候选分值在所述候选语句中确定目标候选语句,并将所述目标候选语句作为所述待纠错语句对应的替换语句。
123.具体的,在上述通过排序模块得到每个候选语句对应的候选分值后,即可按照候选分值在候选语句中提取目标候选语句,并将其作为替换语句即可。以完成对待纠错语句的纠错处理任务。
124.沿用上例,在分别得到每个候选语句对应的前向语句特征和后向语句特征后,可以分别将每个候选语句对应的前向语句特征和后向语句特征输入至排序模块,通过排序模块中的前向gpt2模型进行前向困惑度的计算,以及后向gpt2模型进行后向困惑度的计算,根据计算结果确定第一候选语句对应的前向困惑度为0.4,后向困惑度为0.3;第二候选语句对应的前向困惑度为0.6,后向困惑度为0.5;第三候选语句对应的前向困惑度为0.8,后向困惑度为0.9。
125.进一步的,再通过排序模块中的计算单元确定第一候选语句对应的候选分值为0.12,第二候选语句对应的候选分值为0.30,第三候选语句对应的候选分值为0.72,根据比较结果确定第三候选语句的候选分值最高,说明其作为替换语句的概率最大,则此时确定替换语句为“在绿油油的田野上”,并将其反馈给用户即可。
126.综上,通过结合上下文信息进行纠错,考虑了上下文信息对原句的影响,有效的提高了纠错精准度,从而实现在纠错场景中,保证语句的正确性和完整性。
127.参见图2所示的语句处理方法的示意图,在获取到待纠错语句后,可以通过服务端部署的检错模块中的错别字检错模型进行检测,以根据检测结果得到待纠错语句中的错别字,之后将错别字输入至召回模型,通过召回模型中整合的语言模型和掩码语言模型筛选出错别字对应的初始候选字,同时结合候选字混淆集对其进行过滤,以得到错别字对应的候选字,最后将候选字输入至排序模块,实现构建结合候选字的待纠错语句对应的前向语句特征和后向语句特征,并通过前向排序模块和后向排序模块得到每个候选语句的困惑度,从而基于困惑度得到替换语句。
128.本技术提供的语句处理方法,在获取到包含错别字的待纠错语句后,可以先确定错别字对应的候选字,并以此为基础结合待纠错语句生成候选语句,之后结合候选语句的整体特征构建前向语句特征和后向语句特征,并将其输入至排序模型进行处理,即可根据处理结果得到纠错较为精准的替换语句,实现在对待纠错语句进行纠错时,可以充分融合前后文结构与原始语句的信息,使得排序模型可以输出更加可靠的预测结果,从而保证纠错的精准度。
129.下述结合附图3,以本技术提供的文字检测方法在文档纠错场景中的应用为例,对所述文字检测方法进行进一步说明。其中,图3示出了本技术一实施例提供的一种应用于文档纠错场景中的文字检测方法的处理流程图,具体包括以下步骤:
130.步骤s302,获取待纠错文档。
131.本实施例以待纠错文档为
“…
干年等一回,我无悔啊
…”
为例进行说明,由于待纠错文档所包含的文字过多,本实施例为方便描述仅摘取文档中的部分语句为基础进行说明,对整篇文档的纠错处理均可参见本实施例相应的描述内容,在此不作过多赘述。
132.步骤s304,确定待纠错文档中包含错别字的待纠错语句。
133.具体的,在获得待纠错文档后,可以将其输入至electra模型对句子中的每个位置的字进行分类,以判断句子中的每个字是否为错别字。即将
“…
干年等一回,我无悔啊
…”
输入至electra模型对句子中的每个位置的字进行分类,根据处理结果确定“干年等一回”中包含错别字,该错别字为“干”。
134.步骤s306,将待纠错语句中的错别字输入至召回模型进行处理,根据处理结果获得候选字。
135.具体的,在确定错别字为“干”的情况下,此时为了能够对错别字进行纠错,同时提高纠错后的精准度,即选择正确的字对错别字进行替换,以得到正确的句子,保证存储的文档的正确性。可以将错别字输入至召回模型进行处理,同时为了提高召回后,后续进行候选排序的精准度,可以结合混淆集过滤待召回后的候选字,从而得到与原字更加贴合的候选字,用于后续进行排序处理。
136.基于此,本实施例基于n-gram语言模型和bert掩码语言模型对错别字“干”进行召回处理,根据处理结果选择top-6个字作为初始候选字,即通过n-gram语言模型和bert掩码语言模型对错别字“干”进行处理,得到n个候选字,之后根据预设的选择规则,选择top-6个字作为初始候选字,确定初始候选字分别为{干,千,迁,牵,仟,纤}。
137.进一步的,当确定初始候选字之后,为了提高召回的候选字与原字不至于过于偏离,此时引入混淆集对候选字进行过滤。混淆集中包含每个字的同音字和形近字。通过混淆集对初始候选字进行过滤,确定与原字偏离较小的候选字分别为{干,千,迁,仟,纤}。
138.步骤s308,基于候选字和待纠错语句构建前向句子输入和后向句子输入。
139.具体的,在排序模块设置前向gpt2模型和后向gpt2模型,用二者同时对各个候选句子的困惑度进行计算,最后通过取均值的方式得到表征句子困惑度的值,因此在进行排序前,需要对前向gpt2模型和后向gpt2模型分别进行训练,直至获得满足训练停止条件的前向gpt2模型和后向gpt2模型,需要说明的是,前向gpt2模型用于结合正序情况下前文对错别字的影响,后向gpt2模型用于结合倒序情况下后文对错别字的影响,以此提高排序精准度。
140.因此,在输入两者之前,需要构建前向句子输入和后向句子输入。进一步的,待纠错语句“干年等一回”中“干”为错别字,并且经过召回处理得到了错别字“干”对应的候选字{干,千,迁,仟,纤},此时基于候选字和待纠错语句中的原始字可以组成5个候选句子,分别为s
c1
={干,年,等,一,回};s
c2
={千,年,等,一,回};s
c3
={迁,年,等,一,回};s
c4
={仟,年,等,一,回};s
c5
={纤,年,等,一,回}。
141.更进一步的,由于需要通过前向gpt2模型和后向gpt2模型同时计算各个候选句子的困惑度,因此此时需要针对各个候选句子生成前向句子输入和后向句子输入;并且考虑到更靠后的输入的整体困惑度要远小于更靠前的输入的整体困惑度,即更靠后的输入相对各个候选句子的困惑度基本不会产生影响,因此本实施例选择在错别字位置进行截断,以构建各个候选句子对应的前向句子输入和后向句子输入,即:
142.候选句子s
c1
={干,年,等,一,回}对应的前向句子输入s
fc1
={_,干,_,年,等,一,回,《s》,_,干,《\s》},后向句子输入s
bc1
={回,一,等,年,_,干,_,《s》,回,一,等,年,_,干,_,《\s》};
143.s
c2
={千,年,等,一,回}对应的前向句子输入s
fc2
={_,千,_,年,等,一,回,《s》,_,千,《\s》},后向句子输入s
bc2
={回,一,等,年,_,千,_,《s》,回,一,等,年,_,千,_,《\s》};
144.s
c3
={迁,年,等,一,回}对应的前向句子输入s
fc3
={_,迁,_,年,等,一,回,《s》,_,迁,《\s》},后向句子输入s
bc3
={回,一,等,年,_,迁,_,《s》,回,一,等,年,_,迁,_,《\s》};
145.s
c4
={仟,年,等,一,回}对应的前向句子输入s
fc4
={_,仟,_,年,等,一,回,《s》,_,仟,《\s》},后向句子输入s
bc4
={回,一,等,年,_,仟,_,《s》,回,一,等,年,_,仟,_,《\s》};
146.s
c5
={纤,年,等,一,回}对应的前向句子输入s
fc5
={_,纤,_,年,等,一,回,《s》,_,
纤,《\s》},后向句子输入s
bc5
={回,一,等,年,_,纤,_,《s》,回,一,等,年,_,纤,_,《\s》}。
147.其中,“_”是一个标记,提示模型当前错字的位置;《s》表示候选句子(前向或后向)的开始;《\s》表示候选句子的结束。
148.步骤s310,将前向句子输入和后向句子输入分别输入至前向gpt2模型和后向gpt2模型进行处理,获得前向困惑度和后向困惑度。
149.具体的,在得到各个候选句子分别对应的前向句子输入和后向句子输入之后,此时可以将各个前向句子输入分别输入至前向gpt2模型进行前向困惑度的计算,同时将各个后向句子输入至后向gpt2模型进行后向困惑度的计算,根据计算结果确定s
c1
对应的前向困惑度为0.4,后向困惑度为0.3;s
c2
对应的前向困惑度为0.8,后向困惑度为0.9;s
c3
对应的前向困惑度为0.5,后向困惑度为0.5;s
c4
对应的前向困惑度为0.6,后向困惑度为0.7;s
c5
对应的前向困惑度为0.5,后向困惑度为0.6。
150.步骤s312,根据前向困惑度和后向困惑度计算各个目标困惑度,并根据目标困惑度确定目标替换语句。
151.步骤s314,根据目标替换语句对待纠错文档进行更新,将更新后的待纠错文档进行存储。
152.具体的,在得到各个候选句子的前向困惑度和后向困惑度之后,此时可以将各个候选句子的前向困惑度和后向困惑度进行乘积,将乘积结果作为各个候选句子的目标困惑度。
153.基于此,确定候选句子s
c1
的目标困惑度l
c1
=0.4*0.3=0.12;确定候选句子s
c2
的目标困惑度l
c2
=0.8*0.9=0.72;确定候选句子s
c3
的目标困惑度=0.5*0.5=0.25;确定候选句子s
c4
的目标困惑度l
c4
=0.6*0.7=0.42;确定候选句子s
c5
的目标困惑度l
c5
=0.5*0.6=0.30。
154.进一步的,在确定各个候选句子的目标困惑度之后,此时可以基于目标困惑度对候选句子进行排序,即l
c2
》l
c4
》l
c5
》l
c3
》l
c1
,而困惑度越大说明候选句子作为替换句子的概率越高,此时确定候选句子s
c2
={千,年,等,一,回}的困惑度最大,则选择候选句子s
c2
作为替换语句,之后基于替换语句对待纠错文档进行更新,更新后的待纠错文档为{
…
千年等一回,我无悔啊
…
},之后再对更新后的待纠错文档进行存储即可。
155.综上所述,通过结合上下文信息进行纠错,考虑了上下文信息对原句的影响,有效的提高了纠错精准度,从而实现在文档存储场景中,保证存储的文档中内容的正确性。
156.与上述方法实施例相对应,本技术还提供了语句处理装置实施例,图4示出了本技术一实施例提供的一种语句处理装置的结构示意图。如图4所示,该装置包括:
157.获取模块402,被配置为获取包含错别字的待纠错语句;
158.确定模块404,被配置为确定所述错别字对应的候选字,并基于所述候选字和所述待纠错语句生成候选语句;
159.构建模块406,被配置为构建所述候选语句对应的前向语句特征和后向语句特征;
160.处理模块408,被配置为将所述前向语句特征和所述后向语句特征输入至排序模块进行处理,根据处理结果确定所述待纠错语句对应的替换语句。
161.一个可选的实施例中,所述获取模块402进一步被配置为:
162.获取待处理文本,并基于所述待处理文本构建字符序列;将所述字符序列输入至
错别字检测模型进行处理,获得所述待处理文本中包含的错别字;在所述待处理文本中选择包含所述错别字的语句作为所述待纠错语句。
163.一个可选的实施例中,所述确定模块404进一步被配置为:
164.将所述错别字输入至召回模型进行处理,获得所述错别字对应的多个初始候选字;基于预设的筛选策略,在所述多个初始候选字中筛选出所述错别字对应的所述候选字。
165.一个可选的实施例中,所述确定模块404进一步被配置为:
166.根据所述筛选策略确定筛选比例以及候选字混淆集;基于所述筛选比例在所述多个初始候选字中筛选设定数量的中间候选字;利用所述候选字混淆集对设定数量的所述中间候选字进行过滤,根据过滤结果获得所述候选字。
167.一个可选的实施例中,所述确定模块404进一步被配置为:
168.确定所述错别字在所述待纠错语句中的字符位置;利用所述候选字按照所述字符位置对所述待纠错语句进行更新,获得所述候选语句。
169.一个可选的实施例中,所述构建模块406进一步被配置为:
170.根据所述候选字在所述候选语句中的位置对所述候选语句进行划分,获得候选前向语句;将所述待纠错语句与所述候选前向语句进行拼接,获得初始前向语句;在所述初始前向语句中添加语句标识,并基于添加语句标识的初始前向语句构建所述前向语句特征。
171.一个可选的实施例中,所述构建模块406进一步被配置为:
172.对所述候选语句进行倒序处理,获得候选后向语句;根据所述候选字在所述候选后向语句中的位置对所述候选后向语句进行划分,获得目标候选后向语句;将所述待纠错语句和所述目标候选后向语句进行拼接,获得初始后向语句;在所述初始后向语句中添加语句标识,并基于添加语句标识的初始后向语句构建所述后向语句特征。
173.一个可选的实施例中,所述处理模块408进一步被配置为:
174.将所述前向语句特征和所述后向语句特征输入至所述排序模块进行处理,获得所述候选语句对应的候选分值;基于所述候选分值在所述候选语句中确定目标候选语句,并将所述目标候选语句作为所述待纠错语句对应的替换语句。
175.一个可选的实施例中,所述处理模块408进一步被配置为:
176.将所述前向语句特征和所述后向语句特征输入至所述排序模块;通过所述排序模块中的前向排序模型对所述前向语句特征进行处理,获得前向困惑度,以及通过所述排序模块中的后向排序模型对所述后向语句特征进行处理,获得后向困惑度;通过所述排序模块中的计算单元对所述前向困惑度和所述后向困惑度进行处理,获得所述候选语句对应的候选分值并输出。
177.一个可选的实施例中,所述确定模块404进一步被配置为:
178.计算所述候选字混淆集中包含的混淆字与每个中间候选字的编辑操作次数;根据所述编辑操作次数对设定数量的所述中间候选字进行过滤,根据过滤结果获得所述候选字。
179.本实施例提供的语句处理装置,在获取到包含错别字的待纠错语句后,可以先确定错别字对应的候选字,并以此为基础结合待纠错语句生成候选语句,之后结合候选语句的整体特征构建前向语句特征和后向语句特征,并将其输入至排序模型进行处理,即可根据处理结果得到纠错较为精准的替换语句,实现在对待纠错语句进行纠错时,可以充分融
合前后文结构与原始语句的信息,使得排序模型可以输出更加可靠的预测结果,从而保证纠错的精准度。
180.上述为本实施例的一种语句处理装置的示意性方案。需要说明的是,该语句处理装置的技术方案与上述的语句处理方法的技术方案属于同一构思,语句处理装置的技术方案未详细描述的细节内容,均可以参见上述语句处理方法的技术方案的描述。此外,装置实施例中的各组成部分应当理解为实现该程序流程各步骤或该方法各步骤所必须建立的功能模块,各个功能模块并非实际的功能分割或者分离限定。由这样一组功能模块限定的装置权利要求应当理解为主要通过说明书记载的计算机程序实现该解决方案的功能模块构架,而不应当理解为主要通过硬件方式实现该解决方案的实体装置。
181.图5示出了根据本技术一实施例提供的一种计算设备500的结构框图。该计算设备500的部件包括但不限于存储器510和处理器520。处理器520与存储器510通过总线530相连接,数据库550用于保存数据。
182.计算设备500还包括接入设备540,接入设备540使得计算设备500能够经由一个或多个网络560通信。这些网络的示例包括公用交换电话网(pstn)、局域网(lan)、广域网(wan)、个域网(pan)或诸如因特网的通信网络的组合。接入设备540可以包括有线或无线的任何类型的网络接口(例如,网络接口卡(nic))中的一个或多个,诸如ieee802.11无线局域网(wlan)无线接口、全球微波互联接入(wi-max)接口、以太网接口、通用串行总线(usb)接口、蜂窝网络接口、蓝牙接口、近场通信(nfc)接口,等等。
183.在本技术的一个实施例中,计算设备500的上述部件以及图5中未示出的其他部件也可以彼此相连接,例如通过总线。应当理解,图5所示的计算设备结构框图仅仅是出于示例的目的,而不是对本技术范围的限制。本领域技术人员可以根据需要,增添或替换其他部件。
184.计算设备500可以是任何类型的静止或移动计算设备,包括移动计算机或移动计算设备(例如,平板计算机、个人数字助理、膝上型计算机、笔记本计算机、上网本等)、移动电话(例如,智能手机)、可佩戴的计算设备(例如,智能手表、智能眼镜等)或其他类型的移动设备,或者诸如台式计算机或pc的静止计算设备。计算设备500还可以是移动式或静止式的服务器。
185.其中,处理器520用于执行如下计算机可执行指令:
186.获取包含错别字的待纠错语句;
187.确定所述错别字对应的候选字,并基于所述候选字和所述待纠错语句生成候选语句;
188.构建所述候选语句对应的前向语句特征和后向语句特征;
189.将所述前向语句特征和所述后向语句特征输入至排序模块进行处理,根据处理结果确定所述待纠错语句对应的替换语句。
190.上述为本实施例的一种计算设备的示意性方案。需要说明的是,该计算设备的技术方案与上述的语句处理方法的技术方案属于同一构思,计算设备的技术方案未详细描述的细节内容,均可以参见上述语句处理方法的技术方案的描述。
191.本技术一实施例还提供一种计算机可读存储介质,其存储有计算机指令,该指令被处理器执行时以用于:
192.获取包含错别字的待纠错语句;
193.确定所述错别字对应的候选字,并基于所述候选字和所述待纠错语句生成候选语句;
194.构建所述候选语句对应的前向语句特征和后向语句特征;
195.将所述前向语句特征和所述后向语句特征输入至排序模块进行处理,根据处理结果确定所述待纠错语句对应的替换语句。
196.上述为本实施例的一种计算机可读存储介质的示意性方案。需要说明的是,该存储介质的技术方案与上述的语句处理方法的技术方案属于同一构思,存储介质的技术方案未详细描述的细节内容,均可以参见上述语句处理方法的技术方案的描述。
197.本实施例公开了一种芯片,其存储有计算机程序,该计算机程序被芯片执行时实现所述语句处理的步骤。
198.上述对本技术特定实施例进行了描述。其它实施例在所附权利要求书的范围内。在一些情况下,在权利要求书中记载的动作或步骤可以按照不同于实施例中的顺序来执行并且仍然可以实现期望的结果。另外,在附图中描绘的过程不一定要求示出的特定顺序或者连续顺序才能实现期望的结果。在某些实施方式中,多任务处理和并行处理也是可以的或者可能是有利的。
199.所述计算机指令包括计算机程序代码,所述计算机程序代码可以为源代码形式、对象代码形式、可执行文件或某些中间形式等。所述计算机可读介质可以包括:能够携带所述计算机程序代码的任何实体或装置、记录介质、u盘、移动硬盘、磁碟、光盘、计算机存储器、只读存储器(rom,read-only memory)、随机存取存储器(ram,random access memory)、电载波信号、电信信号以及软件分发介质等。需要说明的是,所述计算机可读介质包含的内容可以根据司法管辖区内立法和专利实践的要求进行适当的增减,例如在某些司法管辖区,根据立法和专利实践,计算机可读介质不包括电载波信号和电信信号。
200.需要说明的是,对于前述的各方法实施例,为了简便描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本技术并不受所描述的动作顺序的限制,因为依据本技术,某些步骤可以采用其它顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作和模块并不一定都是本技术所必须的。
201.在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其它实施例的相关描述。
202.以上公开的本技术优选实施例只是用于帮助阐述本技术。可选实施例并没有详尽叙述所有的细节,也不限制该发明仅为所述的具体实施方式。显然,根据本技术的内容,可作很多的修改和变化。本技术选取并具体描述这些实施例,是为了更好地解释本技术的原理和实际应用,从而使所属技术领域技术人员能很好地理解和利用本技术。本技术仅受权利要求书及其全部范围和等效物的限制。
技术特征:
1.一种语句处理方法,其特征在于,包括:获取包含错别字的待纠错语句;确定所述错别字对应的候选字,并基于所述候选字和所述待纠错语句生成候选语句;构建所述候选语句对应的前向语句特征和后向语句特征;将所述前向语句特征和所述后向语句特征输入至排序模块进行处理,根据处理结果确定所述待纠错语句对应的替换语句。2.根据权利要求1所述的语句处理方法,其特征在于,所述获取包含错别字的待纠错语句,包括:获取待处理文本,并基于所述待处理文本构建字符序列;将所述字符序列输入至错别字检测模型进行处理,获得所述待处理文本中包含的错别字;在所述待处理文本中选择包含所述错别字的语句作为所述待纠错语句。3.根据权利要求1所述的语句处理方法,其特征在于,所述确定所述错别字对应的候选字,包括:将所述错别字输入至召回模型进行处理,获得所述错别字对应的多个初始候选字;基于预设的筛选策略,在所述多个初始候选字中筛选出所述错别字对应的所述候选字。4.根据权利要求3所述的语句处理方法,其特征在于,所述基于预设的筛选策略在所述多个初始候选字中筛选出所述错别字对应的所述候选字,包括:根据所述筛选策略确定筛选比例以及候选字混淆集;基于所述筛选比例在所述多个初始候选字中筛选设定数量的中间候选字;利用所述候选字混淆集对设定数量的所述中间候选字进行过滤,根据过滤结果获得所述候选字。5.根据权利要求1所述的语句处理方法,其特征在于,所述基于所述候选字和所述待纠错语句生成候选语句,包括:确定所述错别字在所述待纠错语句中的字符位置;利用所述候选字按照所述字符位置对所述待纠错语句进行更新,获得所述候选语句。6.根据权利要求1-5任意一项所述的语句处理方法,其特征在于,所述构建所述候选语句对应的前向语句特征,包括:根据所述候选字在所述候选语句中的位置对所述候选语句进行划分,获得候选前向语句;将所述待纠错语句与所述候选前向语句进行拼接,获得初始前向语句;在所述初始前向语句中添加语句标识,并基于添加语句标识的初始前向语句构建所述前向语句特征。7.根据权利要求1-5任意一项所述的语句处理方法,其特征在于,所述构建所述候选语句对应的后向语句特征,包括:对所述候选语句进行倒序处理,获得候选后向语句;根据所述候选字在所述候选后向语句中的位置对所述候选后向语句进行划分,获得目标候选后向语句;
将所述待纠错语句和所述目标候选后向语句进行拼接,获得初始后向语句;在所述初始后向语句中添加语句标识,并基于添加语句标识的初始后向语句构建所述后向语句特征。8.根据权利要求1-5任意一项所述的语句处理方法,其特征在于,所述将所述前向语句特征和所述后向语句特征输入至排序模块进行处理,根据处理结果确定所述待纠错语句对应的替换语句,包括:将所述前向语句特征和所述后向语句特征输入至所述排序模块进行处理,获得所述候选语句对应的候选分值;基于所述候选分值在所述候选语句中确定目标候选语句,并将所述目标候选语句作为所述待纠错语句对应的替换语句。9.根据权利要求8所述的语句处理方法,其特征在于,所述将所述前向语句特征和所述后向语句特征输入至所述排序模块进行处理,获得所述候选语句对应的候选分值,包括:将所述前向语句特征和所述后向语句特征输入至所述排序模块;通过所述排序模块中的前向排序模型对所述前向语句特征进行处理,获得前向困惑度,以及通过所述排序模块中的后向排序模型对所述后向语句特征进行处理,获得后向困惑度;通过所述排序模块中的计算单元对所述前向困惑度和所述后向困惑度进行处理,获得所述候选语句对应的候选分值并输出。10.根据权利要求4所述的语句处理方法,其特征在于,所述利用所述候选字混淆集对设定数量的所述中间候选字进行过滤,根据过滤结果获得所述候选字,包括:计算所述候选字混淆集中包含的混淆字与每个中间候选字的编辑操作次数;根据所述编辑操作次数对设定数量的所述中间候选字进行过滤,根据过滤结果获得所述候选字。11.一种语句处理装置,其特征在于,包括:获取模块,被配置为获取包含错别字的待纠错语句;确定模块,被配置为确定所述错别字对应的候选字,并基于所述候选字和所述待纠错语句生成候选语句;构建模块,被配置为构建所述候选语句对应的前向语句特征和后向语句特征;处理模块,被配置为将所述前向语句特征和所述后向语句特征输入至排序模块进行处理,根据处理结果确定所述待纠错语句对应的替换语句。12.一种计算设备,其特征在于,包括:存储器和处理器;所述存储器用于存储计算机可执行指令,所述处理器用于执行所述计算机可执行指令实现权利要求1至10任意一项所述方法的步骤。13.一种计算机可读存储介质,其存储有计算机指令,其特征在于,该指令被处理器执行时实现权利要求1至10任意一项所述方法的步骤。
技术总结
本申请提供语句处理方法及装置,其中所述语句处理方法包括:获取包含错别字的待纠错语句;确定所述错别字对应的候选字,并基于所述候选字和所述待纠错语句生成候选语句;构建所述候选语句对应的前向语句特征和后向语句特征;将所述前向语句特征和所述后向语句特征输入至排序模块进行处理,根据处理结果确定所述待纠错语句对应的替换语句。待纠错语句对应的替换语句。待纠错语句对应的替换语句。
技术研发人员:姬子明 李长亮 李小龙
受保护的技术使用者:北京金山数字娱乐科技有限公司
技术研发日:2021.12.10
技术公布日:2022/3/8