一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

生成标记语料的方法、装置、终端设备及存储介质与流程

2022-08-30 20:50:36 来源:中国专利 TAG:


1.本技术属于自然语言处理技术领域,尤其涉及一种生成标记语料的方法、装置、终端设备及存储介质。


背景技术:

2.目前,各类机器学习模型大量应用于对诸如拼写检查等自然语言处理场景中。在实际应用场景中,对于给定的自然语言处理任务(如拼写检查等),开发者需要收集足够数量的标记语料,并通过大量的标记语料对指定的机器学习模型(如拼写检查模型)进行训练,从而使得该指定的机器学习模型对于给定的自然语言处理任务获得较好的性能表现。可见,大量高质量的标记语料是决定机器学习模型实际表现的关键因素之一。
3.其中,一组标记语料可以包括正确文本以及该正确文本对应的错误文本。而目前,往往是通过人工来对正确文本和对应的错误文本进行标注,这一获得标记语料的方式十分繁琐,人力成本以及时间成本都很高,并且获取到的标记语料的数量也往往较少。可见,亟需一种能够高效获得高质量的标记语料的方法。


技术实现要素:

4.本技术实施例提供了一种生成标记语料的方法、装置、终端设备及存储介质,可以高效获得高质量的标记语料。
5.第一方面,本技术实施例提供了一种生成标记语料的方法,包括:
6.针对任一正确语句,确定正确语句中的至少一个待替换字符;
7.确定每个待替换字符对应的至少两个候选替换字符;
8.根据每个待替换字符和每个待替换字符对应的至少两个候选替换字符,获得正确语句对应的至少两个错误语句;
9.通过预设自然语言模型获得每个错误语句的评估结果,以及根据每个错误语句的评估结果确定正确语句对应的目标错误语句。
10.第二方面,本技术实施例提供了一种生成标记语料的装置,包括:
11.第一确定模块,用于针对任一正确语句,确定正确语句中的至少一个待替换字符;
12.第二确定模块,用于确定每个待替换字符对应的至少两个候选替换字符;
13.处理模块,用于根据每个待替换字符和每个待替换字符对应的至少两个候选替换字符,获得正确语句对应的至少两个错误语句;
14.第三确定模块,用于通过预设自然语言模型获得每个错误语句的评估结果,以及根据每个错误语句的评估结果确定正确语句对应的目标错误语句。
15.第三方面,本技术实施例提供了一种终端设备,终端设备包括存储器、处理器以及存储在存储器中并可在处理器上运行的计算机程序,处理器执行计算机程序时实现如第一方面的生成标记语料的方法。
16.第四方面,本技术实施例提供了一种计算机可读存储介质,计算机可读存储介质
存储有计算机程序,计算机程序被处理器执行时实现如第一方面的生成标记语料的方法。
17.第五方面,本技术实施例提供了一种计算机程序产品,当计算机程序产品在终端设备上运行时,使得终端设备执行上述第一方面中的生成标记语料的方法。
18.本技术实施例与现有技术相比存在的有益效果是:可以确定每个待替换字符对应的至少两个候选替换字符,从而根据每个待替换字符和每个待替换字符对应的至少两个候选替换字符,获得正确语句对应的至少两个错误语句,以高效地获得用户在日常使用中可能出现的错误文本,并可以通过预设自然语言模型获得每个错误语句的评估结果,再根据每个错误语句的评估结果确定正确语句对应的目标错误语句,从而能够通过预设自然语言模型,从各个错误语句中筛选出质量较好的错误语句作为正确语句对应的目标错误语句,以高效地获得高质量的标记语料。
附图说明
19.为了更清楚地说明本技术实施例中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
20.图1是本技术一实施例提供的一种生成标记语料的方法的流程示意图;
21.图2是本技术一实施例提供的错误字符个数分布示例的一种示意图;
22.图3是本技术一实施例提供的连续错误字符的长度的分布示例的一种示意图;
23.图4是本技术一实施例提供的一种生成标记语料的装置的结构示意图;
24.图5是本技术一实施例提供的终端设备的结构示意图。
具体实施方式
25.以下描述中,为了说明而不是为了限定,提出了诸如特定系统结构、技术之类的具体细节,以便透彻理解本技术实施例。然而,本领域的技术人员应当清楚,在没有这些具体细节的其它实施例中也可以实现本技术。在其它情况中,省略对众所周知的系统、装置、电路以及方法的详细说明,以免不必要的细节妨碍本技术的描述。
26.应当理解,当在本技术说明书和所附权利要求书中使用时,术语“包括”指示所描述特征、整体、步骤、操作、元素和/或组件的存在,但并不排除一个或多个其它特征、整体、步骤、操作、元素、组件和/或其集合的存在或添加。
27.还应当理解,在本技术说明书和所附权利要求书中使用的术语“和/或”是指相关联列出的项中的一个或多个的任何组合以及所有可能组合,并且包括这些组合。
28.如在本技术说明书和所附权利要求书中所使用的那样,术语“如果”可以依据上下文被解释为“当...时”或“一旦”或“响应于确定”或“响应于检测到”。类似地,短语“如果确定”或“如果检测到[所描述条件或事件]”可以依据上下文被解释为意指“一旦确定”或“响应于确定”或“一旦检测到[所描述条件或事件]”或“响应于检测到[所描述条件或事件]”。
[0029]
在本技术说明书中描述的参考“一个实施例”或“一些实施例”等意味着在本技术的一个或多个实施例中包括结合该实施例描述的特定特征、结构或特点。由此,在本说明书中的不同之处出现的语句“在一个实施例中”、“在一些实施例中”、“在其他一些实施例中”、“在另外一些实施例中”等不是必然都参考相同的实施例,而是意味着“一个或多个但不是所有的实施例”,除非是以其他方式另外特别强调。术语“包括”、“包含”、“具有”及它们的变形都意味着“包括但不限于”,除非是以其他方式另外特别强调。
[0030]
具体地,图1示出了本技术实施例提供的一种生成标记语料的方法的流程图,该生成标记语料的方法可以应用于终端设备。
[0031]
本技术实施例中的终端设备可以为服务器、台式电脑、手机、平板电脑、可穿戴设备、车载设备、增强现实(augmented reality,ar)/虚拟现实(virtual reality,vr)设备、笔记本电脑、超级移动个人计算机(ultra-mobile personal computer,umpc)、上网本、个人数字助理(personal digital assistant,pda)等,本技术实施例对终端设备的具体类型不作任何限制。
[0032]
如图1所示,该生成标记语料的方法可以包括:
[0033]
步骤s101,针对任一正确语句,确定正确语句中的至少一个待替换字符。
[0034]
本技术实施例中,针对任一正确语句,可以确定正确语句中的待替换字符。待替换字符的个数以及位置等的具体确定方式可以有多种,并且,待替换字符的个数在此不作限制。
[0035]
待替换字符的具体确定方式可以有多种。示例性的,可以随机确定正确语句中的待替换字符。或者,也可以根据预先确定的错误字符个数信息和/或连续错误字符个数信息等错误字符的分布方式,确定正确语句中的待替换字符的个数以及位置,从而确定正确语句中的待替换字符。
[0036]
在一种实施例中,针对任一正确语句,确定正确语句中的至少一个待替换字符之前,方法还包括:
[0037]
获取参考语料,参考语料包括至少一个正确语句;
[0038]
获取参考语料对应的替换字符确定规则,替换字符确定规则包括替换字符个数确定规则和/或连续替换字符确定规则;
[0039]
确定正确语句中的至少一个待替换字符,包括:
[0040]
根据替换字符个数确定规则确定正确语句中的待替换字符的数量,根据正确语句中的待替换字符的数量,确定正确语句中的至少一个待替换字符;
[0041]
和/或,根据连续替换字符确定规则确定正确语句中的待替换字符组成的连续字符的长度,根据正确语句中的待替换字符组成的连续字符的长度,确定正确语句中的至少一个待替换字符。
[0042]
本技术实施例中,参考语料的具体获取方式可以有多种。
[0043]
示例性的,参考语料可以是终端设备中预先存储的,或者,也可以是与终端设备进行通信连接的其他终端发送至终端设备中而获取得到。
[0044]
参考语料的数据量可以根据实际场景确定来确定。在一些应用场景中,参考语料可以为大规模文本语料,从而可以获取到大量的正确语句,并在后续通过本技术实施例获得大量的正确语句所分别对应的高质量错误语句,从而获得大量的标记语料。
[0045]
一般来说,参考语料中的文本可以均为正确文本,以减少从参考语料中获取正确语句时的获取操作的复杂度。但是在一些示例中,参考语料中也可以包括错误文本,参考语料的具体文本内容和形式在此不作限制。
[0046]
本技术实施例中,替换字符确定规则可以存储于执行本技术实施例的终端设备中,也可以是通过与终端设备进行通信连接的其他终端发送至终端设备中而获取得到。并且,替换字符确定规则可以是预先统计得到并预先存储于终端设备或者其他终端中,也可以是在执行本技术实施例时,根据参考语料所属的应用领域中的指定文本中的错误字符而获取得到。替换字符确定规则的具体生成时机在此不作限定。
[0047]
参考语料对应的替换字符确定规则可以是预先确定的。
[0048]
在一些实施例中,参考语料对应的替换字符确定规则可以为参考语料所属的应用领域对应的替换字符确定规则。
[0049]
参考语料所属的应用领域可以根据正确语句的内容和/或具体应用场景等来确定。应用领域的具体划分方式在此不作限定。示例性的,应用领域可以包括诸如文学领域、生物领域、数学领域、物理领域等不同学科领域;或者,应用领域也可以包括中文领域、英文领域、拉丁文领域等不同语种的领域;或者,应用领域也可以包括金融领域、农业领域、工业领域等不同业务领域。
[0050]
本技术实施例中,可以预先根据各个应用领域的文本情况,确定各个应用领域所分别对应的错误字符分布情况,从而根据各个应用领域所分别对应的错误字符分布情况,确定各个应用领域的替换字符确定规则。其中,错误字符分布情况可以指实际错误字符在对应的应用领域对应的文本中的个数、位置等分布情况。
[0051]
具体的,替换字符确定规则包括可以替换字符个数确定规则和/或连续替换字符确定规则。替换字符个数确定规则可以包括单个语句中的待替换字符的个数的确定原则,连续替换字符确定原则可以包括单个语句中由待替换字符组成的连续字符的长度和/或位置等的确定原则。
[0052]
本技术实施例中,根据替换字符个数确定规则确定正确语句中的待替换字符的数量,根据正确语句中的待替换字符的数量,确定正确语句中的至少一个待替换字符;和/或,根据连续替换字符确定规则确定正确语句中的待替换字符组成的连续字符的长度,根据正确语句中的待替换字符组成的连续字符的长度,确定正确语句中的至少一个待替换字符,可以使得正确语句中的待替换字符的分布方式与参考语料在对应的实际应用场景中(如参考语料所对应的应用领域中)的文本的错误字符的分布规律类似,从而使得后续根据待替换字符和待替换字符对应的候选替换字符所获得的错误语句中,错误字符的分布方式与实际应用场景中,用户所产生的实际错误语句的错误字符的分布方式相同,以获得与实际应用场景中的实际错误语句相类似的错误语句。
[0053]
在一些实施例中,根据替换字符个数确定规则确定正确语句中的待替换字符的数量,和/或,根据连续替换字符确定规则确定正确语句中的待替换字符组成的连续字符的长度,包括:
[0054]
根据正确语句的字符总个数,确定正确语句中的待替换字符的最大数量;
[0055]
根据替换字符个数确定规则以及待替换字符的最大数量,确定正确语句中的待替换字符的数量,和/或,根据连续替换字符确定规则以及待替换字符的最大数量,确定正确语句中的待替换字符组成的连续字符的长度。
[0056]
在实际的文本纠错应用等场景中,往往需要根据文本中的上下文判断字符是否正确,因此,在确定正确语句的待替换字符时,也需要保留一定的上下文来进行判断,因此,正
确语句中的待替换字符的占比不能过多,否则会导致后续的预设自然语言模型可利用的上下文信息过少。因此,本技术实施例中,可以根据正确语句的字符总个数,确定正确语句中的待替换字符的最大数量;根据错误字符个数确定原则以及待替换字符的最大数量,确定正确语句中的待替换字符的数量,和/或,根据连续错误字符个数确定原则以及待替换字符的最大数量,确定正确语句中由待替换字符组成的连续字符的长度,从而确保错误语句中,能够保留足够的上下文信息。
[0057]
在一些实施例中,获取参考语料对应的替换字符确定规则之前,方法还包括:
[0058]
获取预设样本语料,预设样本语料与参考语料所属的应用领域相同,预设样本语料包括至少两个样本错误语句以及每个样本错误语句的错误字符标签;
[0059]
根据每个样本错误语句的错误字符标签,获得应用领域对应的错误字符分布信息;
[0060]
根据错误字符分布信息,确定参考语料对应的替换字符确定规则。
[0061]
本技术实施例中,每个样本错误语句的错误字符标签可以标识样本错误语句中的各个错误字符的位置,错误字符标签可以是对样本错误语句与样本错误语句对应的样本正确语句的每个字符进行比对后得到。
[0062]
在一些示例中,预设样本语料的数据量往往可以较小,并且,该预设样本语料可以通过人工校对,以保证预设样本语料中的每个样本错误语句的错误字符标签的准确性。
[0063]
在获得预设样本语料之后,可以根据预设样本语料,确定对应的应用领域中的错误字符分布信息,其中,错误字符分布信息可以包括错误字符个数信息和/或连续错误字符信息。此时,可以通过错误字符个数信息和/或连续错误字符信息来描述预设样本语料对应的应用领域中的错误文本的错误字符分布情况。
[0064]
其中,错误字符个数信息可以包括对应的应用领域中,单个语句中的实际错误字符的个数的信息。
[0065]
下面通过一个具体的错误字符个数分布示例进行说明。
[0066]
如图2所示,图2中的横坐标为错误字符个数,纵坐标为预设样本语料中,包含对应的错误字符个数的样本错误语句的总数量,基于图2中的统计信息可以得到预设样本语料所属的应用领域中不同的错误字符个数的样本错误语句的占比情况,从而确定预设样本语料所属的应用领域的替换字符个数确定规则。
[0067]
连续错误字符信息可以包括对应的应用领域中,单个语句中的实际连续错误字符的个数和/或连续错误字符的长度的信息。
[0068]
下面通过一个具体的连续错误字符的长度的分布示例进行说明。
[0069]
如图3所示,图3中的横坐标为连续错误字符的长度,纵坐标为预设样本语料中,不同长度的连续错误字符的数量,基于图3中的统计信息可以得到预设样本语料所属的应用领域中不同长度的连续错误字符的占比情况,从而确定预设样本语料所属的应用领域的连续替换字符确定规则。
[0070]
下面提供一种确定正确语句中的待替换字符的具体示例,以针对上述实施例进行示例性的说明。
[0071]
在一种具体示例中,正确语句的字符总个数为ls,正确语句的待替换字符个数最大值为num
max
,那么,待替换字符个数最大值num
max
与字符总个数为ls的关系可以如下:
[0072][0073]
在确定正确语句的待替换字符的最大数量之后,可以根据替换字符个数确定规则以及待替换字符的最大数量,确定正确语句中的待替换字符的数量,并且根据连续替换字符确定规则以及待替换字符的最大数量,确定正确语句中由待替换字符组成的连续字符的长度,然后,根据正确语句中的待替换字符的数量,以及,正确语句中由待替换字符组成的连续字符的长度,确定正确语句中的待替换字符的个数和位置。此时,所获得的错误语句中的错误字符的分布方式与所属的应用领域中的实际错误语句的实际错误字符的分布方式相近。
[0074]
例如,在一种示例中,替换字符个数确定规则和/或连续替换字符确定规则可以如下:
[0075]
1、ls≤5:
[0076]
正确语句的每一个错误语句对应的待替换字符的个数为1的概率p0=100%。
[0077]
2、5<ls≤10:
[0078]
正确语句的每一个错误语句对应的待替换字符的个数为1的概率为p1.1;
[0079]
正确语句的每一个错误语句对应的待替换字符的个数为2的概率为p1.2,其中:
[0080]
两个待替换字符为连续字符的概率为p1.2.1;
[0081]
两个待替换字符为非连续字符的概率为p1.2.2。
[0082]
3、10<ls≤15
[0083]
正确语句的每一个错误语句对应的待替换字符的个数为1的概率为p2.1;
[0084]
正确语句的每一个错误语句对应的待替换字符的个数为2的概率为p2.2,其中:
[0085]
两个待替换字符为连续字符的概率为p2.2.1;
[0086]
两个待替换字符为非连续字符的概率为p2.2.2;
[0087]
正确语句的每一个错误语句对应的待替换字符的个数为3的概率为p2.3,其中:
[0088]
三个待替换字符为连续字符的概率为p2.3.1;
[0089]
两个待替换字符为连续字符以及一个待替换字符为非连续字符的概率为p2.3.2;
[0090]
三个待替换字符为非连续字符的概率为p2.3.3;
[0091]
4、15<ls[0092]
正确语句的每一个错误语句对应的待替换字符的个数为1的概率为p3.1;
[0093]
正确语句的每一个错误语句对应的待替换字符的个数为2的概率为p3.2,其中:
[0094]
两个待替换字符为连续字符的概率为p3.2.1;
[0095]
两个待替换字符为非连续字符的概率为p3.2.2;
[0096]
正确语句的每一个错误语句对应的待替换字符的个数为3的概率为p3.3,其中:
[0097]
三个待替换字符为连续字符的概率为p3.3.1;
[0098]
两个待替换字符为连续字符以及一个待替换字符为非连续字符的概率为p3.3.2;
[0099]
三个待替换字符为非连续字符的概率为p3.3.3;
[0100]
正确语句的每一个错误语句对应的待替换字符的个数为4的概率为p3.4,其中:
[0101]
四个待替换字符为连续字符的概率为p3.4.1;
[0102]
三个待替换字符为连续字符以及一个待替换字符为非连续字符的概率为p3.4.2;
[0103]
每两个待替换字符为连续字符的概率为p3.4.3;
[0104]
四个待替换字符为非连续字符的概率为p3.4.4。
[0105]
需要说明的是,上述示例仅作为示例性说明,而非对本技术的限制。
[0106]
步骤s102,确定每个待替换字符对应的至少两个候选替换字符。
[0107]
本技术实施例中,每个待替换字符对应的至少两个候选替换字符的确定方式可以有多种。例如,针对每个待替换字符,可以通过查找预设的混淆字符集来确定待替换字符的预设易混淆字符,然后在查找到的预设易混淆字符中,确定至少两个候选替换字符。或者,待替换字符的至少两个候选替换字符也可以人工输入的字符。
[0108]
每个待替换字符的候选替换字符相对于待替换字符的混淆方式在此不做限制。示例性的,候选替换字符相对于待替换字符可以在发音上易于混淆,或者,也可以在文字结构上易于混淆。
[0109]
例如“我想看动划片”相对于“我想看动画片”为发音上易于混淆,而“我想坐巴士”相对于“我想坐巴土”为文字结构上易于混淆。
[0110]
在一些实施例中,确定每个待替换字符对应的至少两个候选替换字符,包括:
[0111]
根据混淆字符集,确定每个待替换字符对应的至少两个候选替换字符,混淆字符集中包含至少一个预设字符以及每个预设字符对应的混淆字符,待替换字符为预设字符,候选替换字符为待替换字符在混淆字符集中对应的混淆字符。
[0112]
本技术实施例中,混淆字符集的具体获取方式可以有多种。示例性的,混淆字符集可以为第三方公开的字符集,也可以是自行采集得到的字符集,例如,可以是基于预设样本语料获得的字符集等等。混淆字符集的具体获取方式在此不作限制。
[0113]
根据混淆字符集,确定每个待替换字符对应的至少两个候选替换字符的具体方式可以有多种。示例性的,可以从混淆字符集中,随机确定每个待替换字符的至少两个候选替换字符;或者,也可以从待替换字符在混淆字符集中对应的全部混淆字符中,筛选掉诸如数字、感叹词、连词等特定类型的混淆字符之后,再确定待替换字符的至少两个候选替换字符。
[0114]
每个预设字符对应的混淆字符相对于预设字符的混淆方式在此不做限制。示例性的,混淆字符相对于预设字符可以在发音上易于混淆,或者,也可以在文字结构上易于混淆。
[0115]
需要说明的是,候选替换字符可以为待替换字符在混淆字符集中对应的全部混淆字符,也可以为待替换字符在混淆字符集中对应的部分混淆字符。
[0116]
在一些实施例中,根据混淆字符集,确定每个待替换字符对应的至少两个候选替换字符,包括:
[0117]
若待替换字符a属于目标字符类型,则确定待替换字符a的候选混淆字符子集,候选混淆字符子集中的目标混淆字符为待替换字符a在混淆字符集中对应的混淆字符,目标混淆字符不属于目标字符类型,待替换字符a为至少一个待替换字符中的任意一个;
[0118]
从待替换字符a的候选混淆字符子集中,确定待替换字符a对应的至少两个候选替
换字符。
[0119]
本技术实施例中,示例性的,目标字符类型可以为数字词、感叹词、以及连接词等等中的至少一种。例如,数字词“零一二三四五六七八九十幺两几双俩”,感叹词“唉嗯哦噢喔唉啊哟哎啦呀哈呢嘛吗吧没么麽了”,连接词“和与及”等等。
[0120]
若是待替换字符a属于目标字符类型,则确定待替换字符a的候选混淆字符子集,候选混淆字符子集中的目标混淆字符为待替换字符a在混淆字符集中对应的混淆字符,并且,目标混淆字符不属于目标字符类型,可以防止候选替换字符替换待替换字符后的语句仍然是合理的,从而保证替换后的语句都是带有错误的。例如,给定正确语句“我想看一台”,如果需要给“一”进行替换,而不将数字词从候选混淆字符子集中去除,所得到的错误语句可能会是“我想看七台”,此时该错误语句实际上依然是正确的,从而无法获得正确的标记预料。
[0121]
在一些实施例中,从待替换字符a的候选混淆字符子集中,确定待替换字符a对应的至少两个候选替换字符,包括:
[0122]
从待替换字符a的候选混淆字符子集中,随机选取预设比例的目标混淆字符作为待替换字符a对应的当前候选子集;
[0123]
从当前候选子集中,确定待替换字符a对应的至少两个候选替换字符。
[0124]
本技术实施例中,预设比例可以根据经验等预先设置。示例性的,预设比例可以为1/3。
[0125]
本技术实施例中,从待替换字符a的候选混淆字符子集中,随机选取预设比例的目标混淆字符作为待替换字符a对应的当前候选子集,然后从当前候选子集中,确定待替换字符a对应的至少两个候选替换字符,可以减少同一个待替换字符在不同的正确语句中对应的候选替换字符的重复性,从而增加了所获得的目标错误语句的多样性。例如,在电视领域的语音识别语料中,常常会出现“我想看
×××”
的句式,当选择“想”字进行替换时,选取预设比例的目标混淆字符作为“想”字的候选子集后,不同正确语句中的“想”对应的候选替换字符可能不同,此时,不同的正确语句对应的目标错误语句中,“想”对应的错误字符也会不同,从而能够避免单一性的问题,增加了所获得的目标错误语句的多样性。
[0126]
步骤s103,根据每个待替换字符和每个待替换字符对应的至少两个候选替换字符,获得正确语句对应的至少两个错误语句。
[0127]
本技术实施例中,正确语句对应的至少两个错误语句的具体获取方式可以有多种。示例性的,若是待替换字符的个数为至少两个,则可以随机组合各个待替换字符,然后,针对每一组随机组合得到的待替换字符生成对应的错误语句。或者,针对每一个待替换字符,可以基于该待替换字符和待替换字符的至少两个候选替换字符,生成该待替换字符对应的至少两个错误语句。又或者是,确定至少两组待替换字符组,其中,每组待替换字符组包含至少一个待替换字符,并且,不同的待替换字符组之间的待替换字符的位置互不相同。然后,获得每一组待替换字符组对应的错误语句。
[0128]
本技术实施例中,可以根据每个待替换字符和每个待替换字符对应的至少两个候选替换字符,获得正确语句对应的至少两个错误语句,错误语句中可以包含易于与待替换字符相混淆的错误字符,可见,此时可以高效地获得用户在日常使用中可能出现的错误文本。
[0129]
步骤s104,通过预设自然语言模型获得每个错误语句的评估结果,以及根据每个错误语句的评估结果确定正确语句对应的目标错误语句。
[0130]
本技术实施例中,预设自然语言模型可以用于评估输入语句存在错误的概率。预设自然语言模型的类型在此不作限制。示例性的,预设自然语言模型可以为n-gram模型等等。
[0131]
预设自然语言模型可以为经训练的自然语言模型。具体的,可以通过预设训练预料对相应的自然语言模型进行训练,该预设训练样本可以为预设样本预料,也可以为其他预料,可以为自行生成的,也可以是从第三方获取得到。预设训练样本的具体来源可以根据实际场景来确定。
[0132]
预设自然语言模型的具体训练方式在此也不做限定。
[0133]
示例性的,可以通过kenlm库对相应的n-gram模型进行训练。并且,可以基于字符粒度对相应的自然语言模型进行训练,此时,预设样本语料中以字符为单位进行分割。
[0134]
本技术实施例中,评估结果可以用于评估输入的错误语句符合正确表达形式的概率,相应的,也可以评估对应的错误语句存在错误的概率。评估结果的具体形式可以有多种。示例性的,评估结果可以为概率值,该概率值用于指示输入语句符合正确表述的概率,本实施例中,该概率值越大,输入的错误语句也就越符合正确表达形式,也可以看成其流畅度越高,而该概率值越小,输入的错误语句存在错误的概率就越大。当然,评估结果也可以为其他的形式,例如,可以表示为等级的形式等等。
[0135]
由于评估结果可以用于评估输入的错误语句符合正确表达形式的概率,因此,若是评估结果指示对应的错误语句符合正确表达形式的概率越大,相应的,将该错误语句用于后续的深度学习模型的训练,也可以加大深度学习模型的学习难度,从而增强深度学习模型的训练效果。因此,也可以认为该错误语句与对应的正确语句所构成的标记语料的质量越好。
[0136]
本技术实施例中,正确语句和正确语句对应的目标错误语句可以作为一组标记语料。可见,通过本技术实施例,可以高效地获得大量的正确语句的目标错误语句,从而可以获得大量的标记语料,以用于后续的诸如深度学习模型的训练,从而执行诸如拼写检查的任务。
[0137]
在一些实施例中,确定正确语句中的至少一个待替换字符,包括:
[0138]
确定至少两组待替换字符组,每组待替换字符组包含至少一个待替换字符,不同的待替换字符组之间的待替换字符的位置互不相同;
[0139]
根据每个待替换字符和每个待替换字符对应的至少两个候选替换字符,获得正确语句对应的至少两个错误语句,包括:
[0140]
根据每组待替换字符组中的待替换字符,以及每组待替换字符组中的待替换字符对应的候选替换字符,获得每组待替换字符组对应的至少两个错误语句;
[0141]
根据每个错误语句的评估结果确定正确语句对应的目标错误语句,包括:
[0142]
根据每组待替换字符组对应的至少两个错误语句的评估结果,从每组替换字符组对应的至少两个错误语句中,确定至少一个目标错误语句。
[0143]
本技术实施例中,针对每一组待替换字符组,所获得的该组待替换字符组对应的至少两个错误语句中,每一个错误语句中的错误字符的位置相同,也就是说该组待替换字
符组的每一个错误语句对应的待替换字符相同,但不同的错误语句之间至少存在一个待替换字符对应的候选替换字符不同。此时,针对每一组待替换字符组,根据该组待替换字符组对应的至少两个错误语句的评估结果,从该组替换字符组对应的至少两个错误语句中,确定至少一个目标错误语句,该目标错误语句可以为所获得的该组待替换字符组对应的至少两个错误语句中质量最好的一组错误语句。
[0144]
在一些实施例中,根据每个错误语句的评估结果确定正确语句对应的目标错误语句,包括:
[0145]
根据每个待替换字符关联的错误语句的评估结果,确定正确语句中的每个待替换字符对应的目标替换字符;
[0146]
根据每个待替换字符对应的目标替换字符,获得正确语句对应的目标错误语句。
[0147]
本技术实施例中,通过预设自然语言模型进行评估使得待替换字符对应的目标替换字符替换至正确语句时,所得到的错误语句的质量较好,因此,根据每个待替换字符对应的目标替换字符,获得正确语句对应的目标错误语句的质量也较好,从而可以加大深度学习模型的学习难度,增强深度学习模型的训练效果。
[0148]
在一些实施例中,正确语句对应的目标错误语句的数量为至少两个,正确语句的各个目标错误语句的目标错误字符的位置互不相同,每个目标错误字符对应一个待替换字符,且每个目标错误字符为其对应的待替换字符对应的一个候选替换字符。
[0149]
在拼写检查等实际应用中,通常是通过一个字符的上下文来判断该字符正确与否,除此之外还需要事先知道该语句的正确表达形式。比如错误语句“我想坐巴土”,如果预先知道“巴士”这一交通工具,很容易根据上下文“我想坐”判断出该文本误将“巴士”写成“巴土”。
[0150]
由于本实施例中的错误语句是对正确语句中的待替换字符替换为对应的候选替换字符而生成,这种错误语句在具体应用于对深度学习模型的训练过程中时,深度学习模型很难学习到其正确的形式,尤其当某一个语句或某一种表达形式只在语料中出现过一次时,深度学习模型根本无法学习到其正确的形式。例如,在原始语料中出现一个语句“我想把花种在沙漠里”,而且这个语句在整个语料中仅出现过一次,在生成标记语料时,如果每个语句只使用一遍,生成的错误语句可能为“我想把花种在沙莫里”。如果将“我想把花种在沙漠里&我想把花种在沙莫里”的标记语料输入给深度学习模型进行训练,由于深度学习模型的输入都是错误语句,因此深度学习模型虽可以学习到该语句中“莫”是错误的,但无法得知该位置的正确字符是什么。
[0151]
针对上述问题,本实施例在生成标记语料时,正确语句对应的目标错误语句的数量为至少两个,并且,正确语句的各个目标错误语句的目标错误字符的位置互不相同,因此,可以获得基于正确语句的至少两组标记语料。在后续的模型训练中,待训练的深度学习模型可以结合至少两组标记语料中的目标错误语句,知晓对应的正确形式。以上述例子“我想把花种在沙漠里”为例进行说明,“我想把花种在沙漠里”的目标错误语句可能为:句1—“我想把花种在沙莫里”,句2—“我想把画种在沙漠里”,句1中的“莫”和句2中的“画”是错误的,结合这两个目标错误语句,深度学习模型可以通过学习确定该语句的正确形式为“我想把花种在沙漠里”。
[0152]
本技术实施例中,可以确定每个待替换字符对应的至少两个候选替换字符,从而
根据每个待替换字符和每个待替换字符对应的至少两个候选替换字符,获得正确语句对应的至少两个错误语句,以高效地获得用户在日常使用中可能出现的错误文本,并可以通过预设自然语言模型获得每个错误语句的评估结果,再根据每个错误语句的评估结果确定正确语句对应的目标错误语句,从而能够通过预设自然语言模型,从各个错误语句中筛选出质量较好的错误语句作为正确语句对应的目标错误语句,以高效地获得高质量的标记语料。
[0153]
应理解,上述实施例中各步骤的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本技术实施例的实施过程构成任何限定。
[0154]
对应于上文实施例上述的生成标记语料的方法,图4示出了本技术实施例提供的一种生成标记语料的装置的结构框图,为了便于说明,仅示出了与本技术实施例相关的部分。
[0155]
参照图4,该生成标记语料的装置4包括:
[0156]
第一确定模块401,用于针对任一正确语句,确定正确语句中的至少一个待替换字符;
[0157]
第二确定模块402,用于确定每个待替换字符对应的至少两个候选替换字符;
[0158]
处理模块403,用于根据每个待替换字符和每个待替换字符对应的至少两个候选替换字符,获得正确语句对应的至少两个错误语句;
[0159]
第三确定模块404,用于通过预设自然语言模型获得每个错误语句的评估结果,以及根据每个错误语句的评估结果确定正确语句对应的目标错误语句。
[0160]
可选的,生成标记语料的装置4还包括:
[0161]
第一获取模块,用于获取参考语料,参考语料包括至少一个正确语句;
[0162]
第二获取模块,用于获取参考语料对应的替换字符确定规则,替换字符确定规则包括替换字符个数确定规则和/或连续替换字符确定规则;
[0163]
第一确定模块401包括:
[0164]
第一确定单元,用于根据替换字符个数确定规则确定正确语句中的待替换字符的数量,根据正确语句中的待替换字符的数量,确定正确语句中的至少一个待替换字符;
[0165]
和/或,
[0166]
第二确定单元,用于根据连续替换字符确定规则确定正确语句中的待替换字符组成的连续字符的长度,根据正确语句中的待替换字符组成的连续字符的长度,确定正确语句中的至少一个待替换字符。
[0167]
可选的,第一确定单元包括:
[0168]
第一确定子单元,用于根据正确语句的字符总个数,确定正确语句中的待替换字符的最大数量;
[0169]
第二确定子单元,用于根据替换字符个数确定规则以及待替换字符的最大数量,确定正确语句中的待替换字符的数量,和/或,根据连续替换字符确定规则以及待替换字符的最大数量,确定正确语句中的待替换字符组成的连续字符的长度。
[0170]
可选的,生成标记语料的装置4还包括:
[0171]
第三获取模块,用于获取预设样本语料,预设样本语料与参考语料所属的应用领
域相同,预设样本语料包括至少两个样本错误语句以及每个样本错误语句的错误字符标签;
[0172]
第二处理模块,用于根据每个样本错误语句的错误字符标签,获得应用领域对应的错误字符分布信息;
[0173]
第四确定模块,用于根据错误字符分布信息,确定参考语料对应的替换字符确定规则。
[0174]
可选的,正确语句对应的目标错误语句的数量为至少两个,并且,正确语句的各个目标错误语句的目标错误字符的位置互不相同,每个目标错误字符对应一个待替换字符,且每个目标错误字符为其对应的待替换字符对应的一个候选替换字符。
[0175]
可选的,第三确定模块404具体包括:
[0176]
第三确定单元,用于根据每个待替换字符关联的错误语句的评估结果,确定正确语句中的每个待替换字符对应的目标替换字符;
[0177]
处理单元,用于根据每个待替换字符对应的目标替换字符,获得正确语句对应的目标错误语句。
[0178]
可选的,第一确定模块401具体用于:
[0179]
确定至少两组待替换字符组,每组待替换字符组包含至少一个待替换字符,不同的待替换字符组之间的待替换字符的位置互不相同;
[0180]
处理模块403具体用于:
[0181]
根据每组待替换字符组中的待替换字符,以及每组待替换字符组中的待替换字符对应的候选替换字符,获得每组待替换字符组对应的至少两个错误语句;
[0182]
第三确定模块404具体用于:
[0183]
根据每组待替换字符组对应的至少两个错误语句的评估结果,从每组替换字符组对应的至少两个错误语句中,确定至少一个目标错误语句。
[0184]
可选的,第二确定模块402具体用于:
[0185]
根据混淆字符集,确定每个待替换字符对应的至少两个候选替换字符,混淆字符集中包含至少一个预设字符以及每个预设字符对应的混淆字符,待替换字符为预设字符,候选替换字符为待替换字符在混淆字符集中对应的混淆字符。
[0186]
可选的,第二确定模块402具体包括:
[0187]
第四确定单元,用于若待替换字符a属于目标字符类型,则确定待替换字符a的候选混淆字符子集,候选混淆字符子集中的目标混淆字符为待替换字符a在混淆字符集中对应的混淆字符,目标混淆字符不属于目标字符类型,待替换字符a为至少一个待替换字符中的任意一个;
[0188]
第五确定单元,用于从待替换字符a的候选混淆字符子集中,确定待替换字符a对应的至少两个候选替换字符。
[0189]
可选的,第五确定单元具体包括:
[0190]
选取子单元,用于从待替换字符a的候选混淆字符子集中,随机选取预设比例的目标混淆字符作为待替换字符a对应的当前候选子集;
[0191]
第三确定子单元,用于从当前候选子集中,确定待替换字符a对应的至少两个候选替换字符。
[0192]
本技术实施例中,可以确定每个待替换字符的至少两个候选替换字符,从而根据待替换字符和待替换字符对应的候选替换字符,获得正确语句对应的至少两个错误语句,以高效地获得用户在日常使用中可能出现的错误文本,并可以通过预设自然语言模型,获得正确语句对应的每一个错误语句的评估结果,再根据每一个错误语句的评估结果,确定正确语句对应的目标错误语句,从而能够通过预设自然语言模型,从各个错误语句中筛选出质量较好的错误语句作为正确语句对应的目标错误语句,以高效地获得高质量的标记语料。对应的对应的对应的对应的对应的对应的对应的对应的
[0193]
需要说明的是,上述装置/单元之间的信息交互、执行过程等内容,由于与本技术方法实施例基于同一构思,其具体功能及带来的技术效果,具体可参见方法实施例部分,此处不再赘述。
[0194]
所属领域的技术人员可以清楚地了解到,为了描述的方便和简洁,仅以上述各功能单元、模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能单元、模块完成,即将上述装置的内部结构划分成不同的功能单元或模块,以完成以上描述的全部或者部分功能。实施例中的各功能单元、模块可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中,上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。另外,各功能单元、模块的具体名称也只是为了便于相互区分,并不用于限制本技术的保护范围。上述系统中单元、模块的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
[0195]
图5为本技术一实施例提供的终端设备的结构示意图。如图5所示,该实施例的终端设备5包括:至少一个处理器50(图5中仅示出一个)、存储器51以及存储在上述存储器51中并可在上述至少一个处理器50上运行的计算机程序52,上述处理器50执行上述计算机程序52时实现上述任意各个生成标记语料的方法实施例中的步骤。
[0196]
上述终端设备5可以是服务器、手机、可穿戴设备、增强现实(augmented reality,ar)/虚拟现实(virtual reality,vr)设备、桌上型计算机、笔记本、台式电脑以及掌上电脑等计算设备。该终端设备可包括,但不仅限于,处理器50、存储器51。本领域技术人员可以理解,图5仅仅是终端设备5的举例,并不构成对终端设备5的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件,例如还可以包括输入设备、输出设备、网络接入设备等。其中,上述输入设备可以包括键盘、触控板、指纹采集传感器(用于采集用户的指纹信息和指纹的方向信息)、麦克风、摄像头等,输出设备可以包括显示器、扬声器等。
[0197]
上述处理器50可以是中央处理单元(central processing unit,cpu),该处理器50还可以是其他通用处理器、数字信号处理器(digital signal processor,dsp)、专用集成电路(application specific integrated circuit,asic)、现场可编程门阵列(field-programmable gate array,fpga)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
[0198]
上述存储器51在一些实施例中可以是上述终端设备5的内部存储单元,例如终端设备5的硬盘或内存。上述存储器51在另一些实施例中也可以是上述终端设备5的外部存储设备,例如上述终端设备5上配备的插接式硬盘,智能存储卡(smart media card,smc),安全数字(secure digital,sd)卡,闪存卡(flash card)等。进一步地,上述存储器51还可以
既包括上述终端设备5的内部存储单元也包括外部存储设备。上述存储器51用于存储操作系统、应用程序、引导装载程序(boot loader)、数据以及其他程序等,例如上述计算机程序的程序代码等。上述存储器51还可以用于暂时地存储已经输出或者将要输出的数据。
[0199]
另外,尽管未示出,上述终端设备5还可以包括网络连接模块,如蓝牙模块wi-fi模块、蜂窝网络模块等等,在此不再赘述。
[0200]
本技术实施例中,上述处理器50执行上述计算机程序52以实现上述任意各个生成标记语料的方法实施例中的步骤时,可以确定每个待替换字符对应的至少两个候选替换字符,从而根据每个待替换字符和每个待替换字符对应的至少两个候选替换字符,获得正确语句对应的至少两个错误语句,以高效地获得用户在日常使用中可能出现的错误文本,并可以通过预设自然语言模型获得每个错误语句的评估结果,再根据每个错误语句的评估结果确定正确语句对应的目标错误语句,从而能够通过预设自然语言模型,从各个错误语句中筛选出质量较好的错误语句作为正确语句对应的目标错误语句,以高效地获得高质量的标记语料。
[0201]
本技术实施例还提供了一种计算机可读存储介质,上述计算机可读存储介质存储有计算机程序,上述计算机程序被处理器执行时实现可实现上述各个方法实施例中的步骤。
[0202]
本技术实施例提供了一种计算机程序产品,当计算机程序产品在终端设备上运行时,使得终端设备执行时实现可实现上述各个方法实施例中的步骤。
[0203]
上述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本技术实现上述实施例方法中的全部或部分流程,可以通过计算机程序来指令相关的硬件来完成,上述的计算机程序可存储于一计算机可读存储介质中,该计算机程序在被处理器执行时,可实现上述各个方法实施例的步骤。其中,上述计算机程序包括计算机程序代码,上述计算机程序代码可以为源代码形式、对象代码形式、可执行文件或某些中间形式等。上述计算机可读介质至少可以包括:能够将计算机程序代码携带到拍照装置/终端设备的任何实体或装置、记录介质、计算机存储器、只读存储器(rom,read-only memory)、随机存取存储器(ram,random access memory)、电载波信号、电信信号以及软件分发介质。例如u盘、移动硬盘、磁碟或者光盘等。在某些司法管辖区,根据立法和专利实践,计算机可读介质不可以是电载波信号和电信信号。
[0204]
在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述或记载的部分,可以参见其它实施例的相关描述。
[0205]
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本技术的范围。
[0206]
在本技术所提供的实施例中,应该理解到,所揭露的装置/网络设备和方法,可以通过其它的方式实现。例如,以上所描述的装置/网络设备实施例仅仅是示意性的,例如,上述模块或单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如
多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通讯连接可以是通过一些接口,装置或单元的间接耦合或通讯连接,可以是电性,机械或其它的形式。
[0207]
上述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
[0208]
以上上述实施例仅用以说明本技术的技术方案,而非对其限制;尽管参照前述实施例对本技术进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本技术各实施例技术方案的精神和范围,均应包含在本技术的保护范围之内。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献