CN111611791B - 一种文本处理的方法及相关装置 - Google Patents
一种文本处理的方法及相关装置 Download PDFInfo
- Publication number
- CN111611791B CN111611791B CN202010343473.7A CN202010343473A CN111611791B CN 111611791 B CN111611791 B CN 111611791B CN 202010343473 A CN202010343473 A CN 202010343473A CN 111611791 B CN111611791 B CN 111611791B
- Authority
- CN
- China
- Prior art keywords
- text information
- text
- output result
- model
- word
- 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
-
- 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/279—Recognition of textual entities
- G06F40/284—Lexical analysis, e.g. tokenisation or collocates
-
- 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
- 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
技术领域
本申请涉及深度学习领域,尤其涉及一种文本处理的方法及相关装置。
背景技术
中文纠错技术是实现中文语句自动检查、自动纠错的一项重要技术,其目的是提高语言正确性的同时减少人工校验成本。
在通用领域中,中文文本纠错问题是从互联网起始时就一直在寻求解决的问题。在搜索引擎中,一个好的纠错系统能够用户输入的查询词进行纠错提示,或直接展示正确答案。当前由于用户输入随意及手写输入法易出错等原因,错误串在输入文本中占比高达10%-15%,这也使得中文文本纠错模块必要性凸显。
目前的纠错主流方案一般包括错误检测、候选召回以及候选排序三个步骤,其技术方案主要有基于传统语言模型加规则的方法,及基于深度学习模型的方法,但该三个步骤逐一进行导致计算时间较长,且由于候选排序的算法问题导致纠错的准确率较低。
申请内容
本申请公开了一种文本处理的方法及相关装置,用于检测出文本的误输入操作,并进行相应处理。
本申请第一方面提供了一种文本处理的方法,包括:
接收第一文本信息;
接收经过第一模型对所述第一文本信息进行处理所得的第二文本信息,所述第二文本信息为根据第一文本信息子内容对应生成的n个候选信息;
按照预设规则对所述第二文本信息进行逐一加权计算,并标记经所述加权计算后数值最高的候选信息以作为第三文本信息;
将所述第一文本信息以及所述第三文本信息输入第二模型;
接收所述第二模型根据第一文本信息形成的第一输出结果,以及所述第二模型根据所述第三文本信息输出的第二输出结果;
判断所述第一输出结果是否大于所述第二输出结果;
若所述第一输出结果小于所述第二输出结果,则判定所述第一文本信息存在错误,并使用第三文本信息替换所述第一文本信息。
可选地,若所述第一输出结果不小于所述第二输出结果,则判定所述第一文本信息正确。
可选地,在所述接收第一文本信息之前,所述方法还包括:
以句子对作为语料构建训练数据库,所述句子对是以一句正确句与一句错误句对照组成;
根据所述训练数据库对所述第一模型进行预训练。
可选地,所述第一模型包括:
多头注意力架构,用于将语料向量分割成m个维度;
自注意力架构,用于计算语料内所有文字之间的距离;
位置编码架构,用于保留语料内的序列信息。
可选地,所述第二文本信息包括候选信息以及所述候选信息对应的正确概率。
可选地,按照预设规则对所述第二文本信息进行逐一加权计算包括:
将所述第二文本信息中的n个候选信息切分成最小粒度的字形;
将所述n个候选信息的字音按照预设规则排列;
根据所述字形以及排列后的字音形成字音字形表;
根据所述字音字形表计算所述第二文本信息与第一文本信息的字音相似度和字形相似度。
可选地,按照预设规则对所述第二文本信息进行逐一加权计算公式如下:
sim=α*simmlm+β*simstroke+γ*simpronunciation
其中,sim为计算结果,simmlm为所述遮蔽语言模型的输出结果,simstroke为所述输出结果与所述文本的字形相似度,simpronunciation为所述输出结果与所述文本的字音相似度,α、β与γ为权重系数。
可选地,在所述接收第二文本信息之前,所述方法还包括:
连接长短期记忆网络与逻辑递归模型作为所述第二模型;
使用所述第一模型的输出结果作为所述第二模型的训练数据。
可选地,标记经所述加权计算后数值最高的候选信息以作为第三文本信息包括:
若用于生成第二文本信息的第一文本信息子内容数量大于1;
则对生成第二文本信息的第一文本信息子内容与根据所述加权公式计算出的最高数值所对应的第二文本信息子内容按照预设规则排列以作为第三文本信息。
本申请第二方面提供了一种文本处理的系统,包括:
接收单元,用于接收第一文本信息;
所述接收单元,还用于接收经过第一模型对所述第一文本信息进行处理所得的第二文本信息,所述第二文本信息为根据第一文本信息子内容对应生成的n个候选信息;
处理单元,用于按照预设规则对所述第二文本信息进行逐一加权计算,并标记经所述加权计算后数值最高的候选信息以作为第三文本信息;
发送单元,用于将所述第一文本信息以及所述第三文本信息输入第二模型;
所述接收单元,还用于接收所述第二模型根据第一文本信息形成的第一输出结果,以及所述第二模型根据所述第三文本信息输出的第二输出结果;
所述处理单元,还用于判断所述第一输出结果是否大于所述第二输出结果;
所述处理单元,还用于若所述第一输出结果小于所述第二输出结果,则判定所述第一文本信息存在错误,并使用第三文本信息替换所述第一文本信息。
本申请实施例第三方面提供了一种计算机装置,包括:
处理器、存储器、输入输出设备以及总线;
所述处理器、存储器、输入输出设备分别与所述总线相连;
所述处理器用于执行如前述实施例任一项所述的方法。
本申请实施例第四方面提供了一种计算机可读存储介质,其上存储有计算机程序,其特征在于:所述计算机程序被处理器执行时实现如前述实施例所述方法的步骤。
从以上技术方案可以看出,本申请实施例具有以下优点:接收第一文本信息,接收经过第一模型对所述第一文本信息进行处理所得的第二文本信息,所述第二文本信息为根据第一文本信息生成的n个候选信息,按照预设规则对所述第二文本信息进行逐一加权计算,并标记经所述加权计算后数值最高的候选信息以作为第三文本信息,将所述第一文本信息以及所述第三文本信息输入第二模型,接收所述第二模型根据第一文本信息形成的第一输出结果,以及所述第二模型根据所述第三文本信息输出的第二输出结果,所述第一输出结果与第二输出结果均为不大于1的正数,判断所述第一输出结果是否大于所述第二输出结果,若所述第一输出结果小于所述第二输出结果,则判定所述第一文本信息存在错误,并使用第三文本信息替换所述第一文本信息。本申请通过将文本输入训练好的模型并获得结果判定当前输入文本是否存在错误,如果存在错误则进行相应提示。
附图说明
图1为本申请实施例中一种文本处理的方法实施例的一个示意图;
图2为本申请实施例中一种文本处理的方法实施例的另一个示意图;
图3为本申请实施例中一种文本处理的方法实施例的另一个示意图;
图4为本申请实施例中一种文本处理的方法实施例的另一个示意图;
图5为本申请实施例中一种文本处理的方法实施例的另一个示意图;
图6为本申请实施例中一种文本处理的方法实施例的另一个示意图;
图7为本申请实施例中一种文本处理的方法实施例的另一个示意图;
图8为本申请实施例中一种文本处理的方法实施例的另一个示意图;
图9为本申请实施例中一种文本处理的方法实施例的另一个示意图;
图10为本申请实施例中一种文本处理的系统实施例的一个示意图;
图11为本申请实施例中一种计算机装置的一个示意图。
具体实施方式
本申请实施例提供了一种文本处理的方法及相关装置,用于检测出文本的误输入操作,并进行相应处理。
为了使本技术领域的人员更好地理解本申请方案,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分的实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本申请保护的范围。
本申请的说明书和权利要求书及上述附图中的术语“第一”、“第二”、“第三”、“第四”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的实施例能够以除了在这里图示或描述的内容以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
用户在计算机上输入文本的时候,可能会产生由于键盘误操作或者拼音误选的情况,可实现中文语句自动检查、自动纠错的文本处理技术就是对上述情况进行处理的一项重要技术,其目的是提高语言正确性的同时减少人工校验成本。在通用领域中,中文文本纠错问题是从互联网起始时就一直在寻求解决的问题。在搜索引擎中,一个好的纠错系统能够用户输入的查询词进行纠错提示,或直接展示正确答案。
为了便于理解,下面对本申请实施例中的具体流程进行描述,请参阅图1,本申请实施例中一种文本处理的方法的一个实施例包括:
101、接收第一文本信息;
本实施例中,可以是对于各搜索引擎的搜索框内所输入的文本进行处理,因为当用户输入的文字实际上并非是用户真正想要搜索的文字时,搜索引擎所呈现的搜索结果是与用户真正想要的内容存在千差万别的,例如搜索“警察”结果却失误打成了“敬茶”,而本申请则是想通过处理避免这种情况的发生,具体实现方式对于上述情况可以是直接呈现“警察”的搜索结果,或者是给予用户带有“警察”字样的提示,以提示用户选择按照“警察”进行搜索。
102、接收经过第一模型对所述第一文本信息进行处理所得的第二文本信息,所述第二文本信息为根据第一文本信息生成的n个候选信息;本实施例中,会将用户在搜索框内所输入的文字导入经过预训练的模型之中,并接收模型的输出结果。
具体地,根据不同的使用场景,系统可以选择将用户输入的文本信息实时导入经过预处理的遮蔽语言模型之中,或者在用户点下搜索按钮之后将用户所输入的全部文本信息一次性输入遮蔽语言模型之中,遮蔽语言模型可以随机遮盖一些词,然后预测这些被遮盖的词,并输出模型的预测结果,在本申请中,具体的使用情况下,会通过多次预测的形式对用户所输入的搜索内容全部进行遮盖并预测,一般对某一个被遮盖的词输出五个预测结果,即搜索内容中的每个字都会对应生成5个预测结果,该预测结果包括具体的候选字,以及该候选字所对应的预测概率。
103、按照预设规则对所述第二文本信息进行逐一加权计算,并标记经所述加权计算后数值最高的候选信息以作为第三文本信息;
本实施例中,会对第一模型即遮蔽语言模型的5个输出结果进行比较,选择出最适合的结果与用户的输入内容进行对比,用来判断用户输入的搜索内容是否存在错误。
具体地,本申请对遮蔽语言模型输出的第二文本信息根据预设方式计算,即赋予遮蔽语言模型所输出的5个候选信息不同的权重系数来进行计算,并将经过计算后数值最高的候选信息作为第三文本信息以进行判断当前候选字是否正确。
104、将所述第一文本信息以及所述第三文本信息输入第二模型;
本实施例中,遮蔽语言模型所输出的候选信息中经过加权计算后数值最高的会被用来与用户所输入的搜索内容进行比较,以判断用户输入的搜索内容是否正确。
具体地,在经过对搜索内容的每个文字的预测后,本申请会判断出用户的输入文字与经过加权计算数值最高的候选信息之间更符合普遍搜索习惯的内容,将用户的输入文字以及经过加权计算数值最高的候选信息分别输入训练好的第二模型即分类器,该分类器可以输出结果判断当前搜索内容是否存在错误。
105、接收所述第二模型根据第一文本信息形成的第一输出结果,以及所述第二模型根据所述第三文本信息输出的第二输出结果,所述第一输出结果与第二输出结果均为不大于1的正数;
本实施例中,第二模型会将用户的搜索内容中的某个字,以及将根据该字所形成的候选字还原至该字所对应的位置,判断还原后的句子是否符合常用的表达方式,并根据其符合常用表达方式的程度输出一个结果,该结果是一个系数,用来判断是否符合常用的表达方式。例如“租赁”与“相邻”两个词,租与相为形近字,赁与邻为音近字,且各自组词都是正确的,但如果放入“房屋租赁合同”等特定的表达方式之中,就会明显看出“租赁”更为合适”。
106、判断所述第一输出结果是否大于所述第二输出结果;
本实施例中,第二模型会根据用户的搜索内容中的某个字,以及根据该字所形成的候选字输出两个对应的结果,即第一输出结果与用户的搜索内容中的某个字所对应,第二输出结果与根据该输入内容所形成的候选字所对应,系统根据第一输出结果以及第二输出结果的具体值进行判断。
107、若所述第一输出结果小于所述第二输出结果,则判定所述第一文本信息存在错误,并根据所述第三文本信息进行处理。
本实施例中,如果判断出与候选字所对应的第二输出结果大于与搜索内容所对应的第一输出结果,就会判定用户输入的搜索内容存在错误,并且根据规则进行处理。
具体地,该处理方式可以为直接按照候选字还原到搜索内容中对应位置的内容进行搜索,并在显示内容的上方对用户进行提示,该提示内容可以是告知用户当前页面是根据候选字进行搜索的,并提供选项询问用户是否需要仍然按照原搜索内容进行搜索。
本实施例中,接收第一文本信息,接收经过第一模型对所述第一文本信息进行处理所得的第二文本信息,所述第二文本信息为根据第一文本信息生成的n个候选信息,按照预设规则对所述第二文本信息进行逐一加权计算,并标记经所述加权计算后数值最高的候选信息以作为第三文本信息,将所述第一文本信息以及所述第三文本信息输入第二模型,接收所述第二模型根据第一文本信息形成的第一输出结果,以及所述第二模型根据所述第三文本信息输出的第二输出结果,所述第一输出结果与第二输出结果均为不大于1的正数,判断所述第一输出结果是否大于所述第二输出结果,若所述第一输出结果小于所述第二输出结果,则判定所述第一文本信息存在错误,并使用第三文本信息替换所述第一文本信息。本申请通过将文本输入训练好的模型并获得结果判定当前输入文本是否存在错误,如果存在错误则进行相应提示。
本申请实施例中,基于图1所述实施例,对第一输出结果大于第二输出结果的情况进行进一步的介绍,具体请参阅图2,本申请实施例中,一种文本处理方法的另一个实施例包括:
201、若所述第一输出结果大于所述第二输出结果,则判定所述第一文本信息正确。
本实施例中,由于用户并不是每次的搜索内容都会出现错误,而我们的处理系统又会对每一次的搜索内容都进行同样的处理方式,那么就会出现搜索内容是对的,我们经过遮蔽语言模型以及加权计算的第三文本信息是错的这种情况,对于这种情况来说,体现方式就是第二模型所输出的候选字所对应的第二输出结果小于与搜索内容所对应的第一输出结果,那么系统就会直接根据用户所输入的搜索内容进行搜索,并进行相应搜索内容的显示,不会对第三文本信息进行显示。
本申请实施例中,基于图1所述实施例,对第一模型与第二模型的预训练进行进一步的介绍,具体请参阅图3,本申请实施例中,一种文本处理方法的另一个实施例包括;
301、对所述第一模型进行预训练;
本实施例中,第一模型所采用的原型为遮蔽语言模型(MLM,Masked languagemodel),该模型可以使用双向transformer基于序列中未被遮蔽掉的上下文词预测被遮蔽掉的词,在具体的预训练过程中,为模型选择合适的语料作为数据输入至模型中,并获得模型的输出结果。
302、对所述第二模型进行预训练。
本实施例中,对于第二模型的采用可以有两种方式,第一种是通过大词汇连续语音识别中常用的一种语言模型,kenlm模型,模型会根据输入的第一文本信息即用户所输入的搜索内容中某个字与第三文本信息即与该字对应的加权计算数值最高的遮蔽语言模型的输出结果输出二者所对应的得分,并根据得分较高的内容进行搜索。
第二种是通过设计分类器对当前输入句子进行正确或是错误的分类,从任务目的可知,该分类器要判断候选排序后的字与原始输入字,哪个在上下文语境中更合理,因此我们在设计分类器时,考虑加入句子向量、候选字向量、原字向量、两者的字形相似度、字音相似度、及MLM模型预测的概率。其中句子向量可以使用长短期记忆网络进行表示。
本申请实施例中,基于图3实施例,对MLM模型训练时所采用的语料进行进一步的介绍,具体请参见图4,本申请实施例中,一种文本处理方法的另一个实施例包括;
401、以句子对作为语料构建训练数据库,根据所述训练数据库对所述第一模型进行预训练,所述句子对是以一句正确句与一句错误句对照组成。
本实施例中,为了提高模型纠错准确率,在语料即训练数据的构建上做了一些改变,输入为(正确句,错误句)此类形式的句子对:
MLM模型是随机遮蔽语料中15%的字,为了和下游任务保持一致,又按一定的比例在需要预测的词位置上输入原词或者输入一个随机的词,即有80%的概率用“[mask]”标记来替换,有10%的概率用随机采样的一个单词来替换,有10%的概率不做替换。因为mlm的这种语料处理的特点,所以可以使用该模型预测每个字对应的正确字。
如果正确句与错误句相同,则正确句中随机选择15%的词,80%的概率用“[mask]”标记来替换,10%的概率不做替换,10%的概率用形似或音同的单词替换,如果没有形似词或同音词则随机采样的一个单词来替换。
如果正确句不同于错误句,则将错误句中与正确句不同的词用正确句中与该不同的词对应的词直接替换,如果替换的词少于句子长度的1.5%,则随机使用一个词用形似或音同的单词替换,如果没有形似词或同音词则使用随机采样的一个单词来替换,如果替换的词少于句子长度的12%,则随机一个词用“[mask]”标记来替换。
如输入(“老师告诉我们,少先队员应该为老年人让座。”,“老师告诉我们,少先队员应该为老年人让做。”),句子长度为20,按照上述语料处理规则,其中“座”用“做”替换,还需要随机一个字用[mask]替换,最终处理结果为“老师告诉我们,少先队员[mask]该为老年人让做。”。
本申请实施例中,基于图1实施例,对第一模型的架构进行进一步的介绍,具体请参阅图5,本申请实施例中,一种文本处理的方法的另一个实施例包括:
501、多头注意力架构,用于将语料向量分割成m个维度;
具体地,多头注意力架构用于将一个词的向量切分成h个维度,求相似度时对每个维度进行计算。由于单词映射到高维空间时每个空间都可以学习到不同的特征,相邻空间所学结果更相似,相较于全体空间放到一起计算更加合理。并且采用这样的计算方式,大大地提升了计算时的并行度,加快了处理速度,使得最后搜索结果的显示更为平滑。
502、自注意力架构,用于计算语料内所有文字之间的距离;
示例性地,以“我是中国人”为例,自注意力架构对其的计算过程便是分别计算“我”到“是”“中”“国”“人”的距离,“是”到“我”“中”“国”“人”的距离,“中”到“我”“是”“国”“人”的距离,“国”到“我”“是”“中”“人”的距离,“人”到“我”“是”“中”“国”的距离,用以记录在当前表达模式下,“我”“是”“中”“国”“人”五个字的表达情况,在计算了大量的数据之后,对于用户搜索内容的处理,就可以得出当前搜索内容里面每个汉字所符合常用表达方式的程度。
503、位置编码架构,用于保留语料内的序列信息。
具体地,由于上述自注意力架构的计算方式是没有保存序列信息的,位置编码架构进行进一步的补充,如果仍以上述例子为例,位置编码架构便会认为“我”在“是”前,“中”在“国”前,在处理了大量的数据之后,便可以得出大多数常用词语在用户搜索内容中的输入顺序是否正确,因为对于一些词语来说,顺序在大多数情况下都是一定的,例如“介绍”、“申请”反过来便是不利于搜索的词语。
本申请实施例中,基于图1实施例,对第一模型的输出进行进一步的介绍,具体请参阅图6,本申请实施例中,一种文本处理的方法的另一个实施例包括:
601、第二文本信息包括候选信息以及所述候选信息对应的正确概率。
具体地,遮蔽语言模型在对某个字进行遮盖,并根据该遮盖字的上下文对该遮盖字进行预测时,候选信息不唯一;但是虽然该候选信息不唯一,在输出的过程中,会根据候选信息与该遮盖字的符合程度在该候选信息后面添加模型所预测到的正确概率,遮蔽语言模型在处理过程中可以选取按预测概率从大到小排序的前5个候选信息进行输出,因为候选信息可能是很多个,但是对于概率较小的候选信息,参考价值并不大,所以在实际的应用过程中,我们选取概率在前5的候选信息,以进行后面与原搜索内容的比较。
本申请实施例中,基于图1实施例,对第二文本信息的加权计算进行进一步的介绍,具体请参阅图7,本申请实施例中,一种文本处理的方法的另一个实施例包括:
701、将所述第二文本信息中的n个候选信息切分成最小粒度的字形;
具体地,字形表中由于字的构成不是最小粒度的,为了可以用于计算相似度,需要将每个字都表示到最小粒度的构成单元上。如“丕”的构成为“不一”,而“不”的构成为“一丿卜”,则通过递归,得到“丕”的构成为“一丿卜一”。
702、将所述n个候选信息的字音按照预设规则排列;
本实施例中,由于多种文字都与普通话的发音较为类似,为了使得系统在应对用户使用拼音输入法时具有更好的适应性,会将一个词语的多种文字发音组合在一起。
具体地,由于字音表中存在几种不同类型的拼音,对于每一个字,我们将其对应的kMandarin、kCantonese、kKorean、kJapaneseOn、kVietnamese形式拼接,作为该字的拼音表示。
实例性地,以“上”为例,拼接之后的显示即为:
shàng;soeng5,soeng6;SANG;JOU,SHOU;
703、根据所述字形以及排列后的字音形成字音字形表,根据所述字音字形表计算所述第二文本信息与第一文本信息的字音相似度和字形相似度。
具体地、将上述最小粒度后的字形,以及按照规则排列的字音,组成字音字形表,根据该表计算MLM模型所输出的结果与用户的输入内容的相似程度,并根据计算公式得出与用户的输入内容最相近的输出结果。计算公式如下:
sim=α*simmlm+β*simstroke+γ*simpronunciation
其中,sim为计算结果,simmlm为所述遮蔽语言模型的输出结果,simstroke为所述输出结果与所述文本的字形相似度,simpronunciation为所述输出结果与所述文本的字音相似度,α、β与γ为权重系数。
值得一提的是,α、β与γ并非是不变的,而是在不同情况下可以进行变化的,例如,如果用户使用的是拼音输入法,那么对应字音相似度的参考意义更大,那么γ的值就会大于对应字形相似度的β。同理可知,如果用户所使用的输入法时手写输入,β的值就会大于对应字音相似度γ的值。
本申请实施例中,基于图3实施例,对第二模型的预训练进行进一步的介绍,具体请参阅图8,本申请实施例中,一种文本处理的方法的另一个实施例包括:
801、使用所述第一模型的输出结果作为所述模型的训练数据,连接长短期记忆网络与逻辑递归模型作为所述第二模型;
本实施例中,连接长短期记忆网络与逻辑递归模型作为所述第二模型,判断输入句子/短语正确还是错误,根据逻辑递归模型输出的概率确定ngram的得分,从任务目的可知,该分类器要判断候选排序后的字与原始输入字哪个在上下文语境中更合理,因此我们在设计分类器时,考虑加入句子向量、候选字向量、原字向量、两者的字形相似度、字音相似度、及bert模型预测的概率,其中,从句子向量中可以得到该句的表达方式即语境,再加入候选字向量以及原字向量用于判断该候选字与原字在该表达方式内是否合理,字形相似度与字音相似度以及预测的概率则是对合理程度进行进一步的描述。
并将遮蔽语言模型的输出作为bert向量以及字向量拼接到一起作为第二模型的输入,其中,bert向量即为上述遮蔽语言模型输出的候选字向量,原字向量,字形相似度以及字音相似度,字向量是增加的噪音向量,且将句子向量与上述的候选字向量、原字向量、两者的字形相似度、字音相似度拼接通过全连接放入逻辑递归模型进行分类。
由模型可知,训练数据极容易构建,因为本申请的训练数据只需要下载一些符合表达方式的正确句子,并通过替换正确句子的一部分内容得到错误句子即可。
可以在正确句子中用相似字形或相同字音或随机替换5%的字作为错误句子喂入分类模型,其中的字形相似度、字音相似度、bert预测的概率取替换字的平均值,候选字向量、原字向量分别为替换字向量与原字向量的平均向量,替换字是遮蔽语言模型在进行候选召回时所召回的多个字,原字则是与候选字对应的用户输入文本中的部分内容,候选字是替换字取平均值是因为在处理过程中对于原字的召回,可能会召回多个候选字,所以在处理向量时,只是取候选字向量维度的平均值,对于原字来说,由于在进行句子维度上的纠正时,可能一个句子内含有多个表述不合适的字,所以也是取向量的平均值。
示例性地,“相赁”对应的有四种情况,分别是“相赁”、“租赁”、“相邻”、“租邻”,将这四种情况分别代回原句计算句子的ngram得分,可以确定应该选择“租赁”作为最终结果。
本申请实施例中,基于图1实施例,对第三文本信息的生成进行进一步的介绍,具体请参阅图9,一种文本处理的方法的另一个实施例包括:
901、若用于生成第二文本信息的第一文本信息子内容数量大于1;
本实施例中,本申请主要用于对用户所输入的文本信息进行错误检测,如果用户所输入的文本信息较长,可能会出现该文本信息内存在多个错误字的情况。
具体地,如果用户输入的是“青少年因该为老年人让做”,那么根据常用的语言表述习惯,该内容便存在两处错误,即“因”应该为“应”,“做”应该为“座”,即为两个错误。本申请中,由于会对用户所输入的文本信息中的每个字都进行遮蔽并对遮蔽区域进行预测,如果通过模型所预测到的最高概率的字与用户输入的被遮蔽部分的字相同,则认为该处没有错误,如果通过模型所预测到的最高概率的字与用户输入的被遮蔽部分的字不同,则认为该处存在错误,而如果用户输入的文本信息内错误字数量大于1,会将原输入字与加权计算后数值最高的候选字进行排列输出。
902、对生成第二文本信息的第一文本信息子内容与根据所述加权公式计算出的最高数值所对应的第二文本信息子内容按照预设规则排列以作为第三文本信息。
实例性地,以“青少年因该为老年人让做”为例,输入遮蔽语言模型之后会发现当遮蔽“因”之后所召回的文字经过加权计算后数值最高的为“应”,遮蔽“做”之后所召回的文字经过加权计算后数值最高的为“座”,此时对应的情况变为用户的一次输入内容中存在两个错误情况,那么对应输出的即为[“青少年因该为老年人让做”,“青少年应该为老年人让做”],[“青少年因该为老年人让做”,“青少年因该为老年人让座”],即按照单一变量的原则对内容进行全排列,并将所输出的内容输入预训练好的模型以对上述情况进行排序,可以得到内容如下:
score(“青少年因该为老年人让做”)<score(“青少年应该为老年人让做”),所以“因”需要被纠正为“应”。
score(“青少年因该为老年人让做”)<score(“青少年因该为老年人让座”),所以“做”需要被纠正为“座”。
具体地,还会存在连续内容存在错误的情况,实例性地,比如:
以用户所输入的文本信息为“房屋相赁合同”为例,那么遮蔽语言模型所输出的对应“相”的为“租”,对应“赁”的为“邻”,属于连续两字存在错误,进行全排列的第三文本即为:[“房屋相赁合同”,“房屋相邻合同”,“房屋租赁合同”,“房屋租邻合同”],并将所输出的内容输入预训练好的模型以对上述情况进行排序,可以得到内容如下:
score(“房屋相赁合同”)<score(“房屋租邻合同”)<score(“房屋相邻合同”)<score(“房屋租赁合同”),所以“相赁”需要被纠正为“租赁”。
上面对本申请实施例中的方法部分进行了介绍,下面从虚拟装置的角度对本申请实施例进行说明。
请参阅图10,本申请实施例中一种文本处理的系统的一个实施例包括:
接收单元1001,用于接收第一文本信息;
所述接收单元1001,还用于接收经过第一模型对所述第一文本信息进行处理所得的第二文本信息,所述第二文本信息为根据第一文本信息生成的n个候选信息;
计算单元1002,用于按照预设规则对所述第二文本信息进行逐一加权计算,并标记经所述加权计算后数值最高的候选信息以作为第三文本信息;
输入单元1003,用于将所述第一文本信息以及所述第三文本信息输入第二模型;
所述接收单10901,还用于接收所述第二模型的输出结果,所述输出结果为不大于1的正数;
判断单元1004,用于判断所述第一输出结果是否大于所述第二输出结果;
所述判断单元1004,还用于若所述第一输出结果小于所述第二输出结果,则判定所述第一文本信息存在错误,并根据所述第三文本信息进行处理。
本实施例中,接收单元1001,用于接收第一文本信息,所述接收单元1001,还用于接收经过第一模型对所述第一文本信息进行处理所得的第二文本信息,所述第二文本信息为根据第一文本信息生成的n个候选信息,计算单元1002,用于按照预设规则对所述第二文本信息进行逐一加权计算,并标记经所述加权计算后数值最高的候选信息以作为第三文本信息,输入单元1003,用于将所述第一文本信息以及所述第三文本信息输入第二模型,所述接收单元1001,还用于接收所述第二模型的输出结果,所述输出结果为不大于1的正数,判断单元1004,用于判断所述第一输出结果是否大于所述第二输出结果,所述判断单元1004,还用于若所述第一输出结果小于所述第二输出结果,则判定所述第一文本信息存在错误,并根据所述第三文本信息进行处理。
下面从实体装置的角度对本申请实施例中的计算机装置进行描述,请参阅图11,本申请实施例中计算机装置的一个实施例包括:
该计算机装置1100可因配置或性能不同而产生比较大的差异,可以包括一个或一个以上中央处理器(central processing units,CPU)1101(例如,一个或一个以上处理器)和存储器1105,该存储器1105中存储有一个或一个以上的应用程序或数据。
其中,存储器1105可以是易失性存储或持久存储。存储在存储器1105的程序可以包括一个或一个以上模块,每个模块可以包括对服务器中的一系列指令操作。更进一步地,中央处理器1001可以设置为与存储器1105通信,在智能终端上执行存储器1105中的一系列指令操作。
该计算机装置1100还可以包括一个或一个以上电源1102,一个或一个以上有线或无线网络接口1103,一个或一个以上输入输出接口1004,和/或,一个或一个以上操作系统,例如Windows ServerTM,Mac OS XTM,UnixTM,LinuxTM,FreeBSDTM等等。
处理器1101具体用于执行以下步骤:
接收第一文本信息;
接收经过第一模型对所述第一文本信息进行处理所得的第二文本信息,所述第二文本信息为根据第一文本信息生成的n个候选信息;
按照预设规则对所述第二文本信息进行逐一加权计算,并标记经所述加权计算后数值最高的候选信息以作为第三文本信息;
将所述第一文本信息以及所述第三文本信息输入第二模型;
接收所述第二模型根据第一文本信息形成的第一输出结果,以及所述第二模型根据所述第三文本信息输出的第二输出结果,所述第一输出结果与第二输出结果均为不大于1的正数;
判断所述第一输出结果是否大于所述第二输出结果;
若所述第一输出结果小于所述第二输出结果,则判定所述第一文本信息存在错误,并根据所述第三文本信息进行处理。
可选地,若所述第二输出结果小于预设阈值,则判定所述第一文本正确。
可选地,在所述接收第一文本信息之前,所述方法还包括:
对所述第一模型进行预训练;
对所述第二模型进行预训练。
可选地,所述预训练第一模型包括:
以句子对作为语料构建训练数据库,所述句子对是以一句正确句与一句错误句对照组成。
可选地,所述第一模型包括:
多头注意力架构,用于将语料向量分割成m个维度;
自注意力架构,用于计算语料内所有文字之间的距离;
位置编码架构,用于保留语料内的序列信息。
可选地,所述第二文本信息包括候选信息以及所述候选信息对应的概率。
可选地,按照预设规对所述输出结果进行加权计算包括:
将所述输出结果在切分成最小粒度的字形;
将所述输出结果的字音按照预设顺序排列;
根据所述字形以及排列后的字音形成字音字形表;
根据所述字音字形表计算所述输出结果与文本的字音相似度和字形相似度。
可选地,按照预设规则对所述第二文本信息进行逐一加权计算公式如下:
sim=α*simmlm+β*simstroke+γ*simpronunciation
其中,sim为计算结果,simmlm为所述遮蔽语言模型的输出结果,simstroke为所述输出结果与所述文本的字形相似度,simpronunciation为所述输出结果与所述文本的字音相似度,α、β与γ为权重系数。
可选地,所述预训练第二模型包括:
连接长短期记忆网络与逻辑递归模型作为所述第二模型;
使用所述第一模型的输出结果作为所述模型的训练数据。
可以理解的是,在本申请的各种实施例中,上述各步骤的序号的大小并不意味着执行顺序的先后,各步骤的执行顺序应以其功能和内在逻辑确定,而不应对本申请实施例的实施过程构成任何限定。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统,装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在本申请所提供的几个实施例中,应该理解到,所揭露的系统,装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-OnlyMemory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述,以上实施例仅用以说明本申请的技术方案,而非对其限制;尽管参照前述实施例对本申请进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本申请各实施例技术方案的精神和范围。
Claims (8)
1.一种文本处理的方法,其特征在于,包括:
接收第一文本信息;
接收经过第一模型对所述第一文本信息进行处理所得的第二文本信息,所述第二文本信息为根据第一文本信息子内容对应生成的n个候选信息;
按照预设规则对所述第二文本信息进行逐一加权计算,并标记经所述加权计算后数值最高的候选信息以作为第三文本信息;
将所述第一文本信息以及所述第三文本信息输入第二模型;
接收所述第二模型根据第一文本信息形成的第一输出结果,以及所述第二模型根据所述第三文本信息输出的第二输出结果;
判断所述第一输出结果是否大于所述第二输出结果;
若所述第一输出结果小于所述第二输出结果,则判定所述第一文本信息存在错误,并使用第三文本信息替换所述第一文本信息;
所述按照预设规则对所述第二文本信息进行逐一加权计算包括:
将所述第二文本信息中的n个候选信息切分成最小粒度的字形;
将所述n个候选信息的字音按照预设规则排列;
根据所述字形以及排列后的字音形成字音字形表;
根据所述字音字形表计算所述第二文本信息与第一文本信息的字音相似度和字形相似度;
所述按照预设规则对所述第二文本信息进行逐一加权计算公式如下:
sim=α*simmlm+β*simstroke+γ*simpronunciation
其中,sim为计算结果,simmlm为遮蔽语言模型的输出结果,simstroke为所述输出结果与所述文本的字形相似度,simpronunciation为所述输出结果与所述文本的字音相似度,α、β与γ为权重系数。
2.根据权利要求1所述的方法,其特征在于,若所述第一输出结果不小于所述第二输出结果,则判定所述第一文本信息正确。
3.根据权利要求1所述的方法,其特征在于,在所述接收第一文本信息之前,所述方法还包括:
以句子对作为语料构建训练数据库,根据所述训练数据库对所述第一模型进行预训练,所述句子对是以一句正确句与一句错误句对照组成。
4.根据权利要求1所述的方法,其特征在于,所述第一模型包括:
多头注意力架构,用于将语料向量分割成m个维度;
自注意力架构,用于计算语料内所有文字之间的距离;
位置编码架构,用于保留语料内的序列信息。
5.根据权利要求1所述的方法,其特征在于,所述第二文本信息包括候选信息以及所述候选信息对应的正确概率。
6.根据权利要求1所述的方法,其特征在于,在所述接收第二文本信息之前,所述方法还包括:
连接长短期记忆网络与逻辑递归模型作为所述第二模型;
使用所述第一模型的输出结果作为所述第二模型的训练数据。
7.根据权利要求1所述的方法,其特征在于,标记经所述加权计算后数值最高的候选信息以作为第三文本信息包括:
若用于生成第二文本信息的第一文本信息子内容数量大于1;
则对生成第二文本信息的第一文本信息子内容与根据所述加权公式计算出的最高数值所对应的第二文本信息子内容按照预设规则排列以作为第三文本信息。
8.一种文本处理的系统,其特征在于,包括:
接收单元,用于接收第一文本信息;
所述接收单元,还用于接收经过第一模型对所述第一文本信息进行处理所得的第二文本信息,所述第二文本信息为根据第一文本信息子内容对应生成的n个候选信息;
处理单元,用于按照预设规则对所述第二文本信息进行逐一加权计算,并标记经所述加权计算后数值最高的候选信息以作为第三文本信息;
发送单元,用于将所述第一文本信息以及所述第三文本信息输入第二模型;
所述接收单元,还用于接收所述第二模型根据第一文本信息形成的第一输出结果,以及所述第二模型根据所述第三文本信息输出的第二输出结果;
所述处理单元,还用于判断所述第一输出结果是否大于所述第二输出结果;
所述处理单元,还用于若所述第一输出结果小于所述第二输出结果,则判定所述第一文本信息存在错误,并使用第三文本信息替换所述第一文本信息;
所述处理单元被进一步配置为:
将所述第二文本信息中的n个候选信息切分成最小粒度的字形;
将所述n个候选信息的字音按照预设规则排列;
根据所述字形以及排列后的字音形成字音字形表;
根据所述字音字形表计算所述第二文本信息与第一文本信息的字音相似度和字形相似度;
所述处理单元按照预设规则对所述第二文本信息进行逐一加权计算公式如下:
sim=α*simmlm+β*simstroke+γ*simpronunciation
其中,sim为计算结果,simmlm为遮蔽语言模型的输出结果,simstroke为所述输出结果与所述文本的字形相似度,simpronunciation为所述输出结果与所述文本的字音相似度,α、β与γ为权重系数。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010343473.7A CN111611791B (zh) | 2020-04-27 | 2020-04-27 | 一种文本处理的方法及相关装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010343473.7A CN111611791B (zh) | 2020-04-27 | 2020-04-27 | 一种文本处理的方法及相关装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111611791A CN111611791A (zh) | 2020-09-01 |
CN111611791B true CN111611791B (zh) | 2023-08-25 |
Family
ID=72199732
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010343473.7A Active CN111611791B (zh) | 2020-04-27 | 2020-04-27 | 一种文本处理的方法及相关装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111611791B (zh) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112800987B (zh) * | 2021-02-02 | 2023-07-21 | 中国联合网络通信集团有限公司 | 一种汉字处理方法和装置 |
CN112988962B (zh) * | 2021-02-19 | 2024-05-28 | 平安科技(深圳)有限公司 | 文本纠错方法、装置、电子设备及存储介质 |
CN113343678A (zh) * | 2021-06-25 | 2021-09-03 | 北京市商汤科技开发有限公司 | 一种文本纠错的方法、装置、电子设备及存储介质 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103400059A (zh) * | 2006-07-19 | 2013-11-20 | 先进追踪和寻踪公司 | 保护和验证文件的方法和设备 |
CN110750959A (zh) * | 2019-10-28 | 2020-02-04 | 腾讯科技(深圳)有限公司 | 文本信息处理的方法、模型训练的方法以及相关装置 |
US10607598B1 (en) * | 2019-04-05 | 2020-03-31 | Capital One Services, Llc | Determining input data for speech processing |
CN111046652A (zh) * | 2019-12-10 | 2020-04-21 | 拉扎斯网络科技(上海)有限公司 | 文本纠错方法、文本纠错装置、存储介质和电子设备 |
-
2020
- 2020-04-27 CN CN202010343473.7A patent/CN111611791B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103400059A (zh) * | 2006-07-19 | 2013-11-20 | 先进追踪和寻踪公司 | 保护和验证文件的方法和设备 |
US10607598B1 (en) * | 2019-04-05 | 2020-03-31 | Capital One Services, Llc | Determining input data for speech processing |
CN110750959A (zh) * | 2019-10-28 | 2020-02-04 | 腾讯科技(深圳)有限公司 | 文本信息处理的方法、模型训练的方法以及相关装置 |
CN111046652A (zh) * | 2019-12-10 | 2020-04-21 | 拉扎斯网络科技(上海)有限公司 | 文本纠错方法、文本纠错装置、存储介质和电子设备 |
Non-Patent Citations (1)
Title |
---|
"基于BERT嵌入BiLSTM-CRF模型的中文专业术语抽取研究";吴俊等;《情报学报》;20200424;第39卷(第4期);全文 * |
Also Published As
Publication number | Publication date |
---|---|
CN111611791A (zh) | 2020-09-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109885660B (zh) | 一种知识图谱赋能的基于信息检索的问答系统和方法 | |
US10997370B2 (en) | Hybrid classifier for assigning natural language processing (NLP) inputs to domains in real-time | |
US11301637B2 (en) | Methods, devices, and systems for constructing intelligent knowledge base | |
CN111444320B (zh) | 文本检索方法、装置、计算机设备和存储介质 | |
WO2019153737A1 (zh) | 用于对评论进行评估的方法、装置、设备和存储介质 | |
CN111611791B (zh) | 一种文本处理的方法及相关装置 | |
CN103885938B (zh) | 基于用户反馈的行业拼写错误检查方法 | |
CN112287670A (zh) | 文本纠错方法、系统、计算机设备及可读存储介质 | |
CN111931490B (zh) | 文本纠错方法、装置及存储介质 | |
JP2005122533A (ja) | 質問応答システムおよび質問応答処理方法 | |
US11232263B2 (en) | Generating summary content using supervised sentential extractive summarization | |
US20220414332A1 (en) | Method and system for automatically generating blank-space inference questions for foreign language sentence | |
CN111241397A (zh) | 一种内容推荐方法、装置和计算设备 | |
CN113449514A (zh) | 一种适用于特定垂直领域的文本纠错方法及其纠错装置 | |
CN111274366A (zh) | 搜索推荐方法及装置、设备、存储介质 | |
CN111626042A (zh) | 指代消解方法及装置 | |
CN114722176A (zh) | 一种智能答疑的方法、装置、介质及电子设备 | |
CN114298055A (zh) | 基于多级语义匹配的检索方法、装置、计算机设备和存储介质 | |
Ma et al. | Improving Chinese spell checking with bidirectional LSTMs and confusionset-based decision network | |
CN113705207A (zh) | 语法错误识别方法及装置 | |
CN116070620A (zh) | 一种基于大数据的信息处理方法及系统 | |
CN112016281B (zh) | 错误医疗文本的生成方法、装置及存储介质 | |
CN110929501B (zh) | 文本分析方法和装置 | |
CN109446518B (zh) | 语言模型的解码方法及解码器 | |
CN113177406A (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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |