CN113673228A - 文本纠错方法、装置、计算机存储介质及计算机程序产品 - Google Patents
文本纠错方法、装置、计算机存储介质及计算机程序产品 Download PDFInfo
- Publication number
- CN113673228A CN113673228A CN202111020960.0A CN202111020960A CN113673228A CN 113673228 A CN113673228 A CN 113673228A CN 202111020960 A CN202111020960 A CN 202111020960A CN 113673228 A CN113673228 A CN 113673228A
- Authority
- CN
- China
- Prior art keywords
- characters
- text
- vectors
- corrected
- vector
- 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.)
- Pending
Links
- 238000012937 correction Methods 0.000 title claims abstract description 91
- 238000000034 method Methods 0.000 title claims abstract description 85
- 238000004590 computer program Methods 0.000 title claims abstract description 15
- 239000013598 vector Substances 0.000 claims abstract description 309
- 238000012549 training Methods 0.000 claims description 33
- 238000010801 machine learning Methods 0.000 claims description 29
- 238000013145 classification model Methods 0.000 claims description 26
- 230000006870 function Effects 0.000 claims description 26
- 230000011218 segmentation Effects 0.000 claims description 22
- 238000010606 normalization Methods 0.000 claims description 20
- 238000004364 calculation method Methods 0.000 claims description 6
- 230000008569 process Effects 0.000 description 25
- 230000015654 memory Effects 0.000 description 14
- 239000011159 matrix material Substances 0.000 description 13
- 238000004891 communication Methods 0.000 description 11
- 238000012545 processing Methods 0.000 description 10
- 238000003062 neural network model Methods 0.000 description 6
- 238000013528 artificial neural network Methods 0.000 description 5
- 238000010586 diagram Methods 0.000 description 4
- 230000002457 bidirectional effect Effects 0.000 description 2
- 238000004422 calculation algorithm Methods 0.000 description 2
- 238000006243 chemical reaction Methods 0.000 description 2
- 238000013527 convolutional neural network Methods 0.000 description 2
- 230000006403 short-term memory Effects 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 230000008878 coupling Effects 0.000 description 1
- 238000010168 coupling process Methods 0.000 description 1
- 238000005859 coupling reaction Methods 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000018109 developmental process Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000014509 gene expression Effects 0.000 description 1
- 235000003642 hunger Nutrition 0.000 description 1
- 230000007774 longterm Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000011022 operating instruction Methods 0.000 description 1
- 230000000306 recurrent effect Effects 0.000 description 1
- 230000007704 transition Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/20—Natural language analysis
- G06F40/232—Orthographic correction, e.g. spell checking or vowelisation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/20—Natural language analysis
- G06F40/205—Parsing
- G06F40/226—Validation
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Health & Medical Sciences (AREA)
- Artificial Intelligence (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Computational Linguistics (AREA)
- General Health & Medical Sciences (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Machine Translation (AREA)
Abstract
本申请实施例提供了一种文本纠错方法、装置、计算机存储介质及计算机程序产品。该方法包括:对待纠错文本进行切分,获得待纠错文本中的多个文字;获得多个文字分别对应的语义向量、读音向量和字形向量,并根据语义向量、读音向量和字形向量生成多个文字的特征向量,由于考虑了文字对应的语义、读音和字形,使得生成的特征向量携带的信息更为丰富,表达的文字特征更准确。根据多个文字的特征向量,获得待纠错文本中的多个文字在词表中分别映射到多个候选文字的概率;根据多个文字的音形向量和词表的音形向量,计算表征待纠错文本与正确文本之间的相似度。然后根据多个候选文字的概率和相似度,确定待纠错文本的输出结果,提高了文本纠错的准确性。
Description
技术领域
本申请实施例涉及计算机技术领域,尤其涉及一种文本纠错方法、装置、计算机存储介质及计算机程序产品。
背景技术
随着计算机软件技术的不断发展,人们通常会借助各种输入工具输入文本,与表音语言如英文相比,表意语言如中文虽表达含义丰富多样,容易出现拼写、形近、音近的输入错误。一方面拼写错误会使得文本更容易被误解,影响交流效率;另一方面,在很多严谨的文书场景中,比如司法、合同、新闻稿件等,对拼写错误的要求十分严格。
为了保证输入的正确性,需要对输入的文本进行纠错。现有技术中,以中文的汉字为例,其通过获取待纠错文本中汉字的混淆集(混淆集为该汉字读音和字形相近的多个候选文字的集合),然后从混淆集中选出候选文字,进而根据候选文字确定待纠错文本的输出结果,以达到纠错的目的。
然而,汉字的数量特别多,读音、字形相似的汉字也非常多,使得汉字的混淆集的搜索空间非常大,通过从混淆集中选择候选文字对待纠错文本的进行纠错,不但效率低且降低了纠错的准确性。与汉字类似的其它表意文字为日文、韩文等也存在同样的问题。
发明内容
有鉴于此,本申请实施例提供一种文本纠错方案,以至少部分解决上述问题。
根据本申请实施例的第一方面,提供了一种文本纠错方法,包括:对待纠错文本进行切分,获得所述待纠错文本中的多个文字;获得所述多个文字分别对应的语义向量、读音向量和字形向量,并根据所述语义向量、所述读音向量和所述字形向量生成多个文字的特征向量;根据所述多个文字的特征向量,获得所述待纠错文本中的所述多个文字在词表中分别映射到多个候选文字的概率;根据所述多个文字的音形向量和词表的音形向量,计算表征所述待纠错文本与正确文本之间的相似度,其中,所述音形向量根据所述读音向量和所述字形向量生成;根据所述多个候选文字的概率和所述相似度,确定所述待纠错文本的输出结果。
根据本申请实施例的第二方面,提供了一种文本纠错装置,包括:切分模块,用于对待纠错文本进行切分,获得所述待纠错文本中的多个文字;特征向量生成模块,用于获得所述多个文字分别对应的语义向量、读音向量和字形向量,并根据所述语义向量、所述读音向量和所述字形向量生成多个文字的特征向量;概率确定模块,用于根据所述多个文字的特征向量,获得所述待纠错文本中的所述多个文字在词表中分别映射到多个候选文字的概率;相似度计算模块,用于根据所述多个文字的音形向量和词表的音形向量,计算表征所述待纠错文本与正确文本之间的相似度,其中,所述音形向量根据所述读音向量和所述字形向量生成;输出结果模块,用于根据所述多个候选文字的概率和所述相似度,确定所述待纠错文本的输出结果。
根据本申请实施例的第三方面,提供了一种电子设备,包括:处理器、存储器、通信接口和通信总线,所述处理器、所述存储器和所述通信接口通过所述通信总线完成相互间的通信;所述存储器用于存放至少一可执行指令,所述可执行指令使所述处理器执行如第一方面所述的文本纠错方法对应的操作。
根据本申请实施例的第四方面,提供了一种计算机存储介质,其上存储有计算机程序,该程序被处理器执行时实现如第一方面所述的文本纠错方法。
根据本申请实施例的第五方面,提供了一种计算机程序产品,包括计算机指令,所述计算机指令指示计算设备执行如第一方面所述的文本纠错方法对应的操作。
本申请实施例提供的文本纠错方案,对待纠错文本进行切分,获得待纠错文本中的多个文字;获得多个文字分别对应的语义向量、读音向量和字形向量,并根据语义向量、读音向量和字形向量生成多个文字的特征向量,由于考虑了文字对应的语义、读音和字形,使得生成的特征向量携带的信息更为丰富,表达的文字特征也更为准确。根据多个文字的特征向量,获得待纠错文本中的多个文字在词表中分别映射到多个候选文字的概率;根据多个文字的音形向量和词表的音形向量,计算表征待纠错文本与正确文本之间的相似度,通过考虑文本的音形向量,从而计算从待纠错文本到正确文本之间的转换概率,以得到相似度,其中,音形向量根据读音向量和字形向量生成。然后根据多个候选文字的概率和相似度,确定待纠错文本的输出结果。由于在确定多个候选文字的概率时考虑了文字的语义、读音和字形,在确定相似度时考虑了文字的读音和字形。通过多个候选文字的概率和相似度的结合,使得本申请实施例提供的文本纠错方案,不仅能够处理传统方案中读音相近和字形相近的拼写错误,同时还能够有效处理既不读音相似、也不字形相似的拼写错误,提高了文本纠错的准确性。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请实施例中记载的一些实施例,对于本领域普通技术人员来讲,还可以根据这些附图获得其他的附图。
图1为本申请实施例提供的一种文本纠错方法的步骤流程图;
图2为本申请实施例提供的一种文本纠错方法的应用场景图;
图3为本申请实施例提供的另一种文本纠错方法的步骤流程图;
图4为本申请实施例提供的一种文本纠错装置的结构框图;
图5为本申请实施例提供的一种电子设备的结构示意图。
具体实施方式
为了使本领域的人员更好地理解本申请实施例中的技术方案,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅是本申请实施例一部分实施例,而不是全部的实施例。基于本申请实施例中的实施例,本领域普通技术人员所获得的所有其他实施例,都应当属于本申请实施例保护的范围。
需要说明的是,本申请中的第一和第二只是为了区分名称,并不代表顺序关系,不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量,例如,第一归一化函数、第二归一化函数。
下面结合本申请实施例附图进一步说明本申请实施例具体实现。
实施例一、
如图1所示,为本申请实施例提供的一种文本纠错方法的流程图,该文本纠错方法包括以下步骤:
步骤S101、对待纠错文本进行切分,获得待纠错文本中的多个文字。
本示例中可以通过字符切分的方式对待纠错文本进行切分,将待纠错文本切分成多个文字,本申请实施例中待纠错文本至少包括表意文本如中文,此外,还可以包括其它文本和字符,如:英文、法文、韩文、日文、数字、希腊文、标点等。
以待纠错文本包括中文、英文、数字和标点为例进行说明,设定待纠错文本为“我惊天11点,吃KFC”,首先,对待纠错文本进行切分,获得待纠错文本中的多个文字,即:“我|惊|天|11|点|,|吃|KFC”。本示例中对中文进行单个汉字的切分,将标点进行单个切分,对数字、英文、特殊符号等进行保留切分,保留其完整性。例如,将“11点”切分为“11|点”;将“11:00”切分为“11:00”;将“2021年01月01日”切分为“2021|年|01|月|01|日”;将“2021-01-01”切分为“|2021-01-01|”。但本领域技术人员应当明了,在很多情况下,待纠错文本可能仅包含表意文本,则对其进行单个文字切分即可。
步骤S102、获得多个文字分别对应的语义向量、读音向量和字形向量,并根据语义向量、读音向量和字形向量生成多个文字的特征向量。
针对每个文字,根据文字的语义生成文字的语义向量,该语义向量也可以理解为字向量;根据文字的读音生成文字的读音向量;根据文字的字形生成文字的字形向量;根据文字的语义向量、文字的读音向量和文字的字形向量,生成文字的特征向量,从而得到多个文字的特征向量。可选地,将语义向量、读音向量和字形向量三者相加之和作为特征向量,该特征向量可以理解为综合考虑语义、读音和字形的综合向量。
以文字“我”和“今”为例对语义、读音和字形进行说明,“我”在语义上包括“我、你、他、她、它”;在读音上包括与“wo”同音或近音的文字,如“我、喔、卧、沃”;在字形上包括与“我”相同偏旁或相似字形的文字,如“我、饿、哦、俄、找”。“今”在语义上包括“今、明、后、昨”;在读音上包括与“jin”同音或近音的文字,如“今、京、惊、进、近”;在字形上包括与“今”相同偏旁或相似字形的文字,如“今、怜、伶、念、岑、含、衾、矜、贪”。
需要说明的是,本申请实施例中对文字进行向量化时,可通过编码模型分别对文字的语义、读音和字形进行编码,得到文字的语义向量、读音向量和字形向量。该编码模型可以是任意适当设置的可用于对文字进行向量化的机器学习模型,本申请实施例对于采用的机器学习模型的具体结构不做限定,只要是能够对文字进行编码获得向量即可。
步骤S103、根据多个文字的特征向量,获得待纠错文本中的多个文字在词表中分别映射到多个候选文字的概率。
词表中包括大量候选文字,针对待纠错文本切分后获得的每个文字的特征向量,将切分后获得的每个文字分别映射到词表中的多个候选文字上,可以获得该每个文字与多个候选文字之间对应的概率,待纠错文本中的每个文字在词表中分别映射到多个候选文字的概率可以理解为每个文字在词表中的概率分布。例如,词表中有10000个候选文字,每个文字对应10000个概率,本示例中的概率用于表示该文字分别匹配候选文字的置信度。
步骤S104、根据多个文字的音形向量和词表的音形向量,计算表征待纠错文本与正确文本之间的相似度,其中,音形向量根据读音向量和字形向量生成。
上述步骤S102中的特征向量是综合考虑了语义向量、读音向量和字形向量的向量,本示例中的音形向量是综合考虑了读音向量和字形向量的向量。词表的音形向量包括词表中每个候选文字的音形向量,针对待纠错文本的每个文字,计算该文字的音形向量与每个候选文字的音形向量之间的相似度,该相似度用于表征待纠错文本与正确文本之间的相似度。
需要说明的是,本示例在计算相似度时,考虑的是文字的读音和字形,未考虑文字的语义,是由于数学公式中,信号(message)经过一个系统(channel)之后,是想要生成一个正确的(message),但是由于打错字(noise,反映在语义上)的影响,从而产生了错误的(message)。因此本示例中仅考虑读音向量和字形向量对文字的影响,并不考虑语义向量,即noise。通过计算音形向量之间的相似度,获得表示从正确文字打成一个错误文字的概率P(e|c),其中e是错误文字,c是正确文字,然后P(e|c)×P(c),从而得到从正确文本打成一个错误文本的概率。
步骤S105、根据所述多个候选文字的概率和所述相似度,确定待纠错文本的输出结果。
针对每个文字,根据待纠错文本中的每个文字在词表中分别映射到多个候选文字的概率,以及每个文字与多个候选文字之间的相似度,获得每个文字的输出结果,根据每个文字的输出结果确定待纠错文本的输出结果。由于在确定多个候选文字的概率时考虑了文字的语义、读音和字形,在确定相似度时考虑了文字的读音和字形。相较于通过单一混淆集选择多个候选文字的方案,本申请实施例提供的文本纠错方案,通过多个候选文字的概率和相似度的结合,不仅能够处理传统方案中读音相近和字形相近的拼写错误,同时还能够有效处理既不读音相似、也不字形相似的拼写错误,提高了文本纠错的准确性。
本示例中待纠错文本的输出结果可以直接是输出文本,也可以是多个文字对应的输出文字,也可以是错误文字对应的纠错结果。设定待纠错文本为“我惊天11点,吃KFC”,一种可实现的方式中,输出结果是“我今天11点,吃KFC”;另一种可实现的方式中,输出结果也可以是“我-我,惊-今,天-天,11-11,点-点,吃-吃,KFC-KFC”;再一种可实现的方式中,输出结果是纠错结果“惊-今”,上述多种方式均可适用于本申请实施例的方案。
如图2所示,图2为本申请实施例提供的一种文本纠错方法的应用场景示意图。设定待纠错文本为“我惊天11点,吃KFC”,对待纠错文本进行文字切分,获得待纠错文本中的多个文字,即“我|惊|天|11|点|,|吃|KFC”。对切分后的多个文字进行编码,获得多个文字分别对应的语义向量、读音向量和字形向量,并根据语义向量、读音向量和字形向量生成多个文字的特征向量,然后根据多个文字的特征向量,获得待纠错文本中每个文字在词表中分别映射到多个候选文字的概率。根据多个文字的音形向量和词表的音形向量,计算表征待纠错文本与正确文本之间的相似度。然后根据多个候选文字的概率和相似度,确定待纠错文本的输出结果。图2中以输出结果是输出文本为例进行说明,输出结果是“我今天11点,吃KFC”。
本申请实施例提供的文本纠错方案,对待纠错文本进行切分,获得待纠错文本中的多个文字;获得多个文字分别对应的语义向量、读音向量和字形向量,并根据语义向量、读音向量和字形向量生成多个文字的特征向量,由于考虑了文字对应的语义、读音和字形,使得生成的特征向量携带的信息更为丰富,表达的文字特征也更为准确。根据多个文字的特征向量,获得待纠错文本中的多个文字在词表中分别映射到多个候选文字的概率;根据多个文字的音形向量和词表的音形向量,计算表征待纠错文本与正确文本之间的相似度,通过考虑文本的音形向量,从而计算从待纠错文本到正确文本之间的转换概率,以得到相似度,其中,音形向量根据读音向量和字形向量生成。然后根据多个候选文字的概率和相似度,确定待纠错文本的输出结果。由于在确定多个候选文字的概率时考虑了文字的语义、读音和字形,在确定相似度时考虑了文字的读音和字形。通过多个候选文字的概率和相似度的结合,使得本申请实施例提供的文本纠错方案,不仅能够处理传统方案中读音相近和字形相近的拼写错误,同时还能够有效处理既不读音相似、也不字形相似的拼写错误,提高了文本纠错的准确性。
本申请实施例的文本纠错方法可以由任意适当的具有数据处理能力的电子设备执行,包括但不限于:服务器、移动终端(如手机、PAD等)和PC机等。
实施例二、
本申请实施例二基于实施例一的方案,可选地,在本申请实施例的一种示例中,本申请实施例可以包括以下步骤S301-步骤S307,如图3所示,为本申请实施例提供的另一种文本纠错方法的步骤流程图。
步骤S301、对待纠错文本进行切分,获得待纠错文本中的多个文字。
可选地,在本申请的一种实施例中,待纠错文本除包括表意字符之外还包括表音字符、数字和特殊字符中的至少一项,在切分文本时,步骤S301中,还可以通过以下步骤实现:对待纠错文本中的表意字符进行单个字符的切分,获得多个表意文字;按照预设切分规则对待纠错文本中的表音字符、数字和其他字符中的至少一项进行切分,获得多个切分字符;多个文字包括多个表意文字和多个切分字符。
表意字符包括但不限于中文、韩文和日文等字符,在对表意字符进行切分时,将表意字符切分为单个字符,以表意字符是中文为例,将中文切分为单个汉字。
表音字符包括但不限于英文、法文和希腊文等字符,其他字符包括但不限制于用于辅助文字记录语言的标点符号、空格和比值等符号。在对表音字符、数字和其他字符进行切分时,按照预设切分规则进行切分,保留其完整性,获得多个切分字符。但不限于此,在实际应用中,预设切分规则可以由本领域技术人员根据实际需求适当设置,或者通过对大量的字符切分处理中,对使用的大量切分规则的分析确定,本申请实施例对此不作限制。
步骤S302、根据文字的语义生成语义向量,根据文字的读音生成读音向量,根据文字的字形生成字形向量;根据语义向量、读音向量和字形向量生成多个文字的特征向量。
示例地,通过编码模型分别对文字的语义、读音和字形进行编码,得到文字的语义向量、读音向量和字形向量,将语义向量、读音向量和字形向量三者相加之和作为特征向量。
但不限于此,在实际应用中,上述语义向量、读音向量和字形向量也可通过其它方式预先生成,在使用时直接获取并使用即可。
步骤S303、针对多个文字中的每个文字,对该文字的特征向量进行编码,得到该文字的特征向量的隐藏状态。
针对每个文字,本申请实施例中通过编码模型对该文字的特征向量进行编码,得到该文字的特征向量的隐藏状态。本申请实施例中对文字的特征向量进行编码得到隐藏状态的编码模型,可以包括但不限于神经网络(NeuralNetwork,简称NN)、卷积神经网络(Convolutional NeuralNetwork,简称CNN)、循环神经网络(Recurrent Neural Network,简称RNN)、长短期记忆网络(Long Short-Term Memory,简称LSTM)、双向LSTM和transformer等。
以LSTM为例进行说明,LSTM是一种长短期记忆神经网络,适合于处理序列数据。通过LSTM对特征向量进行编码,可以理解为将待纠错文本中的每个文字的上下文信息融合进行特征向量中,得到文字的特征向量的隐藏状态,该隐藏状态也即当前隐藏层输出的特征数据。
步骤S304、对该文字的特征向量的隐藏状态进行基于词表中的候选文字的分类,得到该文字在词表中分别映射到多个候选文字的概率。
本申请实施例通过分类模型对该文字的特征向量的隐藏状态进行基于词表中的候选文字的分类。示例地,分类模型可以是用于对隐藏状态进行分类的网络,例如,基于Softmax函数的前向分类网络,本申请实施例对分类模型的具体结构不做限制,只要是能利用分类模型基于隐藏状态进行分类,将该文字的特征向量映射到词表中的每个候选文字即可。例如,词表中包括10000个单词,利用长短期神经网络对文字的特征向量进行编码,得到编码后的隐藏状态H,分类模型对隐藏状态H进行分类,得到该文字在词表中分别映射到多个候选文字的概率。
可选地,在本申请的一种实施例中,步骤S304还可以通过以下步骤实现:根据分类模型对该文字的特征向量的隐藏状态进行基于词表中的候选文字的分类,得到该文字在词表中分别映射到多个候选文字的初始概率;通过第一归一化函数对该文字在词表中分别映射到多个候选文字的初始概率进行归一化,得到该文字在词表中分别映射到多个候选文字的概率。
本示例中通过分类模型和归一化函数的结合,实现对文字进行分类获得该文字在词表中分别映射到多个候选文字的概率。例如,词表中包括10000个单词,通过分类模型和归一化函数对隐藏状态H进行分类,得到该文字在词表中分别映射的10000个概率,它们的概率之和为1。通过分类模型和归一化函数实现对隐藏状态的分类,使得在后续利用映射到多个候选文字的概率与相似度确定输出结果时,减小输出结果的误差。可选地,本示例中的归一化函数可以是softmax函数。
需要说明的是,本申请实施例在步骤S304中也可以仅利用分类模型对隐藏状态进行分类,不对映射到多个候选文字的概率进行归一化处理,因为在后续步骤S306中对音形向量乘积进行归一化,得到相似度,然后执行多个候选文字的概率和相似度进行相乘的步骤,由于相似度是归一化后的音形向量乘积,因此,即使不对映射到多个候选文字的概率进行归一化处理,也不会影响待纠错文本的相似概率的准确性。
步骤S305、根据词表中多个候选文字的读音生成词表的读音向量;根据词表中多个候选文字的字形生成词表的字形向量;根据词表的读音向量和词表的字形向量之和,生成词表的音形向量。
本示例中词表的音形向量包括词表中多个候选文字的音形向量。示例地,通过编码模型分别词表中多个候选文字的读音和字形进行编码,得到读音向量和字形向量,将读音向量和字形向量两者相加之和作为音形向量,从而得到词表中多个候选文字的音形向量。
上述步骤S301-步骤S304,与步骤S305的执行过程不分先后顺序,也可以并行执行,对此本申请实施例不做限制。
此外,需要说明的是,本步骤为可选步骤,在实际应用中,也可直接获取其它方式预先生成的音形向量并使用。
步骤S306、将多个文字的音形向量和词表的音形向量进行相乘,得到音形向量乘积;根据第二归一化函数对音形向量乘积进行归一化,得到相似度。
本示例中待纠错文本中多个文字的音形向量与词表的音形向量进行相乘,得到音形向量乘积,音形向量乘积反映了待纠错文本中每个文字映射在词表中每个候选文字的相似度,但是这些多个相似度之间的差距较大,若直接将该多个相似度和多个候选文字的概率进行相乘,获得的相似概率会存在误差,从而降低了根据相似概率确定输出结果的准确度。因此本示例中再通过归一化函数对音形向量乘积进行归一化处理,得到表征待纠错文本与正确文本之间的相似度。通过归一化函数对音形向量的归一化处理,得到相似度,使得在后续利用映射到多个候选文字的概率与相似度确定输出结果时,减小输出结果的误差。可选地,本示例中的归一化函数可以是softmax函数。
步骤S307、将多个候选文字的概率和相似度进行相乘,得到待纠错文本的相似概率;将待纠错文本的相似概率中概率最大值对应的文本作为待纠错文本的输出结果。
本示例中多个候选文字的概率表征每个文字在词表中分别映射到多个候选文字的概率,相似度表征每个文字映射在词表中每个候选文字的相似度,将多个候选文字的概率和相似度进行相乘,得到待纠错文本中每个文字的相似概率。进而,可以将相似概率中概率最大值对应的文本作为待纠错文本的输出结果。
设定待纠错文本为“我惊天11点,吃KFC”,例如,文字“我”的相似概率最大值对应的候选文字为“我”,文字“惊”的相似概率最大值对应的候选文字为“今”,文字“天”的相似概率最大值对应的候选文字为“天”,文字“点”的相似概率最大值对应的候选文字为“点”,文字“吃”的相似概率最大值对应的候选文字为“吃”,数字“11”和英文缩写“KFC”不做改变。本示例中待纠错文本的输出结果可以有以下三种方式。示例一,将相似概率中每个文字的相似概率最大值对应的候选文字作为待纠错文本的输出结果,输出结果是“我-我,惊-今,天-天,11-11,点-点,吃-吃,KFC-KFC”。示例二,根据相似概率中每个文字的相似概率最大值对应的候选文字构建输出文本,将输出文本作为待纠错文本的输出结果,输出结果是“我今天11点,吃KFC”。示例三,将纠错后的文本作为待纠错文本的输出结果,具体地,将相似概率中每个错误文字的相似概率最大值对应的候选文字作为待纠错文本的输出结果,输出结果是“惊-今”。
现有技术中在对文本进行纠错时,通常是预先构建相似读音和相似字形的混淆集,对于相似读音和相似字形的混淆集需要很多人工介入,以构建相似读音和相似字形的关系。在对待纠错文本进行纠错时,先利用预先构建的混淆集生成多个候选文字,再对多个候选文字进行排序,选择当前位置上出现概率最大的候选文字,从而得到待纠错文本的输出结果。
然而混淆集是将搜索空间限制到相似读音和相似字形的字上,以此来减少搜索空间,然而这也限制了文本纠错的准确性,一方面,混淆集本身无法准确建模字与字之间在音形上的相似程度;另一方面,同时仅利用相似读音和相似字形的混淆集使得文本纠错方案无法处理既不读音相似,也不字形相似的拼写错误,降低了文本纠错的准确性。
本申请实施例中通过对文字进行切分得到多个文字,分别根据语义、读音和字形对每个文字进行向量化,由于在生成特征向量时综合考虑了文字对应的语义、读音和字形,使得生成的特征向量携带的信息更为丰富,表达的文字特征也更为准确。根据上下文信息对特征向量进行编码得到文字的隐藏状态,利用分类网络和归一化函数对隐藏状态进行分类,得到每个文字映射在词表中多个候选文字的概率。计算每个文字与词表中多个候选文字的相似度,该相似度表征待纠错文本与正确文本之间的相似度,根据多个候选文字的概率和相似度计算相似概率,从而根据相似概率获得输出结果。由于在确定多个候选文字的概率时考虑了文字的语义、读音和字形,在确定相似度时考虑了文字的读音和字形。通过多个候选文字的概率和相似度的结合,使得本申请实施例提供的文本纠错方案,不仅能够处理传统方案中读音相近和字形相近的拼写错误,同时还能够有效处理既不读音相似、也不字形相似的拼写错误,提高了文本纠错的准确性。
需要说明的是,本申请实施例中主要目的在于对中文文字的纠错处理,通过文字切分、文字向量化、上下文信息编码得到隐藏状态、分类网络进行分类得到每个文字映射在词表中多个候选文字的概率、计算每个文字与词表中多个候选文字的相似度、根据多个候选文字的概率和相似度计算相似概率、从而根据相似概率获得输出结果。对于数字、英文和标点等字符,同样会经过上述步骤的处理,但是由于在对上述步骤中用到的模型进行训练时,并未考虑数字、英文和标点等字符的输出结果,主要是针对中文的输出结果通过反向传播算法对模型进行更新。可以理解为,对于待纠错文本中的表音字符、数字和特殊字符,在进行纠错时,同样会执行上述步骤,上述步骤对其并没有任何处理,在输出结果中是与表音字符、数字和特殊字符相同的字符,不做改变。
上述步骤S301-步骤S307中用到三个机器学习模型,分别是用于对文字进行向量化得到语义向量、读音向量和字形向量的编码模型部分,用于对文字的特征向量进行编码得到隐藏状态的编码模型部分,以及用于对文字的特征向量的隐藏状态进行分类的分类模型部分,本申请实施例还包括对上述机器学习模型进行训练的过程。
可选地,在本申请的一种实施例中,获取包含错误文本和与错误文本对应的正确文本的平行语料;根据平行语料,构建训练样本;根据训练样本对机器学习模型进行训练,以使训练完成的机器学习模型执行文本纠错方法;其中,机器学习模型包括:用于对文字进行向量化的编码模型部分,用于对文字的特征向量进行编码得到隐藏状态的编码模型部分,以及用于对文字的特征向量的隐藏状态进行分类的分类模型部分。
平行语料包括错误文本和错误文本对应的正确文本,例如,错误文本是“人生中的风雨不计其数”,正确文本是“人声中的风雨不计其数”。根据平行语料,构建训练样本,从而根据训练样本对机器学习模型进行训练。
需要说明的是,在对机器学习模型进行训练时,为便于区分对文字进行向量化的编码模型,以及对文字的特征向量进行编码得到隐藏状态的编码模型,本示例中以神经网络模型表示对文字的特征向量进行编码得到隐藏状态的编码模型,在本示例中,神经网络模型可以理解为编码模型。
具体训练步骤包括:对错误文本样本进行切分,获得错误文本中的多个第一文字,对错误文本对应的正确文本样本进行切分,获得正确文本中的多个第二文字。根据初始编码模型对多个第一文字的语义、读音和字形进行编码,生成多个第一文字的语义向量、读音向量和字形向量,将语义向量、读音向量和字形向量相加之和作为特征向量。针对多个第一文字中的每个第一文字,根据初始神经网络模型对第一文字的特征向量进行编码,得到第一文字的特征向量的隐藏状态。根据初始分类模型分别对第一文字的特征向量的隐藏状态进行基于词表中的候选文字的分类,得到第一文字在词表中分别映射到多个候选文字的概率。将多个第一文字的音形向量和词表的音形向量进行相乘,并通过归一化函数,得到表征错误文本样本与正确文本样本之间的相似度。根据错误样本中多个第一文字在词表中分别映射到多个候选文字的概率和相似度,确定错误文本样本的输出结果。根据损失函数,结合错误文本样本的输出结果,和正确文本中的多个第二文字,计算损失值;根据损失值对初始编码模型、初始分类模型和初始神经网络模型进行训练,得到编码模型、分类模型和神经网络模型。
利用训练样本对上述三个机器学习模型进行训练时,不断调整机器学习模型的模型参数,迭代更新,直至达到训练终止条件,以得到训练后的编码模型、分类模型和神经网络模型,训练终止条件,例如,训练次数达到预设次数,或者,机器学习模型的预测结果在预设偏差范围内等。示例地,训练步骤中所用到的损失函数可以是交叉熵损失函数。
本申请实施例中通过训练数据的学习,获得对文字进行向量化的编码模型、对文字的特征向量进行编码得到隐藏状态的编码模型,以及对文字的特征向量的隐藏状态进行分类的分类模型。通过以上三个机器学习模型,使得获得每个文字在词表中分别映射到多个候选文字的概率更准确,并且结合错误文本与正确文本之间的音形相似度,解决了传统方案中混淆集本身无法准确建模字与字音形相似程度的问题。使得本申请实施例提供的文本纠错方案,不仅能够处理传统方案中读音相近和字形相近的拼写错误,同时还能够有效处理既不读音相似、也不字形相似的拼写错误,提高了文本纠错的准确性。
本申请实施例的文本纠错方法可以由任意适当的具有数据处理能力的电子设备执行,包括但不限于:服务器、移动终端(如手机、PAD等)和PC机等。
实施例三、
本实施例中,以使用机器学习模型进行文本纠错为例,对本申请实施例的文本纠错方法进行说明。该机器学习模型包括:用于对所述文字进行向量化的编码模型部分,用于对所述文字的特征向量进行编码得到隐藏状态的编码模型部分,以及用于对所述文字的特征向量的隐藏状态进行分类的分类模型部分。
以下,首先对该机器学习模型的训练过程进行简要说明。该训练过程包括:
(一)构建训练样本。
具体地,可获取包含错误文本和与错误文本对应的正确文本的平行语料;根据所述平行语料,构建训练样本。
例如,标注平行语料,输入拼写错误句子及其拼写正确句子的句子对,例如,错误句子“人声中的风雨不计其数”--->正确句子“人生中的风雨不计其数”,对错误句子和正确句子进行切分,得到错误句子src=[人|声|中|的|风|雨|不|计|其|数]和正确句子tgt=[人|生|中|的|风|雨|不|计|其|数],以及,它们分别对应的多个文字。基于此,构建训练样本。
(二)根据所述训练样本对机器学习模型进行训练,以使训练完成的所述机器学习模型执行所述文本纠错方法。
具体地,可以包括:
2.1、通过机器学习模型的用于对所述文字进行向量化的编码模型部分,进行:(1)根据错误文本如src中各个文字的语义对src中的各个文字进行语义向量化,也可以理解为字向量化,得到src中多个文字的语义向量形成的语义向量矩阵E_v;(2)根据文字的读音对src中的各个文字进行读音向量化,得到src中多个文字的读音向量形成的读音向量矩阵E_p;(3)根据文字的字形对src中的各个文字进行字形向量化,得到src中多个文字的字形向量形成的字形向量矩阵E_s;(4)将E_v、E_p和E_s三者相加,得到src中文字的特征向量E,E=E_v+E_p+E_s。本步骤中的编码模型部分可为任意适当的可进行向量化的编码模型。
2.2、将src中文字的特征向量矩阵E输入用于对所述文字的特征向量进行编码得到隐藏状态的编码模型部分,本示例中为多层双向LSTM网络,进行基于句子上下文信息的编码,得到隐藏状态H,再经过用于对所述文字的特征向量的隐藏状态进行分类的分类模型部分,如一个前向分类网络得到src中每个文字在词表V中分别映射到所有候选文字的概率P_vocab。
需要说明的是,本示例中的LSTM也可以是其他网络结构的编码模型,只要是能够对文字的特征向量矩阵E进行编码获得隐藏状态H即可,对此本申请实施例不做限制。
3.1、对词表V中的多个候选文字进行与2.1中(2)和(3)相同的操作,得到词表V的读音向量矩阵EV_p和字形向量矩阵EV_s,将EV_p和EV_s相加得到词表的音形向量矩阵E_vocab,E_vocab=EV_p+EV_s。同时,将src在2.1中(2)和(3)得到的E_p和E_s相加,得到src句子的音形向量矩阵E_src,E_src=E_p+E_s。将音形向量矩阵E_vocab和音形向量矩阵E_src相乘,再经过分类模型部分的softmax函数得到src中每个文字对词表V中每个候选文字的相似度矩阵P_similar。
3.2、将概率P_vocab和相似度矩阵P_similar相乘得到相似概率P’。
3.3、根据相似概率P’与tgt,通过交叉熵损失函数计算得到损失值,根据损失值通过反向传播算法对机器学习模型进行训练,调整机器学习模型的模型参数,迭代更新,直至达到训练终止条件。
训练过程完成后,训练完成的机器学习模型即具有文本纠错功能。基于该训练完成的机器学习模型进行文本纠错的过程如下,包括:
过程(一),对待纠错文本进行切分,得到待纠错文本的多个文字。
以待纠错文本包括中文、标点、英文和数字为例进行说明,将中文、标点切成单个字符,英文数字保持保留切分,保留其完整性。例如,将待纠错文本“我惊天11点,吃KFC”,切分为“我|惊|天|11|点|,|吃|KFC”。
过程(二),对多个文字中的每个文字,通过用于对所述文字进行向量化的编码模型部分,根据字符以及其音形进行向量化,即对文字的语义、读音和字形进行向量化,并根据得到的语义向量、读音向量和字形向量确定文字的特征向量。然后将文字的特征向量经过用于对所述文字的特征向量进行编码得到隐藏状态的编码模型部分(本示例中即前述LSTM网络)和用于对所述文字的特征向量的隐藏状态进行分类的分类模型部分,获得待纠错文本中每个切分片段(即每个文字)在一个给定的词表V中分别映射到所有候选文字的概率P_vocab。
过程(三),根据待纠错文本的每个文字的音形向量与词表V所有候选文字的音形向量计算相似度,并经过归一化后得到表征待纠错文本与正确文本之间的相似度P_similar,根据概率P_vocab和相似度P_similar的乘积确定输出相似概率P’,P’=P_vocab×P_similar。根据相似概率P’生成纠错结果,得到拼写检查结果。示例地,可以对相似概率P’中概率进行排序,选择概率最大的候选文字作为输出结果。该相似度P_similar也可以理解为错误文本与正确文本相互之间转换概率的相似度。
本示例中既可以根据LSTM有效地利用上下文语义信息生成候选文字,又通过对用于对文字进行向量化的编码模型的训练,使得相似度模型能够确定更为准确的音形相似度P_similar。解决了传统方案中混淆集本身无法准确建模字与字音形相似程度的问题,同时通过结合相似度P_similar与概率P_vocab,可以处理既不读音相似,也不字形相似的拼写错误。
像英文这样的西欧语言上的文本纠错方案都较为成熟,主要依赖于词粒度的检查和纠正。而中文与英文等西欧语言有非常大的不同,首先,中文的汉字数量非常多,常用汉字就有超过3000个,这使得中文纠错方案中混淆集的搜索空间远大于英文;再者,中文词汇的长度一般都较短,如果出现拼写错误往往对于词语的语义有较大的影响。传统中文纠错方案通常是预先构建相似读音和相似字形的混淆集,混淆集表示待纠错文本中文字相似的候选文字的集合。对于相似读音和相似字形的混淆集需要很多人工介入,以构建相似读音和相似字形的关系。根据相似读音和相似字形的混淆集,把搜索空间限制到相似读音和相似字形的文字,以此来减少搜索空间,混淆集是一个强硬限定了一个候选范围,是人工设定好的候选文字的集合,限制了传统中文纠错方案的纠错性能。具体地,一方面,混淆集本身无法准确建模字与字之间在音形上的相似程度;另一方面,仅利用相似读音和相似字形的混淆集使得文本纠错方案无法处理既不读音相似,也不字形相似的拼写错误,降低了文本纠错的准确性。
本申请实施例提供一种文本纠错方案,通过训练数据的学习,获得对文字进行向量化的编码模型、对文字的特征向量进行编码得到隐藏状态的编码模型,以及对文字的特征向量的隐藏状态进行分类的分类模型。机器学习模型能够准确地建模字与字之间在音形上的相似程度,自适应地学习到字音字形的相似关系,同时又不同于传统“硬”的混淆集中候选文字的相似度约束。不仅能够处理传统方案中读音相近和字形相近的拼写错误,同时还能够有效处理既不读音相似、也不字形相似的拼写错误,提高了文本纠错的准确性。
本申请实施例的文本纠错方法可以由任意适当的具有数据处理能力的电子设备执行,包括但不限于:服务器、移动终端(如手机、PAD等)和PC机等。
实施例四、
基于上述实施例一至实施例三描述的任一项文本纠错方法,本申请实施例提供了一种文本纠错装置,如图4所示,图4为本申请实施例提供的一种文本纠错装置,文本纠错装置40包括:切分模块401,用于对待纠错文本进行切分,获得待纠错文本中的多个文字;特征向量生成模块402,用于获得多个文字分别对应的语义向量、读音向量和字形向量,并根据语义向量、读音向量和字形向量生成多个文字的特征向量;概率确定模块403,用于根据多个文字的特征向量,获得待纠错文本中的多个文字在词表中分别映射到多个候选文字的概率;相似度计算模块404,用于根据多个文字的音形向量和词表的音形向量,计算表征待纠错文本与正确文本之间的相似度,其中,音形向量根据读音向量和字形向量生成;输出结果模块405,用于根据多个候选文字的概率和相似度,确定待纠错文本的输出结果。
可选地,在本申请的一种实施例中,概率确定模块403还用于针对多个文字中的每个文字,对该文字的特征向量进行编码,得到该文字的特征向量的隐藏状态;对该文字的特征向量的隐藏状态进行基于词表中的候选文字的分类,得到该文字在词表中分别映射到多个候选文字的概率。
可选地,在本申请的一种实施例中,概率确定模块403还用于根据分类模型对该文字的特征向量的隐藏状态进行基于词表中的候选文字的分类,得到该文字在词表中分别映射到多个候选文字的初始概率;通过第一归一化函数对该文字在词表中分别映射到多个候选文字的初始概率进行归一化,得到该文字在词表中分别映射到多个候选文字的概率。
可选地,在本申请的一种实施例中,相似度计算模块404还用于将多个文字的音形向量和词表的音形向量进行相乘,得到音形向量乘积;根据第二归一化函数对音形向量乘积进行归一化,得到相似度。
可选地,在本申请的一种实施例中,输出结果模块405还用于将多个候选文字的概率和相似度进行相乘,得到待纠错文本的相似概率;将待纠错文本的相似概率中概率最大值对应的文本作为待纠错文本的输出结果。
可选地,在本申请的一种实施例中,文本纠错装置40还包括音形向量计算模块,音形向量计算模块用于根据词表中多个候选文字的读音生成词表的读音向量;根据词表中多个候选文字的字形生成词表的字形向量;根据词表的读音向量和词表的字形向量之和,生成词表的音形向量。
可选地,在本申请的一种实施例中,待纠错文本除包括表意字符之外还包括表音字符、数字和特殊字符中的至少一项;切分模块401还用于对待纠错文本中的表意字符进行单个字符的切分,获得多个表意文字;按照预设切分规则对待纠错文本中的表音字符、数字和其他字符中的至少一项进行切分,获得多个切分字符;多个文字包括多个表意文字和多个切分字符。
可选地,在本申请的一种实施例中,文本纠错装置40还包括训练模块,训练模块用于获取包含错误文本和与错误文本对应的正确文本的平行语料;根据平行语料,构建训练样本;根据训练样本对机器学习模型进行训练,以使训练完成的机器学习模型执行文本纠错方法;其中,机器学习模型包括:用于对文字进行向量化的编码模型部分,用于对文字的特征向量进行编码得到隐藏状态的编码模型部分,以及用于对文字的特征向量的隐藏状态进行分类的分类模型部分。
本申请实施例的文本纠错装置用于实现前述多个方法实施例中相应的文本纠错方法,并具有相应的方法实施例的有益效果,在此不再赘述。此外,本申请实施例的文本纠错装置中的各个模块的功能实现均可参照前述方法实施例中的相应部分的描述,在此亦不再赘述。
实施例五、
基于上述实施例一至实施例三描述的任一项文本纠错方法,本申请实施例提供了一种电子设备,需要说明的,本申请实施例的文本纠错方法可以由任意适当的具有文本纠错能力的电子设备执行,包括但不限于:服务器、移动终端(如手机、PAD等)和PC机等。如图5所示,图5为本申请实施例提供的一种电子设备的结构图。本申请具体实施例并不对电子设备的具体实现做限定。该电子设备50可以包括:处理器(processor)502、通信接口(Communications Interface)504、存储器(memory)506、以及通信总线508。
其中:处理器502、通信接口504、以及存储器506通过通信总线508完成相互间的通信。
通信接口504,用于与其它电子设备或服务器进行通信。
处理器502,用于执行计算机程序510,具体可以执行上述文本纠错方法实施例中的相关步骤。
具体地,计算机程序510可以包括计算机程序代码,该计算机程序代码包括计算机操作指令。
处理器502可能是中央处理器CPU,或者是特定集成电路ASIC(ApplicationSpecific Integrated Circuit),或者是被配置成实施本申请实施例的一个或多个集成电路。智能设备包括的一个或多个处理器,可以是同一类型的处理器,如一个或多个CPU;也可以是不同类型的处理器,如一个或多个CPU以及一个或多个ASIC。
存储器506,用于存放计算机程序510。存储器506可能包含高速RAM存储器,也可能还包括非易失性存储器(non-volatile memory),例如至少一个磁盘存储器。
程序510中各步骤的具体实现可以参见上述文本纠错方法实施例中的相应步骤和单元中对应的描述,在此不赘述。所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的设备和模块的具体工作过程,可以参考前述方法实施例中的对应过程描述,在此不再赘述。
实施例六、
基于上述实施例一至实施例三所描述的文本纠错方法,本申请实施例提供了一种计算机存储介质,其存储有计算机程序,该计算机程序被处理器执行时实现如实施例一至实施例三所描述的文本纠错方法。
基于上述实施例一至实施例三所描述的文本纠错方法,本申请实施例提供了一种计算机程序产品,包括计算机指令,该计算机指令指示计算设备执行如实施例一至实施例三所描述的文本纠错方法对应的操作。
需要指出,根据实施的需要,可将本申请实施例中描述的各个部件/步骤拆分为更多部件/步骤,也可将两个或多个部件/步骤或者部件/步骤的部分操作组合成新的部件/步骤,以实现本申请实施例的目的。
上述根据本申请实施例的方法可在硬件、固件中实现,或者被实现为可存储在记录介质(诸如CD ROM、RAM、软盘、硬盘或磁光盘)中的软件或计算机代码,或者被实现通过网络下载的原始存储在远程记录介质或非暂时机器可读介质中并将被存储在本地记录介质中的计算机代码,从而在此描述的方法可被存储在使用通用计算机、专用处理器或者可编程或专用硬件(诸如ASIC或FPGA)的记录介质上的这样的软件处理。可以理解,计算机、处理器、微处理器控制器或可编程硬件包括可存储或接收软件或计算机代码的存储组件(例如,RAM、ROM、闪存等),当软件或计算机代码被计算机、处理器或硬件访问且执行时,实现在此描述的文本纠错方法。此外,当通用计算机访问用于实现在此示出的文本纠错方法的代码时,代码的执行将通用计算机转换为用于执行在此示出的文本纠错方法的专用计算机。
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例地单元及方法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请实施例的范围。
以上实施方式仅用于说明本申请实施例,而并非对本申请实施例的限制,有关技术领域的普通技术人员,在不脱离本申请实施例的精神和范围的情况下,还可以做出各种变化和变型,因此所有等同的技术方案也属于本申请实施例的范畴,本申请实施例的专利保护范围应由权利要求限定。
Claims (11)
1.一种文本纠错方法,包括:
对待纠错文本进行切分,获得所述待纠错文本中的多个文字;
获得所述多个文字分别对应的语义向量、读音向量和字形向量,并根据所述语义向量、所述读音向量和所述字形向量生成多个文字的特征向量;
根据所述多个文字的特征向量,获得所述待纠错文本中的所述多个文字在词表中分别映射到多个候选文字的概率;
根据所述多个文字的音形向量和词表的音形向量,计算表征所述待纠错文本与正确文本之间的相似度,其中,所述音形向量根据所述读音向量和所述字形向量生成;
根据所述多个候选文字的概率和所述相似度,确定所述待纠错文本的输出结果。
2.根据权利要求1所述的方法,其中,根据所述多个文字的特征向量,获得所述待纠错文本中的所述多个文字在词表中分别映射到多个候选文字的概率,包括:
针对所述多个文字中的每个文字,对该文字的特征向量进行编码,得到该文字的特征向量的隐藏状态;
对该文字的特征向量的隐藏状态进行基于所述词表中的候选文字的分类,得到该文字在词表中分别映射到多个候选文字的概率。
3.根据权利要求2所述的方法,其中,对该文字的特征向量的隐藏状态进行基于所述词表中的候选文字的分类,得到该文字在词表中分别映射到多个候选文字的概率,包括:
根据分类模型对该文字的特征向量的隐藏状态进行基于所述词表中的候选文字的分类,得到该文字在词表中分别映射到多个候选文字的初始概率;
通过第一归一化函数对该文字在词表中分别映射到多个候选文字的初始概率进行归一化,得到该文字在词表中分别映射到多个候选文字的概率。
4.根据权利要求1所述的方法,其中,根据所述多个文字的音形向量和词表的音形向量,计算表征所述待纠错文本与正确文本之间的相似度,包括:
将所述多个文字的音形向量和所述词表的音形向量进行相乘,得到音形向量乘积;
根据第二归一化函数对所述音形向量乘积进行归一化,得到所述相似度。
5.根据权利要求1所述的方法,其中,根据所述多个候选文字的概率和所述相似度,确定所述待纠错文本的输出结果,包括:
将所述多个候选文字的概率和所述相似度进行相乘,得到所述待纠错文本的相似概率;
将所述待纠错文本的相似概率中概率最大值对应的文本作为所述待纠错文本的输出结果。
6.根据权利要求1所述的方法,其中,所述方法还包括:
根据所述词表中多个候选文字的读音生成所述词表的读音向量;
根据所述词表中多个候选文字的字形生成所述词表的字形向量;
根据所述词表的读音向量和所述词表的字形向量之和,生成所述词表的音形向量。
7.根据权利要求1所述的方法,其中,所述待纠错文本除包括表意字符之外还包括表音字符、数字和特殊字符中的至少一项;所述对待纠错文本进行切分,获得所述待纠错文本中的多个文字,包括:
对所述待纠错文本中的表意字符进行单个字符的切分,获得多个表意文字;
按照预设切分规则对所述待纠错文本中的表音字符、数字和其他字符中的至少一项进行切分,获得多个切分字符;
所述多个文字包括所述多个表意文字和所述多个切分字符。
8.根据权利要求1-7任一项所述的方法,所述方法还包括:
获取包含错误文本和与错误文本对应的正确文本的平行语料;
根据所述平行语料,构建训练样本;
根据所述训练样本对机器学习模型进行训练,以使训练完成的所述机器学习模型执行所述文本纠错方法;其中,所述机器学习模型包括:用于对所述文字进行向量化的编码模型部分,用于对所述文字的特征向量进行编码得到隐藏状态的编码模型部分,以及用于对所述文字的特征向量的隐藏状态进行分类的分类模型部分。
9.一种文本纠错装置,包括:
切分模块,用于对待纠错文本进行切分,获得所述待纠错文本中的多个文字;
特征向量生成模块,用于获得所述多个文字分别对应的语义向量、读音向量和字形向量,并根据所述语义向量、所述读音向量和所述字形向量生成多个文字的特征向量;
概率确定模块,用于根据所述多个文字的特征向量,获得所述待纠错文本中的所述多个文字在词表中分别映射到多个候选文字的概率;
相似度计算模块,用于根据所述多个文字的音形向量和词表的音形向量,计算表征所述待纠错文本与正确文本之间的相似度,其中,所述音形向量根据所述读音向量和所述字形向量生成;
输出结果模块,用于根据所述多个候选文字的概率和所述相似度,确定所述待纠错文本的输出结果。
10.一种计算机存储介质,其上存储有计算机程序,该程序被处理器执行时实现如权利要求1-8中任一所述的文本纠错方法。
11.一种计算机程序产品,包括计算机指令,所述计算机指令指示计算设备执行如权利要求1-8中任一所述的文本纠错方法对应的操作。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111020960.0A CN113673228A (zh) | 2021-09-01 | 2021-09-01 | 文本纠错方法、装置、计算机存储介质及计算机程序产品 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111020960.0A CN113673228A (zh) | 2021-09-01 | 2021-09-01 | 文本纠错方法、装置、计算机存储介质及计算机程序产品 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN113673228A true CN113673228A (zh) | 2021-11-19 |
Family
ID=78547963
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111020960.0A Pending CN113673228A (zh) | 2021-09-01 | 2021-09-01 | 文本纠错方法、装置、计算机存储介质及计算机程序产品 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113673228A (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114548080A (zh) * | 2022-04-24 | 2022-05-27 | 长沙市智为信息技术有限公司 | 一种基于分词增强的中文错字校正方法及系统 |
CN114970554A (zh) * | 2022-08-02 | 2022-08-30 | 国网浙江省电力有限公司宁波供电公司 | 一种基于自然语言处理的文档校验方法 |
CN117648923A (zh) * | 2024-01-29 | 2024-03-05 | 安徽省立医院(中国科学技术大学附属第一医院) | 一种适用于医疗语境的中文拼写纠错方法 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103605729A (zh) * | 2013-11-19 | 2014-02-26 | 段炼 | 一种基于局部随机词汇密度模型poi中文文本分类的方法 |
CN109948152A (zh) * | 2019-03-06 | 2019-06-28 | 北京工商大学 | 一种基于lstm的中文文本语法纠错模型方法 |
CN112528663A (zh) * | 2020-12-18 | 2021-03-19 | 中国南方电网有限责任公司 | 一种电网领域调度场景下的文本纠错方法及系统 |
CN112861518A (zh) * | 2020-12-29 | 2021-05-28 | 科大讯飞股份有限公司 | 文本纠错方法、装置和存储介质及电子装置 |
WO2021135444A1 (zh) * | 2020-06-28 | 2021-07-08 | 平安科技(深圳)有限公司 | 一种基于人工智能的文本纠错方法、装置、计算机设备及存储介质 |
-
2021
- 2021-09-01 CN CN202111020960.0A patent/CN113673228A/zh active Pending
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103605729A (zh) * | 2013-11-19 | 2014-02-26 | 段炼 | 一种基于局部随机词汇密度模型poi中文文本分类的方法 |
CN109948152A (zh) * | 2019-03-06 | 2019-06-28 | 北京工商大学 | 一种基于lstm的中文文本语法纠错模型方法 |
WO2021135444A1 (zh) * | 2020-06-28 | 2021-07-08 | 平安科技(深圳)有限公司 | 一种基于人工智能的文本纠错方法、装置、计算机设备及存储介质 |
CN112528663A (zh) * | 2020-12-18 | 2021-03-19 | 中国南方电网有限责任公司 | 一种电网领域调度场景下的文本纠错方法及系统 |
CN112861518A (zh) * | 2020-12-29 | 2021-05-28 | 科大讯飞股份有限公司 | 文本纠错方法、装置和存储介质及电子装置 |
Non-Patent Citations (1)
Title |
---|
杨越;黄瑞章;魏琴;陈艳平;秦永彬;: "基于上下文语义的新闻人名纠错方法", 电子科技大学学报, no. 06 * |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114548080A (zh) * | 2022-04-24 | 2022-05-27 | 长沙市智为信息技术有限公司 | 一种基于分词增强的中文错字校正方法及系统 |
CN114970554A (zh) * | 2022-08-02 | 2022-08-30 | 国网浙江省电力有限公司宁波供电公司 | 一种基于自然语言处理的文档校验方法 |
CN114970554B (zh) * | 2022-08-02 | 2022-10-21 | 国网浙江省电力有限公司宁波供电公司 | 一种基于自然语言处理的文档校验方法 |
CN117648923A (zh) * | 2024-01-29 | 2024-03-05 | 安徽省立医院(中国科学技术大学附属第一医院) | 一种适用于医疗语境的中文拼写纠错方法 |
CN117648923B (zh) * | 2024-01-29 | 2024-05-10 | 安徽省立医院(中国科学技术大学附属第一医院) | 一种适用于医疗语境的中文拼写纠错方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
WO2023065544A1 (zh) | 意图分类方法、装置、电子设备及计算机可读存储介质 | |
JP5901001B1 (ja) | 音響言語モデルトレーニングのための方法およびデバイス | |
CN113673228A (zh) | 文本纠错方法、装置、计算机存储介质及计算机程序产品 | |
CN111309915A (zh) | 联合学习的自然语言训练方法、系统、设备及存储介质 | |
CN112926306B (zh) | 文本纠错方法、装置、设备以及存储介质 | |
CN112395385B (zh) | 基于人工智能的文本生成方法、装置、计算机设备及介质 | |
CN112633003A (zh) | 一种地址识别方法、装置、计算机设备及存储介质 | |
CN111599340A (zh) | 一种多音字读音预测方法、装置及计算机可读存储介质 | |
CN113177412A (zh) | 基于bert的命名实体识别方法、系统、电子设备及存储介质 | |
CN113326702B (zh) | 语义识别方法、装置、电子设备及存储介质 | |
CN113158687B (zh) | 语义的消歧方法及装置、存储介质、电子装置 | |
CN112613293B (zh) | 摘要生成方法、装置、电子设备及存储介质 | |
CN115759119A (zh) | 一种金融文本情感分析方法、系统、介质和设备 | |
CN114398943B (zh) | 样本增强方法及其装置 | |
KR102608867B1 (ko) | 업계 텍스트를 증분하는 방법, 관련 장치 및 매체에 저장된 컴퓨터 프로그램 | |
CN114861637A (zh) | 拼写纠错模型生成方法和装置、拼写纠错方法和装置 | |
CN112487813B (zh) | 命名实体识别方法及系统、电子设备及存储介质 | |
CN113743101A (zh) | 文本纠错方法、装置、电子设备和计算机存储介质 | |
CN114970470B (zh) | 文案信息处理方法、装置、电子设备和计算机可读介质 | |
CN113553833B (zh) | 文本纠错的方法、装置及电子设备 | |
CN114626378B (zh) | 命名实体识别方法、装置、电子设备及计算机可读存储介质 | |
Mukund et al. | NE tagging for Urdu based on bootstrap POS learning | |
JP3080066B2 (ja) | 文字認識装置、方法及び記憶媒体 | |
CN113392649A (zh) | 一种识别方法、装置、设备及存储介质 | |
CN115687607A (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 |