CN110705217B - 一种错别字检测方法、装置及计算机存储介质、电子设备 - Google Patents
一种错别字检测方法、装置及计算机存储介质、电子设备 Download PDFInfo
- Publication number
- CN110705217B CN110705217B CN201910846339.6A CN201910846339A CN110705217B CN 110705217 B CN110705217 B CN 110705217B CN 201910846339 A CN201910846339 A CN 201910846339A CN 110705217 B CN110705217 B CN 110705217B
- Authority
- CN
- China
- Prior art keywords
- pinyin
- word
- feature
- model
- wrongly written
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Classifications
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Machine Translation (AREA)
Abstract
一种错别字检测方法、装置及计算机存储介质、电子设备,包括:确定待检测的文本数据;将所述文本数据转为拼音数据;生成所述拼音数据的基于ngram模型的特征模板;将所述拼音数据的特征模板输入至预先构建的错别字检测模型;所述错别字检测模型根据条件随机场CRF模型以及基于ngram模型的特征模板训练得到;根据所述错别字检测模型的输出结果确定所述待检测的文本数据是否存在错别字。采用本申请中的方案,可以简单高效的检测出错别字。
Description
技术领域
本申请涉及数据处理技术,具体地,涉及一种错别字检测方法、装置及计算机存储介质、电子设备。
背景技术
随着智能手机和其他移动设备的普及,人们之间的沟通以拼音打字为主。由于打字过程中存在各种偶然因素,例如打字太快、生僻字没找到、或者手误等,可能导致沟通过程中出现一些错别字。对于人来说错别字可以通过人的大脑识别并更正,然而,对于机器来说错别字可能会带来很大问题。在计算机中,字是以0、1来存储的,不同的字有不同的数值,数值之间是独立的,并不像文字那样有相关关系(例如读音相同、字形相似等)。这就导致人用计算机沟通时计算机在进行自然语言处理时需要进行错别字纠正。
目前错别字识别的技术主要是根据大量文本基于频率和字典的方法来进行错别字识别;这种方式过程复杂,计算速度不高,且错别字识别需要时常更新。
现有技术中存在的问题:
现有识别错别字的方法过程复杂且效率较低。
发明内容
本申请实施例中提供了一种错别字检测方法、装置及计算机存储介质、电子设备,以解决上述技术问题。
根据本申请实施例的第一个方面,提供了一种错别字检测方法,包括:
确定待检测的文本数据;
将所述文本数据转为拼音数据;
生成所述拼音数据的基于ngram模型的特征模板;
将所述拼音数据的特征模板输入至预先构建的错别字检测模型;所述错别字检测模型根据条件随机场CRF模型以及基于ngram模型的特征模板训练得到;
根据所述错别字检测模型的输出结果确定所述待检测的文本数据是否存在错别字。
根据本申请实施例的第二个方面,提供了一种错别字检测装置,包括:
数据确定模块,用于确定待检测的文本数据;
拼音转换模块,用于将所述文本数据转为拼音数据;
模板生成模块,用于生成所述拼音数据的基于ngram模型的特征模板;
模型检测模块,用于将所述拼音数据的特征模板输入至预先构建的错别字检测模型;所述错别字检测模型根据条件随机场CRF模型以及基于ngram模型的特征模板训练得到;
结果确定模块,用于根据所述错别字检测模型的输出结果确定所述待检测的文本数据是否存在错别字。
根据本申请实施例的第三个方面,提供了一种计算机存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现如上所述方法的步骤。
根据本申请实施例的第四个方面,提供了一种电子设备,包括存储器、以及一个或多个处理器,所述存储器用于存储一个或多个程序;所述一个或多个程序被所述一个或多个处理器执行时,实现如上所述的方法。
本申请实施例中提供的错别字检测方法、装置及计算机存储介质、电子设备,将待检测的文本数据转为拼音后,生成该拼音数据的特征模板输入至预先构建的错别字检测模型中进而检测确定该文本数据是否存在错别字,本申请实施例将CRF模型应用于错别字的检测,并添加了基于ngram语言模型的特征模板,有效结合了语言模型和CRF特征函数扩展性的特点,使得错别字检测过程简单且效率高。
附图说明
此处所说明的附图用来提供对本申请的进一步理解,构成本申请的一部分,本申请的示意性实施例及其说明用于解释本申请,并不构成对本申请的不当限定。在附图中:
图1示出了本申请实施例一中错别字检测方法实施的流程示意图;
图2示出了本申请实施例二中错别字检测装置的结构示意图;
图3示出了本申请实施例四中电子设备的结构示意图。
具体实施方式
在实现本申请的过程中,发明人发现:
基于长短记忆神经网络模型(LSTM,Long Short-Term Memory)可以考虑用来纠正错别字;但这种方式虽然可以解决基于频率和字典方式的更新不便的问题,但LSTM对于长文本预测有优势,而语句中错别字属于文本中的局部问题,LSTM对于局部问题的处理效果一般。
针对上述问题,本申请实施例中提供了一种错别字检测方法、装置及计算机存储介质、电子设备,通过对训练样本进行训练构建CRF模型的特征模板,再对所述CRF模型进行训练,调整该CRF模型的参数,进而识别并纠正错别字,可以快速准确的纠正错别字,简便快捷。
CRF模型,条件随机场Conditional Random Field模型,CRF的数学语言描述为:设X和Y为随机变量,P(Y|X)为给定X时Y的条件概率分布,若随机变量Y构成的是一个马尔科夫随机场,则称条件概率分布P(Y|X)为条件随机场。
ngram模型,是一种语言模型,利用上下文中相邻词间的搭配信息实现到汉字的自动转换,假设第N个词的出现只与前面N-1个词相关,而与其他任何词都不相关,整个语句的概率就是各个词出现概率的乘积。
本申请实施例中的方案可以采用各种计算机语言实现,例如,面向对象的程序设计语言Java和直译式脚本语言JavaScript等。
为了使本申请实施例中的技术方案及优点更加清楚明白,以下结合附图对本申请的示例性实施例进行进一步详细的说明,显然,所描述的实施例仅是本申请的一部分实施例,而不是所有实施例的穷举。需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。
实施例一
图1示出了本申请实施例一中错别字检测方法实施的流程示意图。
如图所示,所述错别字检测方法包括:
步骤101、确定待检测的文本数据;
步骤102、将所述文本数据转为拼音数据;
步骤103、生成所述拼音数据的基于ngram模型的特征模板;
步骤104、将所述拼音数据的特征模板输入至预先构建的错别字检测模型;所述错别字检测模型根据条件随机场CRF模型以及基于ngram模型的特征模板训练得到;
步骤105、根据所述错别字检测模型的输出结果确定所述待检测的文本数据是否存在错别字。
具体实施时,所述待检测的文本数据为汉字或中文。所述将文本数据转为拼音数据具体可以采用现有技术中的中文转换拼音、或汉字转换拼音工具或算法实现,目前已有汉字转拼音等应用,本申请在此不做赘述。
假设待检测的文本数据为“在短短的语言中藏有丰富的智慧”,所述将文本数据转为拼音数据,例如:“zai duan duan de yu yan zhong cang you feng fu de zhi hui”。
再进一步生成所述拼音数据的基于ngram模型的特征模板,输入至预先构建的错别字检测模型中,由于所述错别字检测模型是根据条件随机场CRF模型以及基于ngram模型的特征模板训练得到的,因此,可以直接输出该待检测文本数据是否存在错别字。
本申请实施例中提供的错别字检测方法,将待检测的文本数据转为拼音后,生成该拼音数据的特征模板输入至预先构建的错别字检测模型中进而检测确定该文本数据是否存在错别字,本申请实施例将CRF模型应用于错别字的检测,并添加了基于ngram语言模型的特征模板,有效结合了语言模型和CRF特征函数扩展性的特点,使得错别字检测过程简单且效率高。
在一种实施方式中,所述生成所述拼音数据的特征模板,包括:
根据每个拼音的前后拼音,为每个拼音生成第一特征;
根据每个拼音在所述拼音数据中出现的次数,为每个拼音生成第二特征;
将所述拼音数据按照预设窗口2或3提取,生成二元字组,并分别以所述二元字组中每个字为ngram特征生成两个第三特征;
根据所述第一特征、第二特征以及两个第三特征生成所述拼音数据的特征模板;所述拼音数据的特征模板包括每个拼音的特征模板。
具体实施时,所述每个拼音的前后拼音可以指每个拼音的前一个拼音、后一个拼音。具体的,所述前一个拼音、后一个拼音可以分别为拼音中当前拼音的前方和后方拼音。
对于当前拼音在开头或结尾的情况,可以将其前后拼音分别设置为begin或者end标识。
在一种实施方式中,所述根据每个拼音的前后拼音,为每个拼音生成第一特征,包括:
确定当前拼音在所述拼音数据中的前一个拼音和后一个拼音;
生成所述当前拼音的第一特征;
其中,所述第一特征=(当前拼音,所述当前拼音的前一个拼音,所述当前拼音的后一个拼音)。
具体实施时,本申请实施例可以针对每个拼音,首先确定所述拼音在拼音数据中的前一个拼音和后一个拼音,例如:“我爱祖国”对应的拼音数据为wo/ai/zu/guo,对于第一个拼音“wo”,其前一个拼音为begin、后一个拼音为“ai”,那么所述第一个拼音“wo”的第一特征=(wo,begin,ai);对于第二个拼音“ai”,其前一个拼音为wo、后一个拼音为zu,那么所述第二个拼音“ai”的第一特征=(ai,wo,zu);对于第三个拼音“zu”,其前一个拼音为zu、后一个拼音为“guo”,那么所述第三个拼音“zu”的第一特征=(zu,ai,guo);对于最后一个拼音“guo”,其前一个拼音为zu、后一个拼音为end,那么所述最后一个拼音“guo”的第一特征=(guo,zu,end)。
在一种实施方式中,所述将所述拼音数据按照预设窗口2或3提取,生成二元字组,并分别以所述二元字组中每个字为ngram特征生成两个第三特征,包括:
将所述拼音数据按照预设窗口值为2或3的窗口提取,生成二元字组;
以所述二元字组中第一个字为ngram特征,生成第一个第三特征;所述第一个第三特征=(第i个字和第i+1个字|第i个字的拼音:所述第i+1个字的拼音的前一个拼音为第i个字的拼音的概率);
以所述二元字组中第二个字为ngram特征,生成第二个第三特征;所述第二个第三特征=(第j个字和第j+1个字|第j+1个字的拼音:所述第j个字的拼音的后一个拼音为第j个字的拼音的概率)。
具体实施时,假设文本数据为“我毕业于上海交通大学”,其对应的拼音数据为“wo/bi/ye/yu/shang/hai/jiao/tong/da/xue”。
将所述拼音数据按照窗口为2的大小提取二元字组,可以得到:(我毕,wo|bi),(毕业,bi|ye),(业余,ye|yu),(于上,yu|shang),(上海,shang|hai),(海交,hai|jiao),(交通,jiao|tong),(通大,tong|da),(大学,da|xue)。
以第一个字为ngram特征,生成第一个第三特征,以第一个拼音wo为例,wo的第一个第三特征=(忘我|wang:p1,无我|wu:p2,...);其中,
以第二个字为ngram特征,生成第二个第三特征,以第一个拼音wo为例,wo的第二个第三特征=(我们|men:p3,我方|fang:p4,...);其中,
在实际实施时,对于每个拼音,以每个字为ngram特征,可能第三特征内都会有很多词语搭配,上述只是举例说明。
在一种实施方式中,在所述生成二元字组之后、生成两个第三特征之前,进一步包括:
统计每个二元字组的频率;
去除频率低于预设频率阈值的二元字组。
具体实施时,所述预设频率阈值可以根据实际需要设置,例如可以为100、35等,本申请对频率阈值的具体数值不作限制。
本申请实施例可以在生成二元字组之后,进行后续特征模板生成之前,先将二元字组进行预先处理,将所述二元字组中频率低于预设频率阈值去除掉,减少后续计算量,去除不明显的特征。
在一种实施方式中,所述错别字检测模型的构建过程如下:
搜集训练语料;
对所述训练语料标记拼音;
生成所述拼音的基于ngram模型的特征模板;
将所述特征模板作为特征函数对条件随机场CRF模型进行训练,得到所述错别字检测模型。
具体实施时,可以从微博、新浪、今日头条、***等网络资源搜集训练预料,本申请对语料搜集的来源不作限制。
在对所述训练语料标记拼音之前,本申请实施例还可以对所述训练语料进行初步的错别字纠正,具体可以通过人工纠正或者其他现有技术纠正。
对训练语料标记拼音之后,分别对拼音和汉字进行编码,假设拼音的集合为p,汉字的集合为m,构建基于ngram模型的特征模板。具体的构建过程可以为:
首先,构建拼音与字之间的对应特征,例如:假设拼音‘wo’的字向量特征为[你:0,我:m1,他:0,沃:m2,们:0],标记方法为:在汉字集合m中,对于读音是‘wo’的字,标记该字在训练语料中出现的次数;对于读音不是‘wo’的字,标记零;按照这种标记方式标记所述拼音集合p中的所有拼音与字的对应特征。
然后,构建拼音与字之间的n-gram特征。具体的,可以将所有语料按照预设窗口大小依次提取并标注拼音为二元字组,统计二元字组中的频率去掉频率较低的二元字组。
根据上述数据构建每个拼音的特征模板,具体的,假设每个拼音的初始拼音模板为空,依次添加前后拼音,再添加拼音与字的对应特征,再添加分别以第i个字为ngram特征的二元字组,得到最终的特征模板。
最后将所述特征模板作为特征函数对条件随机场CRF模型进行训练,得到所述错别字检测模型。
所述CRF模型具体可以为:
其中,函数f为特征函数,k为特征函数的编号,P(X)为拼音的联合概率,Y|X为拼音为X情况下不同汉字组合,P(Y|X)为拼音为X情况下当前汉字组合的概率,i为拼音数据中句子内的拼音或字的序号,c为拼音数据中的句子序号;Z(x)为归一化函数。具体的,Z(x)公式如下:
在一种实施方式中,所述方法进一步包括:
在确定所述待检测文本数据存在错别字时,纠正所述错别字。
具体实施时,本申请实施例可以在检测到文本数据存在错别字时,纠正该错别字,从而可以实现基于CRF模型的错别字自动纠正目的,使得后续的自然语言处理结果更准确。
实施例二
基于同一发明构思,本申请实施例提供了一种错别字检测装置,该装置解决技术问题的原理与一种错别字检测方法相似,重复之处不再赘述。
图2示出了本申请实施例二中错别字检测装置的结构示意图。
如图所示,所述错别字检测装置,包括:
数据确定模块201,用于确定待检测的文本数据;
拼音转换模块202,用于将所述文本数据转为拼音数据;
模板生成模块203,用于生成所述拼音数据的基于ngram模型的特征模板;
模型检测模块204,用于将所述拼音数据的基于ngram模型的特征模板输入至预先构建的错别字检测模型;所述错别字检测模型根据条件随机场CRF模型以及基于ngram模型的特征模板训练得到;
结果确定模块205,用于根据所述错别字检测模型的输出结果确定所述待检测的文本数据是否存在错别字。
本申请实施例中提供的错别字检测装置,将待检测的文本数据转为拼音后,生成该拼音数据的特征模板输入至预先构建的错别字检测模型中进而检测确定该文本数据是否存在错别字,本申请实施例将CRF模型应用于错别字的检测,并添加了基于ngram语言模型的特征模板,有效结合了语言模型和CRF特征函数扩展性的特点,使得错别字检测过程简单且效率高。
在一种实施方式中,所述装置包括模型构建模块,其中,所述模型构建模块包括:
语料搜集单元,用于搜集训练语料;
拼音标记单元,用于对所述训练语料标记拼音;
模型模板生成单元,用于生成所述拼音的基于ngram模型的特征模板;
模型训练单元,用于将所述特征模板作为特征函数对CRF模型进行训练,得到所述错别字检测模型。
在一种实施方式中,所述模板生成模块,包括:
第一特征单元,用于根据每个拼音的前后拼音,为每个拼音生成第一特征;
第二特征单元,用于根据每个拼音在所述拼音数据中出现的次数,为每个拼音生成第二特征;
第三特征单元,用于将所述拼音数据按照预设窗口2或3提取,生成二元字组,并分别以所述二元字组中每个字为ngram特征生成两个第三特征;
模板生成单元,用于根据所述第一特征、第二特征以及两个第三特征生成所述拼音数据的特征模板;所述拼音数据的特征模板包括每个拼音的特征模板。
在一种实施方式中,所述第一特征单元,包括:
拼音确定子单元,用于确定当前拼音在所述拼音数据中的前一个拼音和后一个拼音;
第一特征生成子单元,用于生成所述当前拼音的第一特征;
其中,所述第一特征=(当前拼音,所述当前拼音的前一个拼音,所述当前拼音的后一个拼音)
在一种实施方式中,所述第三特征单元,包括:
字组生成子单元,用于将所述拼音数据按照预设窗口值为2的窗口提取,生成二元字组;
第三特征生成子单元,用于以所述二元字组中第一个字为ngram特征,生成第一个第三特征;所述第一个第三特征=(第i个字和第i+1个字|第i个字的拼音:所述第i+1个字的拼音的前一个拼音为第i个字的拼音的概率);以所述二元字组中第二个字为ngram特征,生成第二个第三特征;所述第二个第三特征=(第j个字和第j+1个字|第j+1个字的拼音:所述第j个字的拼音的后一个拼音为第j个字的拼音的概率)。
在一种实施方式中,所述模板生成模块进一步包括:
过滤单元,用于在所述生成二元字组之后、生成两个第三特征之前,统计每个二元字组的频率;去除频率低于预设频率阈值的二元字组。
在一种实施方式中,所述装置进一步包括:
错别字纠正模块,用于在确定所述待检测文本数据存在错别字时,纠正所述错别字。
实施例三
基于同一发明构思,本申请实施例还提供一种计算机存储介质,下面进行说明。
所述计算机存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现如实施例一所述错别字检测方法的步骤。
本申请实施例中提供的计算机存储介质,将待检测的文本数据转为拼音后,生成该拼音数据的特征模板输入至预先构建的错别字检测模型中进而检测确定该文本数据是否存在错别字,本申请实施例将CRF模型应用于错别字的检测,并添加了基于ngram语言模型的特征模板,有效结合了语言模型和CRF特征函数扩展性的特点,使得错别字检测过程简单且效率高。
实施例四
基于同一发明构思,本申请实施例还提供一种电子设备,下面进行说明。
图3示出了本申请实施例四中电子设备的结构示意图。
如图所示,所述电子设备包括存储器301、以及一个或多个处理器302,所述存储器用于存储一个或多个程序;所述一个或多个程序被所述一个或多个处理器执行时,实现如实施例一所述的错别字检测方法。
本申请实施例中提供的电子设备,将待检测的文本数据转为拼音后,生成该拼音数据的特征模板输入至预先构建的错别字检测模型中进而检测确定该文本数据是否存在错别字,本申请实施例将CRF模型应用于错别字的检测,并添加了基于ngram语言模型的特征模板,有效结合了语言模型和CRF特征函数扩展性的特点,使得错别字检测过程简单且效率高。
实施例五
为了便于本申请的实施,本申请实施例以一具体实例进行说明。
步骤一、在微博、今日头条、***等网络资源上搜集训练语料,并将搜集到的语料经人工进行错别字的初步纠正。
步骤二、对搜集到的语料进行数据处理,具体数据处理过程如下:
A、对搜集的语料标记拼音;
B、分别对拼音和汉字进行编码;
假设拼音的集合大小为p、汉字的集合大小为m。
C、构建拼音与字之间的对应特征。
例如:假设拼音“wo”的字向量特征为[你:0,我:m1,他:0,沃:m2,们:0,...](假设汉字总数为4000个,那么字向量特征中应当包括有4000个特征,其中这些汉字中拼音是wo的值为出现的次数,拼音不是wo的值为0),其中m1表示“我”在训练语料中出现的次数,m2表示“沃”在训练语料中出现的次数。
标记方法为:汉字集合m中,拼音是‘wo’的字标记该字在训练语料中出现的次数,拼音不是‘wo’的字标记零,标记拼音集合p中的所有拼音与字之间的对应特征。
D、构建拼音与字之间的n-gram特征。
本申请实施例采用n-gram语言模型中的Bi-Gram技术,具体构建过程如下:
1)将所有语料按窗口大小为2依次提取,并标注拼音成为二元字组;
例如:从语句“我毕业于上海交通大学”提取(我毕,wo|bi),(毕业,bi|ye),(业余,ye|yu),(于上,yu|shang),(上海,shang|hai)等二元字组。
2)统计所述二元字组的频率,去除频率较低的二元字组。
例如:二元字组的频率阈值设置为500,(毕业,bi|ye)、(业余,ye|yu)、(上海,shang|hai)等二元字组的频率高于500,那么保留这些二元字组;对于(我毕,wo|bi)、(于上,yu|shang)等二元字组的频率低于500,本申请实施例则去除这两个二元字组。
步骤三、构建条件随机场(CRF,conditional random field)模型的特征模板
1、确定所述CRF模型为:
该CRF模型中的函数f为特征函数,具体可以为:
其中,x0为语句中的字符。
本申请实施例中,所述CRF模型可以设定多个特征函数,具体实施时可以以特征模板表示,例如:(wo,你:0,我:m1,他:0,沃:m2,们:0)表示拼音wo的特征模板。
2、构建每个拼音的模板
假设初始拼音模板q为空。
添加拼音本身特征,例如:“我毕业于上海师范大学”,wo的前一个拼音为begin、后一个拼音为bi;ye的前一个拼音为bi,后一个拼音为yu,拼音wo的拼音模板q=(wo,begin,bi)。
为每个拼音添加拼音与字之间的对应特征,假设所述拼音数据中“我”出现的次数为320、“沃”出现的次数为240,那么拼音“wo”的拼音模板q=(wo,begin,bi,你:0,我:320,他:0,沃:240,们:0,...);
再添加二元字组,第一个字ngram特征,例如:q(wo,begin,bi,你:0,我:320,他:0,沃:240,们:0,忘我|wang:p1,无我|wu:p2,北京|bei:0,...);其中,
假设拼音wo前一个拼音为wang的出现频率是200、拼音wo前一个拼音为wu的出现频率是300,对于“我毕业于上海师范大学”而言,wo之前的拼音是begin,忘我和无我的出现概率均为0,那么q=(wo,begin,bi,你:0,我:320,他:0,沃:240,们:0,忘我|wang:0,无我|wu:0,北京|bei:0,...)。
继续添加二元字组,第二个字ngram特征,例如:q(wo,begin,bi,你:0,我:320,他:0,沃:240,们:0,忘我|wang:0,无我|wu:0,北京|bei:0,我们|men:p3,我方|fang:p4...);
其中,
假设拼音wo后一个拼音为men的出现频率是500、拼音wo后一个拼音为bi的出现频率是400,对于“我毕业于上海师范大学”而言,wo之后的拼音是be,我们的出现概率为0、我毕的出现概率为400,那么q=(wo,begin,bi,你:0,我:320,他:0,沃:240,们:0,忘我|wang:0,无我|wu:0,北京|bei:0,我们|men:0,我毕|bi:400,我方|fang:0...)。
步骤四、训练CRF模型
以“我毕业于上海交通大学”为例,
分别输入“wo\bi\ye\yu\shang\hai\jiao\tong\da\xue”各个拼音对应的特征模板(根据步骤三得到);
例如:对于wo的特征模板q=(wo,begin,bi,你:0,我:320,他:0,沃:240,们:0,忘我|wang:0,无我|wu:0,北京|bei:0,我们|men:0,我毕|bi:400,我方|fang:0...),输入至CRF模型函数:
具体参数对应关系为:
…以此类推。
由于特征函数较多,本申请实施例在此不再一一示出。
最终输出为”我毕业于上海交通大学”。
将所有样本数据分为训练集、测试集。
在训练过程中,可以随时调整CRF模型参数,例如:模型复杂度c等,使得模型在测试集的准确率最高,获得训练好的CRF模型。
步骤五、预测
对于新的文本数据,例如:“我来自于背景”。
首先,本申请实施例先将文本数据“我来自于背景”转换成拼音数据“wo/lai/zi/yu/ben/jing”;
然后,根据步骤三生成文本拼音的特征模板;
最后,输入预先构建好的CRF模型进行预测,若预测结果不为“我来自于北京”,则确定存在错别字,模型自动进行纠正。
CRF模型相对于神经网络具有良好的统计特性,相对于传统的字典+统计的方法方便模型更新工作量小,本申请实施例基于CRF模型进行错别字的识别并纠正,目前还没有这方面的技术。此外,本申请实施例在构建CRF模型过程中,添加了基于ngram语言模型的特征模板,有效结合了语言模型和CRF特征函数扩展性的特点,取得了理想的效果。
实际应用,本申请实施例的应用场景广泛,可以应用于智能客服,例如:用户与智能客服沟通中打错字,也可以帮助智能客服识别并纠正用户的语句,达到准确判断用户意图的目的。
此外,还可以应用于自然语言处理的数据预处理过程,提前处理文本中的错别字,使自然语言处理结果更准确。
例如:
用户输入:我想买一张上海到背景的火车票;
智能出票***采用了本申请实施例所提供的技术方案,则可以执行以下操作:
首先,利用本申请实施例所提供的技术方案进行错别字纠正,纠正后为“我想买一张上海到北京的火车票”;
然后,提取实体,例如:上海(出发地),北京(目的地);
最后,完成出票。
如果不采用本申请实施例所提供的技术方案进行错别字纠正,智能出票***可能就会因为找不到“背景”而不能出票。
本领域内的技术人员应明白,本申请的实施例可提供为方法、***、或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本申请是参照根据本申请实施例的方法、设备(***)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
尽管已描述了本申请的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例作出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本申请范围的所有变更和修改。
显然,本领域的技术人员可以对本申请进行各种改动和变型而不脱离本申请的精神和范围。这样,倘若本申请的这些修改和变型属于本申请权利要求及其等同技术的范围之内,则本申请也意图包含这些改动和变型在内。
Claims (10)
1.一种错别字检测方法,其特征在于,包括:
确定待检测的文本数据;
将所述文本数据转为拼音数据;
生成所述拼音数据的基于ngram模型的特征模板;
将所述拼音数据的基于ngram模型的特征模板输入至预先构建的错别字检测模型;所述错别字检测模型根据条件随机场CRF模型以及基于ngram模型的特征模板训练得到;
根据所述错别字检测模型的输出结果确定所述待检测的文本数据是否存在错别字。
2.根据权利要求1所述的方法,其特征在于,所述错别字检测模型的构建过程如下:
搜集训练语料;
对所述训练语料标记拼音;
生成所述拼音的基于ngram模型的特征模板;
将所述特征模板作为特征函数对CRF模型进行训练,得到所述错别字检测模型。
3.根据权利要求1或2所述的方法,其特征在于,所述生成所述拼音数据的基于ngram模型的特征模板,包括:
根据每个拼音的前后拼音,为每个拼音生成第一特征;
根据每个拼音在所述拼音数据中出现的次数,为每个拼音生成第二特征;
将所述拼音数据按照预设窗口2或3提取,生成二元字组,并分别以所述二元字组中每个字为ngram特征生成两个第三特征;
根据所述第一特征、第二特征以及两个第三特征生成所述拼音数据的特征模板;所述拼音数据的特征模板包括每个拼音的特征模板。
4.根据权利要求3所述的方法,其特征在于,所述根据每个拼音的前后拼音,为每个拼音生成第一特征,包括:
确定当前拼音在所述拼音数据中的前一个拼音和后一个拼音;
生成所述当前拼音的第一特征;
其中,所述第一特征=(当前拼音,所述当前拼音的前一个拼音,所述当前拼音的后一个拼音)。
5.根据权利要求3所述的方法,其特征在于,所述将所述拼音数据按照预设窗口2或3提取,生成二元字组,并分别以所述二元字组中每个字为ngram特征生成两个第三特征,包括:
将所述拼音数据按照预设窗口值为2或3的窗口提取,生成二元字组;
以所述二元字组中第一个字为ngram特征,生成第一个第三特征;所述第一个第三特征=(第i个字和第i+1个字|第i个字的拼音:所述第i+1个字的拼音的前一个拼音为第i个字的拼音的概率);
以所述二元字组中第二个字为ngram特征,生成第二个第三特征;所述第二个第三特征=(第j个字和第j+1个字|第j+1个字的拼音:所述第j个字的拼音的后一个拼音为第j个字的拼音的概率)。
6.根据权利要求3所述的方法,其特征在于,在所述生成二元字组之后、生成两个第三特征之前,进一步包括:
统计每个二元字组的频率;
去除频率低于预设频率阈值的二元字组。
7.根据权利要求1所述的方法,其特征在于,进一步包括:
在确定所述待检测文本数据存在错别字时,纠正所述错别字。
8.一种错别字检测装置,其特征在于,包括:
数据确定模块,用于确定待检测的文本数据;
拼音转换模块,用于将所述文本数据转为拼音数据;
模板生成模块,用于生成所述拼音数据的基于ngram模型的特征模板;
模型检测模块,用于将所述拼音数据的特征模板输入至预先构建的错别字检测模型;所述错别字检测模型根据条件随机场CRF模型以及基于ngram模型的特征模板训练得到;
结果确定模块,用于根据所述错别字检测模型的输出结果确定所述待检测的文本数据是否存在错别字。
9.一种计算机存储介质,其特征在于,其上存储有计算机程序,所述计算机程序被处理器执行时实现如权利要求1至7任一所述方法的步骤。
10.一种电子设备,其特征在于,包括存储器、以及一个或多个处理器,所述存储器用于存储一个或多个程序;所述一个或多个程序被所述一个或多个处理器执行时,实现如权利要求1至7任一所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910846339.6A CN110705217B (zh) | 2019-09-09 | 2019-09-09 | 一种错别字检测方法、装置及计算机存储介质、电子设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910846339.6A CN110705217B (zh) | 2019-09-09 | 2019-09-09 | 一种错别字检测方法、装置及计算机存储介质、电子设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110705217A CN110705217A (zh) | 2020-01-17 |
CN110705217B true CN110705217B (zh) | 2023-07-21 |
Family
ID=69195144
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910846339.6A Active CN110705217B (zh) | 2019-09-09 | 2019-09-09 | 一种错别字检测方法、装置及计算机存储介质、电子设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110705217B (zh) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112307748A (zh) * | 2020-03-02 | 2021-02-02 | 北京字节跳动网络技术有限公司 | 用于处理文本的方法和装置 |
CN112800987B (zh) * | 2021-02-02 | 2023-07-21 | 中国联合网络通信集团有限公司 | 一种汉字处理方法和装置 |
CN112560451B (zh) * | 2021-02-20 | 2021-05-14 | 京华信息科技股份有限公司 | 一种自动生成训练数据的错别字校对方法及装置 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108021712A (zh) * | 2017-12-28 | 2018-05-11 | 中南大学 | N-Gram模型的建立方法 |
CN108304375A (zh) * | 2017-11-13 | 2018-07-20 | 广州腾讯科技有限公司 | 一种信息识别方法及其设备、存储介质、终端 |
CN109271526A (zh) * | 2018-08-14 | 2019-01-25 | 阿里巴巴集团控股有限公司 | 文本检测方法、装置、电子设备及计算机可读存储介质 |
CN109492202A (zh) * | 2018-11-12 | 2019-03-19 | 浙江大学山东工业技术研究院 | 一种基于拼音的编码与解码模型的中文纠错方法 |
CN109992765A (zh) * | 2017-12-29 | 2019-07-09 | 北京京东尚科信息技术有限公司 | 文本纠错方法及装置、存储介质和电子设备 |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106297797B (zh) * | 2016-07-26 | 2019-05-31 | 百度在线网络技术(北京)有限公司 | 语音识别结果纠错方法和装置 |
CN108491392A (zh) * | 2018-03-29 | 2018-09-04 | 广州视源电子科技股份有限公司 | 文字拼写错误的修正方法、***、计算机设备及存储介质 |
CN108519973A (zh) * | 2018-03-29 | 2018-09-11 | 广州视源电子科技股份有限公司 | 文字拼写的检测方法、***、计算机设备及存储介质 |
CN110110041B (zh) * | 2019-03-15 | 2022-02-15 | 平安科技(深圳)有限公司 | 错词纠正方法、装置、计算机装置及存储介质 |
CN110162789B (zh) * | 2019-05-13 | 2023-07-21 | 北京一览群智数据科技有限责任公司 | 一种基于汉语拼音的词表征方法及装置 |
-
2019
- 2019-09-09 CN CN201910846339.6A patent/CN110705217B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108304375A (zh) * | 2017-11-13 | 2018-07-20 | 广州腾讯科技有限公司 | 一种信息识别方法及其设备、存储介质、终端 |
CN108021712A (zh) * | 2017-12-28 | 2018-05-11 | 中南大学 | N-Gram模型的建立方法 |
CN109992765A (zh) * | 2017-12-29 | 2019-07-09 | 北京京东尚科信息技术有限公司 | 文本纠错方法及装置、存储介质和电子设备 |
CN109271526A (zh) * | 2018-08-14 | 2019-01-25 | 阿里巴巴集团控股有限公司 | 文本检测方法、装置、电子设备及计算机可读存储介质 |
CN109492202A (zh) * | 2018-11-12 | 2019-03-19 | 浙江大学山东工业技术研究院 | 一种基于拼音的编码与解码模型的中文纠错方法 |
Also Published As
Publication number | Publication date |
---|---|
CN110705217A (zh) | 2020-01-17 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108984530B (zh) | 一种网络敏感内容的检测方法及检测*** | |
CN110598203B (zh) | 一种结合词典的军事想定文书实体信息抽取方法及装置 | |
CN110287480B (zh) | 一种命名实体识别方法、装置、存储介质及终端设备 | |
CN107291783B (zh) | 一种语义匹配方法及智能设备 | |
CN110705217B (zh) | 一种错别字检测方法、装置及计算机存储介质、电子设备 | |
CN110457689B (zh) | 语义处理方法及相关装置 | |
CN111310440B (zh) | 文本的纠错方法、装置和*** | |
CN110795938B (zh) | 文本序列分词方法、装置及存储介质 | |
CN109598517B (zh) | 商品通关处理、对象的处理及其类别预测方法和装置 | |
CN112699686B (zh) | 基于任务型对话***的语义理解方法、装置、设备及介质 | |
CN112396049A (zh) | 文本纠错方法、装置、计算机设备及存储介质 | |
CN110555206A (zh) | 一种命名实体识别方法、装置、设备及存储介质 | |
CN111814482B (zh) | 文本关键数据的提取方法、***和计算机设备 | |
CN112002323A (zh) | 语音数据处理方法、装置、计算机设备及存储介质 | |
CN111143571B (zh) | 实体标注模型的训练方法、实体标注方法以及装置 | |
CN111753530A (zh) | 一种语句处理方法、装置、设备及介质 | |
CN113918031A (zh) | 使用子字符信息进行中文标点恢复的***和方法 | |
CN116245097A (zh) | 训练实体识别模型的方法、实体识别方法及对应装置 | |
CN113326702A (zh) | 语义识别方法、装置、电子设备及存储介质 | |
CN116991875B (zh) | 一种基于大模型的sql语句生成、别名映射方法及设备 | |
CN112036186A (zh) | 语料标注方法、装置、计算机存储介质及电子设备 | |
CN113705207A (zh) | 语法错误识别方法及装置 | |
CN112597299A (zh) | 文本的实体分类方法、装置、终端设备和存储介质 | |
CN115691503A (zh) | 语音识别方法、装置、电子设备和存储介质 | |
CN110929514A (zh) | 文本校对方法、装置、计算机可读存储介质及电子设备 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
TA01 | Transfer of patent application right | ||
TA01 | Transfer of patent application right |
Effective date of registration: 20210318 Address after: 200333 room 3110, No. 100, Lane 130, Taopu Road, Putuo District, Shanghai Applicant after: Shanghai zebra Laila Logistics Technology Co.,Ltd. Address before: Room 308-1, area C, 1718 Daduhe Road, Putuo District, Shanghai 200333 Applicant before: Shanghai kjing XinDa science and Technology Group Co.,Ltd. |
|
GR01 | Patent grant | ||
GR01 | Patent grant |