文本纠错模型的训练方法及装置、文本纠错方法及装置与流程

文档序号:31042492发布日期:2022-08-06 04:38阅读:96来源:国知局
文本纠错模型的训练方法及装置、文本纠错方法及装置与流程

1.本技术涉及深度学习技术领域,具体而言,涉及一种文本纠错模型的训练方法及装置、文本纠错方法及装置。


背景技术:

2.随着人工智能技术的发展,自动化的文本纠错技术也在各大行业不断涌现并取得了显著的成果。然而随着文化多样性的出现,在不同业务领域下也衍生出了具有各自领域特色的语言表达方式,例如,以游戏领域为例,玩家在游戏过程中常常会通过“谐音梗”的方式,使用看似错误的文字表达来达到一个幽默而不失游戏领域特色的语言效果。
3.结合上述内容可以看出,由于语言表达在通用领域的泛化性与特殊业务领域的针对性之间存在矛盾,因此,使得原本单纯用于纠正错别字的传统文本纠错模型已经无法适用于执行特殊业务领域下的文本纠错任务。


技术实现要素:

4.有鉴于此,本技术的目的在于提供一种文本纠错模型的训练方法及装置、文本纠错方法及装置,以在不损失泛化文本纠错能力的前提下,训练模型快速适应更加复杂而独特的语言环境,从而提高模型在目标领域下的文本纠错准确率。
5.第一方面,本技术实施例提供了一种文本纠错模型的训练方法,所述文本纠错模型用于为目标领域下的目标服务对象提供文本纠错服务;其中,所述目标服务对象属于所述目标领域下已收敛的成熟算法模型;所述训练方法包括:
6.利用无语义标记的第一训练文本对语言模型进行预训练,得到第一语言表征模型;其中,所述第一训练文本包括所述目标领域下的特定文本数据以及所述目标领域之外的通用文本数据;
7.利用所述目标领域下已语义标记的第二训练文本对所述第一语言表征模型进行训练,得到具备目标文本特征识别能力的第二语言表征模型;其中,所述目标文本特征用于表征文本数据在所述目标领域下特有的语义特征和/或文字表达特征;
8.将所述目标服务对象在训练过程中输入或者输出的第三训练文本输入至所述第二语言表征模型中,得到所述第二语言表征模型输出的对所述第三训练文本进行文本纠错处理后的更正训练文本;
9.根据所述目标服务对象基于所述第三训练文本得到的更正前输出结果以及所述目标服务对象基于所述更正训练文本得到的更正后输出结果,获取所述目标服务对象的模型输出结果在更正前后产生的正向偏差/负向偏差,并根据所述正向偏差/负向偏差对所述第二语言表征模型的模型参数进行调整,得到包括调整好的模型参数的文本纠错模型。
10.在一种可选的实施方式中,所述利用无语义标记的第一训练文本对语言模型进行预训练,得到第一语言表征模型,包括:
11.通过随机采样的方式,对所述第一训练文本中第一目标数量的分词进行掩码遮
蔽,得到包括第一目标数量遮蔽词的第一遮蔽训练文本;其中,所述第一目标数量是根据所述随机采样的采样比例与所述第一训练文本中包括的分词数量确定的;
12.将所述第一遮蔽训练文本输入至所述语言模型中,得到所述语言模型输出的包括第一目标数量遮蔽词的预测结果的第一遮蔽预测文本;
13.利用所述第一遮蔽预测文本与未进行掩码遮蔽的所述第一训练文本之间的交叉熵损失,调整所述语言模型的模型参数,直至所述语言模型达到收敛,并将达到收敛后的所述语言模型作为所述第一语言表征模型。
14.在一种可选的实施方式中,所述利用无语义标记的第一训练文本对语言模型进行预训练,得到第一语言表征模型,还包括:
15.按照第一预设采样比例,对所述第一训练文本中属于所述特定文本数据的第二目标数量的分词进行掩码遮蔽,得到包括第二目标数量遮蔽词的第二遮蔽训练文本;其中,所述第二目标数量是根据所述第一预设采样比例与所述第一训练文本中属于所述特定文本数据的分词数量确定的;
16.将所述第二遮蔽训练文本输入至所述语言模型中,得到所述语言模型输出的包括第二目标数量遮蔽词的预测结果的第二遮蔽预测文本;
17.利用所述第二遮蔽预测文本与未进行掩码遮蔽的所述第一训练文本之间的交叉熵损失,调整所述语言模型的模型参数,直至所述语言模型达到收敛,并将达到收敛后的所述语言模型作为所述第一语言表征模型。
18.在一种可选的实施方式中,所述利用所述目标领域下已语义标记的第二训练文本对所述第一语言表征模型进行训练至少包括:利用所述目标领域下已语义标记的第二训练文本对所述第一语言表征模型进行粗粒度训练和/或细粒度训练;其中,所述粗粒度训练用于训练所述第一语言表征模型根据所述目标领域下同一语义概念对应的不同文字表达方式,对所述第二训练文本中同一所述语义概念下的不同语句进行分类;所述细粒度训练用于训练所述第一语言表征模型根据所述第二训练文本中每一语句在所述目标领域下的分词序列标记结果,对每一语句在所述目标领域下的文字表达方式进行识别。
19.在一种可选的实施方式中,通过以下方法对所述第一语言表征模型进行所述粗粒度训练:
20.针对所述第二训练文本中的任意两个语句,将所述任意两个语句去除已有的所述语义标记后的原始版本语句输入至所述第一语言表征模型中,通过所述第一语言表征模型对所述任意两个语句是否对应所述目标领域下的同一语义概念进行分类预测,得到所述任意两个语句的分类预测结果;
21.根据所述任意两个语句在所述第二训练文本中已有的所述语义标记,确定所述任意两个语句的真实分类结果;其中,所述真实分类结果用于表征所述任意两个语句是否对应所述目标领域下的同一语义概念;
22.利用所述分类预测结果与所述真实分类结果之间的交叉熵损失,调整所述第一语言表征模型的模型参数,直至所述第一语言表征模型达到收敛。
23.在一种可选的实施方式中,通过以下方法对所述第一语言表征模型进行所述细粒度训练:
24.针对所述第二训练文本中的每一语句,将该语句去除已有的所述语义标记后的原
始版本语句输入至所述第一语言表征模型中,通过所述第一语言表征模型对该语句在所述目标领域下的句子成分进行分析,得到该语句在所述目标领域下的语句分析结果;其中,所述句子成分至少包括:属于所述目标领域下定义的实体的第一目标分词,以及能够表征所述目标领域下不同语义概念的第二目标分词;
25.根据所述目标领域下定义的多个实体以及该语句中已有的所述语义标记,对该语句中包括的多个分词进行序列标记,得到该语句的分词序列标记结果;
26.利用所述语句分析结果与所述分词序列标记结果之间的交叉熵损失,调整所述第一语言表征模型的模型参数,直至所述第一语言表征模型达到收敛。
27.在一种可选的实施方式中,所述将所述目标服务对象在训练过程中输入或者输出的第三训练文本输入至所述第二语言表征模型中,得到所述第二语言表征模型输出的对所述第三训练文本进行文本纠错处理后的更正训练文本,包括:
28.针对所述第三训练文本中的每一语句,将该语句输入至所述第二语言表征模型中,得到所述第二语言表征模型针对该语句的第一输出结果;
29.在检测到所述第一输出结果与该语句存在差异的情况下,确定所述第二语言表征模型对该语句进行了所述文本纠错处理,并将所述第一输出结果作为所述更正训练文本;
30.在检测到所述第一输出结果与该语句相同的情况下,则从所述第三训练文本中获取下一语句,重复上述针对该语句的处理步骤,直至得到所述更正训练文本为止。
31.在一种可选的实施方式中,在所述得到所述第二语言表征模型输出的对所述第三训练文本进行文本纠错处理后的更正训练文本之后,所述训练方法还包括:
32.当所述第三训练文本属于所述目标服务对象在训练过程中输入的文本数据时,将所述第三训练文本输入至所述目标服务对象中,输出得到所述更正前输出结果;
33.将所述更正训练文本输入至所述目标服务对象中,输出得到所述更正后输出结果。
34.在一种可选的实施方式中,所述将所述第三训练文本输入至所述目标服务对象中,输出得到所述更正前输出结果,包括:
35.将所述第三训练文本输入至所述目标服务对象中,通过所述目标服务对象对所述第三训练文本的输出类别进行预测,得到所述更正前输出结果;其中,所述更正前输出结果用于表征所述第三训练文本的输出类别属于每一预设类别的概率;
36.所述将所述更正训练文本输入至所述目标服务对象中,输出得到所述更正后输出结果,包括:
37.将所述更正训练文本输入至所述目标服务对象中,通过所述目标服务对象对所述更正训练文本的输出类别进行预测,得到所述更正后输出结果;其中,所述更正后输出结果用于表征所述更正训练文本的输出类别属于每一预设类别的概率。
38.在一种可选的实施方式中,所述获取所述目标服务对象的模型输出结果在更正前后产生的正向偏差/负向偏差,包括:
39.按照第一偏差计算策略,计算所述目标服务对象的模型输出结果在更正前后产生的第一偏差;
40.基于所述第一偏差确定所述第一偏差属于所述正向偏差还是属于所述负向偏差。
41.在一种可选的实施方式中,所述按照第一偏差计算策略,计算所述目标服务对象
的模型输出结果在更正前后产生的第一偏差,包括:
42.计算所述更正后输出结果与所述更正前输出结果在同一预设类别上的概率偏差值,将计算结果作为所述第一偏差。
43.在一种可选的实施方式中,在所述得到所述第二语言表征模型输出的对所述第三训练文本进行文本纠错处理后的更正训练文本之后,所述训练方法还包括:
44.当所述第三训练文本属于所述目标服务对象在训练过程中输出的文本数据时,将所述第三训练文本作为所述更正前输出结果;将所述更正训练文本作为所述更正后输出结果。
45.在一种可选的实施方式中,所述获取所述目标服务对象的模型输出结果在更正前后产生的正向偏差/负向偏差,包括:
46.按照第二偏差计算策略,计算所述目标服务对象的模型输出结果在更正前后产生的第二偏差;
47.基于所述第二偏差确定所述第二偏差属于所述正向偏差还是属于所述负向偏差。
48.在一种可选的实施方式中,所述按照第二偏差计算策略,计算所述目标服务对象的模型输出结果在更正前后产生的第二偏差,包括:
49.获取目标输入数据的标准文本识别结果;其中,所述目标输入数据用于表征当所述目标服务对象在训练过程中输出所述第三训练文本时,所述目标服务对象的模型输入数据;
50.计算所述第三训练文本与所述标准文本识别结果之间的文本识别偏差值,将计算结果作为第一文本识别偏差值;
51.计算所述更正训练文本与所述标准文本识别结果之间的文本识别偏差值,将计算结果作为第二文本识别偏差值;
52.计算所述第一文本识别偏差值与所述第二文本识别偏差值之间的差值,将计算结果作为所述第二偏差。
53.在一种可选的实施方式中,所述根据所述正向偏差/负向偏差对所述第二语言表征模型的模型参数进行调整,得到包括调整好的模型参数的文本纠错模型,包括:
54.在第二语言表征模型的每一个训练周期,获取基于该训练周期进行训练的目标第二语言表征模型得到的目标正向偏差/负向偏差;
55.根据所述目标正向偏差/负向偏差,对所述目标第二语言表征模型的模型参数进行调整,当所述目标第二语言表征模型满足训练截止条件时,得到包括调整好的模型参数的所述文本纠错模型。
56.在一种可选的实施方式中,通过如下方法确定每个训练周期下的目标第二语言表征模型:
57.在到达第二语言表征模型的每一个训练周期时,获取上一个训练周期中训练好的第二语言表征模型,并生成上一个训练周期中未进行训练的镜像第二语言表征模型;
58.在该训练周期下,同步对所述上一个训练周期中训练好的第二语言表征模型和所述上一个训练周期中未进行训练的镜像第二语言表征模型进行训练,分别得到该训练周期下训练好的优化第二语言表征模型和优化镜像第二语言表征模型;
59.获取该训练周期下基于所述优化第二语言表征模型得到的第一训练偏差和基于
所述优化镜像第二语言表征模型得到的第二训练偏差;其中,所述第一训练偏差用于表征该训练周期下基于所述优化第二语言表征模型得到的多个正向偏差/负向偏差的偏差和值;所述第二训练偏差用于表征该训练周期下基于所述优化镜像第二语言表征模型得到的多个正向偏差/负向偏差的偏差和值;
60.若所述第一训练偏差小于所述第二训练偏差,使用所述优化镜像第二语言表征模型替换所述优化第二语言表征模型作为该训练周期的目标第二语言表征模型;
61.若所述第一训练偏差大于所述第二训练偏差,将所述优化第二语言表征模型作为该训练周期的目标第二语言表征模型;同时,并将所述优化镜像第二语言表征模型作为该训练周期中未进行训练的镜像第二语言表征模型。
62.在一种可选的实施方式中,在所述得到包括调整好的模型参数的文本纠错模型之后,所述训练方法,还包括:
63.将所述目标服务对象在测试过程中输入或者输出的测试文本输入至所述文本纠错模型中,得到所述文本纠错模型输出的对所述测试文本进行文本纠错处理后的更正测试文本;
64.根据所述目标服务对象基于所述测试文本得到的第一测试输出结果以及所述目标服务对象基于所述更正测试文本得到的第二测试输出结果,获取所述目标服务对象的测试输出结果在更正前后产生的测试偏差;其中,所述测试偏差包括属于正数的正向测试偏差以及属于负数的负向测试偏差;
65.根据每次更正前后产生的测试偏差,确定所述文本纠错模型的模型训练效果。
66.第二方面,本技术实施例还提供了一种文本纠错方法,所述文本纠错方法应用于预先训练好的文本纠错模型中;所述文本纠错模型用于为目标领域下的目标服务对象提供文本纠错服务;其中,所述目标服务对象属于所述目标领域下已收敛的成熟算法模型;所述文本纠错方法包括:
67.将所述目标服务对象在应用过程中需要进行文本纠错处理的待纠错文本输入至预先训练好的文本纠错模型中,通过所述文本纠错模型对所述待纠错文本中包括的目标文本错误进行纠正,得到所述文本纠错模型输出的针对所述待纠错文本的纠正文本;其中,所述目标文本错误根据所述目标领域下特有的语义特征和/或文字表达特征确定;
68.将所述目标服务对象在应用过程中输入或者输出的所述待纠错文本替换为所述纠正文本。
69.在一种可选的实施方式中,所述文本纠错模型是根据上述第一方面的任一所述可选的实施方式中的训练方法进行训练后得到的。
70.第三方面,本技术实施例提供了一种文本纠错模型的训练装置,所述文本纠错模型用于为目标领域下的目标服务对象提供文本纠错服务;其中,所述目标服务对象属于所述目标领域下已收敛的成熟算法模型;所述训练装置包括:
71.第一训练模块,用于利用无语义标记的第一训练文本对语言模型进行预训练,得到第一语言表征模型;其中,所述第一训练文本包括所述目标领域下的特定文本数据以及所述目标领域之外的通用文本数据;
72.第二训练模块,用于利用所述目标领域下已语义标记的第二训练文本对所述第一语言表征模型进行训练,得到具备目标文本特征识别能力的第二语言表征模型;其中,所述
目标文本特征用于表征文本数据在所述目标领域下特有的语义特征和/或文字表达特征;
73.第一处理模块,用于将所述目标服务对象在训练过程中输入或者输出的第三训练文本输入至所述第二语言表征模型中,得到所述第二语言表征模型输出的对所述第三训练文本进行文本纠错处理后的更正训练文本;
74.参数调整模块,用于根据所述目标服务对象基于所述第三训练文本得到的更正前输出结果以及所述目标服务对象基于所述更正训练文本得到的更正后输出结果,获取所述目标服务对象的模型输出结果在更正前后产生的正向偏差/负向偏差,并根据所述正向偏差/负向偏差对所述第二语言表征模型的模型参数进行调整,得到包括调整好的模型参数的文本纠错模型。
75.第四方面,本技术实施例提供了一种文本纠错装置,所述文本纠错装置应用于预先训练好的文本纠错模型中;所述文本纠错模型用于为目标领域下的目标服务对象提供文本纠错服务;其中,所述目标服务对象属于所述目标领域下已收敛的成熟算法模型;所述文本纠错装置包括:
76.文本纠错模块,用于将所述目标服务对象在应用过程中需要进行文本纠错处理的待纠错文本输入至预先训练好的文本纠错模型中,通过所述文本纠错模型对所述待纠错文本中包括的目标文本错误进行纠正,得到所述文本纠错模型输出的针对所述待纠错文本的纠正文本;其中,所述目标文本错误根据所述目标领域下特有的语义特征和/或文字表达特征确定;
77.文本替换模块,用于将所述目标服务对象在应用过程中输入或者输出的所述待纠错文本替换为所述纠正文本。
78.第五方面,本技术实施例提供了一种电子设备,包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现上述任一所述的文本纠错模型的训练方法的步骤。
79.第六方面,本技术实施例提供了一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器运行时执行上述任一所述的文本纠错模型的训练方法的步骤。
80.第七方面,本技术实施例提供了一种电子设备,包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现上述任一所述的文本纠错方法的步骤。
81.第八方面,本技术实施例提供了一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器运行时执行上述任一所述的文本纠错方法的步骤。
82.本技术的实施例提供的技术方案可以包括以下有益效果:
83.本技术实施例提供的一种文本纠错模型的训练方法及装置、文本纠错方法及装置,先使用开放领域下的通用文本数据对语言模型进行基本训练,再使用目标领域下的专有文本数据对语言模型进行微调训练,使得训练后的语言模型具备了识别目标领域下特定文本特征的能力;然后,通过与已收敛的目标服务对象之间进行数据交互的方式,使用目标领域下较为成熟的目标服务对象作为教师模型,来对训练中的文本纠错模型进行交互辅助性训练。这样,一方面,可以在不损失泛化文本纠错能力的前提下,训练模型快速适应更加
复杂而独特的语言环境,从而提高模型在目标领域下的文本纠错准确率;另一方面,与之相应的,在训练好文本纠错模型之后,可以使用该文本纠错模型对目标服务对象应用过程中涉及的文本数据进行文本纠错处理,有利于提高目标服务对象输出结果的准确程度以及目标服务对象的运行效率。
84.为使本技术的上述目的、特征和优点能更明显易懂,下文特举较佳实施例,并配合所附附图,作详细说明如下。
附图说明
85.为了更清楚地说明本技术实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本技术的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。
86.图1示出了本技术实施例所提供的一种文本纠错模型的训练方法的流程示意图;
87.图2示出了本技术实施例所提供的第一种预训练的方法的流程示意图;
88.图3示出了本技术实施例所提供的第二种预训练的方法的流程示意图;
89.图4示出了本技术实施例所提供的一种粗粒度训练的方法的流程示意图;
90.图5示出了本技术实施例所提供的一种细粒度训练的方法的流程示意图;
91.图6示出了本技术实施例所提供的一种判断是否发生文本纠错处理的方法的流程示意图;
92.图7示出了本技术实施例所提供的一种计算第一偏差的方法的流程示意图;
93.图8示出了本技术实施例所提供的一种计算第二偏差的方法的流程示意图;
94.图9示出了本技术实施例所提供的一种调整第二语言表征模型的模型参数的方法的流程示意图;
95.图10示出了本技术实施例所提供的一种确定每个训练周期下的目标第二语言表征模型的方法的流程示意图;
96.图11示出了本技术实施例所提供的一种测试文本纠错模型的方法的流程示意图;
97.图12示出了本技术实施例所提供的一种文本纠错方法的流程示意图;
98.图13示出了本技术实施例提供的一种文本纠错模型的训练装置的结构示意图;
99.图14示出了本技术实施例提供的一种文本纠错装置的结构示意图;
100.图15为本技术实施例提供的一种电子设备1500的结构示意图;
101.图16为本技术实施例提供的另一种电子设备1600的结构示意图。
具体实施方式
102.为使本技术实施例的目的、技术方案和优点更加清楚,下面将结合本技术实施例中的附图,对本技术实施例中的技术方案进行清楚、完整地描述,应当理解,本技术中附图仅起到说明和描述的目的,并不用于限定本技术的保护范围。另外,应当理解,示意性的附图并未按实物比例绘制。本技术中使用的流程图示出了根据本技术的一些实施例实现的操作。应该理解,流程图的操作可以不按顺序实现,没有逻辑的上下文关系的步骤可以反转顺序或者同时实施。此外,本领域技术人员在本技术内容的指引下,可以向流程图添加一个或
多个其他操作,也可以从流程图中移除一个或多个操作。
103.另外,所描述的实施例仅仅是本技术一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本技术实施例的组件可以以各种不同的配置来布置和设计。因此,以下对在附图中提供的本技术的实施例的详细描述并非旨在限制要求保护的本技术的范围,而是仅仅表示本技术的选定实施例。基于本技术的实施例,本领域技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本技术保护的范围。
104.需要说明的是,本技术实施例中将会用到术语“包括”,用于指出其后所声明的特征的存在,但并不排除增加其它的特征。
105.考虑到现有技术中由于语言表达在通用领域的泛化性与特殊业务领域的针对性之间存在矛盾,因此,使得原本单纯用于纠正错别字的传统文本纠错模型已经无法适用于执行特殊业务领域下的文本纠错任务。
106.基于此,本技术实施例提供了一种文本纠错模型的训练方法及装置、文本纠错方法及装置,先使用开放领域下的通用文本数据对语言模型进行基本训练,再使用目标领域下的专有文本数据对语言模型进行微调训练,使得训练后的语言模型具备了识别目标领域下特定文本特征的能力;然后,通过与已收敛的目标服务对象之间进行数据交互的方式,使用目标领域下较为成熟的目标服务对象作为教师模型,来对训练中的文本纠错模型进行交互辅助性训练。这样,一方面,可以在不损失泛化文本纠错能力的前提下,训练模型快速适应更加复杂而独特的语言环境,从而提高模型在目标领域下的文本纠错准确率;另一方面,与之相应的,在训练好文本纠错模型之后,可以使用该文本纠错模型对目标服务对象应用过程中涉及的文本数据进行文本纠错处理,有利于提高目标服务对象输出结果的准确程度以及目标服务对象的运行效率。
107.下面对本技术实施例提供的一种文本纠错模型的训练方法及装置、文本纠错方法及装置进行详细介绍。
108.参照图1所示,图1示出了本技术实施例所提供的一种文本纠错模型的训练方法的流程示意图,其中,所述文本纠错模型用于为目标领域下的目标服务对象提供文本纠错服务;所述目标服务对象属于所述目标领域下已收敛的成熟算法模型;该训练方法包括步骤s101-s104;具体的:
109.s101,利用无语义标记的第一训练文本对语言模型进行预训练,得到第一语言表征模型。
110.s102,利用所述目标领域下已语义标记的第二训练文本对所述第一语言表征模型进行训练,得到具备目标文本特征识别能力的第二语言表征模型。
111.s103,将所述目标服务对象在训练过程中输入或者输出的第三训练文本输入至所述第二语言表征模型中,得到所述第二语言表征模型输出的对所述第三训练文本进行文本纠错处理后的更正训练文本。
112.s104,根据所述目标服务对象基于所述第三训练文本得到的更正前输出结果以及所述目标服务对象基于所述更正训练文本得到的更正后输出结果,获取所述目标服务对象的模型输出结果在更正前后产生的正向偏差/负向偏差,并根据所述正向偏差/负向偏差对所述第二语言表征模型的模型参数进行调整,得到包括调整好的模型参数的文本纠错模型。
113.本技术实施例提供的一种文本纠错模型的训练方法,先使用开放领域下的通用文本数据对语言模型进行基本训练,再使用目标领域下的专有文本数据对语言模型进行微调训练,使得训练后的语言模型具备了识别目标领域下特定文本特征的能力;然后,通过与已收敛的目标服务对象之间进行数据交互的方式,使用目标领域下较为成熟的目标服务对象作为教师模型,来对训练中的文本纠错模型进行交互辅助性训练。通过上述训练方法,本技术可以在不损失泛化文本纠错能力的前提下,训练模型快速适应更加复杂而独特的语言环境,从而提高模型在目标领域下的文本纠错准确率。
114.下面对本技术实施例提供的上述文本纠错模型的训练方法中的各步骤分别进行示例性的说明:
115.s101,利用无语义标记的第一训练文本对语言模型进行预训练,得到第一语言表征模型。
116.这里,第一训练文本包括目标领域下的特定文本数据以及目标领域之外的通用文本数据;其中,目标领域根据目标服务对象的具体业务场景确定,例如,当目标服务对象是游戏系统中的语音识别模型时,则目标领域为游戏领域。
117.具体的,上述通用文本数据用于表征除目标领域之外,其他通用领域下的文本数据;其中,通用领域用于指代:在不限定文本数据所应用的具体业务场景时,文本数据可能应用的所有业务场景。例如,若目标领域为游戏领域,则通用文本数据则可以是从教育领域、传媒领域、文化体育领域等其他领域中能够获取到的各类文本数据。
118.这里,第一训练文本中的“无语义标记”用于表征:对于第一训练文本中的特定文本数据以及其他的通用文本数据不进行区分;上述预训练的训练目的在于:使用开放领域(相当于既包括目标领域也包括非目标领域)下的通用文本数据(即无语义标记的第一训练文本)对语言模型进行基本训练,以使训练后得到的语言模型(即第一语言表征模型)能够根据文本数据中不同的上下文内容,对于不同上下文内容表征的语义环境中各分词出现的概率进行预测(即得到具备基础行文感知能力的第一语言表征模型)。
119.具体的,作为一可选实施例,在获取第一训练文本时,还可以先对通用领域下采集到的文本数据(既包括上述特定文本数据也包括上述通用文本数据)进行一轮敏感词剔除的文本数据预处理(如剔除一些已知的停用词、行业敏感词、带有辱骂性质的恶意词汇等),以得到格式更加规范的第一训练文本,降低针对语言模型进行预训练的模型训练难度,提高语言模型的模型训练效率。
120.s102,利用所述目标领域下已语义标记的第二训练文本对所述第一语言表征模型进行训练,得到具备目标文本特征识别能力的第二语言表征模型。
121.在本技术实施例中,第二训练文本中的“已语义标记”用于表征:对于第二训练文本中的每一分词,若该分词在目标领域下出现时具备特有的目标语义和/或属于目标领域下的专有名词,则对该分词具备的所述目标语义和/或在目标领域下对应的名词概念定义进行标记。
122.具体的,上述步骤s102中利用第二训练文本对第一语言表征模型进行训练的训练目的在于:在第一语言表征模型具备基础行文感知能力之后,使用目标领域下的专有文本数据(即目标领域下已语义标记的第二训练文本)对第一语言表征模型进行微调训练,使得微调训练后得到的第二语言表征模型能够对不同语句在目标领域下的句子间关系,以及同
一语句在目标领域下的句子成分进行预测(即得到具备目标文本特征识别能力的第二语言表征模型)。
123.这里,目标文本特征用于表征文本数据在目标领域下特有的语义特征和/或文字表达特征;其中,所述语义特征相当于第二语言表征模型对于不同语句在目标领域下的句子间关系(如两个语句在目标领域下对应的语义是否相同)进行预测;所述文字表达特征相当于第二语言表征模型对于同一语句在目标领域下的句子成分进行预测(如语句中哪一分词属于目标领域下定义的实体词,哪一分词属于目标领域下对同一语义概念解释的专有名词等)。
124.具体的,上述语义特征至少可以包括以下2种类型的特征:
125.(1)、目标领域下特定文本数据的语义特征;
126.例如,以游戏领域作为目标领域为例,“御魂”是只在游戏领域下出现的特定文本数据,其语义特征为“游戏中的一种虚拟装备”。
127.(2)、同一文本数据在目标领域下出现时对应的特殊语义特征;
128.例如,仍以游戏领域是目标领域为例,“孙尚香”在游戏领域下出现时对应的特殊语义特征为“一种游戏角色”,但是“孙尚香”出现在除游戏领域之外的其他通用领域下时,则一般对应的普通语义为“一个历史人物”。
129.具体的,上述文字表达特征也至少可以包括以下2种类型的特征:
130.(1)、目标领域下特定文本数据的正确文字表达;
131.例如,以上述游戏领域下的特定文本数据“御魂”为例,“御魂”即为游戏领域下特定文本数据的正确文字表达,“玉魂”则为游戏领域下特定文本数据的错误文字表达。
132.(2)、同一文本数据在目标领域下出现时对应的特殊文字表达;
133.例如,仍以游戏领域是目标领域为例,“妹纸”放在通用领域下则属于“妹子”的错误文字表达,但是“妹纸”放在游戏领域下则属于对女性玩家/女性游戏角色的一种特色化称谓。
134.s103,将所述目标服务对象在训练过程中输入或者输出的第三训练文本输入至所述第二语言表征模型中,得到所述第二语言表征模型输出的对所述第三训练文本进行文本纠错处理后的更正训练文本。
135.这里,与传统语言模型(如自然语言模型)通过数据(即模型训练数据)-算法(即被训练模型)的方式进行模型训练不同,本技术是根据训练好的文本纠错模型的实际应用需求(即为目标服务对象提供目标领域下的文本纠错服务),在不需要重新构建模型训练数据集的基础上,通过算法(即目标服务对象)-数据(即目标服务对象在训练过程中输入或者输出的第三训练文本)-算法(即被训练的第二语言表征模型)的方式,使用目标领域下较为成熟的、已达到收敛的目标服务对象作为教师模型,来对训练中的文本纠错模型(即第二语言表征模型)进行交互辅助性训练,解决了传统自然语言模型在交互层面上因离散抽样带来的反向传播限制,并且在帮助模型快速收敛的同时也能提升其梯度优化的稳定性。
136.需要说明的是,在步骤s103中,第三训练文本本质上属于目标服务对象在自身训练过程中涉及的文本类型数据,也即,第三训练文本可能是目标服务对象的输入数据(如,若目标服务对象为文本分类模型,则第三训练文本为目标服务对象的输入数据);也可能是目标服务对象的输出数据(如,若目标服务对象为语音识别模型,则目标服务对象的输入数
据为语音数据,第三训练文本是目标服务对象针对输入语音数据输出的文字识别结果);还可以既包括目标服务对象的输入数据也包括目标服务对象的输出数据(如,若目标服务对象为问答类模型,则目标服务对象的输入数据和输出数据都属于文本类型数据,此时,第三训练文本即为目标服务对象训练过程中出现的所有训练数据)。
137.具体的,在步骤s103中,第三训练文本相当于目标服务对象在训练过程中输入或者输出的每个语句所组成的语句集合;第三训练文本是按照一个语句、一个语句的形式逐一输入到第二语言表征模型中的;针对当前输入的目标语句,第二语言表征模型可能对其进行了文本纠错处理(即模型输出结果与当前输入的目标语句不同),也可能并未对其进行文本纠错处理(即模型输出结果与当前输入的目标语句相同)。
138.需要说明的是,上述步骤s103中的“更正训练文本”是第三训练文本中当前输入的目标语句被第二语言表征模型进行了文本纠错处理之后得到的模型输出结果,也即,“更正训练文本”是在模型输出结果与当前输入的目标语句不同的情况下,第二语言表征模型的模型输出结果。
139.s104,根据所述目标服务对象基于所述第三训练文本得到的更正前输出结果以及所述目标服务对象基于所述更正训练文本得到的更正后输出结果,获取所述目标服务对象的模型输出结果在更正前后产生的正向偏差/负向偏差,并根据所述正向偏差/负向偏差对所述第二语言表征模型的模型参数进行调整,得到包括调整好的模型参数的文本纠错模型。
140.在本技术实施例中,在目标服务对象的实际应用过程中,根据文本数据属于目标服务对象的输入数据还是属于目标服务对象的输出数据,可以将目标服务对象所属的服务对象类型分为以下三种情况,具体的:
141.1、第一种情况:目标服务对象所属的服务对象类型为“先验类型”,也即,目标服务对象的工作任务在于:对于当前输入的文本数据进行数据处理。
142.示例性的说明,诸如文本分类、知识抽取、情感分析、搜索引擎等以文本数据作为输入数据的目标服务对象,文本数据是目标服务对象的输入数据,也即,文本纠错模型用于为目标服务对象的输入数据进行文本纠错服务。
143.具体的,当目标服务对象所属的服务对象类型为“先验类型”时,第三训练文本中的每一语句都属于目标服务对象的输入数据,此时,针对第三训练文本中的每一语句,目标服务对象基于该语句得到的更正前输出结果即为目标服务对象基于该语句作为输入,输出得到的模型输出结果;目标服务对象基于该语句的更正训练文本得到的更正后输出结果即为目标服务对象基于该语句的更正训练文本作为输入,输出得到的模型输出结果。
144.2、第二种情况:目标服务对象所属的服务对象类型为“双向验证类型”,也即,目标服务对象的工作任务既可能是:对于当前输入的文本数据进行数据处理,也可能是:根据当前输入的目标数据,去预测和生成相应的文本数据。
145.示例性的说明,属于“双向验证类型”的目标服务对象主要是目标领域下的对话服务系统,在对话服务系统中,对话服务系统既需要对用户输入的文本数据/语音数据进行识别,也需要根据输入数据的识别结果,预测和生成与输入数据相对应的回复类文本数据;也即,文本纠错模型用于为目标服务对象的输入数据和/或输出数据进行文本纠错服务,此时,第三训练文本中既包括属于目标服务对象的输入数据的输入语句,也包括属于目标服
务对象的输出数据的输出语句。
146.具体的,当目标服务对象所属的服务对象类型为“双向验证类型”时,针对第三训练文本中的每一语句,若该语句属于目标服务对象的输入数据,则更正前输出结果和更正后输出结果与上述第一种情况相同,重复之处在此不再赘述。
147.具体的,当目标服务对象所属的服务对象类型为“双向验证类型”时,针对第三训练文本中的每一语句,若该语句属于目标服务对象的输出数据,则上述更正前输出结果即为第三训练文本中的该语句,上述更正后输出结果即为该语句经过第二语言表征模型进行文本纠错处理后输出的更正训练文本。
148.3、第三种情况:目标服务对象所属的服务对象类型为“后验类型”,也即,目标服务对象的工作任务在于:根据当前输入的目标数据,去预测和生成相应的文本数据。
149.示例性的说明,诸如语音文字识别、图像ocr(optical character recognition,光学字符识别)识别等以文本数据作为输出数据的目标服务对象,文本数据是目标服务对象的输出数据,也即,文本纠错模型用于为目标服务对象的输出数据进行文本纠错服务,此时,第三训练文本中的每一语句都属于目标服务对象的输出数据。
150.具体的,当目标服务对象所属的服务对象类型为“后验类型”时,第三训练文本中的每一语句都属于目标服务对象的输出数据,此时,更正前输出结果和更正后输出结果与上述第二种情况中语句属于目标服务对象的输出数据的情况相同,重复之处在此不再赘述。
151.通过上述三种情况的具体说明可知,“目标服务对象的模型输出结果从更正前输出结果变更为更正后输出结果”相当于文本纠错模型为目标服务对象提供了文本纠错服务之后,目标服务对象的模型输出结果所发生的改变;“目标服务对象的模型输出结果在更正前后产生的正向偏差”相当于文本纠错模型提供的文本纠错服务针对目标服务对象产生了正向增益(如提高了目标服务对象模型输出结果的准确度等);“目标服务对象的模型输出结果在更正前后产生的负向偏差”相当于文本纠错模型提供的文本纠错服务针对目标服务对象产生了负面影响(如降低了目标服务对象的模型输出结果的准确度等)。
152.对于上述正向偏差/负向偏差的获取方式,需要说明的是,除了常规通过差值来获取正向偏差/负向偏差的方式之外,也可以根据目标服务对象的具体应用特点,来选择不同的偏差获取方式,例如,以目标服务对象是知识抽取为例,在问答领域的文本纠错服务中,则可以通过目标服务对象的下游序列标注模型的置信度来为训练中的文本纠错模型提供相应的奖励系数(即正向偏差)/惩罚系数(即负向偏差);对此,本技术实施例不作任何限定。
153.基于此,本技术针对模型训练过程中模拟发生的每一次文本纠错行为(相当于第二语言表征模型执行的每一次文本纠错处理),在文本纠错行为的发生对于目标服务对象的模型输出结果的影响是正向的情况下,以计算出的正向偏差作为模型的奖励型调整参数,对第二语言表征模型的模型参数进行正向调整;在文本纠错行为的发生对于目标服务对象的模型输出结果的影响是负向的情况下,以计算出的负向偏差作为模型的惩罚型调整参数,对第二语言表征模型的模型参数进行负向调整。这样,通过上述设立的对于目标领域下的文本纠错任务具有针对性的奖惩调整机制控制模型的学习行为,来替代传统模型训练方式中依靠带有标记的“标注样本”定义模型学习方向的方式,有利于减少模型训练过程对
于“标注样本”的依赖程度,即使在“标注样本”数量不足的情况下,也不会影响本技术中文本纠错模型的训练效果,有助于帮助模型快速进行收敛,并且使得训练好的文本纠错模型更加稳定。
154.下面针对上述各步骤在本技术实施例中的具体实施过程,分别进行详细说明:
155.针对上述步骤s101的具体实施过程,需要说明的是,现有的在通用领域下使用无语义标记文本数据对语言模型进行预训练的可选方式存在多种,对于步骤s101中预训练的具体预训练方式,本技术不作任何限定。
156.这里,以常用的bert(bidirectional encoder representations from transformers,一种自编码语言模型)模型中的“掩码预测”方式作为本技术中预训练方式的一可选实施例,对于如何选取第一训练文本中被掩码的待预测分词,本技术实施例给出了以下2种不同的可选实施方案,具体的:
157.在一种可选的实施方案中,如图2所示,图2示出了本技术实施例所提供的第一种预训练的方法的流程示意图,其中,在执行步骤s101时,该方法包括步骤s201-s203;具体的:
158.s201,通过随机采样的方式,对所述第一训练文本中第一目标数量的分词进行掩码遮蔽,得到包括第一目标数量遮蔽词的第一遮蔽训练文本。
159.在本技术实施例中,训练好的文本纠错模型是用于为目标领域下的目标服务对象提供文本纠错服务的,考虑到不同类型的目标服务对象对于文本纠错模型的训练需求可能存在不同,例如,有的目标服务对象更倾向于在文本纠错模型的训练过程中减少训练数据的构建操作(即训练需求偏向于减轻数据处理量/减少训练成本),有的目标服务对象则更倾向于提高文本纠错模型的训练效果(即对于训练过程中的数据处理量/训练成本并不关心);此时,为了满足不同目标服务对象针对文本纠错模型的不同训练需求,在对语言模型进行初步预训练时,既可以对需要被掩码遮蔽的待预测分词进行随机采样,也可以优先选择目标领域下的专业词汇/特色词汇作为需要被掩码遮蔽的待预测分词。
160.需要说明的是,基于上述关于待预测分词的分析内容可知,本技术实施例对于待预测分词是否需要设定选取规则/选取标准不作任何限定。
161.具体的,步骤s201-s203所述的第一种预训练的方法相当于在目标服务对象对于文本纠错模型的训练需求偏向于减轻数据处理量/减少训练成本的情况下,对语言模型进行预训练的优选实施方式。
162.这里,在步骤s201中,第一目标数量是根据所述随机采样的采样比例与所述第一训练文本中包括的分词数量确定的;例如,若第一训练文本中共包括100个分词,其中,随机采样的采样比例为10%,则可以确定第一目标数量是10个分词,也即,按照随机采样的方式,从第一训练文本包括的100个分词中随机抽取10个分词进行掩码遮蔽,得到包括10个被遮蔽分词的第一遮蔽训练文本。
163.s202,将所述第一遮蔽训练文本输入至所述语言模型中,得到所述语言模型输出的包括第一目标数量遮蔽词的预测结果的第一遮蔽预测文本。
164.具体的,以第一遮蔽预测文本中被遮蔽词的个数(即第一目标数量)是n个为例,对于每一个被遮蔽词i,根据被遮蔽词i在第一遮蔽预测文本中的位置,语言模型可以从第一遮蔽预测文本中,确定被遮蔽词i的上下文内容(如上下文内容可以是被遮蔽词i所在的语
句i、语句i的上一语句h以及语句i的下一语句j);训练语言模型根据被遮蔽词i的上下文内容,对每一个被遮蔽词i进行分词预测,得到每一个被遮蔽词i的分词预测结果p
ic
;从而将包括每一个被遮蔽词i的分词预测结果p
ic
的预测文本作为上述第一遮蔽预测文本;其中,分词预测结果p
ic
表示被遮蔽词i属于c类分词的预测概率。
165.需要说明的是,上述c类分词中c的具体类数取决于分词预测表中包括的分词类型数量,对于c类分词中c的具体类数,本技术实施例不作任何限定。
166.s203,利用所述第一遮蔽预测文本与未进行掩码遮蔽的所述第一训练文本之间的交叉熵损失,调整所述语言模型的模型参数,直至所述语言模型达到收敛,并将达到收敛后的所述语言模型作为所述第一语言表征模型。
167.具体的,结合上述步骤s202可知,第一遮蔽预测文本中包括每一个被遮蔽词的分词预测结果,而未进行掩码遮蔽的第一训练文本中则包括每一个被遮蔽词的真实分词分类结果(相当于根据未被遮蔽的真实分词,从上述分词预测表中确定出的真实分类结果)。因此,针对第一遮蔽预测文本中的每一个被遮蔽词,将该被遮蔽词在第一遮蔽预测文本中的分词预测结果以及该被遮蔽词第一训练文本中的真实分词分类结果带入交叉熵损失函数中,即可得到语言模型的模型训练损失,从而,基于每次训练得到的模型训练损失对语言模型中的模型参数进行调整,即可得到收敛后的第一语言表征模型。
168.在本技术实施例中,考虑到掩码预测过程中使用的分词预测表中包括的分词类型数量(即上述c类分词中c的具体类数)通常情况下都是大于2类的,因此,步骤s203中的交叉熵损失函数优选多分类任务下的交叉熵损失函数,具体的:
[0169][0170]
其中,n是第一遮蔽预测文本中被遮蔽词的总个数,也即,n是第一目标数量,i是第一遮蔽预测文本中的第i个被遮蔽词;
[0171]
n是分词预测表中包括的分词类型数量,c是分词预测表中包括的第c类分词;
[0172]
p
ic
是第i个被遮蔽词的分词预测结果;
[0173]yic
是符号函数(0或1),如果第i个被遮蔽词是第c类分词,则y
ic
取值为1;如果第i个被遮蔽词不是第c类分词,则y
ic
取值为0;
[0174]
l1是语言模型按照步骤s201-s203所述的方法进行预训练时所使用的交叉熵损失函数。
[0175]
在另一种可选的实施方案中,如图3所示,图3示出了本技术实施例所提供的第二种预训练的方法的流程示意图,其中,在执行步骤s101时,该方法包括步骤s301-s303;具体的:
[0176]
s301,按照第一预设采样比例,对所述第一训练文本中属于所述特定文本数据的第二目标数量的分词进行掩码遮蔽,得到包括第二目标数量遮蔽词的第二遮蔽训练文本。
[0177]
具体的,步骤s301-s303所述的第二种预训练的方法相当于在目标服务对象对于文本纠错模型的训练需求偏向于提高文本纠错模型的训练效果/提高训练结果准确度的情况下,对语言模型进行预训练的优选实施方式。
[0178]
这里,在步骤s301中,第二目标数量是根据所述第一预设采样比例与所述第一训练文本中属于所述特定文本数据的分词数量确定的;例如,若第一训练文本中共包括100个
分词,其中,40个分词属于目标领域下的特定文本数据,第一预设采样比例为20%,则可以确定第二目标数量是8个分词,也即,按照随机采样的方式,从第一训练文本中属于特定文本数据的40个分词中随机抽取8个分词进行掩码遮蔽,将这8个被掩码遮蔽的分词作为待预测的被遮蔽词。
[0179]
s302,将所述第二遮蔽训练文本输入至所述语言模型中,得到所述语言模型输出的包括第二目标数量遮蔽词的预测结果的第二遮蔽预测文本。
[0180]
s303,利用所述第二遮蔽预测文本与未进行掩码遮蔽的所述第一训练文本之间的交叉熵损失,调整所述语言模型的模型参数,直至所述语言模型达到收敛,并将达到收敛后的所述语言模型作为所述第一语言表征模型。
[0181]
这里,步骤s302-s303的实施方式与步骤s202-s203相同,重复之处在此不再赘述。
[0182]
针对上述步骤s102的具体实施过程,基于上述步骤s102的分析内容可知,步骤s102中利用第二训练文本对第一语言表征模型进行训练的训练目的可以细分为以下2种类型,具体的:
[0183]
训练目的1、使得微调训练后得到的第二语言表征模型能够对不同语句在目标领域下的句子间关系进行预测;
[0184]
训练目的2、使得微调训练后得到的第二语言表征模型能够对同一语句在目标领域下的句子成分进行预测。
[0185]
基于此,为完成上述两个训练目的,在本技术实施例中,作为一可选实施例,步骤s102中利用第二训练文本对第一语言表征模型进行训练至少包括:利用目标领域下已语义标记的第二训练文本对第一语言表征模型进行粗粒度训练和/或细粒度训练;其中,粗粒度训练用于训练所述第一语言表征模型根据所述目标领域下同一语义概念对应的不同文字表达方式,对所述第二训练文本中同一所述语义概念下的不同语句进行分类(即粗粒度训练用于完成上述训练目的1);细粒度训练用于训练所述第一语言表征模型根据所述第二训练文本中每一语句在所述目标领域下的分词序列标记结果,对每一语句在所述目标领域下的文字表达方式进行识别(即细粒度训练用于完成上述训练目的2)。
[0186]
针对上述训练目的1的具体完成过程,在一种可选的实施方案中,如图4所示,图4示出了本技术实施例所提供的一种粗粒度训练的方法的流程示意图,其中,在执行步骤s102时,该方法包括步骤s401-s403;具体的:
[0187]
s401,针对所述第二训练文本中的任意两个语句,将所述任意两个语句去除已有的所述语义标记后的原始版本语句输入至所述第一语言表征模型中,通过所述第一语言表征模型对所述任意两个语句是否对应所述目标领域下的同一语义概念进行分类预测,得到所述任意两个语句的分类预测结果。
[0188]
这里针对第二训练文本,需要说明的是,与步骤s201中关于被掩码遮蔽的待预测分词是否需要设定选取规则/选取标准相似的是,在本技术实施例中,为了满足不同目标服务对象针对文本纠错模型的不同训练需求,同样也可以根据不同的训练需求,来按照不同的方式确定第二训练文本。
[0189]
具体的,当目标服务对象更倾向于在文本纠错模型的训练过程中减少训练数据的构建操作(即训练需求偏向于减轻数据处理量/减少训练成本)时,由于第一训练文本中也包括属于目标领域下特定文本数据的分词,因此,可以直接使用第一训练文本作为第二训
练文本。
[0190]
与之对应的,当目标服务对象则更倾向于提高文本纠错模型的训练效果(即对于训练过程中的数据处理量/训练成本并不关心)时,则可以直接根据目标领域下的特定文本数据,重新构建第二训练文本;也可以在第一训练文本的基础上,补充一定数量的属于上述特定文本数据的专业词汇,将补充后的第一训练文本作为第二训练文本,以通过提高特定文本数据在第二训练文本中所占比例的方式,去满足目标服务对象更倾向于提高文本纠错模型的训练效果的这一训练需求。
[0191]
这里,在步骤s401中,分类预测结果用于表征所述任意两个语句是否对应目标领域下同一语义概念的预测值;也即,步骤s401中的分类预测方式相当于是对输入的两个语句是否对应目标领域下同一语义概念进行的二分类预测。
[0192]
s402,根据所述任意两个语句在所述第二训练文本中已有的所述语义标记,确定所述任意两个语句的真实分类结果。
[0193]
这里,真实分类结果用于表征所述任意两个语句是否对应所述目标领域下的同一语义概念。
[0194]
在本技术实施例中,在得到第二训练文本之后,作为一可选实施例,可以从目标领域下的知识图谱和/或百科知识库中,获取目标领域下包括的多种语义概念标签,然后,利用获取到的所述多种语义概念标签对第二训练文本中的每一语句进行标记,如果语句中出现语义标记与语义概念标签相符的分词,则将该语义概念标签作为该语句的语义概念标记;如果语句中没有与任意一个语义概念标签相符的分词,则可以确定该语句的语义概念标记为其他/无标记(相当于该语句与目标领域无关,对于模型训练的贡献度较小),从而,根据进行上述语义概念标记后的每个语句,来确定任意两个语句的真实分类结果。
[0195]
s403,利用所述分类预测结果与所述真实分类结果之间的交叉熵损失,调整所述第一语言表征模型的模型参数,直至所述第一语言表征模型达到收敛。
[0196]
这里,基于上述步骤s401的分析内容可知,步骤s401中的分类预测方式相当于是对输入的两个语句是否对应目标领域下的同一语义概念进行二分类预测;因此,步骤s403中的交叉熵损失函数可以使用二分类任务下的交叉熵损失函数,具体的:
[0197][0198]
其中,m是第一语言表征模型对所述任意两个语句的输入总次数(也相当于一轮二分类预测任务的预测总次数),也即,m的真实取值可以根据第二训练文本中包括的语句总个数来确定;
[0199]
j是第一语言表征模型中第j次的输入,也是第一语言表征模型在一轮二分类预测任务中的第j次预测;
[0200]
pj是第j次预测中2个语句的分类预测结果,其中,pj的数值表示第j次预测中2个语句对应目标领域下同一语义概念的概率;
[0201]
yj是符号函数(0或1),如果第j次预测中2个语句的真实分类结果是对应目标领域下的同一语义概念,则yj取值为1;如果第j次预测中2个语句的真实分类结果是对应目标领域下的不同语义概念,则yj取值为0;
[0202]
l2是按照步骤s401-s403所述的方法对第一语言表征模型进行粗粒度训练时所使用的交叉熵损失函数。
[0203]
针对上述训练目的2的具体完成过程,在一种可选的实施方案中,如图5所示,图5示出了本技术实施例所提供的一种细粒度训练的方法的流程示意图,其中,在执行步骤s102时,该方法包括步骤s501-s503;具体的:
[0204]
s501,针对所述第二训练文本中的每一语句,将该语句去除已有的所述语义标记后的原始版本语句输入至所述第一语言表征模型中,通过所述第一语言表征模型对该语句在所述目标领域下的句子成分进行分析,得到该语句在所述目标领域下的语句分析结果。
[0205]
这里,所述句子成分至少包括:属于所述目标领域下定义的实体的第一目标分词,以及能够表征所述目标领域下不同语义概念的第二目标分词。
[0206]
具体的,在上述句子成分既包括实体也包括语义概念的基础上,需要对上述步骤s402中的语义概念标记进行说明的是,为了进一步提高第二语言表征模型的训练效果,作为一可选实施例,针对第j次预测中输入的2个语句,在确定这2个语句的真实分类结果yj时,还可以进一步限定,如果第j次预测中2个语句既包括对应同一语义概念标记的分词,也包括实体属性相同的分词,则确定真实分类结果yj取值为1;否则即使2个语句中包括对应同一语义概念标记的分词,但在2个语句中属于实体类型的分词所对应的实体属性不同时,仍然确定这2个语句的真实分类结果yj取值为0,也即确定此时2个语句不是同一语义概念下的语句。
[0207]
在本技术实施例中,上述第一目标分词以及上述第二目标分词都可以利用目标领域下知识图谱来确定;例如,以游戏领域中的知识图谱k为例,在知识图谱k中,诸如游戏角色、游戏类型、游戏名称等常做语句主语的实体类分词会作为知识图谱k中的实体节点s出现,游戏装备、游戏道具、角色技能等常做语句宾语且属于游戏领域下具有特殊定义的概念类分词会作为知识图谱k中的概念节点g出现,知识图谱k中每一个实体节点s与概念节点g之间的边用于表征实体节点s与概念节点g之间的关联关系。
[0208]
s502,根据所述目标领域下定义的多个实体以及该语句中已有的所述语义标记,对该语句中包括的多个分词进行序列标记,得到该语句的分词序列标记结果。
[0209]
具体的,在对语句进行序列标记时,作为一可选实施例,可以按照上述第一目标分词以及第二目标分词的定义,对语句中包括的第一目标分词以及第二目标分词分别进行标记,从而得到该语句的分词序列标记结果。
[0210]
示例性的说明,以游戏领域作为目标领域为例,若语句a的文本形式是“[大天狗][的][御魂][应该][用][什么]”,其中,从游戏领域下的知识图谱k中确定出“大天狗”属于知识图谱k中的实体节点s1、“御魂”属于知识图谱k中的概念节点g1,实体节点s1与概念节点g1之间边表示概念节点g1与实体节点s1属于同一游戏应用程序;则可以确定语句a的分词序列标记结果a1是“[entity][0][category][0][0][0]”,其中,entity(实体)是属于第一目标分词的实体标记,category(类别)是属于第二目标分词的概念标记,0表示属于无需识别的其他文本。
[0211]
s503,利用所述语句分析结果与所述分词序列标记结果之间的交叉熵损失,调整所述第一语言表征模型的模型参数,直至所述第一语言表征模型达到收敛。
[0212]
具体的,在通过句子成分分析的方式得到上述语句分析结果时,第一语言表征模
型涉及对语句中包括的多个分词进行识别预测,因此,步骤s503中的交叉熵损失计算方法与步骤s203中的多分类任务下的交叉熵损失计算方法相似,步骤s503中的交叉熵损失函数形式可以参考步骤s203中交叉熵损失函数l1的公式形式,重复之处在此不再赘述。
[0213]
示例性的说明,仍以上述示例中的语句a为例,若语句a的语句分析结果a2是“[category][0][category][0][0][0]”,则以步骤s203中交叉熵损失函数l1为例,将语句a中的[大天狗]和[御魂]分别作为2个被遮蔽词,以语句分析结果a2中的标记结果作为第一遮蔽预测文本,以分词序列标记结果a1作为未进行掩码遮蔽的第一训练文本,根据分词序列标记结果a1和语句分析结果a2中的标记结果差异,确定符号函数y
ic
的取值,从而计算出分词序列标记结果a1和语句分析结果a2之间的交叉熵损失,以此对第一语言表征模型的模型参数进行微调,直至第一语言表征模型达到收敛。
[0214]
针对上述步骤s103的具体实施过程,基于上述步骤s103的分析内容可知,第三训练文本是按照一个语句、一个语句的形式逐一输入到第二语言表征模型中的;针对当前输入的目标语句,对于如何判断第二语言表征模型是否对该目标语句进行了文本纠错处理,本技术实施例给出了以下的可选实施方案,具体的:
[0215]
如图6所示,图6示出了本技术实施例所提供的一种判断是否发生文本纠错处理的方法的流程示意图,其中,在执行步骤s103时,该方法包括步骤s601-s603;具体的:
[0216]
s601,针对所述第三训练文本中的每一语句,将该语句输入至所述第二语言表征模型中,得到所述第二语言表征模型针对该语句的第一输出结果。
[0217]
s602,在检测到所述第一输出结果与该语句存在差异的情况下,确定所述第二语言表征模型对该语句进行了所述文本纠错处理,并将所述第一输出结果作为所述更正训练文本。
[0218]
s603,在检测到所述第一输出结果与该语句相同的情况下,则从所述第三训练文本中获取下一语句,重复上述针对该语句的处理步骤,直至得到所述更正训练文本为止。
[0219]
示例性的说明,在上述步骤s601-s603的基础上,仍以游戏领域作为目标领域为例,若第三训练文本中当前输入的语句a为“游戏角色妲己的形象是一个萌妹纸”,此时,若第二语言表征模型针对语句a的第一输出结果a1是“游戏角色妲己的形象是一个萌妹纸”,也即,第一输出结果a1与语句a相同,则确定第二语言表征模型没有对语句a进行文本纠错处理,此时,从第三训练文本中获取下一语句b作为第二语言表征模型的输入,继续进行判断;若第二语言表征模型针对语句a的第一输出结果a1是“游戏角色妲己的形象是一个萌妹子”,也即,第一输出结果a1与语句a存在差异,则确定第二语言表征模型对语句a进行了文本纠错处理,此时,得到更正训练文本a2是“游戏角色妲己的形象是一个萌妹子”,利用更正训练文本a2和第三训练文本中的语句a来执行步骤s104。
[0220]
针对上述步骤s104的具体实施过程,在本技术实施例中,结合上述步骤s104处的分析内容可知,目标服务对象所属的服务对象类型分为“先验类型”、“双向验证类型”、“后验类型”这三种情况,针对这三种具体情况,在上述步骤s601-s603的基础上,对于当前确定被第二语言表征模型进行了文本纠错处理(即模拟文本纠错模型为目标服务对象真实提供来文本纠错服务)的第三训练文本(相当于第三训练文本中的一个具体语句),可以确定出步骤s104中的第三训练文本(即当前确定被第二语言表征模型进行了文本纠错处理的第三训练文本)只可能是目标服务对象的输入文本数据/输出文本数据,也即,文本纠错模型相
当于是对目标服务对象的输入文本数据/输出文本数据进行文本纠错处理。
[0221]
基于此,下面根据文本纠错模型是对目标服务对象的输入文本数据进行文本纠错处理还是对目标服务对象的输出文本数据进行文本纠错处理,针对上述两种情况下,如何获取目标服务对象的模型输出结果在更正前后产生的正向偏差/负向偏差,分别进行详细说明:
[0222]
1、当第三训练文本为目标服务对象在训练过程中输入的文本数据时:
[0223]
此时,将第三训练文本输入至目标服务对象中,可以输出得到所述更正前输出结果;将更正训练文本输入至目标服务对象中,可以输出得到所述更正后输出结果;也即,更正前输出结果为:目标服务对象基于第三训练文本作为输入,输出得到的模型输出结果;更正后输出结果为:目标服务对象基于更正训练文本作为输入,输出得到的模型输出结果。
[0224]
需要说明的是,第三训练文本是按照一个语句、一个语句的形式逐一输入到第二语言表征模型中的,因此,上述第三训练文本为目标服务对象在训练过程中输入的文本数据即为第三训练文本中当前输入到第二语言表征模型中的目标语句属于目标服务对象的输入数据;上述更正训练文本即为第二语言表征模型针对输入的该目标语句进行文本纠错处理后输出的更正训练语句。
[0225]
这里,作为一可选实施例,可以按照第一偏差计算策略,计算目标服务对象的模型输出结果在更正前后产生的第一偏差;基于所述第一偏差确定所述第一偏差属于所述正向偏差还是属于所述负向偏差。
[0226]
针对上述第一偏差的具体计算过程,如图7所示,图7示出了本技术实施例所提供的一种计算第一偏差的方法的流程示意图,其中,该方法包括步骤s701-s703;具体的:
[0227]
s701,将所述第三训练文本输入至所述目标服务对象中,通过所述目标服务对象对所述第三训练文本的输出类别进行预测,得到所述更正前输出结果。
[0228]
这里,更正前输出结果用于表征所述第三训练文本的输出类别属于每一预设类别的概率。
[0229]
具体的,在本技术实施例中,以目标服务对象是“先验类型”中的文本分类模型为例,其中,当前确定被第二语言表征模型进行了文本纠错处理的第三训练文本是语句a,语句a被第二语言表征模型进行文本纠错处理之后输出的更正训练文本是更正训练语句a2;此时,将语句a输入到作为目标服务对象的文本分类模型中,得到的更正前输出结果可能存在以下两种类型:
[0230]
类型1、语句a所属的文本输出类别在更正前输出结果中较为明显,也即,语句a属于某一预设类别的概率值明显高于语句a属于其他预设类别的概率值,或者语句a属于某一预设类别的概率值大于或者等于50%。
[0231]
示例性的说明,此时,得到的更正前输出结果r1可以是:语句a属于第一预设类别的概率为70%、属于第二预设类别的概率为5%、属于第三预设类别的概率为5%、属于第四预设类别的概率为10%、属于第五预设类别的概率为10%。
[0232]
类型2、语句a所属的文本输出类别在更正前输出结果中不明显,也即,语句a属于每个预设类别的概率分布结果是平均的。
[0233]
示例性的说明,此时,得到的更正前输出结果r1可以是:语句a属于第一预设类别的概率为15%、属于第二预设类别的概率为15%、属于第三预设类别的概率为20%、属于第
四预设类别的概率为25%、属于第五预设类别的概率为25%。
[0234]
s702,将所述更正训练文本输入至所述目标服务对象中,通过所述目标服务对象对所述更正训练文本的输出类别进行预测,得到所述更正后输出结果。
[0235]
这里,更正后输出结果用于表征更正训练文本的输出类别属于每一预设类别的概率。
[0236]
具体的,步骤s702与上述步骤s701的实施方式相同,更正后输出结果的可能类型与上述更正前输出结果的可能类型相似,重复之处在此不再赘述。
[0237]
s703,计算所述更正后输出结果与所述更正前输出结果在同一预设类别上的概率偏差值,将计算结果作为所述第一偏差。
[0238]
这里,针对上述步骤s701中所示的两种不同类型的更正前输出结果,分别进行示例性说明如下:
[0239]
(1)、当更正前输出结果属于类型一时:
[0240]
这里,作为一可选实施例,可以从更正前输出结果中,确定概率最高值对应的目标预设类别作为比较目标服务对象的模型输出结果在更正前后产生偏差的具体预设类别,然后,在该目标预设类别下计算更正后输出结果与更正前输出结果之间的第一偏差。
[0241]
示例性的说明,以更正前输出结果r1为例,更正前输出结果r1是:语句a属于第一预设类别的概率为70%、属于第二预设类别的概率为5%、属于第三预设类别的概率为5%、属于第四预设类别的概率为10%、属于第五预设类别的概率为10%;若更正后输出结果r2是:更正训练语句a2属于第一预设类别的概率为90%、属于第二预设类别的概率为2%、属于第三预设类别的概率为3%、属于第四预设类别的概率为4%、属于第五预设类别的概率为1%;则可以直接利用更正前输出结果r1所属预设类别最高的概率值因文本纠错处理的发生而产生的数值变化作为第一偏差;此时计算得到第一偏差为:90%-70%=20%,也即,第一偏差属于数值为20%的正向偏差。
[0242]
(2)、当更正前输出结果属于类型二时:
[0243]
这里,作为另一可选实施例,可以按照预设的一个概率阈值(如20%),将更正前输出结果/更正后输出结果中高于该概率阈值的多个概率值筛选出来,再计算这些筛选出来的概率值的平均值,将更正前后两个输出结果中平均值的差值作为上述第一偏差。
[0244]
示例性的说明,以预设的一个概率阈值是20%为例,若更正前输出结果r1是:语句a属于第一预设类别的概率为15%、属于第二预设类别的概率为15%、属于第三预设类别的概率为20%、属于第四预设类别的概率为25%、属于第五预设类别的概率为25%;则在更正前输出结果r1中高于该概率阈值的概率值是:20%、25%、25%;
[0245]
若更正后输出结果r2是:更正训练语句a2属于第一预设类别的概率为5%、属于第二预设类别的概率为5%、属于第三预设类别的概率为15%、属于第四预设类别的概率为50%、属于第五预设类别的概率为25%;则在更正后输出结果r2中概率值高于该概率阈值的概率值是:50%、25%;
[0246]
此时,按照上述类型二下的可选实施例,可以计算得到第一偏差为:
[0247][0248]
这里,针对上述两个类型下,第一偏差的计算方式差异需要说明的是:
[0249]
在类型一下,第三训练样本中更正前的语句a的输出类别在更正前输出结果中较为明显,也即,即使不对语句a进行文本纠错处理,目标服务对象也能确定出语句a的具体文本分类结果,此时,得到第一偏差属于数值为20%的正向偏差可以理解为:文本纠错模型提供的文本纠错服务对于目标服务对象得到确切文本分类结果产生的贡献为20%(相当于提高了目标服务对象针对语句a进行文本分类的输出结果准确度)。
[0250]
在类型二下,第三训练样本中更正前的语句a的输出类别在更正前输出结果中不明显,也即,如果不对语句a进行文本纠错处理,目标服务对象不能得到语句a的一个确切的文本分类结果,此时,得到第一偏差属于数值为14.17%的正向偏差可以理解为:文本纠错模型提供的文本纠错服务对于目标服务对象能够得到一个确切的文本分类结果的贡献是14.17%。
[0251]
这里,当第一偏差为负向偏差时,则相当于将上述分析中的“贡献”变为反向的“损失”,也即,负向偏差用于表征文本纠错模型提供的文本纠错服务反而会对目标服务对象的模型输出结果产生负面的影响,重复之处在此不再赘述。
[0252]
2、当第三训练文本为目标服务对象在训练过程中输出的文本数据时:
[0253]
此时,将所述第三训练文本作为所述更正前输出结果;将所述更正训练文本作为所述更正后输出结果,也即,更正前输出结果即所述第三训练文本;更正后输出结果即所述更正训练文本。
[0254]
这里,作为一可选实施例,可以按照第二偏差计算策略,计算目标服务对象的模型输出结果在更正前后产生的第二偏差;基于所述第二偏差确定所述第二偏差属于所述正向偏差还是属于所述负向偏差;其中,第二偏差计算策略可以与上述第一偏差计算策略不同。
[0255]
针对上述第二偏差的具体计算过程,如图8所示,图8示出了本技术实施例所提供的一种计算第二偏差的方法的流程示意图,其中,该方法包括步骤s801-s804;具体的:
[0256]
s801,获取目标输入数据的标准文本识别结果。
[0257]
这里,目标输入数据用于表征当目标服务对象在训练过程中输出第三训练文本时,目标服务对象的模型输入数据。
[0258]
需要说明的是,由于第二偏差相当于是在第三训练文本是目标服务对象的输出文本数据的情况下进行计算的,因此,目标输入数据可以是非文本类型的数据。
[0259]
示例性的说明,以目标服务对象是图像识别模型为例,目标输入数据是图像b,第三训练文本中的语句b1是目标服务对象对图像b进行图像文本识别之后,得到文本识别预测结果;此时,根据目标服务对象在训练过程中使用的参考样本数据,可以从参考样本数据中,获取图像b的标准文本识别结果b。
[0260]
s802,计算所述第三训练文本与所述标准文本识别结果之间的文本识别偏差值,将计算结果作为第一文本识别偏差值。
[0261]
示例性的说明,仍以上述示例为例,计算第三训练文本中的语句b1与标准文本识别结果b之间的笔画编辑距离d1(相当于语句b1与标准文本识别结果b之间的文本差异度),将笔画编辑距离d1作为第一文本识别偏差值,此时,笔画编辑距离d1越小则表示语句b1与标准文本识别结果b之间相似度越高(相当于差异度越小),目标服务对象的模型输出结果越准确。
[0262]
s803,计算所述更正训练文本与所述标准文本识别结果之间的文本识别偏差值,
将计算结果作为第二文本识别偏差。
[0263]
示例性的说明,仍以上述示例为例,若语句b1被第二语言表征模型进行文本纠错处理之后得到的更正训练文本为更正训练语句b2,则计算更正训练语句b2与标准文本识别结果b之间的笔画编辑距离d2,将笔画编辑距离d2作为第二文本识别偏差值。
[0264]
s804,计算所述第一文本识别偏差值与所述第二文本识别偏差值之间的差值,将计算结果作为所述第二偏差。
[0265]
示例性的说明,仍以上述示例为例,计算笔画编辑距离d1与笔画编辑距离d2之间的差值d,将差值d的计算结果作为第二偏差;此时,若差值d计算结果为负数(相当于进行文本纠错处理之后,目标服务对象输出的文本识别预测结果与标准文本识别结果b之间的文本差异度增大了),则表示第二偏差为负向偏差,也即,文本纠错模型提供的文本纠错服务反而会对目标服务对象的模型输出结果产生负面的影响。
[0266]
若差值d计算结果为正数(相当于进行文本纠错处理之后,目标服务对象输出的文本识别预测结果与标准文本识别结果b之间的文本差异度缩小了),则表示第二偏差为正向偏差,也即,文本纠错模型提供的文本纠错服务有利于提高目标服务对象对于图像b的图像文本识别准确度。
[0267]
针对上述步骤s104的具体实施过程,对于如何根据所述正向偏差/负向偏差对所述第二语言表征模型的模型参数进行调整,本技术实施例给出了以下的可选实施方案,具体的:
[0268]
如图9所示,图9示出了本技术实施例所提供的一种调整第二语言表征模型的模型参数的方法的流程示意图,其中,在执行步骤s104时,该方法包括步骤s901-s902;具体的:
[0269]
s901,在第二语言表征模型的每一个训练周期,获取基于该训练周期进行训练的目标第二语言表征模型得到的目标正向偏差/负向偏差。
[0270]
具体的,在上述步骤s103中,第三训练文本相当于目标服务对象在训练过程中输入或者输出的每个语句所组成的语句集合;第三训练文本是按照一个语句、一个语句的形式逐一输入到第二语言表征模型中的;基于此,作为一可选实施例,上述步骤s901中的训练周期可以是根据训练中的第二语言表征模型对于所述第三训练文本的数据使用率确定的;例如,若将第三训练文本的数据使用率10%作为一个训练周期,此时,相当于若模型在训练过程中将第三训练文本中的语句遍历一轮总共需要经历10个训练周期;若将第三训练文本的数据使用率20%作为一个训练周期,此时,相当于若模型在训练过程中将第三训练文本中的语句遍历一轮总共需要经历5个训练周期。
[0271]
在本技术实施例中,每隔一个训练周期,可以保存并维护一个第二语言表征模型的镜像模型,以在每个训练周期中同步对上一个训练周期中训练好的第二语言表征模型和上一个训练周期中未进行训练的镜像模型进行训练,从而根据当前训练周期中第二语言表征模型积累的偏差和值(即正向偏差和负向偏差的和值)以及镜像模型积累的偏差和值,选择偏差和值最高的(相当于当前训练周期内训练效果最好的)模型作为当前训练周期内需要进行模型参数调整的目标第二语言表征模型,并根据目标第二语言表征模型在当前训练周期内得到的每一个目标正向偏差/负向偏差,对目标第二语言表征模型的模型参数进行调整。
[0272]
s902,根据所述目标正向偏差/负向偏差,对所述目标第二语言表征模型的模型参
数进行调整,当所述目标第二语言表征模型满足训练截止条件时,得到包括调整好的模型参数的所述文本纠错模型。
[0273]
在本技术实施例中,可以将上述目标正向偏差/负向偏差作为损失控制变量代入到目标第二语言表征模型的模型损失函数中,以对目标第二语言表征模型的模型参数进行调整。
[0274]
具体的,作为一可选实施例,目标第二语言表征模型的模型损失函数可以是如下公式中所示的函数形式:
[0275][0276]
其中,j(θ)是目标第二语言表征模型g
θ
在训练过程中的原始模型损失函数,可以取值为常用的最小二乘损失函数;
[0277]

θ
表示对于相乘函数进行求导;
[0278]sx
~g
θ
(y
1:t-1
)表示当前被纠错的目标分词s
x
位于第三训练文本中的第t个位置的输出概率,也即,文本纠错处理发生于第三训练文本中的第t个位置的输出概率;
[0279]
表示上述输出概率的期望值;
[0280]
logg
θ
(y
1:t
)表示目标第二语言表征模型g
θ
在训练过程中针对第三训练文本中每一个当前处理的分词,通过1到t时刻该分词的上下文内容计算出来的被纠错的目标分词s
x
的熵,也即,当前被纠错的目标分词s
x
在第三训练文本中的概率分布;
[0281]dφ
是损失控制变量,也即,目标第二语言表征模型在当前训练周期内基于第三训练文本中每一个训练语句得到的每个目标正向偏差/负向偏差;
[0282]
ε是损失控制变量的调节参数,用于对上述损失控制变量在模型损失函数中的权重进行调节。
[0283]
在一种可选的实施方案中,如图10所示,图10示出了本技术实施例所提供的一种确定每个训练周期下的目标第二语言表征模型的方法的流程示意图,其中,在每个训练周期内执行步骤s901-步骤s902所示的模型参数调整方法之前,该方法包括步骤s1001-s1005;具体的:
[0284]
s1001,在到达第二语言表征模型的每一个训练周期时,获取上一个训练周期中训练好的第二语言表征模型,并生成上一个训练周期中未进行训练的镜像第二语言表征模型。
[0285]
这里,需要说明的是,若当前训练周期为第二语言表征模型的第一个训练周期,则可以只获取训练过程中的第二语言表征模型作为当前训练周期需要进行模型参数调整的目标第二语言表征模型,也即,在第一个训练周期时可以视作不存在上一个训练周期中未进行训练的镜像模型。
[0286]
s1002,在该训练周期下,同步对所述上一个训练周期中训练好的第二语言表征模型和所述上一个训练周期中未进行训练的镜像第二语言表征模型进行训练,分别得到该训练周期下训练好的优化第二语言表征模型和优化镜像第二语言表征模型。
[0287]
这里,针对步骤s1002的具体实施方式,在当前训练周期中,针对第三训练文本中当前输入至第二语言表征模型/镜像第二语言表征模型中的目标语句,若该目标语句属于
目标服务对象的输入文本数据,则可以参照前述步骤s701-s703所示的第一偏差计算方法,计算得到第二语言表征模型/镜像第二语言表征模型针对该目标语句的正向偏差/负向偏差;若该目标语句属于目标服务对象的输出文本数据,则可以参照前述步骤s801-s804所示的第二偏差计算方法,计算得到第二语言表征模型/镜像第二语言表征模型针对该目标语句的正向偏差/负向偏差;重复之处在此不再赘述。
[0288]
s1003,获取该训练周期下基于所述优化第二语言表征模型得到的第一训练偏差和基于所述优化镜像第二语言表征模型得到的第二训练偏差。
[0289]
这里,所述第一训练偏差用于表征该训练周期下基于所述优化第二语言表征模型得到的多个正向偏差/负向偏差的偏差和值;所述第二训练偏差用于表征该训练周期下基于所述优化镜像第二语言表征模型得到的多个正向偏差/负向偏差的偏差和值。
[0290]
s1004,若所述第一训练偏差小于所述第二训练偏差,使用所述优化镜像第二语言表征模型替换所述优化第二语言表征模型作为该训练周期的目标第二语言表征模型。
[0291]
s1005,若所述第一训练偏差大于所述第二训练偏差,将所述优化第二语言表征模型作为该训练周期的目标第二语言表征模型;同时,并将所述优化镜像第二语言表征模型作为该训练周期中未进行训练的镜像第二语言表征模型。
[0292]
具体的,针对上述步骤s1004-步骤s1005,本技术实施例根据当前训练周期中第二语言表征模型积累的偏差和值(即第一训练偏差)以及镜像模型积累的偏差和值(即第二训练偏差),在每个训练周期内执行步骤s901-步骤s902所示的模型参数调整方法之前,选择偏差和值最高的(相当于当前训练周期内训练效果最好的)模型作为当前训练周期内需要进行模型参数调整的目标第二语言表征模型。
[0293]
基于上述步骤s901-步骤s902所述的模型参数调整方法,本技术针对模型训练过程中模拟发生的每一次文本纠错处理,在文本纠错处理的发生对于目标服务对象的输出结果的影响是正向的情况下,以计算出的正向偏差作为模型的奖励型调整参数,对目标第二语言表征模型的模型参数进行正向调整;在文本纠错处理的发生对于目标服务对象的模型输出结果的影响是负向的情况下,以计算出的负向偏差作为模型的惩罚型调整参数,对目标第二语言表征模型的模型参数进行负向调整。
[0294]
这样,通过上述设立的对于目标领域下的文本纠错任务具有针对性的奖惩调整机制控制模型的学习行为,本技术可以替代传统模型训练方式中依靠带有标记的“标注样本”定义模型学习方向的方式,有利于减少模型训练过程对于“标注样本”的依赖程度;在此基础上,基于上述步骤s1001-步骤s1005所示的目标第二语言表征模型确定方法,本技术还根据每一训练周期内模型积累的正向偏差与负向偏差的和值大小,选取在一个训练周期内获得总奖励最大的(相当于偏差和值是最大正数值)模型作为当前训练周期内实际进行模型参数调整的目标优化模型,有利于依次加快模型的收敛进程。
[0295]
综上所述,即使在“标注样本”数量不足的情况下,也不会影响本技术中文本纠错模型的训练效果,有助于帮助模型快速进行收敛,并且使得训练好的文本纠错模型更加稳定。
[0296]
在本技术实施例中,基于与上述各步骤中的训练思想相似的测试思想,通过与目标服务对象之间进行的数据交互,除第三训练文本之外,文本纠错模型还可以按照相同的方式,从目标服务对象中获取目标服务对象在测试过程中涉及的测试文本数据,以利用所
述测试文本数据,对于文本纠错模型的训练效果进行评估,具体的:
[0297]
如图11所示,图11示出了本技术实施例所提供的一种测试文本纠错模型的方法的流程示意图,其中,在执行步骤s104之后,该方法还包括步骤s1101-s1103;具体的:
[0298]
s1101,将所述目标服务对象在测试过程中输入或者输出的测试文本输入至所述文本纠错模型中,得到所述文本纠错模型输出的对所述测试文本进行文本纠错处理后的更正测试文本。
[0299]
需要说明的是,步骤s1101的执行方式与步骤s103相同,可以参考前述步骤s103的相关解释内容,重复之处在此不再赘述。
[0300]
s1102,根据所述目标服务对象基于所述测试文本得到的第一测试输出结果以及所述目标服务对象基于所述更正测试文本得到的第二测试输出结果,获取所述目标服务对象的测试输出结果在更正前后产生的测试偏差。
[0301]
这里,所述测试偏差包括属于正数的正向测试偏差以及属于负数的负向测试偏差。
[0302]
需要说明的是,步骤s1102中每次计算更正前后产生的测试偏差时,若当前测试文本中的测试语句属于目标服务对象的输入文本数据,则可以按照前述步骤中计算第一偏差的方式,计算上述测试偏差;若当前测试文本中的测试语句属于目标服务对象的输出文本数据,则可以按照前述步骤中计算第二偏差的方式,计算上述测试偏差;重复之处在此不再赘述。
[0303]
s1103,根据每次更正前后产生的测试偏差,确定所述文本纠错模型的模型训练效果。
[0304]
具体的,可以根据每次更正前后产生的测试偏差,计算得到文本纠错模型在测试过程中得到的测试偏差的和值,以根据测试偏差和值,来对文本纠错模型的模型训练效果进行评估。
[0305]
需要说明的是,在文本纠错模型的训练过程中,在计算出每一次训练过程得到正向偏差/负向偏差之后,需要按照步骤s901-s902所示的方法,基于计算得到的正向偏差/负向偏差,对文本纠错模型中的模型参数进行调整和优化。而与文本纠错模型的训练方法不同的是,在模型的测试过程中,并不需要再对已经训练好的文本纠错模型中的模型参数进行调整,也即,在执行步骤s1103时,并不涉及上述步骤s901-s902中的模型优化过程,只需要记录每一次得到的测试偏差,利用每一所述测试偏差的和值,来对文本纠错模型的训练效果进行评估即可。
[0306]
通过本技术实施例提供的上述文本纠错模型的训练方法,本技术先使用开放领域下的通用文本数据对语言模型进行基本训练,再使用目标领域下的专有文本数据对语言模型进行微调训练,使得训练后的语言模型具备了识别目标领域下特定文本特征的能力;然后,通过与已收敛的目标服务对象之间进行数据交互的方式,使用目标领域下较为成熟的目标服务对象作为教师模型,来对训练中的文本纠错模型进行交互辅助性训练。通过上述训练方法,本技术可以在不损失泛化文本纠错能力的前提下,训练模型快速适应更加复杂而独特的语言环境,从而提高模型在目标领域下的文本纠错准确率。
[0307]
本技术实施例中,在训练好文本纠错模型之后,在该文本纠错模型的应用阶段的过程如下:
[0308]
如图12所示,图12示出了本技术实施例所提供的一种文本纠错方法的流程示意图,其中,所述文本纠错方法应用于预先训练好的文本纠错模型中;所述文本纠错模型用于为目标领域下的目标服务对象提供文本纠错服务;其中,所述目标服务对象属于所述目标领域下已收敛的成熟算法模型;该文本纠错方法还包括步骤s1201-s1202;具体的:
[0309]
s1201,将所述目标服务对象在应用过程中需要进行文本纠错处理的待纠错文本输入至预先训练好的文本纠错模型中,通过所述文本纠错模型对所述待纠错文本中包括的目标文本错误进行纠正,得到所述文本纠错模型输出的针对所述待纠错文本的纠正文本。
[0310]
需要说明的是,所述文本纠错模型是根据上述步骤s101-s104的方式进行训练,根据上述步骤s1101-s1103的方式进行测试之后得到的;对于文本纠错模型的具体训练过程以及具体测试过程,可以参照前述各步骤的具体实施过程,重复之处在此不再赘述。
[0311]
结合上述步骤的分析内容可知,目标服务对象所属的服务对象类型分为“先验类型”、“双向验证类型”、“后验类型”这三种情况,下面针对这三种具体类型下,如何确定待纠错文本,本技术实施例还提供了以下的可选实施方案,具体的:
[0312]
(1)、对于目标服务对象属于“先验类型”的情况:
[0313]
此时,文本纠错模型用于为目标服务对象的输入文本数据进行文本纠错服务,基于此,作为一可选实施例,在目标服务对象属于“先验类型”的情况下,可以直接从目标服务对象中,获取目标服务对象的输入文本数据作为需要进行文本纠错处理的待纠错文本。
[0314]
(2)、对于目标服务对象属于“双向验证类型”的情况:
[0315]
此时,文本纠错模型用于为目标服务对象的输入文本数据和/或输出文本数据进行文本纠错服务,基于此,作为一可选实施例,在目标服务对象属于“双向验证类型”的情况下,可以根据目标服务对象当前的具体应用需求,从目标服务对象的输入文本数据和/或输出文本数据中,获取与目标服务对象当前的具体应用需求相匹配的文本数据作为需要进行文本纠错处理的待纠错文本。
[0316]
(3)、对于目标服务对象属于“后验类型”的情况:
[0317]
此时,文本纠错模型用于为目标服务对象的输出文本数据进行文本纠错服务,基于此,作为一可选实施例,在目标服务对象属于“后验类型”的情况下,可以直接从目标服务对象中,获取目标服务对象的输出文本数据作为需要进行文本纠错处理的待纠错文本:
[0318]
具体的,文本纠错模型用于针对待纠错文本中包括的目标文本错误进行纠正;其中,目标文本错误根据目标领域下特有的语义特征和/或文字表达特征确定。例如,若目标领域为游戏领域,则在游戏领域下“妹纸”这一文字表达属于特有的文字表达方式,不需要进行文本纠错处理;若目标领域为教育领域,则在教育领域下“妹纸”这一文字表达属于文字表达错误,需要进行文本纠错处理。
[0319]
s1202,将所述目标服务对象在应用过程中输入或者输出的所述待纠错文本替换为所述纠正文本。
[0320]
需要说明的是,纠正文本与待纠错文本存在差异,也即,文本纠错模型对于待纠错文本进行了文本纠错处理,可以分为以下3种理解方式,其中,以下3种理解方式也相当于在目标领域下执行文本纠错服务的核心纠错理念,具体的:
[0321]
(1)、对于基础的“语义错误”、“文字书写错误”等常规文本错误进行纠错。
[0322]
示例性的说明,仍以目标领域是游戏领域为例,则对于“大天狗”在待纠错文本数
据中以“大天够”这种常规文本错误的形式出现时,则属于本技术中文本纠错模型需要进行文本纠错处理的情形。
[0323]
(2)、虽然不是诸如错别字等常规文本错误,但是文本中部分文字表达较为复杂冗长,可以使用目标领域下的特色文本表达进行替换,以使替换后的文本更简洁且更能体现出目标领域的文本特色。
[0324]
示例性的说明,仍以目标领域是游戏领域为例,若待纠错文本是“游戏x中能够帮助队友玩家及时补充角色生命属性值的游戏角色f”,则根据游戏领域下约定俗成的将具备“能够帮助队友玩家及时补充角色生命属性值”这类技能的游戏角色统称为“奶妈型”游戏角色的这一特色文本表达,则能够将待纠错文本“游戏x中能够帮助队友玩家及时补充角色生命属性值的游戏角色f”修正为“游戏x中的奶妈型游戏角色f”,也属于本技术中文本纠错模型需要进行文本纠错处理的情形。
[0325]
(3)、在(2)的基础上,对于文本中原本的特色文字表达,并不会因为通用领域下文字的常规表达与该特色文本表达之间的矛盾性,而对文本中原本的特色文字表达进行错误纠错。
[0326]
示例性的说明,仍以目标领域是游戏领域为例,若待纠错文本是“游戏x中的奶妈型游戏角色f”,则对于现有的文本纠错模型而言,由于“奶”、“妈”同时出现时一般属于需要被纠错的敏感词汇,则现有的文本纠错模型会对该待纠错文本数据进行文本纠错处理;与之不同的是,该情形反而是本技术中训练好的文本纠错模型不需要进行文本纠错处理的情形。
[0327]
通过本技术实施例提供的上述文本纠错方法,本技术在训练好文本纠错模型之后,可以使用该文本纠错模型对目标服务对象应用过程中涉及的文本数据进行文本纠错处理,有利于提高目标服务对象模型输出结果的准确程度以及目标服务对象的运行效率。
[0328]
基于同一发明构思,本技术实施例中还提供了与上述实施例中文本纠错模型的训练方法对应的文本纠错模型的训练装置,由于本技术实施例中的训练装置解决问题的原理与本技术上述实施例中的训练方法相似,因此,训练装置的实施可以参见前述训练方法的实施,重复之处不再赘述。
[0329]
参照图13所示,图13示出了本技术实施例提供的一种文本纠错模型的训练装置的结构示意图;其中,所述文本纠错模型用于为目标领域下的目标服务对象提供文本纠错服务;所述目标服务对象属于所述目标领域下已收敛的成熟算法模型;所述训练装置包括:
[0330]
第一训练模块1301,用于利用无语义标记的第一训练文本对语言模型进行预训练,得到第一语言表征模型;其中,所述第一训练文本包括所述目标领域下的特定文本数据以及所述目标领域之外的通用文本数据;
[0331]
第二训练模块1302,用于利用所述目标领域下已语义标记的第二训练文本对所述第一语言表征模型进行训练,得到具备目标文本特征识别能力的第二语言表征模型;其中,所述目标文本特征用于表征文本数据在所述目标领域下特有的语义特征和/或文字表达特征;
[0332]
第一处理模块1303,用于将所述目标服务对象在训练过程中输入或者输出的第三训练文本输入至所述第二语言表征模型中,得到所述第二语言表征模型输出的对所述第三训练文本进行文本纠错处理后的更正训练文本;
[0333]
参数调整模块1304,用于根据所述目标服务对象基于所述第三训练文本得到的更正前输出结果以及所述目标服务对象基于所述更正训练文本得到的更正后输出结果,获取所述目标服务对象的模型输出结果在更正前后产生的正向偏差/负向偏差,并根据所述正向偏差/负向偏差对所述第二语言表征模型的模型参数进行调整,得到包括调整好的模型参数的文本纠错模型。
[0334]
在一种可选的实施方式中,第一训练模块1301,具体用于:
[0335]
通过随机采样的方式,对所述第一训练文本中第一目标数量的分词进行掩码遮蔽,得到包括第一目标数量遮蔽词的第一遮蔽训练文本;其中,所述第一目标数量是根据所述随机采样的采样比例与所述第一训练文本中包括的分词数量确定的;
[0336]
将所述第一遮蔽训练文本输入至所述语言模型中,得到所述语言模型输出的包括第一目标数量遮蔽词的预测结果的第一遮蔽预测文本;
[0337]
利用所述第一遮蔽预测文本与未进行掩码遮蔽的所述第一训练文本之间的交叉熵损失,调整所述语言模型的模型参数,直至所述语言模型达到收敛,并将达到收敛后的所述语言模型作为所述第一语言表征模型。
[0338]
在一种可选的实施方式中,第一训练模块1301,具体用于:
[0339]
按照第一预设采样比例,对所述第一训练文本中属于所述特定文本数据的第二目标数量的分词进行掩码遮蔽,得到包括第二目标数量遮蔽词的第二遮蔽训练文本;其中,所述第二目标数量是根据所述第一预设采样比例与所述第一训练文本中属于所述特定文本数据的分词数量确定的;
[0340]
将所述第二遮蔽训练文本输入至所述语言模型中,得到所述语言模型输出的包括第二目标数量遮蔽词的预测结果的第二遮蔽预测文本;
[0341]
利用所述第二遮蔽预测文本与未进行掩码遮蔽的所述第一训练文本之间的交叉熵损失,调整所述语言模型的模型参数,直至所述语言模型达到收敛,并将达到收敛后的所述语言模型作为所述第一语言表征模型。
[0342]
在一种可选的实施方式中,所述利用所述目标领域下已语义标记的第二训练文本对所述第一语言表征模型进行训练至少包括:利用所述目标领域下已语义标记的第二训练文本对所述第一语言表征模型进行粗粒度训练和/或细粒度训练;其中,所述粗粒度训练用于训练所述第一语言表征模型根据所述目标领域下同一语义概念对应的不同文字表达方式,对所述第二训练文本中同一所述语义概念下的不同语句进行分类;所述细粒度训练用于训练所述第一语言表征模型根据所述第二训练文本中每一语句在所述目标领域下的分词序列标记结果,对每一语句在所述目标领域下的文字表达方式进行识别。
[0343]
在一种可选的实施方式中,第二训练模块1302,用于通过以下方法对所述第一语言表征模型进行所述粗粒度训练:
[0344]
针对所述第二训练文本中的任意两个语句,将所述任意两个语句去除已有的所述语义标记后的原始版本语句输入至所述第一语言表征模型中,通过所述第一语言表征模型对所述任意两个语句是否对应所述目标领域下的同一语义概念进行分类预测,得到所述任意两个语句的分类预测结果;
[0345]
根据所述任意两个语句在所述第二训练文本中已有的所述语义标记,确定所述任意两个语句的真实分类结果;其中,所述真实分类结果用于表征所述任意两个语句是否对
应所述目标领域下的同一语义概念;
[0346]
利用所述分类预测结果与所述真实分类结果之间的交叉熵损失,调整所述第一语言表征模型的模型参数,直至所述第一语言表征模型达到收敛。
[0347]
在一种可选的实施方式中,第二训练模块1302,用于通过以下方法对所述第一语言表征模型进行所述细粒度训练:
[0348]
针对所述第二训练文本中的每一语句,将该语句去除已有的所述语义标记后的原始版本语句输入至所述第一语言表征模型中,通过所述第一语言表征模型对该语句在所述目标领域下的句子成分进行分析,得到该语句在所述目标领域下的语句分析结果;其中,所述句子成分至少包括:属于所述目标领域下定义的实体的第一目标分词,以及能够表征所述目标领域下不同语义概念的第二目标分词;
[0349]
根据所述目标领域下定义的多个实体以及该语句中已有的所述语义标记,对该语句中包括的多个分词进行序列标记,得到该语句的分词序列标记结果;
[0350]
利用所述语句分析结果与所述分词序列标记结果之间的交叉熵损失,调整所述第一语言表征模型的模型参数,直至所述第一语言表征模型达到收敛。
[0351]
在一种可选的实施方式中,第一处理模块1303,具体用于:
[0352]
针对所述第三训练文本中的每一语句,将该语句输入至所述第二语言表征模型中,得到所述第二语言表征模型针对该语句的第一输出结果;
[0353]
在检测到所述第一输出结果与该语句存在差异的情况下,确定所述第二语言表征模型对该语句进行了所述文本纠错处理,并将所述第一输出结果作为所述更正训练文本;
[0354]
在检测到所述第一输出结果与该语句相同的情况下,则从所述第三训练文本中获取下一语句,重复上述针对该语句的处理步骤,直至得到所述更正训练文本为止。
[0355]
在一种可选的实施方式中,参数调整模块1304,用于:
[0356]
当所述第三训练文本属于所述目标服务对象在训练过程中输入的文本数据时,将所述第三训练文本输入至所述目标服务对象中,输出得到所述更正前输出结果;
[0357]
将所述更正训练文本输入至所述目标服务对象中,输出得到所述更正后输出结果。
[0358]
在一种可选的实施方式中,在所述将所述第三训练文本输入至所述目标服务对象中,输出得到所述更正前输出结果时,参数调整模块1304,用于:
[0359]
将所述第三训练文本输入至所述目标服务对象中,通过所述目标服务对象对所述第三训练文本的输出类别进行预测,得到所述更正前输出结果;其中,所述更正前输出结果用于表征所述第三训练文本的输出类别属于每一预设类别的概率;
[0360]
在所述将所述更正训练文本输入至所述目标服务对象中,输出得到所述更正后输出结果时,参数调整模块1304,用于:
[0361]
将所述更正训练文本输入至所述目标服务对象中,通过所述目标服务对象对所述更正训练文本的输出类别进行预测,得到所述更正后输出结果;其中,所述更正后输出结果用于表征所述更正训练文本的输出类别属于每一预设类别的概率。
[0362]
在一种可选的实施方式中,在所述获取所述目标服务对象的模型输出结果在更正前后产生的正向偏差/负向偏差时,参数调整模块1304,用于:
[0363]
按照第一偏差计算策略,计算所述目标服务对象的模型输出结果在更正前后产生
的第一偏差;
[0364]
基于所述第一偏差确定所述第一偏差属于所述正向偏差还是属于所述负向偏差。
[0365]
在一种可选的实施方式中,在所述按照第一偏差计算策略,计算所述目标服务对象的模型输出结果在更正前后产生的第一偏差时,参数调整模块1304,用于:
[0366]
计算所述更正后输出结果与所述更正前输出结果在同一预设类别上的概率偏差值,将计算结果作为所述第一偏差。
[0367]
在一种可选的实施方式中,参数调整模块1304,还用于:
[0368]
当所述第三训练文本属于所述目标服务对象在训练过程中输出的文本数据时,将所述第三训练文本作为所述更正前输出结果;将所述更正训练文本作为所述更正后输出结果。
[0369]
在一种可选的实施方式中,在所述获取所述目标服务对象的模型输出结果在更正前后产生的正向偏差/负向偏差时,参数调整模块1304,还用于:
[0370]
按照第二偏差计算策略,计算所述目标服务对象的模型输出结果在更正前后产生的第二偏差;
[0371]
基于所述第二偏差确定所述第二偏差属于所述正向偏差还是属于所述负向偏差。
[0372]
在一种可选的实施方式中,在所述按照第二偏差计算策略,计算所述目标服务对象的模型输出结果在更正前后产生的第二偏差时,参数调整模块1304,具体用于:
[0373]
获取目标输入数据的标准文本识别结果;其中,所述目标输入数据用于表征当所述目标服务对象在训练过程中输出所述第三训练文本时,所述目标服务对象的模型输入数据;
[0374]
计算所述第三训练文本与所述标准文本识别结果之间的文本识别偏差值,将计算结果作为第一文本识别偏差值;
[0375]
计算所述更正训练文本与所述标准文本识别结果之间的文本识别偏差值,将计算结果作为第二文本识别偏差值;
[0376]
计算所述第一文本识别偏差值与所述第二文本识别偏差值之间的差值,将计算结果作为所述第二偏差。
[0377]
在一种可选的实施方式中,在所述根据所述正向偏差/负向偏差对所述第二语言表征模型的模型参数进行调整,得到包括调整好的模型参数的文本纠错模型时,参数调整模块1304,具体用于:
[0378]
在第二语言表征模型的每一个训练周期,获取基于该训练周期进行训练的目标第二语言表征模型得到的目标正向偏差/负向偏差;
[0379]
根据所述目标正向偏差/负向偏差,对所述目标第二语言表征模型的模型参数进行调整,当所述目标第二语言表征模型满足训练截止条件时,得到包括调整好的模型参数的所述文本纠错模型。
[0380]
在一种可选的实施方式中,参数调整模块1304,还用于通过如下方法确定每个训练周期下的目标第二语言表征模型:
[0381]
在到达第二语言表征模型的每一个训练周期时,获取上一个训练周期中训练好的第二语言表征模型,并生成上一个训练周期中未进行训练的镜像第二语言表征模型;
[0382]
在该训练周期下,同步对所述上一个训练周期中训练好的第二语言表征模型和所
述上一个训练周期中未进行训练的镜像第二语言表征模型进行训练,分别得到该训练周期下训练好的优化第二语言表征模型和优化镜像第二语言表征模型;
[0383]
获取该训练周期下基于所述优化第二语言表征模型得到的第一训练偏差和基于所述优化镜像第二语言表征模型得到的第二训练偏差;其中,所述第一训练偏差用于表征该训练周期下基于所述优化第二语言表征模型得到的多个正向偏差/负向偏差的偏差和值;所述第二训练偏差用于表征该训练周期下基于所述优化镜像第二语言表征模型得到的多个正向偏差/负向偏差的偏差和值;
[0384]
若所述第一训练偏差小于所述第二训练偏差,使用所述优化镜像第二语言表征模型替换所述优化第二语言表征模型作为该训练周期的目标第二语言表征模型;
[0385]
若所述第一训练偏差大于所述第二训练偏差,将所述优化第二语言表征模型作为该训练周期的目标第二语言表征模型;同时,并将所述优化镜像第二语言表征模型作为该训练周期中未进行训练的镜像第二语言表征模型。
[0386]
在一种可选的实施方式中,所述训练装置,还包括:
[0387]
第一测试模块,用于将所述目标服务对象在测试过程中输入或者输出的测试文本输入至所述文本纠错模型中,得到所述文本纠错模型输出的对所述测试文本进行文本纠错处理后的更正测试文本;
[0388]
第二测试模块,用于根据所述目标服务对象基于所述测试文本得到的第一测试输出结果以及所述目标服务对象基于所述更正测试文本得到的第二测试输出结果,获取所述目标服务对象的测试输出结果在更正前后产生的测试偏差;其中,所述测试偏差包括属于正数的正向测试偏差以及属于负数的负向测试偏差;
[0389]
第三测试模块,用于根据每次更正前后产生的测试偏差,确定所述文本纠错模型的模型训练效果。
[0390]
通过本技术实施例提供的上述文本纠错模型的训练装置,本技术先使用开放领域下的通用文本数据对语言模型进行基本训练,再使用目标领域下的专有文本数据对语言模型进行微调训练,使得训练后的语言模型具备了识别目标领域下特定文本特征的能力;然后,通过与已收敛的目标服务对象之间进行数据交互的方式,使用目标领域下较为成熟的目标服务对象作为教师模型,来对训练中的文本纠错模型进行交互辅助性训练。通过上述训练装置,本技术可以在不损失泛化文本纠错能力的前提下,训练模型快速适应更加复杂而独特的语言环境,从而提高模型在目标领域下的文本纠错准确率。
[0391]
基于同一发明构思,本技术实施例中还提供了与上述实施例中文本纠错方法对应的文本纠错装置,由于本技术实施例中的文本纠错装置解决问题的原理与本技术上述实施例中的文本纠错方法相似,因此,文本纠错装置的实施可以参见前述文本纠错方法的实施,重复之处不再赘述。
[0392]
参照图14所示,图14示出了本技术实施例提供的一种文本纠错装置的结构示意图;其中,所述文本纠错装置应用于预先训练好的文本纠错模型中;所述文本纠错模型用于为目标领域下的目标服务对象提供文本纠错服务;所述目标服务对象属于所述目标领域下已收敛的成熟算法模型;所述文本纠错装置包括:
[0393]
文本纠错模块1401,用于将所述目标服务对象在应用过程中需要进行文本纠错处理的待纠错文本输入至预先训练好的文本纠错模型中,通过所述文本纠错模型对所述待纠
错文本中包括的目标文本错误进行纠正,得到所述文本纠错模型输出的针对所述待纠错文本的纠正文本;其中,所述目标文本错误根据所述目标领域下特有的语义特征和/或文字表达特征确定;
[0394]
文本替换模块1402,用于将所述目标服务对象在应用过程中输入或者输出的所述待纠错文本替换为所述纠正文本。
[0395]
在一种可选的实施方式中,所述文本纠错模型是根据上述实施例中任一所述可选的实施方式中的训练方法进行训练后得到的;重复之处在此不再赘述。
[0396]
通过本技术实施例提供的上述文本纠错装置,本技术在训练好文本纠错模型之后,可以使用该文本纠错模型对目标服务对象应用过程中涉及的文本数据进行文本纠错处理,有利于提高目标服务对象模型输出结果的准确程度以及目标服务对象的运行效率。
[0397]
如图15所示,本技术实施例提供了一种电子设备1500,用于执行本技术中上述任一所述的文本纠错模型的训练方法的步骤,该设备包括第一存储器1501、第一处理器1502及存储在该第一存储器1501上并可在该第一处理器1502上运行的计算机程序,其中,上述第一处理器1502执行上述计算机程序时实现上述任一所述的文本纠错模型的训练方法的步骤。
[0398]
具体地,上述第一存储器1501和第一处理器1502可以为通用的存储器和处理器,这里不做具体限定,当第一处理器1502运行第一存储器1501存储的计算机程序时,能够执行上述任一所述的文本纠错模型的训练方法的步骤。
[0399]
对应于本技术中的文本纠错模型的训练方法,本技术实施例还提供了一种计算机可读存储介质,该计算机可读存储介质上存储有计算机程序,该计算机程序被处理器运行时执行上述任一所述的文本纠错模型的训练方法的步骤。
[0400]
具体地,该存储介质能够为通用的存储介质,如移动磁盘、硬盘等,该存储介质上的计算机程序被运行时,能够执行上述任一所述的文本纠错模型的训练方法的步骤。
[0401]
如图16所示,本技术实施例提供了另一种电子设备1600,用于执行本技术中上述任一所述的文本纠错方法的步骤,该设备包括第二存储器1601、第二处理器1602及存储在该第二存储器1601上并可在该第二处理器1602上运行的计算机程序,其中,上述第二处理器1602执行上述计算机程序时实现上述任一所述的文本纠错方法的步骤。
[0402]
具体地,上述第二存储器1601和第二处理器1602可以为通用的存储器和处理器,这里不做具体限定,当第二处理器1602运行第二存储器1601存储的计算机程序时,能够执行上述任一所述的文本纠错方法的步骤。
[0403]
对应于本技术中的文本纠错方法,本技术实施例还提供了一种计算机可读存储介质,该计算机可读存储介质上存储有计算机程序,该计算机程序被处理器运行时执行上述任一所述的文本纠错方法的步骤。
[0404]
具体地,该存储介质能够为通用的存储介质,如移动磁盘、硬盘等,该存储介质上的计算机程序被运行时,能够执行上述任一所述的文本纠错方法的步骤。
[0405]
在本技术所提供的实施例中,应该理解到,所揭露系统和方法,可以通过其它的方式实现。以上所描述的系统实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,又例如,多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间
的耦合或直接耦合或通信连接可以是通过一些通信接口,系统或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
[0406]
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
[0407]
另外,在本技术提供的实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。
[0408]
所述功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本技术的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本技术各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:u盘、移动硬盘、只读存储器(read-only memory,rom)、随机存取存储器(random access memory,ram)、磁碟或者光盘等各种可以存储程序代码的介质。
[0409]
应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释,此外,术语“第一”、“第二”、“第三”等仅用于区分描述,而不能理解为指示或暗示相对重要性。
[0410]
最后应说明的是:以上所述实施例,仅为本技术的具体实施方式,用以说明本技术的技术方案,而非对其限制,本技术的保护范围并不局限于此,尽管参照前述实施例对本技术进行了详细的说明,本领域的普通技术人员应当理解:任何熟悉本技术领域的技术人员在本技术揭露的技术范围内,其依然可以对前述实施例所记载的技术方案进行修改或可轻易想到变化,或者对其中部分技术特征进行等同替换;而这些修改、变化或者替换,并不使相应技术方案的本质脱离本技术实施例技术方案的精神和范围。都应涵盖在本技术的保护范围之内。因此,本技术的保护范围应以所述权利要求的保护范围为准。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1