一种基于知识图谱的中文文本校对方法与流程

文档序号:17991279发布日期:2019-06-22 00:49阅读:1726来源:国知局
一种基于知识图谱的中文文本校对方法与流程

本发明涉及文本校对领域,一种基于知识图谱的中文文本校对方法。



背景技术:

计算机的广泛应用催生出了中文文本自动校对工具,从而替代了费时费力的传统人工校对,最常见的就是office自带的中文自动校对工具officeproofingtools,其他广泛使用的校对工具有校对助手、小红笔、黑马校对系统等。但是现有的校对工具只能基于大规模词库实现词语的校对,很难做到句法语义校对,并且这些校对工具都是收费软件,用户需要支付较昂贵的费用才能使用。

现有的文本自动校对技术主要有基于上下文的局部语言特征、基于规则、基于统计的校对方法。微软中国研究院首先利用winnow方法来学习文本中与词相关的局部语言特征与长距离语言特征,然后根据上下文特征对目标词混淆集中的单词进行选择。这种基于多特征的校对方法的难点在于特征的提取和混淆集的构建。哈尔滨工业大学基于待校对语句中所有字词的候选词来得到相应语句的字词候选矩阵。根据语句的统计特征与结构特征,从候选矩阵中选择最佳字词序列并与原句对比来发现错别字。该方法的难点在于字词候选矩阵的构建。虽然基于局部特征的校对方法其准确率较高,但是算法复杂度高,在实际应用中受到限制。

北京师范大学利用校正文法规则对文本进行校对,当语句满足该规则时,只需根据规则将对应的字词标错,但是该校对方法的纠错能力有限。哈尔滨工业大学利用短语规则将单字与分词后的散串组合形成短语,然后逐步将正确的字符串捆扎并将剩余的单字符标为错误。该方法的局限在于无法检测出多字符串的替换型错误,且其构造的短语规则覆盖的范围较窄。吴岩等利用逆向最大匹配法和局部语料统计算法来获取文本中的散串,然后通过对其进行词匹配以及语法分析来得到候选错误串,最后利用交互的方法对错误串纠正。该校对方法实现简单,只需根据既定规则进行校对,但是由于无法穷举所有规则,导致校对准确率受到规则的影响。

申茂邦和马金山均提出利用字的n-gram模型和依存句法分析得到语句的结构化信息后,实现文本的错别字校对。段良涛等提出基于词的语言模型和基于语料库的n-gram查错策略来实现中文文本的自动校对。sun等提出“散串捆扎”的方法,利用n-gram语言模型对文本进行校对与纠错。在限定领域中,该校对方法具有较高的查错率,但仍受到训练语料的规模与语料领域类型的影响。

现有的中文自动校对系统都是基于大规模词库,通过将语句与词库中的词汇进行匹配来发现错误。若词库不及时更新将会影响校对效果,而且由于对词库的过度依赖,往往只能对文本的词语错误进行校对,无法识别语句中的句法语义错误,比如语句的成分残缺、语句间的定义矛盾。因此针对该现状,本发明提出了一种基于知识图谱的中文文本校对方法。



技术实现要素:

为了更好地改进句法语义校对,本发明提供了一种基于知识图谱的中文文本校对方法,其成本较低且易于维护,避免了对大规模词库的依赖,所提供的查全率可以得到保证,有助于提高具体领域的文本质量。

一种基于知识图谱的中文文本校对方法,包括如下步骤:

1)用实体抽取技术逐句获取待校对文本中的实体对,若不能抽取到实体对,则提示该语句可能成分缺失;

2)将待校对文本输入到已经训练好的实体关系识别模型中,得到文本同一语句中不同实体间的实体关系;

3)若在待校对文本的不同语句中获得的实体对相同,但实体关系不同,则提示该语句可能与文中其他语句定义矛盾,返回可能与该语句矛盾的句子;

4)将得到的实体对和实体关系与知识图谱中的三元组进行匹配;

5)若从待校对文本语句中获得的是单个实体和实体关系,在实体关系匹配成功的情况下,若该实体匹配到的是三元组中的实体1,则提示该语句可能缺少宾语,返回三元组中的实体2,否则提示该语句可能缺少主语,返回三元组中的实体1;

6)若实体在知识图谱的三元组中匹配不到相同实体,但能匹配到与其一半以上字数相同的实体,则提示该实体单词中可能有错别字,返回与其相同字数最多的实体作为纠错词,否则提示无法判断。

所述的步骤1)中,实体是指现实世界中的事物,实体对是指在同一语句中有关系的两个实体。

所述的步骤2)中,训练好的实体关系识别模型中采用了hownet中定义的16种实体关系,并增加了如下5种实体关系:

1)表示关系:说明一个实体可以用另一个实体来表示;

2)因果关系:两个实体的作用关系,其中后一实体为前一实体的客观结果;

3)解释关系:某实体是对另一实体的内容解释;

4)互斥关系:两个实体不共存;

5)条件关系:某实体是条件,而另一实体是该条件下的结果。

所述的步骤4)中,所用知识图谱的构建步骤如下:

1)搜集待校对文本的参考文本,用实体抽取技术获取参考文本中的实体,

2)用实体关系识别技术获得实体间的语义关系,从而得到(实体1-实体关系-实体2)

这样的三元组。

该发明具有如下有益效果:

现有的中文自动校对系统都是基于大规模词库,通过将语句与词库中的词汇进行匹配来发现文本中的词语错误,对词库过于依赖,而且忽略了句法语义的错误。针对这种不足,本发明提出了一种基于知识图谱的中文文本校对方法,不仅能避免对大规模词库的依赖,而且实现了从错别字、成分缺失与定义矛盾这三个方面对文本进行语义校对。首先利用实体抽取技术抽取得到文本语句中的实体,然后根据实体与基于关系规则的匹配结果,在知识图谱中搜索并发现句法语义错误类型。通过与现有的中文自动校对系统进行对比发现,该校对方法在限定领域中对各种语义错误的校对都有较高的查全率。本方法可以有效地提高文本校对的准确率与查全率,有助于文字工作者改进文本质量。

附图说明

图1是构建的知识图谱的部分内容;

图2是从待校对文本中识别的实体对和实体关系;

图3是文本校对结果。

具体实施方法

为使本发明的目的、技术方案和优点更加清楚,下面结合附图和实施例对本发明做进一步阐述和说明。本发明中各个实施方式的技术特征在没有相互冲突的前提下,均可进行相应组合。

一种基于知识图谱的中文文本校对方法,包括如下步骤:

1)用实体抽取技术逐句获取待校对文本中的实体对,若不能抽取到实体对,则提示该语句可能成分缺失;

2)将待校对文本输入到已经训练好的实体关系识别模型中,得到文本同一语句中不同实体间的实体关系;

3)若在待校对文本的不同语句中获得的实体对相同,但实体关系不同,则提示该语句可能与文中其他语句定义矛盾,返回可能与该语句矛盾的句子;

4)将得到的实体对和实体关系与知识图谱中的三元组进行匹配;

5)若从待校对文本语句中获得的是单个实体和实体关系,在实体关系匹配成功的情况下,若该实体匹配到的是三元组中的实体1,则提示该语句可能缺少宾语,返回三元组中的实体2,否则提示该语句可能缺少主语,返回三元组中的实体1;

6)若实体在知识图谱的三元组中匹配不到相同实体,但能匹配到与其一半以上字数相同的实体,则提示该实体单词中可能有错别字,返回与其相同字数最多的实体作为纠错词,否则提示无法判断。

步骤1)中,实体是指现实世界中的事物,实体对是指在同一语句中有关系的两个实体。

步骤2)中,训练好的实体关系识别模型中采用了hownet中定义的16种实体关系,并增加了如下5种实体关系:

1)表示关系:说明一个实体可以用另一个实体来表示;

2)因果关系:两个实体的作用关系,其中后一实体为前一实体的客观结果;

3)解释关系:某实体是对另一实体的内容解释;

4)互斥关系:两个实体不共存;

5)条件关系:某实体是条件,而另一实体是该条件下的结果。

步骤4)中,所用知识图谱的构建步骤如下:

1)搜集待校对文本的参考文本,用实体抽取技术获取参考文本中的实体,

2)用实体关系识别技术获得实体间的语义关系,从而得到(实体1-实体关系-实体2)

这样的三元组。

实施例

为了便于本领域一般技术人员理解和实现本发明,现给出一种本发明所述方法的具体实施案例。提供中文文本校对的核心思想是利用知识图谱将待校对文本与参考文本进行对比,来搜索待校对文本中的句法语义错误,从而为中文文本校对提供一个具体的实现方案。

以构建大学数据结构教材的文本校对为主,下面用一个案例来描述本实施例。

案例的数据分别来源于维基百科以及某高校数据结构课程的教材,其中维基百科语料取自网站:https://dumps.wikimedia.org/zhwiki/latest/zhwiki-latest-pages-articles.xml.bz2。

由于维基百科语料中所有文件都是网页,因此首先需要抽取所有网页中“<content></content>”标签里的正文内容并将其合并为训练语料。训练语料中的中文数据包含繁体与简体字,因此需要采用opencc工具(https://pypi.org/project/opencc-python/)对训练语料进行繁简转换。然后用bi-lstm(bi-directionallongshort-termmemory,双向长短期记忆网络)和crf(conditionalrandomfield,条件随机场)(https://github.com/crownpku/information-extraction-chinese/blob/master/ner_idcnn_crf/main.py)对待校对文本和参考文本进行实体抽取,再用bi-gru(gatedrecurrentunit,双向门控单元)和am(attentionmechanism,注意力机制)(https://github.com/crownpku/information-extraction-chinese/tree/master/re_bgru_2att)获取参考文本中的实体关系,得到知识图谱,部分知识图谱内容如图1所示。

待校对文本如下:

四大物理结构包括顺序结构、链式结构、索引结构和散列结构。物埋结构:逻揖结构的存储方式。冒泡排序是稳定的。经过判断,采用了散列存储方法。链表采用了链式存储结构。线性结构是指结构中的数据元素之间存在着一对多的线性关系。线性结构是指结构中的数据元素间存在着一对一的线性关系。字符串是多型数据类型。字符串不是多型数据类型。稀梳矩阵就是多数元素为0的矩阵。头指针:指向表头节点的指针。队列,线性结构的抽象数据类型。

用实体抽取技术逐句抽取待校对文本中的实体对,若不能抽取到实体对,则提示该语句可能成分缺失;然后将待校对文本输入到已经训练好的实体关系识别模型中,得到文本同一语句不同实体间的实体关系,若在不同语句中获得的实体对相同,但实体关系不同,则提示该语句可能与文中其他语句定义矛盾,返回可能与该语句矛盾的句子。本例中待校对文本的实体抽取和实体关系识别结果如图2所示。

将待校对文本中的实体对和实体关系与知识图谱中的三元组进行匹配。若从待校对文本语句中获得的是单个实体和实体关系,在实体关系匹配成功的情况下,若该实体匹配到的是三元组中的实体1,则提示该语句可能缺少宾语,返回三元组中的实体2,否则提示该语句可能缺少主语,返回三元组中的实体1;若实体在知识图谱的三元组中匹配不到相同实体,但能匹配到与其一半以上字数相同的实体,则提示该实体单词中可能有错别字,返回与其相同字数最多的实体作为纠错词,否则提示无法判断。本例中待校对文本的校对结果如图3所示。

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