首页> 中国专利> 一种中文真词错误自动校对方法

一种中文真词错误自动校对方法

摘要

本发明公开了一种中文真词错误自动校对方法,该方法首先利用正确词词典和汉字混淆集生成中文真词混淆集;利用统计知识对当前词进行验证;通过同义词泛化上下文特征缓解语料的数据稀疏问题;利用贝叶斯模型估计当前词出现在上下文中的概率,最终判断当前词是否为真词错误,对真词错误进行标记并给出修改建议列表。本发明的中文真词错误自动校对方法解决了现有技术中数据稀疏、正确词误判、校对效率低等问题,具有较高的有效性和准确性。

著录项

  • 公开/公告号CN105824800A

    专利类型发明专利

  • 公开/公告日2016-08-03

    原文格式PDF

  • 申请/专利权人 江苏科技大学;

    申请/专利号CN201610145237.8

  • 申请日2016-03-15

  • 分类号G06F17/27(20060101);

  • 代理机构南京苏高专利商标事务所(普通合伙);

  • 代理人许丹丹

  • 地址 212003 江苏省镇江市梦溪路2号

  • 入库时间 2023-06-19 00:11:02

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2023-10-27

    专利权的转移 IPC(主分类):G06F17/27 专利号:ZL2016101452378 登记生效日:20231012 变更事项:专利权人 变更前权利人:江苏科技大学 变更后权利人:苏州定一智能技术有限公司 变更事项:地址 变更前权利人:212003 江苏省镇江市梦溪路2号 变更后权利人:215600 江苏省苏州市张家港市南丰镇兴园路3号1幢2楼

    专利申请权、专利权的转移

  • 2018-06-26

    授权

    授权

  • 2016-08-31

    实质审查的生效 IPC(主分类):G06F17/27 申请日:20160315

    实质审查的生效

  • 2016-08-03

    公开

    公开

说明书

技术领域

本发明涉及人工智能计算机领域中的自然语言处理,特别涉及中文文本自动校对领域。

背景技术

随着信息处理技术和互联网的高速发展,传统的文本工作几乎全部被计算机所取代,电子书、电子报纸、电子邮件、办公文件等文本电子出版物不断涌现,文本中的错误也越来越多。目前大多采用人工校对的方法,校对工作单调,劳动强度大,效率低,人工校对的方式已经无法满足文本校对的需求,因此研究自动文本校对对于理论和应用都具有很深远的意义。

文本自动校对是自然语言处理的主要应用之一,也是自然语言理解的难题。中文真词错误是指将词典中的一个词写错成词典中另外一个词,而这个词不符合当前上下文语境。例如“他接收总经理的邀请参加会议”中的“接收”是一个真词错误。由于人们的粗心选择以及对汉语词语之间区别的认知不足,汉语文本中出现了很多的真词错误。中文真词错误的自动校对方法存在着以下问题:

1)发生真词错误的词是词典中正确的词,对于真词错误的检查及给出修改建议,需要依据对该该词的上下文进行考察;

2)多数发生真词错误的词符合局部语言限制,但却与全局语言限制发生冲突,所以要实现真词错误的自动校对需要考虑该真词与长距离的上下文是否搭配;

3)真词错误会干扰整个句子的语法和语义,因此发现真词错误需要很多的知识与资源;

4)数据稀疏是真词错误自动校对的一个主要的障碍。

发明内容

发明目的:为了克服现有技术中存在的不足,本发明提供一种中文真词错误的自动校对方法,是一种集自动查错和自动校对于一体的方法。

技术方案:为了实现上述目的,本发明提出的一种中文真词错误自动校对方法是基于中文真词混淆集、NGram模型、贝叶斯模型组合判断法进行中文真词错误自动校对,利用同义词泛化上下文特征缓解数据稀疏问题。该方法包括以下步骤:

(1)利用正确词词典和汉字混淆集生成中文真词混淆集;

(2)对Web语料中的句子进行分词,建立左向三元、右向三元和中间三元模型,对于某一词Wi,根据其左向三元、右向三元、中间三元在语料中出现的频次确定该词的第一统计值,若该词的第一统计值大于预设的第一门限α则该词为正确词;否则,利用同义词泛化该词的上下文特征得到泛化后的左向三元、右向三元、中间三元,根据该词泛化后的左向三元、右向三元、中间三元在语料中出现的频次确定该词的第二统计值,若该词的第二统计值大于所述第一门限α则该词为正确词;否则,进入步骤(3);

(3)利用极大似然估计计算该词出现在上下文的第一贝叶斯概率,若该词的第一贝叶斯概率大于预设的第二门限β则该词为正确词;否则,利用同义词泛化该词的上下文特征,计算该词出现在上下文的第二贝叶斯概率,若该词的第二贝叶斯概率大于所述第三门限γ则该词为正确词;否则,进入步骤(4);

(4)利用该词的真词混淆集C(Wi)中的混淆词来代替该词形成混淆词的左向三元、右向三元和中间三元,对于任意混淆词,根据该混淆词左向三元、右向三元、中间三元在语料中出现的频次确定该混淆词的第一统计值,若该词的真词混淆集C(Wi)中存在混淆词的第一统计值大于所述第一门限α,则该词为错词,将这些混淆词按其第一统计值的大小进行降序排列形成该词的修改建议表;否则,进入步骤(5);

(5)利用该词的真词混淆集C(Wi)中任意混淆词Wih来代替该词,利用同义词泛化该词的上下文特征得到泛化后的左向三元、右向三元、中间三元,根据该混淆词泛化后的左向三元、右向三元、中间三元在语料中出现的频次确定该混淆词的第二统计值,若存在第二统计值大于所述第一门限α的混淆词,则该词为错词;将这些混淆词按其第二统计值的大小进行降序排列形成该词的修改建议表;否则,进入步骤(6);

(6)对该词的真词混淆集C(Wi)中任意混淆词Wih来代替该词,利用极大似然估计计算该混淆词出现在上下文的第一贝叶斯概率,若存在混淆词的第一贝叶斯概率大于所述第二门限β,则该词为错词,将这些混淆词按其第一贝叶斯概率的大小进行降序排列形成该词的修改建议表;否则,利用同义词泛化该词的上下文特征,计算该词任意混淆词出现在上下文的第二贝叶斯概率,若存在第二贝叶斯概率大于所述第三门限γ的混淆词,则该词为错词,将这些混淆词按其第二贝叶斯概率的大小进行降序排列形成该词的修改建议表。

进一步地,步骤(1)中生成中文真词混淆集包括以下步骤:

获取中文词典中的所有正确词;

对任意正确词,根据汉字混淆集替换所述正确词中的字,并且每次仅替换词中的一个字,判断换字后所形成的词是否为所述中文词典中的正确词,若是,则将该词存入相应正确词的真词混淆集中。

具体地,步骤(2)中建立分词的三元模型具体为:设语料中的某一句子经分词后为S=W1W2..Wi-1WiWi+1...Wn,则对于某一词Wi,其

左向三元为:LeftTriGram(Wi)=Wi-2Wi-1Wi

右向三元为:RightTriGram(Wi)=WiWi+1Wi+2

中间三元为:TriGram(Wi)=Wi-1WiWi+1

进一步地,对于某一词Wi,该词的第一统计值为其左向三元、右向三元、中间三元在语料中出现的频次的最大值。

具体地,对于某一词Wi,该词的第一贝叶斯概率为:

>B1(Wi|Wi-1,Wi+1)=count(Wi-1Wi)*count(WiWi+1)count(Wi)>

式中,count(Wi)表示Wi在语料中出现的频次。

具体地,所述同义词是指与其词义相同或相近的词,对于某一词Wi,所述利用同义词泛化该词的上下文特征指的是:用Wi-1的同义词集合Syn(Wi-1)中的任意同义词替换Wi-1,Wi+1的同义词集合Syn(Wi+1)中的任意同义词替换Wi+1,用Wi+2的同义词集合Syn(Wi+2)中的任意同义词替换Wi+2

进一步地,对于某一词Wi,确定该词的第二统计值包括以下步骤:

1)设Wi-1的同义词集合Wi+1的同义词集合

2)对于中间三元,用Syn(Wi-1)中的任意代替Wi-1,用Syn(Wi+1)中的任意代替Wi+1,则最大中间三元频次为:

>M(Wi-1WiWi+1)=max1<j<s1<k<tcount(Wi-1jWiWi+1k)>

3)对于左向三元和右向三元,用与步骤2)相同的方法统计出最大左向三元频次M(Wi-2Wi-1Wi)和最大右向三元频次M(WiWi+1Wi+2),选取三者中的最大值得到所述词的第二统计值为:m(Wi)=max(M(Wi-1WiWi+1),M(Wi-2Wi-1Wi),M(WiWi+1Wi+2)}。

具体地,对于某一词Wi,该词的第二贝叶斯概率为:

>B2(Wi|Wi-1,Wi+1)=Σ1scount(Wi-1jWi)*Σ1tcount(WiWi+1k)count(Wi)>

式中,count(Wi)表示Wi在语料中出现的频次,为Wi-1的同义词集合Syn(Wi-1)中的元素,s为Syn(Wi-1)的元素个数;为Wi+1的同义词集合Syn(Wi+1)中的元素,t为Syn(Wi+1)的元素个数。

有益效果:本发明中的中文真词错误自动校对方法,利用正确词词典和汉字混淆集生成中文真词混淆集;再利用统计知识对当前词进行验证,进一步通过同义词泛化上下文特征缓解语料的数据稀疏问题,对当前词做出进一步验证;接着利用贝叶斯模型估计当前词出现在上下文中的概率,更进一步地对当前词是否正确做出判断,随后通过同义词泛化上下文特征,再次利用贝叶斯模型判断当前词的正确性;最后,用混淆词对当前词进行替换,利用统计知识和贝叶斯模型最终判断当前词是否为真词错误,对真词错误进行标记并给出修改建议列表。本发明通过对当前词多个维度的验证,实验表明,本发明方法查错召回率达到81%,查错精度达到61%,纠错精度达到54%,具有较高的有效性和准确性。

附图说明

图1为本发明的中文真词错误自动校对方法的流程图。

具体实施方式

下面结合附图对本发明作更进一步的说明。

本发明提出的一种中文真词错误自动校对方法是基于中文真词混淆集、NGram模型、贝叶斯模型组合判断法进行中文真词错误自动校对,并应用同义词使得数据稀疏问题在很大程度上得到缓解。该方法如图1所示,包括以下步骤:

1)利用正确词词典和汉字混淆集生成中文真词混淆词;

一个中文词W的混淆集C(W)是指中文词典中的一组与W音相似或形相似、或意相似的词,而在人们的使用过程中,W与C(W)中的词常常容易混淆。

11)获取中文词典中的所有正确词;

12)对任意正确词,根据汉字混淆集替换所述正确词中的字,并且每次仅替换词中的一个字,判断换字后所形成的词是否为所述中文词典中的正确词,若是,则将该词存入相应正确词的真词混淆集中。可以进一步对上述真词混淆集进行人工校对,去除不常见的混淆词,完善真词混淆集。

本实施例中,真词混淆集的结构如下:

C(W)={W1,W2...,Wn}

其中,W是词典中一个词,W1,W2...,Wn是W的混淆词。

2)建立待判断词的左向三元、右向三元、中间三元模型,基于大规模Web语料统计三元频次,若得到的三元频次均不符合条件,则用上下文特征的同义词泛化目标词的上下文特征重新统计三元频次,若得到的三元频次依然不符合条件,则转向步骤3);具体为:

步骤21)基于大规模Web语料,建立三元模型:对语料中的句子进行分词,如对句子S进行分词得到S=W1W2..Wi-1WiWi+1...Wn,对于词Wi而言,

左向三元为:LeftTriGram(Wi)=Wi-2Wi-1Wi

右向三元为:RightTriGram(Wi)=WiWi+1Wi+2

中间三元为:TriGram(Wi)=Wi-1WiWi+1

步骤22)基于大规模Web语料,统计左向三元频次count(Wi-2Wi-1Wi)、右向三元频次count(WiWi+1Wi+2)和中间三元频次count(Wi-1WiWi+1);

步骤23)对于步骤22)统计出的三种频次,记m(Wi)=max{count(Wi-2Wi-1Wi),count(WiWi+1Wi+2),count(Wi-1WiWi+1)}如果满足m(Wi)>α,α是三元频次阈值,为了便于区分,称为第一门限,实施例中α=3,则判断Wi是正确的,置查错状态为RIGHT,否则转向步骤24;

步骤24)为缓解语料的数据稀疏问题,在统计三元频次过程中用同义词泛化上下文特征;

步骤24-1)对于一个词典中的任意一词,同义词是指与其词义相同或相近的词,本实施例中将某一词的同义词存储在该词的同义词集合中。Wi-1的同义词集合Wi+1的同义词集合

步骤24-2)对于三元TriGram(Wi)=Wi-1WiWi+1,用Syn(Wi-1)中的任意代替Wi-1,用Syn(Wi+1)中的任意代替Wi+1,统计到最大三元频次,记为

步骤24-3)对于左向三元和右向三元,用与步骤24-2)相同的方式统计出最大左向三元频次M(Wi-2Wi-1Wi)和最大右向三元频次M(WiWi+1Wi+2)。即:对于最大左向三元频次M(Wi-2Wi-1Wi),用Wi-2的其同义词集合Syn(Wi-2)中的任意同义词替代Wi-2,用Syn(Wi-1)中的任意代替Wi-1,统计所形成的所有左向三元的出现频次,以最大出现频次作为最大左向三元频次M(Wi-2Wi-1Wi);对于最大右向三元频次M(WiWi+1Wi+2),用Syn(Wi+1)中的任意代替Wi+1,用Wi+2的其同义词集合Syn(Wi+2)中的任意同义词代替Wi+2,统计所形成的所有右向三元中找出出现频次,以最大出现频次作为最大右向三元频次M(WiWi+1Wi+2)。

记m(Wi)=max(M(Wi-1WiWi+1),M(Wi-2Wi-1Wi),M(WiWi+1Wi+2)},如果满足m(Wi)>α,则判断Wi是正确的,置查错状态为RIGHT,否则转向步骤3);

3)经过步骤2筛选后,利用贝叶斯模型估计该词出现在当前上下文中的概率,若得到的第一贝叶斯概率大于预设阈值,则该词正确;否则,用上下文特征的同义词泛化上下文特征重新估计贝叶斯概率,称为第二贝叶斯概率,若第二贝叶斯概率大于预设阈值,则该词正确,否则,进行步骤4),具体为:

步骤31-1)对于句子S=W1W2..Wi-1WiWi+1...Wn,假设Wi出现在当前上下文的贝叶斯概率为:

>p(Wi|Wi-1,Wi+1)=p(Wi-1,Wi+1|Wi)*p(Wi)p(W1-1,W1+1)>

步骤31-2)假设上下文中词的出现互相独立,则

p(Wi-1,Wi+1|Wi)=p(Wi-1|Wi)*p(Wi+1|Wi)

步骤31-3)利用极大似然估计,N是预料中所有一元的频次总和;

步骤31-4)若B1(Wi|Wi-1,Wi+1)>β,本实施例中第二门限β=0.04,则判断Wi为正确的;

否则转向步骤32);

步骤32)用Syn(Wi-1)中的任意代替Wi-1,用Syn(Wi+1)中的任意代替Wi+1,记若B2(Wi|Wi-1,Wi+1)>,本实施例中第三门限γ=0.06,则判断Wi为正确的,置查错状态为RIGHT,否则转向步骤4);

4)利用真词混淆集中的词对该词进行替换,以对该词步骤2)和3)处理方式几乎相同的方式,对替换后的混淆词进行相同的处理,并利用混淆词的相关统计值判断是否为真词错误并进行标记,根据混淆词的排序情况给出修改建议列表,具体为:

步骤41)Wi的真词混淆集为C(Wi)=(Wi1,...,Wih,...,Win),将C(Wi)中任意的Wih代替Wi执行步骤21)-步骤23),

m(Wih)=max{count(Wi-2Wi-1Wih),count(WihWi+1Wi+2),count(Wi-1WihWi+1)}若存在Wih满足m(Wih)>α,则认为Wi是错误的,置查错状态为ERROR,将满足条件的Wih按m(Wih)降序加入到修改建议列表中,否则转向步骤42);

步骤42)将C(Wi)中任意的Wih代替Wi执行步骤24),对于三元TriGram(Wih)=Wi-1WihWi+1,用Syn(Wi-1)中的任意代替Wi-1,用Syn(Wi+1)中的任意代替Wi+1,则

m(Wih)=max{M(Wi-1WihWi+1),M(Wi-2Wi-1Wih),M(WihWi+1Wi+2)},若存在Wih满足m(Wih)>α,则判断Wi是错误的,置查错状态为ERROR,将满足条件的Wih按m(Wih)降序加入到修改建议列表中,否则转向步骤43);

步骤43)将C(Wi)中任意的Wih代替Wi执行步骤31),Wih出现在当前上下文的贝叶斯概率为p(Wih|Wi-1,Wi+1),若存在Wih满足B1(Wih|Wi-1,Wi+1)>β,则判断Wi为错误的,置查错状态为ERROR,记m(Wih)=B1(WihhWi-1,Wi+1),将满足条件的Wih按m(Wih)降序加入到修改建议列表中,否则转向步骤44);

步骤44)用Syn(Wi-1)中的任意代替Wi-1,用Syn(Wi+1)中的任意代替Wi+1,执行步骤43),则若存在Wih,使得B2(Wih|Wi-1,Wi+1)>γ,则判断Wi为错误的,置查错状态为ERROR,记m(Wih)=B2(Wih|Wi-1,Wi+1),将满足条件的Wih按m(Wih)降序加入到修改建议列表中,否则不对Wi是否为真词错误给出判断,置查错状态为MARK。

实验:

为了验证本发明提供的真词错误自动校对方法的有效性,实验采用1万行Web中的句子作为语料,人工对语料中的真词错误进行标注,共5000处,以实施例中给定的参数为实验参数。实验表明,本发明提供的真词错误自动校对方法查错召回率达到81%,查错精度达到61%,纠错精度达到54%。这一精度超过了现有技术,达到了实际应用的需求,具有较高的有效性和准确性。

以上实施列仅是本发明的较佳实施例,对本发明不构成限定,相关工作人员在不偏离本发明技术思想的范围内,所进行的任何修改、等同替换、改进等,均落在本发明的保护范围内。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号