一种针对文本形近字错误的定位方法技术

技术编号:19934080 阅读:50 留言:0更新日期:2018-12-29 04:30
本发明专利技术涉及一种针对文本形近字错误的定位方法,属于自然语言处理技术领域。首先将长句子切分为多个短句子,然后用汉字形近字库找出每个短句子中每个字对应的形近字,并与原字符组成候选字向量,利用常用字库将向量中的不常用字剔除,将所有字的候选字向量组成一个候选矩阵,从而得到每个短句子的候选字矩阵;其次将候选每个矩阵中的相邻向量捆绑成词,将组合成的正确词语加入到词语集合中,将不能组合成词的向量,提取里面的停用字加入到停用字集合中;再将相邻两个短句子的连接部分的字提取出来,并将其组合,如果存在词语,则加入到词语集合;最后将词语集合和停用字集合中的词与原文本对比,剔除这些词,剩下的则是错误词存在的位置。

【技术实现步骤摘要】
一种针对文本形近字错误的定位方法
本专利技术涉及一种针对文本形近字错误的定位方法,属于自然语言处理

技术介绍
当前,由于OCR文本识别技术的运用,在将纸质文本文字翻译成计算机文字时,经常会将一些文字识别错误,将其识别为其他字,而这些字大多为原字符的形近字,而在大量文本校对中,能快速找出文本中错别字的位置,是文本校对的前提条件。利用N-gram通过上下文的连接强度来定位文本中的错误位置是文本检错与校对的常用方法,分词是使用N-gram的前提条件,但是对于分词来说分词的准确性对文本的检错起到了决定性的作用,分词和计算概率本身消耗一定的时间,从准确性和检错速度上来说效率非常低。
技术实现思路
本专利技术要解决的技术问题是提供一种针对文本形近字错误的定位方法,以用于解决文本检错时由于分词所带来的速度问题和分词结果的准确性问题,省去了分词和计算概率所消耗的时间,做到将文本中的错误位置快速定位,为下一步校对工作做好铺垫。本专利技术的技术方案是:一种针对文本形近字错误的定位方法,首先将长句子切分为多个短句子,然后用汉字形近字库找出每个短句子中每个字对应的形近字,并与原字符组成候选字向量,利用常用字库将向量中的不常用字剔除,将所有字的候选字向量组成一个候选矩阵,从而得到每个短句子的候选字矩阵;其次将候选每个矩阵中的相邻向量捆绑成词,将组合成的正确词语加入到词语集合中,将不能组合成词的向量,提取里面的停用字加入到停用字集合中;再将相邻两个短句子的连接部分的字提取出来,并将其组合,如果存在词语,则加入到词语集合;最后将词语集合和停用字集合中的词与原文本对比,在原文本中剔除这些词,剩下的则是错误词存在的位置。具体步骤为:第一步:建立一个数据库,包含形近字库X,语料库Y,常用字库Q,停用词库T;第二步:选取待处理样本句子A;第三步:对句子A进行预处理,去除句子中的非字字符,得到新的字符串B=c1c2...cn,n为字符串B长度;第四步:将字符串B进行切分,以字符串长度为m,对字符进行分割,得到g={n/m}个短字符串,(n/m)表示不小于这个数的最小整数,并将分割后的句子组合成一个短字符串矩阵L=[L1L2…Li],其中i=g,length(Li-1)=m,Li的长度取决于,当(n/m)能整除时,length(Li)=m,当(n/m)不能整除时,最后一个字符串Li的长度等于余数,L1=c1c2…cm,L2=cm+1cm+2…c2m;第五步:将短字符串矩阵L=[L1L2…Li]中每一个短句子Li中的每个字,在形近字库X中查找出每个字对应的形近字,利用常用字库Q剔除形近字中的不常用字,得到Li的候选字向量矩阵;第六步:将Li矩阵中的相邻向量排列组合,形成一系列词,判断这些词是否属于语料库Y,若不属于则剔除,得到L所有词语集合w={w1,w2,…wn},若有某个向量没有和相邻向量组合成词或者向量的长度为1,则将其与停用词库T比较,去除非停用字,得到停用字集合d={d1,d2…dn};第七步:将Li的最后一个字符和Li+1的第一个字符提取出来,找出这两个字的形近字,若能组合成词,则将词语加入到集合w;第八步:将词语集合w={w1,w2,…wn}中的每个词和停用字集合d={d1,d2…dn}中的每个停用字,与原句B对比,若这个词存在于原句B中,则在原句在B中剔除这个词,B中剩下的词则为句子中错误的词的位置。所述步骤三中,处理后的文本B是去除所有标点符号后的字符串。所述步骤四中,切分长度m为任意小于句子长度n的数。所述步骤五中,Li的每个候选字向量的长度取决于在去除不常用字后剩余形近字的个数。本专利技术的有益效果是:解决文本检错时由于分词所带来的速度问题和分词结果的准确性问题,省去了分词和使用N-gram计算概率时所消耗的时间,更能快速的检出文本的定位错误位置。附图说明图1是本专利技术的步骤流程图;图2是本专利技术第四步的流程图。具体实施方式下面结合(附图和)具体实施方式,对本专利技术作进一步说明。实施例1:如图1-2所示,一种针对文本形近字错误的定位方法,首先将长句子分为n个长度为m的短句子,然后用汉字形近字库找出每个短句子中每个字对应的形近字,并与原字符组成候选字向量,利用常用字库将向量中的不常用字剔除,将所有字的候选字向量组成一个候选矩阵,从而得到每个短句子的候选字矩阵;其次将候选每个矩阵中的相邻向量捆绑成词,将组合成的正确词语加入到词集合w,将不能组合成词的向量,提取里面的停用字加入到停用字集合d;再将相邻两个短句子的连接部分的字提取出来,并将其组合,如果存在词语,则加入到集合w;最后将集合w和集合d中的词与原文本对比,在原文本中剔除这些词,剩下的则是错误词存在的位置。所述步骤如下:第一步:建立一个数据库,里面包含形近字库X,语料库Y,常用字库Q,停用词库T。第二步:选取待处理样本句子A。第三步:对句子A进行预处理,去除句子中的非字字符,得到新的字符串B=c1c2...cn,n为字符串B长度。第四步:将字符串B进行切分,以字符串长度为m,对字符进行分割,得到g={n/m}个短字符串,(n/m)表示不小于这个数的最小整数,并将分割后的句子组合成一个短字符串矩阵L=[L1L2…Li],其中i=g,length(Li-1)=m,Li的长度取决于,当(n/m)能整除时,length(Li)=m,当(n/m)不能整除时,最后一个字符串Li的长度等于余数,L1=c1c2…cm,L2=cm+1cm+2…c2m。第五步:将短字符串矩阵L=[L1L2…Li],中每一个短句子Li中的每个字,在形近字库X中查找出每个字对应的形近字,利用常用字库Q剔除形近字中的不常用字,得到Li的候选字向量矩阵,例如c1的形近字[c1c11c12…c1j],则候选字向量矩阵为L1=[c1c11c12…c1j]…[cmcm1cm2…cmk]。第六步:将Li矩阵中的相邻向量排列组合,形成一系列词,判断这些词是否属于语料库Y,若不属于则剔除,得到L所有词语集合w={w1,w2,…wn},若有某个向量没有和相邻向量组合成词或者向量的长度为1,则将其与停用词库T比较,去除非停用字,得到停用字集合d={d1,d2…dn}。第七步:将Li的最后一个字符和Li+1的第一个字符提取出来,找出这两个字的形近字,看是否能组合成词,若能则将词语加入到集合w。第八步:将词语集合w={w1,w2,…wn}中的每个词和停用字集合d={d1,d2…dn}中的每个停用字,与原句B对比,若这个词存在于原句B中,则在原句在B中剔除这个词,B中剩下的词则为句子中错误的词的位置。所述步骤一中,形近字库X包含所有汉字的形近字,语料库Y是经过分词处理、统计后的语料,常用字库Q为一级字库和二级字库,停用词指的是功能词,没有实际意义,如‘的’‘我’‘是’‘为何’‘倘若’等,停用词库T中包含的就是这一类词所述步骤二中,所述输入句子A可以为长句,也可以为短句。所述步骤三中,处理后的文本B是去除所有标点符号后的字符串。所述步骤四中,切分长度m可以为任意小于句子长度n的数。所述步骤五中,Li的每个候选字向量的长度取决于在去除不常用字后剩余形近字的个数,所以每个向量的长度不一定相等。所述步骤六中所述的,Li矩阵中的相邻向量组合是以以下本文档来自技高网...

【技术保护点】
1.一种针对文本形近字错误的定位方法,其特征在于:首先将长句子切分为多个短句子,然后用汉字形近字库找出每个短句子中每个字对应的形近字,并与原字符组成候选字向量,利用常用字库将向量中的不常用字剔除,将所有字的候选字向量组成一个候选矩阵,从而得到每个短句子的候选字矩阵;其次将候选每个矩阵中的相邻向量捆绑成词,将组合成的正确词语加入到词语集合中,将不能组合成词的向量,提取里面的停用字加入到停用字集合中;再将相邻两个短句子的连接部分的字提取出来,并将其组合,如果存在词语,则加入到词语集合;最后将词语集合和停用字集合中的词与原文本对比,在原文本中剔除这些词,剩下的则是错误词存在的位置。

【技术特征摘要】
1.一种针对文本形近字错误的定位方法,其特征在于:首先将长句子切分为多个短句子,然后用汉字形近字库找出每个短句子中每个字对应的形近字,并与原字符组成候选字向量,利用常用字库将向量中的不常用字剔除,将所有字的候选字向量组成一个候选矩阵,从而得到每个短句子的候选字矩阵;其次将候选每个矩阵中的相邻向量捆绑成词,将组合成的正确词语加入到词语集合中,将不能组合成词的向量,提取里面的停用字加入到停用字集合中;再将相邻两个短句子的连接部分的字提取出来,并将其组合,如果存在词语,则加入到词语集合;最后将词语集合和停用字集合中的词与原文本对比,在原文本中剔除这些词,剩下的则是错误词存在的位置。2.根据权利要求1所述的针对文本形近字错误的定位方法,其特征在于具体步骤为:第一步:建立一个数据库,包含形近字库X,语料库Y,常用字库Q,停用词库T;第二步:选取待处理样本句子A;第三步:对句子A进行预处理,去除句子中的非字字符,得到新的字符串B=c1c2...cn,n为字符串B长度;第四步:将字符串B进行切分,以字符串长度为m,对字符进行分割,得到g={n/m}个短字符串,(n/m)表示不小于这个数的最小整数,并将分割后的句子组合成一个短字符串矩阵L=[L1L2…Li],其中i=g,length(Li-1)=m,Li的长度取决于,当(n/m)能整除时,length(Li)=m,当(n/m)不能整除时,最后一个字符串Li的长度等于余...

【专利技术属性】
技术研发人员:邵玉斌王林坪龙华杜庆治
申请(专利权)人:昆明理工大学
类型:发明
国别省市:云南,53

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1