一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

文本纠错方法、装置、电子设备及存储介质与流程

2022-05-26 22:18:38 来源:中国专利 TAG:


1.本技术属于数据处理技术领域,尤其涉及一种文本纠错方法、装置、电子 设备及存储介质。


背景技术:

2.目前,社交工具、新闻稿件或者其它载体的文本内容中,常常存在着缺字 少词的错误。通常,这些文本中缺字少词的错误需要通过人工检查校验发现后, 再人为地进行纠正。然而,这种方式人工成本高,并且准确性和效率较低。


技术实现要素:

3.有鉴于此,本技术实施例提供了文本纠错方法、装置、电子设备及存储介 质,以解决现有技术中如何自动准确地对缺字和/或词的文本进行纠错的问题。
4.本技术实施例的第一方面提供了一种文本纠错方法,包括:
5.获取错误文本;
6.根据所述错误文本和预设的缺字召回列表,确定所述错误文本对应的第一 目标数目个第一候选纠正文本;其中所述缺字召回列表包含能够与所述错误文 本中的字构造为词语的预设数目个字;
7.根据所述错误文本和预设的macbert模型,确定所述错误文本对应的第二 目标数目个第二候选纠正文本;
8.根据所述第一目标数目个第一候选纠正文本和所述第二目标数目个第二候 选纠正文本,确定所述错误文本对应的目标纠正文本。
9.本技术实施例的第二方面提供了一种文本纠错装置,包括:
10.获取单元,用于获取错误文本;
11.第一纠正单元,用于根据所述错误文本和预设的缺字召回列表,确定所述 错误文本对应的第一目标数目个第一候选纠正文本;其中所述缺字召回列表包 含能够与所述错误文本中的字构造为词语的预设数目个字;
12.第二纠正单元,用于根据所述错误文本和预设的macbert模型,确定所述 错误文本对应的第二目标数目个第二候选纠正文本;
13.目标纠正文本确定单元,用于根据所述错误文本和预设的macbert模型, 确定所述错误文本对应的第二目标数目个第二候选纠正文本。
14.本技术实施例的第三方面提供了一种电子设备,包括存储器、处理器以及 存储在所述存储器中并可在所述处理器上运行的计算机程序,当所述处理器执 行所述计算机程序时,使得电子设备实现如所述文本纠错方法的步骤。
15.本技术实施例的第四方面提供了一种计算机可读存储介质,所述计算机可 读存储介质存储有计算机程序,当所述计算机程序被处理器执行时,使得电子 设备实现如所述文本纠错方法的步骤。
16.本技术实施例的第五方面提供了一种计算机程序产品,当计算机程序产品 在电子设备上运行时,使得电子设备执行如第一方面中所述的文本纠错方法。
17.本技术实施例与现有技术相比存在的有益效果是:本技术实施例中,在获 取错误文本后,根据该错误文本和预设的缺字召回列表,确定该错误文本对应 的第一目标数目个第一候选纠正文本,以及根据该错误文本和预设的macbert 模型,确定所述错误文本对应的第二目标数目个第二候选纠正文本。之后,根 据该第一候选纠正文本和第二候选纠正文本,确定该错误文本对应的目标纠正 文本。通过该方法,能够在无需依赖人工校对的情况下,自动高效地实现错误 文本的纠错;并且,由于目标纠正文本是基于第一候选纠正文本和第二候选纠 正文本得到的,而第一候选纠正文本是基于预设的缺字召回列表确定的,第二 候选纠正文本是基于预设的macbert模型得到的,因此目标纠正文本是融合缺 字召回列表和macbert模型两种不同的纠正方式得到的纠正文本,从而能够综 合两种纠正方式提高文本纠错的准确性。
附图说明
18.为了更清楚地说明本技术实施例中的技术方案,下面将对实施例或现有技 术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅 仅是本技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳 动的前提下,还可以根据这些附图获得其他的附图。
19.图1是本技术实施例提供的一种文本纠错方法的实现流程示意图;
20.图2是本技术实施例提供的一种缺字召回列表的示例图;
21.图3是本技术实施例提供的一种文本纠错装置的示意图;
22.图4是本技术实施例提供的一种电子设备的示意图。
具体实施方式
23.以下描述中,为了说明而不是为了限定,提出了诸如特定系统结构、技术 之类的具体细节,以便透彻理解本技术实施例。然而,本领域的技术人员应当 清楚,在没有这些具体细节的其它实施例中也可以实现本技术。在其它情况中, 省略对众所周知的系统、装置、电路以及方法的详细说明,以免不必要的细节 妨碍本技术的描述。
24.为了说明本技术所述的技术方案,下面通过具体实施例来进行说明。
25.应当理解,当在本说明书和所附权利要求书中使用时,术语“包括”指示 所描述特征、整体、步骤、操作、元素和/或组件的存在,但并不排除一个或多 个其它特征、整体、步骤、操作、元素、组件和/或其集合的存在或添加。
26.还应当理解,在此本技术说明书中所使用的术语仅仅是出于描述特定实施 例的目的而并不意在限制本技术。如在本技术说明书和所附权利要求书中所使 用的那样,除非上下文清楚地指明其它情况,否则单数形式的“一”、“一个
”ꢀ
及“该”意在包括复数形式。
27.还应当进一步理解,在本技术说明书和所附权利要求书中使用的术语“和/ 或”是指相关联列出的项中的一个或多个的任何组合以及所有可能组合,并且 包括这些组合。
28.如在本说明书和所附权利要求书中所使用的那样,术语“如果”可以依据 上下文被解释为“当...时”或“一旦”或“响应于确定”或“响应于检测到”。 类似地,短语“如果确
定”或“如果检测到[所描述条件或事件]”可以依据上 下文被解释为意指“一旦确定”或“响应于确定”或“一旦检测到[所描述条件 或事件]”或“响应于检测到[所描述条件或事件]”。
[0029]
另外,在本技术的描述中,术语“第一”、“第二”、“第三”等仅用于 区分描述,而不能理解为指示或暗示相对重要性。
[0030]
目前,社交工具、新闻稿件或者其它载体的文本内容中,常常存在着各种 各样的文本错误,包括谐音字词错误、混淆音字词错误、字词顺序颠倒错误、 缺字和/或词错误、形似字错误、语法错误等。其中,对于缺字和/或词错误通常 需要由人工检查发现后再人为地进行纠正。例如,通过人工检查出句子“我在 麦当劳汉堡”是缺字少词的错误句子,通过检查和纠正,可以得到对应的纠正 文本:“我在麦当劳吃汉堡”。然而,通过人工检查和纠正的方式人工成本高, 并且准确性和效率较低。
[0031]
为了解决上述的技术问题,本技术实施例提供了一种文本纠错方法、装置、 电子设备及存储介质,包括:获取错误文本;根据所述错误文本和预设的缺字 召回列表,确定所述错误文本对应的第一目标数目个第一候选纠正文本;其中 所述缺字召回列表包含能够与所述错误文本中的字构造为词的预设数目个字; 根据所述错误文本和预设的macbert模型,确定所述错误文本对应的第二目标 数目个第二候选纠正文本;根据所述第一目标数目个第一候选纠正文本和所述 第二目标数目个第二候选纠正文本,确定所述错误文本对应的目标纠正文本。
[0032]
通过该方法,能够在无需依赖人工校对的情况下,自动高效地实现错误文 本的纠错;并且,由于目标纠正文本是基于第一候选纠正文本和第二候选纠正 文本得到的,而第一候选纠正文本是基于预设的缺字召回列表确定的,第二候 选纠正文本是基于预设的macbert模型得到的,因此目标纠正文本是融合缺字 召回列表和macbert模型两种不同的纠正方式得到的纠正文本,从而能够综合 两种纠正方式提高文本纠错的准确性。
[0033]
实施例一:
[0034]
图1示出了本技术实施例提供的一种文本纠错方法的流程示意图,该文本 纠错方法应用于电子设备,详述如下:
[0035]
在s101中,获取错误文本。
[0036]
本技术实施例中,错误文本可以为缺字和/或缺词的中文句子。在一个实施 例中,可以通过预设的文本检测模型对社交软件消息、新闻文稿、办公软件文 稿中的文本内容进行检测,找出其中存在缺字和/或缺词错误的句子作为错误文 本。
[0037]
示例性地,该文本检测模型可以包括分词模块、词语检测模块;对于前述 文本内容中的每个句子,将该句子输入分词模块进行处理,得到该句子对应的 分词文本;通过词语检测模块模块对该分词文本进行检测,如果查找到该分词 文本中某个字无法与其临近的其它字组成词语并且该字也不是可以单独表达意 思的字(即将该字与其临近的字组成的词不存在预设词语词典中,并且该字也 不存在预设单字词典中),则判定该句子为错误文本。
[0038]
在s102中,根据所述错误文本和预设的缺字召回列表,确定所述错误文本 对应的第一目标数目个第一候选纠正文本;其中所述缺字召回列表包含能够与 所述错误文本中的字构造为词的预设数目个字。
[0039]
本技术实施例中,预设的缺字召回列表包含预设的汉字数据集中每个汉字 分别
对应的链表,每个汉字对应的链表包含能够与该汉字构造为词语的预设数 目个汉字。
[0040]
在获取到错误文本后,对于该错误文本中的每个字(为了以示区别,将其 称为原始字),从该缺字召回列表中查找能够与该原始字构造为词语的字(为 以示区别,将其称为补全字),并将该补全字插入该错误文本中与该原始字相 邻的位置中,得到第一目标数目个候选的纠正文本作为第一候选纠正文本。
[0041]
在s103中,根据所述错误文本和预设的macbert模型,确定所述错误文本 对应的第二目标数目个第二候选纠正文本。
[0042]
本技术实施例中,预设的macbert模型是提前经过训练的一种中文自然语 言预训练模型。具体地,macbert在bert模型的基础上,通过用相似词语代替 bert模型中的掩膜(mask),以减轻预训练和微调阶段两者之间的差距。其中, bert模型为一种通过双向编码器表达的转换模型(bidirectionalencoderrepresentations from transformer),其采用新的基于掩膜的语言模型(maskedlanguage model,mlm),以致能生成深度的双向语言表征。
[0043]
在获取到错误文本后,可以将该错误文本输入已提前训练的macbert模型 进行处理,通过在错误文本中各个字和/或词中的间隔位置插入提前设置的相似 度词语,得到第二目标数目个第二候选纠正文本。
[0044]
本技术实施例中,上述的步骤s102和步骤s103的执行顺序可以任意颠倒, 或者同时执行。例如,可以通过开启多线程,通过不同线程并行执行步骤s102 和步骤s103,从而在基于缺字召回列表确定第一目标数目个第一候选纠正文本 的同时,基于macbert模型确定第二目标数目个第二候选纠正文本。
[0045]
在s104中,根据所述第一目标数目个第一候选纠正文本和所述第二目标数 目个第二候选纠正文本,确定所述错误文本对应的目标纠正文本。
[0046]
在确定第一候选纠正文本和第二候选纠正文本后,根据该第一目标数目个 第一候选纠正文本和该第二目标数目个第二候选纠正文本,通过预设的融合算 法,确定该错误文本对应的目标纠正文本。
[0047]
在一个实施例中,可以通过预设的句子评分算法分别求取各个第一候选纠 正文本和各个第二候选纠正文本的句子评分,并将评分最高的一个候选纠正文 本(第一候选纠正文本或者第二候选纠正文本)确定为目标纠正文本。或者, 从各个第一候选纠正文本和各个第二候选纠正文本中选取评分最高的前预设数 量个候选纠正文本,之后,将该预设数量个候选纠正文本中存在的纠正信息(即 不同于原始的错误文本的信息)均添加至错误文本对应的位置上,得到目标纠 正文本。示例性地,前述的句子评分算法可以为基于一定数量的携带分数标签 的正样本句子(即文本完全正确的句子)和负样本句子(即存在文本错误的句 子)训练得到的深度学习模型。
[0048]
通过本技术实施例的方法,能够在无需依赖人工校对的情况下,自动高效 地实现错误文本的纠错;并且,由于目标纠正文本是基于第一候选纠正文本和 第二候选纠正文本得到的,而第一候选纠正文本是基于预设的缺字召回列表确 定的,第二候选纠正文本是基于预设的macbert模型得到的,因此目标纠正文 本是融合缺字召回列表和macbert模型两种不同的纠正方式得到的纠正文本, 从而能够综合两种纠正方式提高文本纠错的准确性。
[0049]
可选地,所述缺字召回列表包括第一链表和第二链表,其中,所述第一链 表中的
字用于构造出以所述错误文本中的字为开头的词语;所述第二链表中的 字用于构造出以所述错误文本中的字为结尾的词语。
[0050]
本技术实施例中,对于上述的汉字数据集中的每个字,均存在对应的第一 链表和第二链表,本技术实施例中的缺字召回列表具体包括各个字分别对应的 第一链表和第二链表。示例性地,将错误文本中的字称为原始字,将缺字召回 列表中存储的能够与该原始字组成词语的字称为补全字,则对于每个原始字来 说,其对应的第一链表中存储的补全字用于构造出以该原始字为开头的词语, 其对应的第二链表中存储的补全字用于构造出以该原始字为结尾的词语。具体 地,对于每个原始字对应的预设数目个补全字,一半为该第一链表中的补全字, 一半为该第二链表中的补全字。
[0051]
示例性地,对于错误文本中的原始字“生”,其对应的缺字召回列表包含 的200个补全字中,可以包括存储于第一链表中的100个以“生”字作为开头 的词语,以及存储于第二链表中的100个以“生”字作为结尾的词语。示例性 地,“生”字对应的缺字召回列表的部分示意图如图2所示。
[0052]
本技术实施例中,由于缺字召回列表中具体包括用于构造出以错误文本中 的字为开头的词语的第一链表,以及包括用于构造出以错误文本中的字为结束 的词语的第二链表,使得基于该缺字召回列表构造出的词语、生成的纠正文本 更加全面完整,进而提高文本纠错的准确性。
[0053]
可选地,所述根据所述错误文本和预设的缺字召回列表,确定所述错误文 本对应的第一目标数目个第一候选纠正文本,包括:
[0054]
根据所述缺字召回列表,为所述错误文本中的每个字确定对应的所述预设 数目个初步纠正文本,得到第三目标数目个所述初步纠正文本;
[0055]
基于n-gram模型分别求取各个所述初步纠正文本对应的第一目标困惑度, 并将所述第一目标困惑度小于所述错误文本对应的原始困惑度的所述初步纠正 文本作为所述第一候选纠正文本,得到所述第一目标数目个所述第一候选纠正 文本。
[0056]
本技术实施例中,困惑度是用于描述句子好坏的指标,可以根据一个句子 的概率分布值而确定。例如,对于一个存在w1~wk这k个分词的句子s(即 s=w1,w2,...,wk),其概率计算公式为:
[0057]
p(s)=p(w1,w2,...,wk)=p(w1)p(w2|w1)...p(wk|w1,w2,...,w
k-1
)
[0058]
而该句子对应的困惑度pp(s)的计算公式为:
[0059][0060]
通过以上的计算公式可以知,句子质量越好,即句子概率p(s)越大,其 对应的困惑度pp(s)越小,也即语言模型对该句子越不困惑。
[0061]
上述困惑度的计算有依赖于文本的分词模型,即需要对句子进行分词计算 后,才能进行句子的概率计算,进而进行句子的困惑度运算。本技术实施例中, 具体以n-gram模型(也称为n元模型)作为分词模型,基于该n-gram模型实 现句子概率和困惑度的计算。n-gram模型是一种基于统计语言模型的算法,该 算法将文本里面的内容按照字节进行大小为n的滑动窗口操作,形成了长度为 n的字节片段序列,每一个字节片段称为gram。其中,n为任意的正整数。示 例性地,当n=5时,即该n-gram模型具体为5-gram模型时,能够有效地
平衡 模型的准确性和效率,高效准确地确定句子的困惑度。
[0062]
在一个实施例中,可以在获取错误文本之前,先进行n-gram模型的训练。 具体地,考虑到不同语料提供了丰富的语义、句式和连用词等多种表达风格, 可以通过网络爬虫工具,抓取公开的新闻数据、公众号文本数据和其它公开的 文本数据集,得到原始语料数据集。接着,对该原始语料数据集进行数据清洗 和拼接,得到中文文本数据集(该中文文本数据集的数据量可以达到14g)。 之后,根据该中文文本数据集对该n-gram模型进行训练(可以基于kenlm工具 对于该n-gram模型进行训练),得到训练后的n-gram模型,以便之后可以根 据该训练后的n-gram模型准确地实现句子困惑度计算。
[0063]
本技术实施例中,在获取错误文本后,根据上述的缺字召回列表,为该错 误文本中的每个字确定对应的预设数目个增加了对应的补全字的纠正文本,得 到每个字分别对应的预设数目个初步纠正文本。将每个分别对应的预设数目个 初步纠正文本进行汇总,最终得到第三目标数目个初步纠正文本。其中,设上 述的预设数目为q,错误文本的句子长度为m,则第三目标数目等于q*m。例 如,对于错误文本中的每个字,在预设的缺字召回列表中均存在对应q=200个 补全字,句子长度为5,则当前确定的初步纠正文本的数目为200*5=1000。
[0064]
本技术实施例中,在获取错误文本后,可以基于上述的n-gram模型求取该 错误文本的困惑度,将求得的该错误文本的困惑度称为原始困惑度。在确定第 三预设数目个初步纠正文本后,对于每个初步纠正文本,均基于上述的n-gram 模型求取该初步纠正文本的困惑度,将该初步纠正文本对应的困惑度称为第一 目标困惑度;之后将该第一目标困惑度与该错误文本对应的原始困惑度进行比 较,将第一目标困惑度小于该原始困惑度的初步纠正文本作为第一候选纠正文 本进行保留,最终得到第一目标数目个第一候选纠正文本。该第一目标数目小 于或者等于上述的第三预设数目。
[0065]
本技术实施例中,在基于缺字召回列表初步确定第三预设数目个初步纠正 文本后,进一步基于n-gram进行困惑度求取,以保留对应的第一目标困惑度小 于错误文本的原始困惑度的初步纠正文本作为最终的第一候选纠正文本,因此 能够基于句子的困惑度筛选出更准确的第一候选纠正文本,从而提高文本纠错 的准确性。
[0066]
可选地,所述根据所述错误文本和预设的macbert模型,确定所述错误文 本对应的第二目标数目个第二候选纠正文本,包括:
[0067]
通过所述macbert模型依次在所述错误文本的每个位置添加掩膜,得到第 四目标数目个掩膜文本;
[0068]
基于n-gram模型分别求取各个所述掩膜文本对应的第二目标困惑度,并将 所述第二目标困惑度小于所述错误文本对应的原始困惑度的所述掩膜文本作为 所述第二候选纠正文本,得到第二目标数目个所述第二候选纠正文本。
[0069]
本技术实施例中,在获取出错误文本后,通过上述的macbert模型,依次 在该错误文本中的每个位置(包括每两个字和/或词之间的间隔位置,以及第一 个字之前的位置,最后一个字之后的位置)添加掩膜mask,具体地,将该错误 文本输入到macbert模型中的掩蔽语言模型进行预测,确定每个位置分别对应 的置信度最大的掩膜文本,得到第四目标数目个掩膜文本。其中,设m为错误 文本的句子长度,则该第四目标数目等于m 1。
[0070]
在得到第四目标数目个掩膜文本后,对于每个掩膜文本,分别基于上述的 n-gram
模型求取该掩膜文本的困惑度,将该掩膜文本对应的困惑度称为第二目 标困惑度。之后,将对应的第二目标困惑度小于该错误文本对应的原始困惑度 的掩膜确定为第二候选纠正文本,最终得到第二目标数目个第二候选纠正文本, 其中第二目标数目小于或者等于m 1。
[0071]
本技术实施例中,由于能够先基于macbert模型确定第四目标数目个掩膜 文本后,基于n-gram模型分别求取各个所述掩膜文本对应的第二目标困惑度, 并将所述第二目标困惑度小于所述错误文本对应的原始困惑度的所述掩膜文本 作为所述第二候选纠正文本,因此能够基于句子的困惑度筛选出更准确的第二 候选纠正文本,从而提高文本纠错的准确性。
[0072]
可选地,所述根据所述第一目标数目个第一候选纠正文本和所述第二目标 数目个第二候选纠正文本,确定所述错误文本对应的目标纠正文本,包括:
[0073]
根据所述第一目标数目个第一候选纠正文本和所述第二目标数目个第二候 选纠正文本,确定所述错误文本中每个位置分别对应的困惑度较低的候选纠正 文本,得到第三候选纠正文本;
[0074]
根据所述第三候选纠正文本,确定所述错误文本对应的目标纠正文本。
[0075]
本技术实施例中,通过基于缺字召回列表和基于macbert模型两种不同的 方法分别在错误文本的每个位置添加补全字或者mask后,对于错误文本的同 一位置的纠正,可能同时存在第一候选纠正文本和第二候选纠正文本这两个不 同的候选纠正文本。此时,对于同一位置,可以基于上述的n-gram模型分别求 取第一候选纠正文本和第二候选纠正文本的困惑度,并将其中困惑度较低的候 选纠正文本确定为错误文本在该位置上的第三候选纠正文本。设错误文本的句 子长度为m,则通过该方法确定出的第三候选纠正文本的数量为m 1。
[0076]
在确定第三候选纠正文本后,再进一步从第三候选纠正文本中选择最佳(例 如困惑度最低)的一个作为目标纠正文本,或者融合第三候选纠正文本的至少 两个纠正信息(即相对于错误文本多出的在某些位置上增加的补全字信息), 得到最终的目标纠正文本。
[0077]
本技术实施例中,由于在通过两种不同方法确定错误文本对应的第一候选 纠正文本和第二候选纠正文本后,能够先基于困惑度对错误文本的同一位置对 应的不同的候选纠正文本进行择优选择,得到第三候选纠正文本,使得之后基 于该第三候选纠正文本得到的目标纠正文本的质量更佳,从而提高了文本纠错 的准确性。
[0078]
可选地,所述根据所述第三候选纠正文本,确定所述错误文本对应的目标 纠正文本,包括:
[0079]
以各个所述第三候选纠正文本中困惑度最低的第三候选纠正文本为基准纠 正文本,以所述基准纠正文本之外的第三候选纠正文本为修正文本,基于所述 修正文本的纠正信息对所述基准纠正文本进行修正,得到所述错误文本对应的 目标纠正文本。
[0080]
本技术实施例中,在确定m 1个第三候选纠正文本后,从第三候选纠正文 本中选择困惑度最低的一个第三候选纠正文本作为基准纠正文本。之后,以该 基准纠正文本为基准,以除该基准纠正文本之外的第三候选纠正文本为修正文 本,根据修正文本的纠正信息对该基准纠正文本进行修正,得到该错误文本对 应的目标纠正文本。其中,修正文本的纠正信息指的是该修正文本中相对于错 误文本多出的补全字以及该补全字对应的位置信息。在一个实施例中,修正文 本对基准纠正文本的修正过程如下:
[0081]
a1:计算当前的基准纠正文本的困惑度,得到当前的基准困惑度;
[0082]
a2:以当前的基准纠正文本为基础,按预设顺序从各个修正文本中获取一 个修正文本对应的补全字以及该补全字对应的位置信息,根据该补全字的位置 信息将该补全字添加至该基准纠正文本相对应的位置上,得到待定纠正文本;
[0083]
a3:计算该待定纠正文本的困惑度,得到待定困惑度;
[0084]
a4:若该待定困惑度小于该基准困惑度,则以该待定纠正文本作为新的当 前的基准纠正文本并返回执行步骤a1;否则直接返回执行a2,直至各个修正 文本均已被获取执行了步骤a2。
[0085]
本技术实施例中,由于能够从第三候选纠正文本中确定困惑度最低的第三 候选纠正文本作为基准纠正文本,并以该基准纠正文本为基础,通过出该基准 纠正文本之外的修正文本对该基准纠正文本进行修正,因此能够在保证困惑度 最低的同时融合多个第三候选纠正文本,准确地得到目标纠正文本,提高文本 纠错的准确性。
[0086]
可选地,在所述获取错误文本之前,还包括:
[0087]
获取中文文本数据集;
[0088]
从所述中文文本数据集中选取第一预设比例的字和/或词语进行掩膜操作, 得到目标数据集;
[0089]
根据所述目标数据集对待训练的macbert模型进行训练,得到训练后的所 述macbert模型。
[0090]
本技术实施例中,在获取错误文本之前,先对原始的待训练的macbert模 型进行训练。该macbert模型的训练数据来源可以与上述的用于训练n-gram模 型的数据来源一致。即,可以通过爬取新闻数据、公众号文本数据和其它公开 的文本数据集,并进行数据清洗后,得到该中文文本数据集。
[0091]
在获取到该中文文本数据集后,可以从其中选取第一预设比例(例如15%) 的字和/或词作为待掩膜数据。对该第一预设比例的待掩膜数据,可以从中获取 80的字和/或词用掩蔽标记[mask]替换,20%的字和/或词保持不变,得到目标 数据集。
[0092]
之后将该目标数据集输入待训练的macbert模型进行训练,macbert模型 在训练过程中根据目标数据集的双向上下文信息预测掩蔽的词,并进行模型微 调,最终得到训练后的macbert模型。
[0093]
本技术实施例中,由于在获取错误文本之前,能够获取中文本文本数据集 并通过处理得到目标数据集后,对macbert模型进行训练,使得之后在获取到 错误文本后,能够基于训练后的macbert模型高效准确地确定该错误文本对应 的第二候选纠正文本,从而提高文本纠错的准确性。
[0094]
应理解,上述实施例中各步骤的序号的大小并不意味着执行顺序的先后, 各过程的执行顺序应以其功能和内在逻辑确定,而不应对本技术实施例的实施 过程构成任何限定。
[0095]
实施例二:
[0096]
图3示出了本技术实施例提供的一种文本纠错装置的结构示意图,为了便 于说明,仅示出了与本技术实施例相关的部分:
[0097]
该文本纠错装置包括:获取单元31、第一纠正单元32、第二纠正单元33、 目标纠正
文本确定单元34。其中:
[0098]
获取单元31,用于获取错误文本。
[0099]
第一纠正单元32,用于根据所述错误文本和预设的缺字召回列表,确定所 述错误文本对应的第一目标数目个第一候选纠正文本;其中所述缺字召回列表 包含能够与所述错误文本中的字构造为词语的预设数目个字。
[0100]
第二纠正单元33,用于根据所述错误文本和预设的macbert模型,确定所 述错误文本对应的第二目标数目个第二候选纠正文本。
[0101]
目标纠正文本确定单元34,用于根据所述错误文本和预设的macbert模型, 确定所述错误文本对应的第二目标数目个第二候选纠正文本。
[0102]
可选地,所述缺字召回列表包括第一链表和第二链表,其中,所述第一链 表中的字用于构造出以所述错误文本中的字为开头的词语;所述第二链表中的 字用于构造出以所述错误文本中的字为结尾的词语。
[0103]
可选地,所述第一纠正单元32,具体用于根据所述缺字召回列表,为所述 错误文本中的每个字确定对应的所述预设数目个初步纠正文本,得到第三目标 数目个所述初步纠正文本;基于n-gram模型分别求取各个所述初步纠正文本对 应的第一目标困惑度,并将所述第一目标困惑度小于所述错误文本对应的原始 困惑度的所述初步纠正文本作为所述第一候选纠正文本,得到所述第一目标数 目个所述第一候选纠正文本。
[0104]
可选地,所述第二纠正单元33,具体用于通过所述macbert模型依次在所 述错误文本的每个位置添加掩膜,得到第四目标数目个掩膜文本;基于n-gram 模型分别求取各个所述掩膜文本对应的第二目标困惑度,并将所述第二目标困 惑度小于所述错误文本对应的原始困惑度的所述掩膜文本作为所述第二候选纠 正文本,得到第二目标数目个所述第二候选纠正文本。
[0105]
可选地,所述目标纠正文本确定单元34,包括:
[0106]
第三候选纠正文本确定模块,用于根据所述第一目标数目个第一候选纠正 文本和所述第二目标数目个第二候选纠正文本,确定所述错误文本中每个位置 分别对应的困惑度较低的候选纠正文本,得到第三候选纠正文本;
[0107]
目标纠正文本确定模块,用于根据所述第三候选纠正文本,确定所述错误 文本对应的目标纠正文本。
[0108]
可选地,所述目标纠正文本确定单元,具体用于以各个所述第三候选纠正 文本中困惑度最低的第三候选纠正文本为基准纠正文本,以所述基准纠正文本 之外的第三候选纠正文本为修正文本,基于所述修正文本的纠正信息对所述基 准纠正文本进行修正,得到所述错误文本对应的目标纠正文本。
[0109]
可选地,所述文本纠错装置,还包括:
[0110]
训练单元,用于获取中文文本数据集;从所述中文文本数据集中选取第一 预设比例的字和/或词语进行掩膜操作,得到目标数据集;根据所述目标数据集 对待训练的macbert模型进行训练,得到训练后的所述macbert模型。
[0111]
需要说明的是,上述装置/单元之间的信息交互、执行过程等内容,由于与 本技术方法实施例基于同一构思,其具体功能及带来的技术效果,具体可参见 方法实施例部分,此处不再赘述。
[0112]
实施例三:
[0113]
图4是本技术一实施例提供的电子设备的示意图。如图4所示,该实施例 的电子设备4包括:处理器40、存储器41以及存储在所述存储器41中并可在 所述处理器40上运行的计算机程序42,例如文本纠错程序。所述处理器40执 行所述计算机程序42时实现上述各个文本纠错方法实施例中的步骤,例如图1 所示的步骤s101至s104。或者,所述处理器40执行所述计算机程序42时实 现上述各装置实施例中各模块/单元的功能,例如图3所示单元31至34的功能。
[0114]
示例性的,所述计算机程序42可以被分割成一个或多个模块/单元,所述 一个或者多个模块/单元被存储在所述存储器41中,并由所述处理器40执行, 以完成本技术。所述一个或多个模块/单元可以是能够完成特定功能的一系列计 算机程序指令段,该指令段用于描述所述计算机程序42在所述电子设备4中的 执行过程。例如,所述计算机程序42可以被分割成第一获取单元、特征提取单 元、边生成概率向量确定单元和边确定单元,各单元具体功能如下:
[0115]
第一获取单元,用于获取图数据的节点特征矩阵及邻接矩阵。
[0116]
特征提取单元,用于将所述节点特征矩阵及所述邻接矩阵输入已训练的目 标神经网络,得到所述图数据的节点融合特征矩阵、节点生成度向量及节点流 行度向量。
[0117]
边生成概率向量确定单元,用于根据所述节点融合特征矩阵、所述节点生 成度向量及所述节点流行度向量,得到每个节点对应的边生成概率向量。
[0118]
边确定单元,用于根据每个节点对应的边生成概率向量确定预测生成的边。
[0119]
所述电子设备4可以是桌上型计算机、笔记本、掌上电脑及云端服务器等 计算设备。所述电子设备可包括,但不仅限于,处理器40、存储器41。本领域 技术人员可以理解,图4仅仅是电子设备4的示例,并不构成对电子设备4的 限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部 件,例如所述电子设备还可以包括输入输出设备、网络接入设备、总线等。
[0120]
所称处理器40可以是中央处理单元(central processing unit,cpu),还可 以是其他通用处理器、数字信号处理器(digital signal processor,dsp)、专用 集成电路(application specific integrated circuit,asic)、现场可编程门阵列 (field-programmable gate array,fpga)或者其他可编程逻辑器件、分立门或 者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理 器也可以是任何常规的处理器等。
[0121]
所述存储器41可以是所述电子设备4的内部存储单元,例如电子设备4 的硬盘或内存。所述存储器41也可以是所述电子设备4的外部存储设备,例如 所述电子设备4上配备的插接式硬盘,智能存储卡(smart media card,smc), 安全数字(secure digital,sd)卡,闪存卡(flash card)等。进一步地,所述 存储器41还可以既包括所述电子设备4的内部存储单元也包括外部存储设备。 所述存储器41用于存储所述计算机程序以及所述电子设备所需的其他程序和 数据。所述存储器41还可以用于暂时地存储已经输出或者将要输出的数据。
[0122]
所属领域的技术人员可以清楚地了解到,为了描述的方便和简洁,仅以上 述各功能单元、模块的划分进行举例说明,实际应用中,可以根据需要而将上 述功能分配由不同
的功能单元、模块完成,即将所述装置的内部结构划分成不 同的功能单元或模块,以完成以上描述的全部或者部分功能。实施例中的各功 能单元、模块可以集成在一个处理单元中,也可以是各个单元单独物理存在, 也可以两个或两个以上单元集成在一个单元中,上述集成的单元既可以采用硬 件的形式实现,也可以采用软件功能单元的形式实现。另外,各功能单元、模 块的具体名称也只是为了便于相互区分,并不用于限制本技术的保护范围。上 述系统中单元、模块的具体工作过程,可以参考前述方法实施例中的对应过程, 在此不再赘述。
[0123]
在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详 述或记载的部分,可以参见其它实施例的相关描述。
[0124]
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示 例的单元及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来 实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用 和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现 所描述的功能,但是这种实现不应认为超出本技术的范围。
[0125]
在本技术所提供的实施例中,应该理解到,所揭露的装置/电子设备和方法, 可以通过其它的方式实现。例如,以上所描述的装置/电子设备实施例仅仅是示 意性的,例如,所述模块或单元的划分,仅仅为一种逻辑功能划分,实际实现 时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一 个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间 的耦合或直接耦合或通讯连接可以是通过一些接口,装置或单元的间接耦合或 通讯连接,可以是电性,机械或其它的形式。
[0126]
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为 单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者 也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部 单元来实现本实施例方案的目的。
[0127]
另外,在本技术各个实施例中的各功能单元可以集成在一个处理单元中, 也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元 中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的 形式实现。
[0128]
所述集成的模块/单元如果以软件功能单元的形式实现并作为独立的产品 销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解, 本技术实现上述实施例方法中的全部或部分流程,也可以通过计算机程序来指 令相关的硬件来完成,所述的计算机程序可存储于一计算机可读存储介质中, 该计算机程序在被处理器执行时,可实现上述各个方法实施例的步骤。其中, 所述计算机程序包括计算机程序代码,所述计算机程序代码可以为源代码形式、 对象代码形式、可执行文件或某些中间形式等。所述计算机可读介质可以包括: 能够携带所述计算机程序代码的任何实体或装置、记录介质、u盘、移动硬盘、 磁碟、光盘、计算机存储器、只读存储器(rom,read-only memory)、随机 存取存储器(ram,random access memory)、电载波信号、电信信号以及软 件分发介质等。需要说明的是,所述计算机可读介质包含的内容可以根据司法 管辖区内立法和专利实践的要求进行适当的增减,例如在某些司法管辖区,根 据立法和专利实践,计算机可读介质不包括电载波信号和电信信号。
[0129]
以上所述实施例仅用以说明本技术的技术方案,而非对其限制;尽管参照 前述实施例对本技术进行了详细的说明,本领域的普通技术人员应当理解:其 依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特 征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本申 请各实施例技术方案的精神和范围,均应包含在本技术的保护范围之内。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献