检测叠词错误的方法、装置及系统与流程

文档序号:25423693发布日期:2021-06-11 21:36阅读:137来源:国知局
检测叠词错误的方法、装置及系统与流程

本发明涉及计算机自然语言处理的技术领域,尤其涉及一种检测叠词错误的方法、装置及系统。



背景技术:

随着互联网的快速发展,人们日常都会使用大量的文本以获取信息。不可避免的会使用叠词,尤其通过使用叠字来加强语气,例如火红火红的枫叶、大家一起高兴高兴,使用过程中容易出现错误。因此需在文本中判断是否有叠词使用的错误。

叠词由两个或两个以上的字形和字义都相同的文字,重叠在一起使用所组成的词语。然而判断一个词重复使用是否是叠词错误,并不容易,不是所有的词都可以当做叠词出现。例如通过统计识别可能会将叠词当做错别字的插入,或者将满足叠词格式的词都当做叠词使用,则会造成很多的错误使用而未被发现。

目前检测叠词使用错误的工具很少,即使可以检测叠词错误,由于大多依赖规则,导致叠词错误识别的准确率较低。



技术实现要素:

本发明提供的一种检测叠词错误的方法、装置及系统,以实现叠词误用的判断,提高检测的准确率和检测速度,且能够适应不同长度的句子,进而提高长句叠词判断的准确率。

第一方面,本发明实施例提供的一种检测叠词错误的方法,包括:

获取文本,并得到所述文本中的标点符号、字符串信息;

根据所述标点符号、所述字符串信息得到多个待检测文本,且获得所述待检测文本中的重复词组;

对所述重复词组所在的原始文本片段进行分词,检测是否存在相邻叠词;

若存在所述相邻叠词,将所述相邻叠词的词性在预设词性数据库中进行匹配;

若匹配成功,则将所述原始文本片段中的一个叠词进行删除得到待检测文本片段,并得到所述原始文本片段和所述待检测文本片段的使用概率;

若所述原始文本片段的使用概率小于所述待检测文本片段的使用概率,则确定所述相邻叠词在原始文本片段中使用错误。

在一种可能的设计中,得到所述原始文本片段和所述待检测文本片段的使用概率,包括:

采用移动窗口分别在所述原始文本片段与所述待检测文本片段上移动,获得除去所述叠词的多个目标检验字;

通过预设语言模型,分别检测所述目标检验字在所述原始文本片段、所述待检测文本片段中的使用概率后,确定所述原始文本片段和所述待检测文本片段的使用概率。

在一种可能的设计中,还包括:

根据所述原始文本片段与所述待检测文本片段,设置所述移动窗口的参数;

根据所述移动窗口的大小参数,所述移动窗口分别从所述原始文本片段、所述待检测文本片段中所述叠词位置开始,依次向两端部分位置移动,获得除去所述叠词的多个目标检验字。

在一种可能的设计中,还包括:

若所述目标检验字未填满所述移动窗口,则确定所述移动窗口在所述原始文本片段、所述待检测文本片段的一端部分位置,并在另一端部分位置移动所述移动窗口时,将所述目标检验字填满所述移动窗口。

在一种可能的设计中,将所述相邻叠词的词性在预设词性数据库中进行匹配,包括:

对所述相邻叠词进行词性标注,将所述相邻叠词的词性与预设词性数据库中的预存词性进行匹配。

在一种可能的设计中,还包括:

若所述预设词性数据库中不存在与所述相邻叠词相匹配的预存词性,则确定所述相邻叠词使用错误。

在一种可能的设计中,在确定所述相邻叠词在原始文本片段中使用错误之后,还包括:

在所述文本中标记使用错误的相邻叠词。

第二方面,本发明实施例提供的一种检测叠词错误的装置,包括:

获取模块,用于获取文本,并得到所述文本中的标点符号、字符串信息;

得到模块,用于根据所述标点符号、所述字符串信息得到多个待检测文本,且获得所述待检测文本中的重复词组;

检测模块,用于对所述重复词组所在的原始文本片段进行分词,检测是否存在相邻叠词;

匹配模块,用于若存在所述相邻叠词,将所述相邻叠词的词性在预设词性数据库中进行匹配;

删除模块,用于若匹配成功,则将所述原始文本片段中的一个叠词进行删除得到待检测文本片段,并得到所述原始文本片段和所述待检测文本片段的使用概率;

确定模块,用于若所述原始文本片段的使用概率小于所述待检测文本片段的使用概率,则确定所述相邻叠词在原始文本片段中使用错误。

在一种可能的设计中,得到所述原始文本片段和所述待检测文本片段的使用概率,包括:

采用移动窗口分别在所述原始文本片段与所述待检测文本片段上移动,获得除去所述叠词的多个目标检验字;

通过预设语言模型,分别检测所述目标检验字在所述原始文本片段、所述待检测文本片段中的使用概率后,确定所述原始文本片段和所述待检测文本片段的使用概率。

在一种可能的设计中,还包括:

根据所述原始文本片段与所述待检测文本片段,设置所述移动窗口的参数;

根据所述移动窗口的大小参数,所述移动窗口分别从所述原始文本片段、所述待检测文本片段中所述叠词位置开始,依次向两端部分位置移动,获得除去所述叠词的多个目标检验字。

在一种可能的设计中,还包括:

若所述目标检验字未填满所述移动窗口,则确定所述移动窗口在所述原始文本片段、所述待检测文本片段的一端部分位置,并在另一端部分位置移动所述移动窗口时,将所述目标检验字填满所述移动窗口。

在一种可能的设计中,将所述相邻叠词的词性在预设词性数据库中进行匹配,包括:

对所述相邻叠词进行词性标注,将所述相邻叠词的词性与预设词性数据库中的预存词性进行匹配。

在一种可能的设计中,还包括:

若所述预设词性数据库中不存在与所述相邻叠词相匹配的预存词性,则确定所述相邻叠词使用错误。

在一种可能的设计中,在确定所述相邻叠词在原始文本片段中使用错误之后,还包括:

在所述文本中标记使用错误的相邻叠词。

第三方面,本发明实施例提供的一种检测叠词错误的系统,包括:存储器和处理器,存储器中存储有所述处理器的可执行指令;其中,所述处理器配置为经由执行所述可执行指令来执行第一方面中任一项所述的检测叠词错误的方法。

第四方面,本发明实施例提供的一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时第一方面中任一项所述的检测叠词错误的方法。

本发明提供的一种检测叠词错误的方法、装置及系统,该方法包括:获取文本,并得到所述文本中的标点符号、字符串信息;根据所述标点符号、所述字符串信息得到多个待检测文本,且获得所述待检测文本中的重复词组;对所述重复词组所在的原始文本片段进行分词,检测是否存在相邻叠词;若存在所述相邻叠词,将所述相邻叠词的词性在预设词性数据库中进行匹配;若匹配成功,则将所述原始文本片段中的一个叠词进行删除得到待检测文本片段,并得到所述原始文本片段和所述待检测文本片段的使用概率;若所述原始文本片段的使用概率小于所述待检测文本片段的使用概率,则确定所述相邻叠词在原始文本片段中使用错误。以实现叠词误用的判断,提高检测的准确率和检测速度,且能够适应不同长度的句子,进而提高长句叠词判断的准确率。

附图说明

为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。

图1为本发明一典型应用场景示意图;

图2为本发明实施例一提供的检测叠词错误的方法的流程图;

图3为本发明实施例一提供的检测叠词错误的方法中部分效果示意图一;

图4为本发明实施例一提供的检测叠词错误的方法中部分效果示意图二;

图5为本发明实施例二提供的检测叠词错误的装置的结构示意图;

图6为本发明实施例三提供的检测叠词错误的系统的结构示意图。

具体实施方式

为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”、“第三”、“第四”等(如果存在)是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本发明的实施例例如能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。

下面以具体地实施例对本发明的技术方案以及本申请的技术方案如何解决上述技术问题进行详细说明。下面这几个具体的实施例可以相互结合,对于相同或相似的概念或过程可能在某些实施例中不再赘述。下面将结合附图,对本发明的实施例进行描述。

图1为本发明一典型应用场景示意图,如图1所示,本发明检测叠词错误的系统11将获得的文本,例如我们分析分析了这个案例,得到多个待检测文本,且获得待检测文本中的重复词组;对重复词组所在的原始文本片段进行分词,检测是否存在相邻叠词;若存在相邻叠词,将相邻叠词的词性在预设词性数据库中进行匹配;若匹配成功,则将原始文本片段中的一个叠词进行删除得到待检测文本片段,并得到原始文本片段和待检测文本片段的使用概率;若原始文本片段的使用概率小于待检测文本片段的使用概率,则确定相邻叠词在原始文本片段中使用错误。在一种可选的实施例中,还可以在文本中标记(例如加粗)使用错误的相邻叠词。以实现叠词误用的判断,提高检测的准确率和检测速度,且能够适应不同长度的句子,进而提高长句叠词判断的准确率。

图2为本发明实施例一提供的检测叠词错误的方法的流程图,如图2所示,本实施例中检测叠词错误的方法可以包括:

s201、获取文本,并得到文本中的标点符号、字符串信息。

本实施例中,检测叠词错误的系统获取文本可以通过从网络上直接下载或者复制来获取电子文本,还可以将纸质文本扫描后转换成需求格式的电子文本来获取文本,本实施例中不作具体限定,以根据实际需求进一步具体限定以达到更好的效果。其中文本中包括但不限于中文汉字,标点符号、以及字符串等等。

从该文本中根据字符串和规则匹配找到不需要进行叠词检测的位置,例如:非汉字的字符或者字符串,各种标点符号(例如逗号、句号等等),尤其包括书名号及其中的内容《xxx》、引号及其包含的内容“yyy”、括号及其包含的内容(zzz)等等。

s202、根据标点符号、字符串信息得到多个待检测文本,且获得待检测文本中的重复词组。

本实施例中,在上述示例的文本中根据非汉字的位置,将该文本划分为多个待检测文本,其中待检测文本为该本文的全部或者部分文本片段,例如文本:我读着《秋天的xx》这本书,讲述一个小姑娘走在深秋的树林里,火红火红的枫叶从树上落下。将该文本划分为:我读着这本书讲述一个小姑娘走在深秋的树林里火红火红的枫叶从树上落下等四个待检测文本。进而从待检测文本中获取重复词组,在一种可选的实施例中,重复词组可以是相邻的,也可以不相邻。例如上例中从“火红火红的枫叶从树上落下”这个待检测文本中获得相邻的重复词组“火红火红”。

s203、对重复词组所在的原始文本片段进行分词,检测是否存在相邻叠词。

具体的,汉语叠词由两个或两个以上的字形和字义都相同的汉字,重叠在一起使用所组成的词语,可以包括aab式、abb式、aa式、aba式、abab式、aabb式等形式的叠词,例如分别为帮帮忙、笑呵呵、往往、时不时、呼啦呼啦、安安静静等。

结合上例,对相邻重复词组所在的原始文本片段进行分词,例如得到火红/火红/的/枫叶/从/树上/落下,进而检测存在相邻叠词“火红”。

s204、若存在相邻叠词,将相邻叠词的词性在预设词性数据库中进行匹配。

在一种可选的实施例中,将相邻叠词的词性在预设词性数据库中进行匹配,包括:

对相邻叠词进行词性标注,将相邻叠词的词性与预设词性数据库中的预存词性进行匹配。

具体的,在一种可选的实施例中,在将相邻叠词在预设词性数据库中进行匹配之前,获取大量的叠词,并对这些叠词进行词性标注,例如将叠词“安安静静”的词性标注为形容词,并将获取的所有叠词对应的词性数据存储于预设词性数据库中,以便后续需检测的叠词来进行词性的匹配。

在一种可选的实施例中,还包括:

若预设词性数据库中不存在与相邻叠词相匹配的预存词性,则确定相邻叠词使用错误。

例如,将存在的相邻叠词“分析分析”的词性标注为动词,且在预设词性数据库中进行匹配,但预设词性数据库中不存在与该相邻叠词相匹配的预存词性,则确定该相邻叠词使用错误。

s205、若匹配成功,则将原始文本片段中的一个叠词进行删除得到待检测文本片段,并得到原始文本片段和待检测文本片段的使用概率。

在一种可选的实施例中,得到原始文本片段和待检测文本片段的使用概率,包括:

采用移动窗口分别在原始文本片段与待检测文本片段上移动,获得除去叠词的多个目标检验字;

通过预设语言模型,分别检测目标检验字在原始文本片段、待检测文本片段中的使用概率后,确定原始文本片段和待检测文本片段的使用概率。

具体的,当预设词性数据库中存在与该相邻叠词相匹配的预存词性,则将原始文本片段中的一个叠词进行删除得到待检测文本片段。例如将原始文本片段“我们分析分析了这个案例。”中的一个叠词“分析”进行删除,得到待检测文本片段“我们分析了这个案例。”

进而得到原始文本片段和待检测文本片段的使用概率,包括:采用移动窗口分别在原始文本片段与待检测文本片段上移动,例如原始文本片段为“我们分析分析了这个案例。”,待检测文本片段为“我们分析了这个案例。”参考图3,图3为本发明实施例一提供的检测叠词错误的方法中部分效果示意图一,如图3所示,移动窗口分别从叠词“分析”或者“分析分析”的位置开始,依次向两端部分位置进行移动,获得除去叠词的多个目标检验字,例如“我们”等等。进而通过预设语言模型,检测例如“我们”的目标检验字在原始文本片段、待检测文本片段中的使用概率后,确定原始文本片段和待检测文本片段的使用概率。其中预设语言模型,经过大规模中文语料的训练,可以学习中文语言规律。将文本片段中的某一个位置叠词去掉之后,利用该预设语言模型,可以得到文本片段中在该位置,使用叠词的概率为多少。在一种可选的实施例中,采用公式且p(w)=p(w1,w2,...,wi≈p(w1)*p(w2)*p(wi)。在一种可选的实施例中预训练语言模型可以采用bert、ernie、xlnet等模型训练好的中文语言模型。

进而,根据原始文本片段和待检测文本片段中的所有目标检验字的使用概率后,确定原始文本片段和待检测文本片段的使用概率。假设原始句子和对比句子中前后文窗口中的字分别为x1,x2,x3,x4,利用预训练语言模型,计算所得概率分别为如果则原始文本片段的使用概率更高,叠词为正确用法,否则叠词为误用。

在一种可选的实施例中,还包括:

根据原始文本片段与待检测文本片段,设置移动窗口的参数;

根据移动窗口的大小参数,移动窗口分别从原始文本片段、待检测文本片段中叠词位置开始,依次向两端部分位置移动,获得除去叠词的多个目标检验字。

具体的,移动窗口可以包括边框对应的参数设置,大小对应的参数设置以及颜色对应的参数设置,根据原始文本片段与待检测文本片段,设置移动窗口的参数,尤其设置移动窗口的大小参数,且随着移动窗口设置的越大,准确率相对越高,但移动窗口的移动速度也会成倍增加,因此根据原始文本片段与待检测文本片段在实际检测中具体设置,本实施例中移动窗口对应的大小值n=2时,可以得到较高的准确率。

例如,移动窗口分别从原始文本片段、待检测文本片段中叠词位置开始,依次向两端部分位置移动,获得除去叠词的多个目标检验字。参考图4中获得的目标检验字,例如“我”、“天空发”、“雪花绽放”等等,图4为本发明实施例一提供的检测叠词错误的方法中部分效果示意图二。

在一种可选的实施例中,还包括:

若目标检验字未填满移动窗口,则确定移动窗口在原始文本片段、待检测文本片段的一端部分位置,并在另一端部分位置移动移动窗口时,将目标检验字填满移动窗口。

具体的,移动窗口采取叠词前端的n个字,和后端的n个字(包括标点符号),作为目标检验字。如果前文字数不够n个,则后文窗口长度相应增加;反过来,如果后文字数不够n个,前文窗口长度则会相应增加。

参考图4示例,n=2,在原始文本片段、待检测文本片段上移动移动窗口时,例如图4中的第二行、第三行以及第四行对应的示例,无论是哪一种情况,移动移动窗口时分别确定一端部分的位置,若检测目标检验字未填满移动窗口,则在该原始文本片段或者待检测文本片段的另一端部分位置移动移动窗口时,需将目标检验字填满移动窗口,例如一端部分位置对应的目标检验字只有一个,那么另一端部分位置对应的目标检验字需要三个;或者一端部分位置对应的检验字为空,则另一端部分位置对应的目标检验字需为四个;或者无论哪一段部分位置对应的目标检验字不满足预设目标检验字的个数时,例如缺少的个数差值为1,则采用另一端位置对应的目标检验字增加相应的差值为1个数的目标检验字,其中目标检验字还包括标点符号。

s206、若原始文本片段的使用概率小于待检测文本片段的使用概率,则确定相邻叠词在原始文本片段中使用错误。

结合上例,假设原始文本片段和对待检测文本片段中前后文移动窗口中的字分别为x1,x2,x3,x4,利用预设语言模型,计算所得概率分别为如果则原始文本片段的使用概率更高,叠词为正确用法,否则叠词为误用。

例如,“这份数据我们分析分析了一下,发现了不少问题。”检查结果:“分析”重复使用,属于叠词错误。又例如,“这是个经典案例,我们一起坐下来分析分析。”检查结果:此处“分析分析”不属于叠词错误。再例如,“网站处于两极分化,从首页的广告来看,主要主要针对中老年人。”检查结果:“主要”重复使用,属于叠词错误。又例如,“西贝的快速发展使其对对遇到的各种商业机会,不自觉地进行了业务延伸。”检查结果:“对”重复使用,属于叠字错误。再例如,“秋天到了,火红火红的枫叶从树上落下。”检查结果:此处“火红火红”不属于叠词错误。在一种可选的实施例中,预设语言模型可以采用bert、ernie、xlnet等模型训练好的中文语言模型。

在一种可选的实施例中,在确定相邻叠词在原始文本片段中使用错误之后,还包括:

在文本中标记使用错误的相邻叠词。

例如,原始文本片段为“还分析分析了其中的重要部分”,通过上述示例的方法不仅可以准确检测叠词的使用错误,还可以在对应文本“我阅读了很多资料,还分析分析了其中的重要部分”中将使用错误的相邻叠词标记出来,以便后续使用,例如采用加粗的方式进行标记,本实施例不作限定。

图5为本发明实施例二提供的检测叠词错误的装置的结构示意图,如图5所示,本实施例中检测叠词错误的装置可以包括:

获取模块31,用于获取文本,并得到文本中的标点符号、字符串信息;

得到模块32,用于根据标点符号、字符串信息得到多个待检测文本,且获得待检测文本中的重复词组;

检测模块33,用于对重复词组所在的原始文本片段进行分词,检测是否存在相邻叠词;

匹配模块34,用于若存在相邻叠词,将相邻叠词的词性在预设词性数据库中进行匹配;

删除模块35,用于若匹配成功,则将原始文本片段中的一个叠词进行删除得到待检测文本片段,并得到原始文本片段和待检测文本片段的使用概率;

确定模块36,用于若原始文本片段的使用概率小于待检测文本片段的使用概率,则确定相邻叠词在原始文本片段中使用错误。

在一种可能的设计中,得到原始文本片段和待检测文本片段的使用概率,包括:

采用移动窗口分别在原始文本片段与待检测文本片段上移动,获得除去叠词的多个目标检验字;

通过预设语言模型,分别检测目标检验字在原始文本片段、待检测文本片段中的使用概率后,确定原始文本片段和待检测文本片段的使用概率。

在一种可能的设计中,还包括:

根据原始文本片段与待检测文本片段,设置移动窗口的参数;

根据移动窗口的大小参数,移动窗口分别从原始文本片段、待检测文本片段中叠词位置开始,依次向两端部分位置移动,获得除去叠词的多个目标检验字。

在一种可能的设计中,还包括:

若目标检验字未填满移动窗口,则确定移动窗口在原始文本片段、待检测文本片段的一端部分位置,并在另一端部分位置移动移动窗口时,将目标检验字填满移动窗口。

在一种可能的设计中,将相邻叠词的词性在预设词性数据库中进行匹配,包括:

对相邻叠词进行词性标注,将相邻叠词的词性与预设词性数据库中的预存词性进行匹配。

在一种可能的设计中,还包括:

若预设词性数据库中不存在与相邻叠词相匹配的预存词性,则确定相邻叠词使用错误。

在一种可能的设计中,在确定相邻叠词在原始文本片段中使用错误之后,还包括:

在文本中标记使用错误的相邻叠词。

本实施例的检测叠词错误的装置,可以执行图2所示方法中的技术方案,其具体实现过程和技术原理参见图2所示方法中的相关描述,此处不再赘述。

图6为本发明实施例三提供的检测叠词错误的系统的结构示意图,如图6所示,本实施例的检测叠词错误的系统40可以包括:处理器41和存储器42。

存储器42,用于存储计算机程序(如实现上述检测叠词错误的方法的应用程序、功能模块等)、计算机指令等;

上述的计算机程序、计算机指令等可以分区存储在一个或多个存储器42中。并且上述的计算机程序、计算机指令、数据等可以被处理器41调用。

处理器41,用于执行存储器42存储的计算机程序,以实现上述实施例涉及的方法中的各个步骤。

具体可以参见前面方法实施例中的相关描述。

处理器41和存储器42可以是独立结构,也可以是集成在一起的集成结构。当处理器41和存储器42是独立结构时,存储器42、处理器41可以通过总线43耦合连接。

本实施例的服务器可以执行图2所示方法中的技术方案,其具体实现过程和技术原理参见图2所示方法中的相关描述,此处不再赘述。

此外,本申请实施例还提供一种计算机可读存储介质,计算机可读存储介质中存储有计算机执行指令,当用户设备的至少一个处理器执行该计算机执行指令时,用户设备执行上述各种可能的方法。

其中,计算机可读介质包括计算机存储介质和通信介质,其中通信介质包括便于从一个地方向另一个地方传送计算机程序的任何介质。存储介质可以是通用或专用计算机能够存取的任何可用介质。一种示例性的存储介质耦合至处理器,从而使处理器能够从该存储介质读取信息,且可向该存储介质写入信息。当然,存储介质也可以是处理器的组成部分。处理器和存储介质可以位于asic中。另外,该asic可以位于用户设备中。当然,处理器和存储介质也可以作为分立组件存在于通信设备中。

本领域普通技术人员可以理解:实现上述各方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成。前述的程序可以存储于一计算机可读取存储介质中。该程序在执行时,执行包括上述各方法实施例的步骤;而前述的存储介质包括:rom、ram、磁碟或者光盘等各种可以存储程序代码的介质。

最后应说明的是:以上各实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述各实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的范围。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1