一种基于深度学习的中文错字校正方法与流程

文档序号:17222391发布日期:2019-03-27 12:07阅读:1033来源:国知局
一种基于深度学习的中文错字校正方法与流程

本发明涉及文本处理技术领域,特别是一种基于深度学习的中文错字校正方法。



背景技术:

目前针对中文的文字错误校正,通常使用传统的分词方法,对需要校正的文本进行分词出,然后根据分词的结果与已有的词库进行匹配,如果未匹配到则有可能是错字,或者是匹配不完全,则证明也是有错字。

传统的中文文本校正方法,在分词的时候未考虑到中文词语前后文之间的关系,对于分词库的质量有着很高的要求。例如“结婚的和尚未结婚的”,在传统的分词中会分成以下的结果“结婚的”“和尚”“未结婚的”。这就对整个的句子含义有了错误的理解,所以在分词的时候应该需要考虑上下文之间的关联性。同时在错字校正的时候,传统的方法仅仅是看匹配度,也没有注意上下文的关联性。因此传统的文字校正方法,对于中文错别字校正的效果比较差。

另外,传统的文字校正方法也没有很好的利用上下文信息进行识别。在识别错误的字,传统的操作是计算词与已有的词库的编辑距离等,然后通过人为的设置阈值,当到达阈值以后,则认为词语中有错误,然后利用距离最短的词语进行替换,这种操作方式没有考虑中文词语上下文之间的关联性,检查错误和纠正错误的效果比较差。



技术实现要素:

本发明的目的是提供一种基于深度学习的中文错字校正方法,旨在解决现有技术中分词不准确以及错别字识别不准确的问题,实现提升错别字校正的准确率,并提高错别字校正效果。

为达到上述技术目的,本发明提供了一种基于深度学习的中文错字校正方法,所述方法包括以下步骤:

s1、利用bilstm+attention+crf模型进行词语分词;

s2、对分词的结果利用提前预置的词库进行匹配,识别出词语中的错别字,并进行校正;

s3、利用bilstm+attention机制的语言模型对输入序列进行处理,识别错误的词语。

优选地,所述步骤s1具体操作为:

s11、对需要分词的语句进行编码操作;

s12、利用cnn卷积神经网络进行卷积操作,得到对应的经过卷积变换后的特征序列;

s13、将得到的特征序列,输入到bilstm神经网络中,利用双向的lstm序列输出预测向量;

s14、利用attention模型,对分词的字设置权重,计算得到预测分类的概率向量;

s15、利用crf算法对得到的集合进行校正处理,得到最终的分词结果。

优选地,所述编码为one-hot编码。

优选地,所述步骤s2具体为:

对分词出来的结果组成词向量,然后通过编辑距离计算每个词语词库之间的相似度,如果词能够正确的在词库中匹配,则表示词是正确的;如果没有正确匹配,则利用编辑距离的大小对该词进行校正,将校正后的结果更新到原有的词向量中,生成新的词向量。

优选地,所述编辑距离的大小与词之间的相似度为正相关。

优选地,所述步骤s3具体操作为:

s31、对输入的中文根据字库进行编码操作;

s32、将编码后的one-hot码输入bilstm网络中,进行信息提取;

s33、将bilstm输出的信息,传到attention模型中,利用attention模型预测当前字符下一个应该出现字符的概率向量;

s34、根据得到的概率输出最终的预测结果。

优选地,所述编码使用one-hot编码格式。

优选地,所述信息提取包括通过右向的神经网络获取文字的正向的特征信息以及通过逆向的神经网络提取文本中的逆向的关联信息。

发明内容中提供的效果仅仅是实施例的效果,而不是发明所有的全部效果,上述技术方案中的一个技术方案具有如下优点或有益效果:

与现有技术相比,本发明通过利用bilstm+attention+crf模型进行分词,并将分词结果利用预置的词库进行匹配,识别词语中的错别字,利用编辑距离的大小来对词语进行校正,最后通过bilstm+attention机制的语言模型对输入序列进行处理,结合上下文之间的关系,识别错误的词语,并通过给用户提示来完成文本的校正处理,实现了中文文本的高精度分词,解决了现有技术中分词不准确以及错别字识别不准确的问题,通过bilstm+attention+crf模型提高了分词的精度,提升了错别字校正的准确率,并提高了错别字校正效果,利用双向lstm实现了更高精度的词语错误检测。

附图说明

图1为本发明实施例中所提供的一种基于深度学习的中文错字校正方法流程图;

图2为本发明实施例中所提供的一种利用bilstm+attention+crf模型进行分词的流程图;

图3为本发明实施例中所提供的一种利用bilstm+attention机制对输入序列处理流程图。

具体实施方式

为了能清楚说明本方案的技术特点,下面通过具体实施方式,并结合其附图,对本发明进行详细阐述。下文的公开提供了许多不同的实施例或例子用来实现本发明的不同结构。为了简化本发明的公开,下文中对特定例子的部件和设置进行描述。此外,本发明可以在不同例子中重复参考数字和/或字母。这种重复是为了简化和清楚的目的,其本身不指示所讨论各种实施例和/或设置之间的关系。应当注意,在附图中所图示的部件不一定按比例绘制。本发明省略了对公知组件和处理技术及工艺的描述以避免不必要地限制本发明。

下面结合附图对本发明实施例所提供的一种基于深度学习的中文错字校正方法进行详细说明。

如图1所示,本发明实施例公开了一种基于深度学习的中文错字校正方法,所述方法包括以下步骤:

s1、利用bilstm+attention+crf模型进行词语分词;

s2、对分词的结果利用提前预置的词库进行匹配,识别出词语中的错别字,并进行校正;

s3、利用bilstm+attention机制的语言模型对输入序列进行处理,识别错误的词语。

bilstm+attention+crf模型将分词的操作定义为单个中文字符的分类问题,分词的类别分别是:词首用b表示,词中用m表示,词尾用e表示,单字词用s表示。在分词的过程中为了充分的使用整句话的前面和未来的特征,我们使用bilstm网络分别提取前向和后向的字符特征信息,然后整合在一起输入到crf模型中进行分类概率的校正,如图2所示,其具体操作如下:

s11、对需要分词的语句进行编码操作,在本发明实施例中利用one-hot编码将中文的每个字按照字典库中的顺序进行编码。

s12、利用cnn卷积神经网络进行卷积操作,得到对应的经过卷积变换后的特征序列。

s13、将得到的特征序列,输入到bilstm神经网络中,其中r表示正向的lstm序列,1表示反向的lstm序列,得到预测的分词结果集合。使用双向的lstm序列是为了充分的使用整句话的以前和未来的特征信息,然后将两个方向编码结果进行整合,输出预测的向量。在中文分词中只需预测四种情况,分别是b(词开始字)、m(词中间字)、e(词结束字)以及s(单个字),每个输出是一个4维的向量,分别代表是当前字属于每个类别的可能性。

s14、利用attention模型,对分词影响比较重要的字设置比较高的权重,将对分词影响比较低的字设置为比较低的权重,然后经过计算得到预测分类的概率向量。

s15、利用crf算法对得到的集合进行校正处理,得到最终的分词结果。

crf算法的所用是利用上下文的关联关系对bilstm的结果进行校正,crf的校正原理是利用二维的向量,分别代表的是b/m/e/s这几个类别后面出现的类别的概率,例如b后面不可能出现s,则p(s|b)=0。通过校正后得到最终的分词结果,例如图2中在bilstm可能会出现,“北”后面的“京”字预测成b,但是crf中p(b|b)=0,所以需要进行校正,最终预测的结果时“京”应该是m。

在分词后,对分词的结果利用提前预置的词库进行匹配,识别出词语中的错别字,并进行校正。

对分词出来的结果组成词向量,然后通过编辑距离计算每个词语词库之间的相似度,如果词能够正确的在词库中匹配,则表示词是正确的;如果没有正确匹配,则利用编辑距离的大小对该词进行校正,编辑距离越小代表词之间的相似度越高,即编辑距离的大小与词之间的相似度为正相关,将校正后的结果更新到原有的词向量中,生成新的词向量。

最后,利用bilstm+attention机制的语言模型对输入序列进行处理,识别错误的词语,如图3所示。

利用bilstm+attention机制实现对错误词语的识别主要是利用bilstm对输入的文本进行分析。例如当输入一段文字后,模型会对每个字所在位置可能出现的字进行预测,例如可以根据输入的第一个字,预测下一个字出现的概率,预测的方式是利用bilstm+attention模型,结合整段文字的上下文之间的关系,确定当前位置可能出现的字,然后根据预测的字与现有的字进行比较,如果有不同的地方,则表示该位置可能是错误的字,然后给用户提示。具体操作如下:

s31、对输入的中文根据字符库进行编码操作,编码的方式使用one-hot编码格式。

s32、将编码后的one-hot码输入bilstm网络中,进行信息提取,图3中的r代表的是右向的神经网络,能够获取文字的正向的特征信息;l代表逆向的神经网络,能够提取文本中的逆向的关联信息。

s33、将bilstm输出的信息,传到attention模型中,利用attention模型预测当前字符下一个应该出现字符的概率向量。

s34、根据得到的概率输出最终的预测结果,如果预测的结果与真实的结果不符合,则给出一定的提示,同时将预测的记过向用户展示,为其提供相对应的修改建议。

本发明实施例通过利用bilstm+attention+crf模型进行分词,并将分词结果利用预置的词库进行匹配,识别词语中的错别字,利用编辑距离的大小来对词语进行校正,最后通过bilstm+attention机制的语言模型对输入序列进行处理,结合上下文之间的关系,识别错误的词语,并通过给用户提示来完成文本的校正处理,实现了中文文本的高精度分词,解决了现有技术中分词不准确以及错别字识别不准确的问题,通过bilstm+attention+crf模型提高了分词的精度,提升了错别字校正的准确率,并提高了错别字校正效果,利用双向lstm实现了更高精度的词语错误检测。

以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。

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