语言模型的训练方法及装置转让专利

申请号 : CN201910739984.8

文献号 : CN110619120B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 王帅唐文忠陈梦东宋嘉钰

申请人 : 北京航空航天大学

摘要 :

本发明实施例提供一种语言模型的训练方法及装置,其中方法包括:获取语料;将语料中的每个字作为目标字,获取每个目标字的笔画序列和义元信息;根据每个目标字的笔画序列、义元信息以及标签训练所述语言模型;其中,所述标签用于表征所述目标字在语料中的后一个字。本发明实施例向语言模型中添加笔画序列和义元信息增加模型的可解释行,使得文本分类有了很大的提升效果,更重要的是,能够在语料库大小远低于现有语料库大小的情况下,提升语言模型的准确性。

权利要求 :

1.一种语言模型的训练方法,其特征在于,包括:获取语料;

将语料中的每个字作为目标字,获取每个目标字的笔画序列和义元信息;

根据每个目标字的笔画序列、义元信息以及标签训练所述语言模型;

其中,所述标签用于表征所述目标字在语料中的后一个字;

所述语言模型包括第一神经网络模型、第二神经网络模型和第三神经网络模型;

相应地,所述根据每个目标字的笔画序列、义元信息以及标签训练所述语言模型,具体为:将每个目标字的笔画序列输入至所述第一神经网络模型,输出每个目标字的笔画特征;

将每个目标字的义元信息,连同每个目标字的笔画特征一并输入至所述第二神经网络模型,输出每个目标字的字向量;

将每个目标字的字向量连同标签一并输入至所述第三神经网络模型,根据所述第三神经网络模型的输出,训练所述语言模型。

2.根据权利要求1所述的语言模型的训练方法,其特征在于,所述获取每个目标字的笔画序列,具体为:获取每种笔画的多维度特征;

获取每个目标字的所有笔画,根据每种笔画的多维度特征,获得所述目标字的笔画序列。

3.根据权利要求1所述的语言模型的训练方法,其特征在于,所述第一神经网络包括若干种不同大小的卷积核,每种卷积核的数目预先确定;

相应地,所述将每个目标字的笔画序列输入至所述第一神经网络模型,输出每个目标字的笔画特征,具体为:对于任意一个目标字,将所述目标字的笔画序列输入至每个卷积核,输出特征映射图;

根据所有卷积核输出的特征映射图,输出每个目标字的笔画特征。

4.根据权利要求3所述的语言模型的训练方法,其特征在于,所述第一神经网络还包括池化层;

所述根据所有卷积核输出的特征映射图,输出每个目标字的笔画特征,具体为:将所有卷积核输出的特征映射图输入至池化层,输出由每个特征映射图中的最大值链接而成的向量,作为目标字的笔画特征。

5.根据权利要求1所述的语言模型的训练方法,其特征在于,所述第二神经网络模型包括平均策略层和第一拼接层;

相应地,所述将每个目标字的义元信息,连同每个目标字的笔画特征一并输入至所述第二神经网络模型,输出每个目标字的字向量,具体为:将每个目标字的义元信息输入所述平均策略层,输出所述目标字的所有意思信息以及目标字的第一语义信息,所述第一语义信息为目标字的所有意思信息的平均值;

将所述每个目标字的第一语义信息与笔画特征输入至第一拼接层进行拼接,获得所述每个目标字的字向量。

6.根据权利要求1所述的语言模型的训练方法,其特征在于,所述第二神经网络模型包括双向LSTM层、关注策略层以及第二拼接层;

相应地,所述将每个目标字的义元信息,连同每个目标字的笔画特征一并输入至所述第二神经网络模型,输出每个目标字的字向量,具体为:将所有目标字的笔画特征输入至所述双向LSTM层,输出每个目标字的上下文信息;

将每个目标字的义元信息以及上下文信息输入关注策略层,输出所述每个目标字的第二语义信息;

将每个目标字的第二语义信息和笔画特征输入至第二拼接层进行拼接,输出每个目标字的字向量。

7.一种语言模型的训练装置,其特征在于,包括:语料获取模块,用于获取语料;

信息获取模块,用于将语料中的每个字作为目标字,获取每个目标字的笔画序列和义元信息;

训练模块,用于根据每个目标字的笔画序列、义元信息以及标签训练所述语言模型;其中,所述标签用于表征所述目标字在语料中的后一个字;

其中,所述语言模型包括第一神经网络模型、第二神经网络模型和第三神经网络模型;

相应地,所述训练模块,具体用于:

将每个目标字的笔画序列输入至所述第一神经网络模型,输出每个目标字的笔画特征;

将每个目标字的义元信息,连同每个目标字的笔画特征一并输入至所述第二神经网络模型,输出每个目标字的字向量;

将每个目标字的字向量连同标签一并输入至所述第三神经网络模型,根据所述第三神经网络模型的输出,训练所述语言模型。

8.一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述程序时实现如权利要求1至6任一项所述语言模型的训练方法的步骤。

9.一种非暂态计算机可读存储介质,其特征在于,所述非暂态计算机可读存储介质存储计算机指令,所述计算机指令使所述计算机执行如权利要求1至6中任意一项所述的语言模型的训练方法。

说明书 :

语言模型的训练方法及装置

技术领域

[0001] 本发明涉及计算机技术领域,更具体地,涉及语言模型的训练方法及装置。

背景技术

[0002] 语言模型(language model)一般用于对一段文本的概率进行估计,即,描述一个字符串属于自然语言的概率。语言模型可以使用者许多自然语言处理方面的应用,例如语言识别、文本分类、句法分析等等。
[0003] 现有的语言模型最开始使用language model生成词向量,并利用它进行文本处理任务的是ELMo模型,它利用了多层双向LSTM去抓取语义信息,它认为不同层能够捕获不一样的文本语义信息,因此最终的词向量除了最后一层隐藏层的输出外还包含将各个层的参数加入进去。用这种方法得到的词向量信息去做各种文本处理任务去得了显著的提升。另一种用类似方式训练向量的模型是Bert,该模型分别有两种大小,一种是用了12层transformer blocks,另一种用了24层的transformer blocks去进行多任务训练,之后在文本训练任务过程中还进行了参数微调。这两个模型都运用了深层的网络构建和大量的预训练文本去帮助模型获取更丰富的语义知识,其中,ELMo用的是1B Word Benchmark(1Billion Word Language Model Benchmark)语料库(该语料库拥有近10亿字的培训数据);Bert用的是English Wikipedia(2500M words)和BooksCorpus(800M words)。
[0004] 由上述内容可知,现有的语言模型训练通常需要海量语料,现有技术中语料的数量严重制约语言模型的性能。

发明内容

[0005] 本发明实施例提供一种克服上述问题或者至少部分地解决上述问题的语言模型的训练方法及装置。
[0006] 第一个方面,本发明实施例提供一种语言模型的训练方法,包括:
[0007] 获取语料;
[0008] 将语料中的每个字作为目标字,获取每个目标字的笔画序列和义元信息;
[0009] 根据每个目标字的笔画序列、义元信息以及标签训练所述语言模型;
[0010] 其中,所述标签用于表征所述目标字在语料中的后一个字。
[0011] 第二个方面,本发明实施例提供一种语言模型的训练装置,包括:
[0012] 语料获取模块,用于获取语料;
[0013] 信息获取模块,用于将语料中的每个字作为目标字,获取每个目标字的笔画序列和义元信息;
[0014] 训练模块,用于根据每个目标字的笔画序列、义元信息以及标签训练所述语言模型;其中,所述标签用于表征所述目标字在语料中的后一个字。
[0015] 第三方面,本发明实施例提供一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现如第一方面所提供的方法的步骤。
[0016] 第四方面,本发明实施例提供一种非暂态计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现如第一方面所提供的方法的步骤。
[0017] 本发明实施例提供的语言模型的训练方法和装置,通过引入语料中每个字的笔画序列和义元信息作物输入数据对语言模型进行训练,由于笔画序列能够在不需要预训练的情况下组成字的向量表达,而义元信息是字的最小语义单元,经验证,本发明实施例向语言模型中添加笔画序列和义元信息增加模型的可解释行,使得文本分类有了很大的提升效果,更重要的是,能够在语料库大小远低于现有语料库大小的情况下,提升语言模型的准确性。

附图说明

[0018] 为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
[0019] 图1为本发明实施例的语言模型的训练方法的流程示意图;
[0020] 图2为本发明实施例的含义信息的示意图;
[0021] 图3为本发明另一个实施例训练所述语言模型的流程示意图;
[0022] 图4为本发明实施例提供的语言模型的训练装置的结构示意图;
[0023] 图5为本发明实施例提供的电子设备的实体结构示意图。

具体实施方式

[0024] 为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
[0025] 图1为本发明实施例的语言模型的训练方法的流程示意图,如图1所示,包括S101、S102和S103,具体地,
[0026] S101、获取语料。
[0027] 语料作为语言模型的训练集,可以是各领域的语料,例如新闻报道中的语料、网页爬取中的语料、购物网站中的语料。优选地,本发明实施例采用中文维基百科的数据作为语料,其优势是更加规范。需要注意的是,本发明实施例的语料大小只需要几百MB(Mbyte,百兆字节),远远小于现有技术中通常需要几十GB(Gigabyte,千兆字节)甚至数TB(TeraByte,太字节)。本发明实施例中的语料中的文字为汉字。
[0028] S102、将语料中的每个字作为目标字,获取每个目标字的笔画序列和义元信息。
[0029] 在本发明实施例中,为了能够根据语料中每一字的笔画序列和义元信息,对语言模型进行训练,首先可以将语料中的每一字定义为目标字,然后通过后续步骤对每一目标字进行处理,以根据处理结果实现对语言模型的训练。
[0030] 与拉丁字体不同,汉字是象形文字,能够通过字结构表达丰富的信息。汉字由部首和几个类似部首的组成部分组成,然而这些汉字的组成部分又由笔画组成。现有技术通常采用汉字的部首来提高其准确性,包括中文命名实体识别,中文文本分类。本发明实施例之所以不用部首信息训练神经网络,是因为申请人发现部首只有利于方便查询汉字,并且有些部首并不能传递出有用的结构语义信息,因此,本发明实施例采用了汉字部首和其组成部分以外的笔画信息,以获得字的结构信息,并在文本分类方面取得了很好的表现。
[0031] 笔画通常是指组成文字且不间断的各种形状的点和线,在汉字体系下,笔画包括横(一)、竖(丨)、撇(丿)、点/捺(丶)、折(乛)等,通过对每个笔画对应一个数值,那么结合书写顺序就可以用一个数字序列代表一个字。
[0032] 例如,将横用数字1表示,竖用数字2表示,撇用数字3表示,点或者捺用数字4表示,折用数字5表示,那么“歪”可用数字序列“132412121”进行表示。本发明实施例利用汉字笔画获取汉字的结构的方式,对任何汉字均适用,不需要进行预先的训练即可根据笔画和书写顺序组成一个字的相邻表达。这种初始字向量的方式与字在语料中的上下文信息无关,并且能够获得字的结构信息。
[0033] 义元(sememe)是最小语义单位。无论一个词由哪些字组成,词的基本语义信息都会和构成这个词的字的义元有关。因此,义元可以用作解释信息来理解不同的单词。图2为本发明实施例的含义信息的示意图,如图2所示,字的含义信息具有三层架构,由上到下分别为语义(character),意思(concept)和义元,以图2中的“他”为例,“他”具有两种意思,一种意思为男(性)(英文翻译为:he),另一种意思为其他(英文翻译为:other),当意思为男(性)时,又包括了3种义元,第一种义元为人(英文翻译为:human),第二种义元为他(英文翻译为:he),第三种义元为男性(英文翻译为:man)。当意思为其他时,义元只有一种,即其他(英文翻译为:other)。由图2可知,通过对一个文字义元信息的挖掘,能够丰富对文字语义的解释,经验证发现对语言模型的可解释性具有显著提升,并且由于一个文字的义元信息的数量较多,能够大幅降低语料库的大小。
[0034] S103、根据每个目标字的笔画序列、义元信息以及标签训练所述语言模型;其中,所述标签用于表征所述目标字在语料中的后一个字。
[0035] 在本实施例中,通过步骤S102得到语料中每个字的笔画序列和义元信息,对语言模型进行训练,即可以将笔画序列和义元信息共同作为输入数据,输入至语言模型对其进行训练,具体地,可以将每个目标字的笔画序列和义元信息转换为编码向量,结合目标字的标签共同输入至语言模型,基于输出结果对模型参数进行更新,从而完成对语言模型的本轮训练。
[0036] 本发明实施例通过引入语料中每个字的笔画序列和义元信息作物输入数据对语言模型进行训练,由于笔画序列能够在不需要预训练的情况下组成字的向量表达,而义元信息是字的最小语义单元,经验证,本发明实施例向语言模型中添加笔画序列和义元信息增加模型的可解释行,使得文本分类有了很大的提升效果,更重要的是,能够在语料库大小远低于现有语料库大小的情况下,提升语言模型的准确性。
[0037] 通常情况下,可以利用训练数据中的每一样本文本,分别通过上述步骤S103对语言模型进行一轮训练,通过多轮训练后得到最终的语言模型。需要说明的是,本实施例将对上述步骤S103的具体实现方式进行介绍,并对使用的语料(该语料中的各个字)进行模型训练的训练方式进行说明,使用不同语料的训练方式与之类似,不再一一赘述。
[0038] 具体地,本发明实施例的语言模型包括第一神经网络模型、第二神经网络模型和第三神经网络模型;
[0039] 图3为本发明另一个实施例训练语言模型的流程示意图,如图3所示,该流程包括以下步骤:
[0040] S201、将每个目标字的笔画序列输入至所述第一神经网络模型,输出每个目标字的笔画特征。
[0041] 在本步骤中,由于字的结构与语料的上下文无关,因此,每一个目标字的笔画序列输入至第一神经网络模型,输出一个目标字的笔画特征。需要注意的是,在笔画特征的获取过程中,由于并不需要输入每个特征字的标签,因此第一神经网络模型是无监督式学习网络。
[0042] S202、将每个目标字的义元信息,连同每个目标字的笔画特征一并输入至所述第二神经网络模型,输出每个目标字的字向量。
[0043] 在本步骤中,为了获得每个目标字在语料中的字向量,通过将义元信息和笔画特征进行融合,使得目标字的字向量既考虑字的结构信息,又考虑字的语义信息,从而增加语言解析的精确度。需要注意的是,在字向量的获取过程中,同样不需要输入每个特征字的标签,因此第二神经网络模型也是无监督式学习网络。
[0044] S203、将每个目标字的字向量连同标签一并输入至所述第三神经网络模型,根据所述第三神经网络模型的输出,训练所述语言模型。
[0045] 具体地,第三神经网络模型的输出结果用于表征预测的每个目标字在语料中下一个字的信息,通过将输出结果与标签进行比对,即可获知预测的准确度,从而进行参数的反向传播调整,显然,反向传播调整的范围包括第一神经网络、第二神经网络以及第三神经网络,这样仅将第三神经网络作为监督式学习网络,实现三个神经网络的同步训练,提高了训练效率。
[0046] 在上述各实施例的基础上,作为一种可选实施例,本发明实施例获取每个目标字的笔画序列的方法,具体包括步骤A1和A2:
[0047] A1、获取每种笔画的多维度特征。
[0048] A2、获取每个目标字的所有笔画,根据每种笔画的多维度特征,获得所述目标字的笔画序列。
[0049] 该方法首先初始化每种笔画的维度大小,例如将每种笔画设置为一个大小为N维度的特征,N为正整数,然后获取每个目标字的所有笔画,根据每种笔画的多维度特征,获得所述目标字的笔画序列。例如,汉字“大”的笔画顺序为:横、撇、捺,预先设置横、撇、捺的维度大小均为3,横的多维度特征为(1,0,0),撇的多维度特征为(0,1,0),捺的多维度特征为(0,0,1),那么汉字“大”的笔画序列可以表示为:
[0050]
[0051] 可以理解的是,在实际应用中,笔画的维度也可设置为其他数值,特征值也可设置为其他形式。
[0052] 在上述各实施例的基础上,作为一种可选实施例,所述第一神经网络包括若干种不同大小的卷积核,每种卷积核的数目预先确定。例如,在一个可选实施例中,卷积核的大小有6种,分别为1、2、3、4、5、6,而每种卷积核的数目分别为25、50、75、100、100、100。可以理解的是,卷积核的大小必然不超过笔画的初始维度大小。需要说明的是,本发明实施例在调整参数的过程中发现,当卷积核的大小越大时,将卷积核的数目相应增多,能够提高语言模型的训练效果,但是当卷积核的大小大于3时,卷积核的数目增多不会明显提高训练效果,反而会增加训练时间,当卷积核的大小有6种,分别为1、2、3、4、5、6,而每种卷积核的数目分别为25、50、75、100、100、100是,神经网络的训练效果是最好的。
[0053] 相应地,所述将每个目标字的笔画序列输入至所述第一神经网络模型,输出每个目标字的笔画特征,具体包括步骤B1和B2:
[0054] B1、对于任意一个目标字,将所述目标字的笔画序列输入至每个卷积核,输出特征映射图。
[0055] 由上述对汉字“大”的笔画序列可知,笔画序列可理解成一个二维图像,序列中的每个元素可以理解为一个像素,卷积核的作用就如同一个滑动窗口,根据当前的对每个位置的权重,对滑动窗口中的像素进行加权平均,这个窗口经过从上到下从左到右的滑动之后,就可以构成一个新的二维数组,即一个特征映射图。卷积操作能够大大地降低了参数数量,从而可以避免过拟合问题。本发明实施例中特征映射图的数量为所有卷积核的数量之和。
[0056] B2、根据所有卷积核输出的特征映射图,输出每个目标字的笔画特征。
[0057] 在一种可选的实现方式中,可以以所有特征映射图进行融合,作为目标字的笔画特征,通过将各特征映射图的大小进行统一,然后逐个连接,即为笔画特征,比如特征映射图的大小统一为5*3,特征映射图的个数为8,则笔画特征的大小为40*3。
[0058] 在另一种可选的实现方式中,可以从特征映射图中选择一个特定的元素,然后再对所有特征映射图中的特定元素进行融合,作为笔画特征,这种实现方式相比上一种实现方式能够降低笔画特征的维度,从而减少训练的计算量。可选的特定元素可以为特征映射图中的最大值元素,从而更好地表征特征映射图的特点。相应地,本发明实施例的第一神经网络还设置池化层,池化层设置在所有卷积核之后,用于将每个特征映射图中的最大值链接成向量,作为目标字的笔画特征。
[0059] 在上述各实施例的基础上,作为一种可选实施例,本发明在通过第二神经网络获得字向量的过程中,采用平均优化策略(average)实现。具体地,第二神经网络模型包括平均策略层和第一拼接层。
[0060] 相应地,所述将每个目标字的义元信息,连同每个目标字的笔画特征一并输入至所述第二神经网络模型,输出每个目标字的字向量,具体包括步骤S301和步骤S302:
[0061] 步骤S301、将每个目标字的义元信息输入所述平均策略层,输出所述目标字的所有意思信息以及目标字的第一语义信息,所述第一语义信息为目标字的所有意思信息的平均值。
[0062] 由图2可知,每一个目标字包含了几个意思(q),而一个意思又包含了几个义元(sememe),所以本发明实施例的平均策略层,用于将一个目标字的每个意思作为目标意思,计算目标意思的所有义元信息的平均值,作为目标意思的意思信息,然后再将所有目标意思的意思信息的平均值作为目标字的第一语义信息。
[0063] 步骤S302、将所述每个目标字的第一语义信息与笔画特征输入至第一拼接层进行拼接,获得所述每个目标字的字向量。
[0064] 在步骤S302中,第一拼接层用于将第一语义信息和笔画特征进行拼接,例如,若第一语义信息为1*N大小的特征向量,笔画特征为1*N大小的特征向量,则拼接后的特征向量为1*(M+N)大小。
[0065] 在上述各实施例的基础上,作为一种可选实施例,本发明在通过第二神经网络获得字向量的过程中,采用关注机制(attention)实现。具体地,第二神经网络模型包括双向LSTM层、关注策略层以及第二拼接层。
[0066] 相应地,所述将每个目标字的义元信息,连同每个目标字的笔画特征一并输入至所述第二神经网络模型,输出每个目标字的字向量,具体包括步骤S401、步骤S402和步骤S403:
[0067] 步骤S401、将所有目标字的笔画特征输入至所述双向LSTM层,输出每个目标字的上下文信息。
[0068] 在步骤S401中,本发明实施例采用双向LSTM获取目标字的上下文信息,可用以下公式表示:
[0069]
[0070] hk表示目标字k的上下文信息,由目标字k的向前隐含层输出 和向后隐含层输出组成,Ck表示目标字k的笔画特征。双向LSTM(Long Short Term Memory,长短期记忆)的运算原理属于本领域的公知常识,在此不再赘述。
[0071] 步骤S402、将每个目标字的义元信息以及上下文信息输入关注策略层,输出所述每个目标字的第二语义信息。
[0072] 在本步骤中,关注策略层具体用于:
[0073] 首先根据关注机制(attention)计算每个意思的权重值,可用以下公式表达:
[0074]
[0075] 其中, 表示目标字k的第i个意思的权重值, 表示目标字k的第i个意思,h′k表示目标字k的上下文信息的转置。每个意思的意思信息可以通过计算该意思的所有义元信息的平均值获得。
[0076] 然后根据每个意思的权重值和意思信息,获得第二语义信息,可用以下公式表达:
[0077]
[0078] 其中, 表示目标字k的第二语义信息, 为目标字k具有的意思总数。
[0079] 步骤S403、将每个目标字的第二语义信息和笔画特征输入至第二拼接层进行拼接,输出每个目标字的字向量。
[0080] 在步骤S403中,第二拼接层用于将第二语义信息和笔画特征进行拼接,例如,若第二语义信息为1*N大小的特征向量,笔画特征为1*N大小的特征向量,则拼接后的特征向量为1*(M+N)大小。本步骤获得的字向量根据上下文信息的不同而有不同的倾向性。
[0081] 在一个可选实施例中,第三神经网络选择单向LSTM神经网络。经验证,最后一个神经网络选择单向LSTM神经网络能够防止梯度爆炸。
[0082] 本发明实施例在训练之前,首先设置单向LSTM神经网络、双向LSTM神经网络的隐藏状态,同时设置dropout参数、初始学习率以及训练的最大迭代数,在反向传递过程中,利用随机梯度下降算法(SGD)进行参数的优化。
[0083] 图4为本发明实施例提供的语言模型的训练装置的结构示意图,如图4所示,该语言模型的训练装置包括:语料获取模块401、信息获取模块402和训练模块403,其中:
[0084] 语料获取模块401,用于获取语料;
[0085] 信息获取模块402,用于将语料中的每个字作为目标字,获取每个目标字的笔画序列和义元信息;
[0086] 训练模块403,用于根据每个目标字的笔画序列、义元信息以及标签训练所述语言模型;其中,所述标签用于表征所述目标字在语料中的后一个字。
[0087] 本发明实施例提供的语言模型的训练装置,具体执行上述各语言模型的训练方法实施例流程,具体请详见上述各语言模型的训练方法实施例的内容,在此不再赘述。本发明实施例提供的语言模型的训练装置通过引入语料中每个字的笔画序列和义元信息作物输入数据对语言模型进行训练,由于笔画序列能够在不需要预训练的情况下组成字的向量表达,而义元信息是字的最小语义单元,经验证,本发明实施例向语言模型中添加笔画序列和义元信息增加模型的可解释行,使得文本分类有了很大的提升效果,更重要的是,能够在语料库大小远低于现有语料库大小的情况下,提升语言模型的准确性。
[0088] 图5为本发明实施例提供的电子设备的实体结构示意图,如图5所示,该电子设备可以包括:处理器(processor)510、通信接口(Communications Interface)520、存储器(memory)530和通信总线540,其中,处理器510,通信接口520,存储器530通过通信总线540完成相互间的通信。处理器510可以调用存储在存储器530上并可在处理器510上运行的计算机程序,以执行上述各实施例提供的语言模型的训练方法,例如包括:获取语料;将语料中的每个字作为目标字,获取每个目标字的笔画序列和义元信息;根据每个目标字的笔画序列、义元信息以及标签训练所述语言模型;其中,所述标签用于表征所述目标字在语料中的后一个字。
[0089] 此外,上述的存储器530中的逻辑指令可以通过软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明实施例的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
[0090] 本发明实施例还提供一种非暂态计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现以执行上述各实施例提供的语言模型的训练方法,例如包括:获取语料;将语料中的每个字作为目标字,获取每个目标字的笔画序列和义元信息;根据每个目标字的笔画序列、义元信息以及标签训练所述语言模型;其中,所述标签用于表征所述目标字在语料中的后一个字。
[0091] 需要说明的是,本发明实施例将对采用现有技术提供的模型输入数据以及采用本发明实施例提供的模型输入数据进行模型训练后的模型效果进行介绍。模型效果以文本分类效果进行表征,对于文本分类的类型采用了情感分析和文档分类两种一共有四个数据集,分别是大众点评二分类数据集(数据集1),京东五分类数据集(数据集2),京东二分类数据集(数据集3)和凤凰新闻五分类数据集(数据集4)。这些数据集的来源不同,有用户评论还有新闻报道。表1为本发明实施例与现有技术在文本分类效果上的对比结果表。
[0092]Model 数据集1 数据集2 数据集3 数据集4
char N-gram 76.41 51.82 91.08 78.48
cord N-gram 76.97 51.70 91.18 81.70
char-Embednet 76.40 51.72 90.59 82.99
word-Embednet 75.45 49.95 89.63 79.18
char-fastText 77.66 52.01 91.28 83.69
word-fastText 77.38 51.89 90.89 83.35
Glyce-Char 78.46 54.24 91.76 85.76
attention 88.56 86.68 96.37 90.34
average 87.84 85.43 95.65 86.17
[0093] 表1本发明实施例与现有技术在文本分类效果上的对比结果表
[0094] 在表1中,第一列中由上到下前7行表示现有的7种训练语言模型的方法——前六种方法都是来自于论文《Which Encoding is the Best for Text Classification in Chinese,English,Japanese and Korean》做的六种对比实验,其中,char和word分别指的是用字级别和词级别做的文本分类对比,即用了三种方法N-gram、EmbedNet和fastText在字和词的级别上做文本分类,第七种方法Glyce来自于论文《Glyce:Glyph-vectors for Chinese Character Representations》,第一列的第8行表示本发明采用注意力机制的训练方法,第9行表示采用本发明平均优化策略的训练方法,由表1可知,本发明提供的两种训练方法均显著优于现有技术。
[0095] 以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性的劳动的情况下,即可以理解并实施。
[0096] 通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到各实施方式可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件。基于这样的理解,上述技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行各个实施例或者实施例的某些部分所述的方法。
[0097] 最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。