本发明涉及互联网技术领域,尤其涉及一种基于卷积网络在中文分词任务上的领域迁移。
背景技术:
随着计算机技术发展,计算机算力逐渐加强,机器学习、深度学习技术进一步得到发展,自然语言处理逐渐应用到各个场景,例如利用文本分类技术在电影评论、购物的商品评论中挖掘用户偏好、利用摘要生成技术对新闻等文章进行归纳总结,或是通过机器翻译技术,实现同步翻译等。大量的应用场景需要技术,同时随着国内互联网用户的增加,其产生的信息也越来越多。对于海量数据,自动化处理文本信息更凸显其重要意义。因此,由于自然语言处理技术的不可代替及其对于文本处理的超高效率,受到社会广泛关注。对于国内而言,中文的处理与我们息息相关。中文自动分词技术,作为自然语言处理的基础任务,其发展对于其他自然语言处理更为关键。
中文分词任务即将中文句子或段落,按照词语进行分割,从而使得在更高层的自然语言处理任务中,对于中文的处理能够通过词语带来的更多信息提升性能。之所以要中文分词,是因为现代汉语中,一个含有具体意义的词语通常由两个或两个以上字符表示,而不能通过简单的中文字符来理解。在中文中经常出现同一个字符在不同词语中的意义不同的情况。因此,在进行其他自然语言处理任务的时候,需要且有必要先对中文进行分词处理。特别对于词性标注、命名实体识别等偏低层的自然语言处理任务,其对于分词处理的依赖更大。中文分词的准确性将直接影响到这些任务性能的优劣。
中文分词任务即通过某种算法,使计算机自动地对汉语文本进行处理,将词与词分割。用于中文分词的传统方法包括正向最大匹配、反向最大匹配算法、加入概率消歧的分词算法、条件随机场、结构化感知器及最大熵模型等。近年来发展的深度学习方法中前馈神经网络、长短期记忆神经网络、卷积神经网络都被应用到中文分词任务上并在几个大型的语料库上获得了较高的准确率。
神经网络方法需要利用大规模标注的数据。然而现有的大规模语料数据只包含了新闻领域方面,而在专利、文学以及医学领域的大规模语料几乎没有,这也导致了现有的神经网络技术难以在这些领域上取得较高的准确率。因此,近年来领域迁移的方法被应用到中文分词任务上,旨在通过利用现有大规模标注语料来帮助提升没有标注语料或是只有少量标注语料领域的中文分词准确率。在领域迁移中,具有大规模标注的语料被称为源领域数据,没有标注或只有少量标注的语料被称为目标领域数据。同时,利用无标注的目标领域数据的领域迁移被称为无监督领域迁移,利用少量标注的目标领域数据的领域迁移被称为半监督领域迁移。
现有用于中文分词的领域迁移技术,一部分方法是基于词典,利用训练好的词向量和字向量实现领域迁移;另一部分方法则是通过改变模型直接对可迁移信息进行建模,通过提取大规模标注语料中可迁移特征信息,实现领域迁移。
如图1所示,现有技术之一的“learningtransferablefeatureswithdeepadaptationnetworks”文章中,提到用深度自适应网络(deepadaptationnetworks)解决在图片分类的领域迁移问题:
首先,利用含有大量图片数据的image数据集对网络进行预训练;其次,利用源领域标注数据或者是源领域标注数据和少量目标领域标注数据对网络进行微调,微调中,前三层作为提取一般特征的卷积层参数固定,后两层作为提取领域含有领域特定特征的卷积层,进行微调,最后三层全连接层通过mk-mmd(multi-kernelmaximummeandiscrepancy)进行自适应。
如图2所示,现有技术之二的“neuralaggregationnetworkforvideofacerecognition”文章提出通过注意力机制(attention)解决视频中人脸识别问题的技术方案,
首先,将视频中的每一帧通过卷积神经网络得到人脸特征表示,其中卷积神经网络使用googlenet,为每一帧图片产生128维特征。其次,特征作为注意力模块的输入,输入到第一个注意力模块中,其中,注意力模块中可学习参数q,及输出的聚合特征表示如下所示:
ek=qtfk式(2-1)
其中fk为cnn提取的每一帧图片的特征,q为可学习的核,ek为每一帧图片的未归一化权重分配。
其中ak为每一帧图片归一化权重分配。
r=∑kakfk式(2-3)
其中,r为与图片顺序无关的,根据注意力核加权之后的聚合特征。
第三,经过一个attention模块的聚合特征,紧接着进入第二个attention模块,进行进一步的特征聚合,第二个attention模块的可学习核计算如下:
q1=tanh(wr0+b)式(2-4)
其中,w为权重矩阵,b为偏置项,二者皆为可学习的参数,tanh为双曲正切非线性函数,r0表示第一个attention模块的输出,q1第二个attention模块的核,聚合特征r1的计算过程同式(2-1)、式(2-2)及式(2-3)。
最后,通过平均对比损失函数训练网络,实现识别任务。
发明人在研究的过程中发现:对于“learningtransferablefeatureswithdeepadaptationnetworks”、“neuralaggregationnetworkforvideofacerecognition”现有技术中:
1、针对图像识别任务,不适用于自然语言处理的序列标注,不适用于中文分词任务;
2、仅考虑了传统的mmd方法,未考虑计算mmd过程中,源领域可能存在的不相关或是产生负面效果的样本;
由于上述技术问题导致于现有技术中存在以下缺点:
1、传统mmd方法直接应用于中文分词任务效果不佳;
2、由于源领域样本的不同,难以在计算mmd的过程中,只提取对目标领域有益的样本。
技术实现要素:
为了解决上述技术问题,本发明提供了一种基于卷积网络在中文分词任务上的领域迁移方法,基于对传统mmd方法的改进,使其能应用于自然语言处理中的序列标注任务,同时,通过加入attention模块,使得在mmd计算中,模型能够自适应选择对迁移到目标数据有益的源领域样本,抑制噪声,提高了领域迁移在中文分词任务上的效果。
本发明提供了一种基于卷积网络在中文分词任务上的领域迁移方法,训练中没有标注的目标领域语料数据时,该方法包括:
步骤一、将语料划分为源领域数据和目标领域数据,将含有句子数量较少的领域的数据,通过重复利用,补充到与另一领域句子数量相同;
步骤二、将源领域和目标领域的中文字符,利用相同字典,映射为向量表示,输入的待分词文本即数值化为每个字符向量列连接而成的数值矩阵;
步骤三、将数值矩阵输入特征卷积层提取得到源领域特征表示以及目标领域特征表示;
步骤四、将提取的源领域特征表示输入注意力模块,计算得到权重向量,权重向量点乘提取的源领域特征表示得到加权的源领域特征表示;
步骤五、将加权的源领域特征表示和提取的目标领域特征表示分别作为计算mmd的两个输入,得到mmd计算结果;
步骤六、将提取的源领域特征表示输入分类卷积层得到每一个字符的预测标签概率;
步骤七、将每个字符的标签概率和真实的标签概率输入条件随机场(conditionalrandomfield,crf),计算似然概率;
步骤八、损失函数由似然概率的负对数和mmd计算结果加权求和,mmd计算结果作为正则项,由反向传播算法(backpropagation,bp)计算更新网络各层权重。
进一步的,训练中含有少量标注的目标领域语料数据时,将步骤六予以替换,替换如下:
步骤六、将提取的源领域特征表示及少量含有真实标签的目标领域特征表示输入分类卷积层得到每一个字符的预测标签概率。
进一步的,非训练情况下,中文分词时,将步骤一到步骤八予以替换,替换如下:
步骤一、将需要分词的目标领域数据作为神经网络的输入;
步骤二、将需要分词的目标领域数据的中文字符,利用与训练过程中相同的字典,映射为向量表示;
步骤三、将向量表示输入特征卷积层,提取得到特征表示;
步骤四、将特征表示输入分类卷积层得到每个字符的预测标签概率;
步骤五、将每个字符的预测标签概率输入维特比(viterbi)算法解码得到最优序列,完成分词。
进一步的,所述步骤二中,将源领域和目标领域的中文字符,利用相同字典,映射为向量表示,包括:
随机初始化的映射字典,采用字嵌入方法,为相同的字符随机初始化相同的稠密向量表示,再将语料数据的每一个中文字符通过映射字典映射为稠密向量表示;
训练好的映射字典,利用词袋模型skip-gram或continuousbag-of-words(cbow),训练得到包含一定词语信息的向量表示,将语料数据的每一个中文字符通过映射字典映射为稠密向量表示。
进一步的,所述步骤三中,将数值矩阵输入特征卷积层提取得到特征表示,计算如下:
其中,m∈rd×w为窗口大小为w的卷积核,d与输入矩阵x的行数相同,
其中,线性整流函数relu公式如下:
f(x)=max(0,x)
其中,对于上述输入为向量或是矩阵的情况,x为向量或矩阵中的元素。
进一步的,所述步骤四中,将提取的源领域特征表示输入注意力模块,计算得到权重向量,权重向量点乘提取的源领域特征表示得到加权的源领域特征表示,计算如下:
其中,k∈ri×l×d为权重矩阵,i表示输入神经网络句子的数量,l表示输入句子固定长度,d为特征表示的维度,⊙表示点积,y为特征卷积层提取的i个特征表示连接而成,g表示先将点积结果的第二和第三维度进行平均计算,然后做softmax计算,
其中,softmax计算,表示如下:
其中,x为向量,xi为向量中第i个元素。
进一步的,所述步骤五中,mmd计算公式如下:
其中,
其中,高斯核函数计算如下:
其中,x和z为高斯核的两个输入,σ为高斯核带宽。
进一步的,所述步骤六中,经过分类卷积层提取到的每一个字符的预测标签概率计算过程与特征卷积层一致,但将特征卷积层使用的relu非线性函数f替换为softmax计算。
进一步的,所述步骤七中,似然概率计算过程如下:
其中,s和y*分别表示输入句子和真实情况该句子标签序列,score表示将每一个字符的预测标签概率通过一个转移矩阵计算得到句子的预测标签概率,y′为所有可能句子的预测标签概率;
其中,score函数计算如下:
其中,aij为转移矩阵,s(·)为神经网络预测单个字符的标签概率,n为序列长度。
进一步的,所述步骤八中,损失函数计算如下:
其中,λ表示正则化项mmd的权重。
本发明提供的一种基于卷积网络在中文分词任务上的领域迁移方法,将传统的mmd方法应用于序列标注任务上,实现了一种在中文分词任务上,特征层面的领域迁移,帮助拓宽了在自然语言处理中序列标注任务上领域迁移方法的应用;通过增加注意力机制模块,使得模型能够自适应地选择用于mmd计算的源领域样本,抑制噪声,实现在特征层面更高效的领域迁移;通过利用现有大规模标注数据,提升在小语料集上的中文分词准确率,缓解人工标注语料的压力。
附图说明
图1为解决图像识别任务的深度适应网络(deepadaptationnetwork)示意图;
图2为神经聚合网络(neuralaggregationnetwork)示意图;
图3为实施例一的流程图;
图4为本发明提供的一种基于卷积网络在中文分词任务上的领域迁移方法流程图。
具体实施方式
为了使本技术领域的人员更好地理解本发明方案,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分的实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本发明保护的范围。其中,本实施例中出现的缩略语和关键术语定义如下:
bp:backpropagation反向传播;
cbow:continuousbag-of-words连续词袋模型;
cnn:convolutionalneuralnetwork卷积神经网络;
crf:conditionalrandomfield条件随机场;
ctb:chinesetreebank宾州中文树库;
lstm:longshort-termmemory长短期记忆神经网络;
me:maximumentropy最大熵模型;
mmd:maximummeandiscrepancy最大化平均差异;
mk-mmd:multi-kernelmaximummeandiscrepancy多核最大化平均差异;
nlp:naturallanguageprocessing自然语言处理;
nn:neuralnetwork神经网络;
pku:corpusofpekinguniversity北京大学开放语料库;
relu:rectifiedlinearunit线性整流函数,是一种激活函数。
实施例一
参照图3、4所示,图3,4示出了本发明提供的一种基于卷积网络在中文分词任务上的领域迁移方法,具体的,训练中没有标注的目标领域语料数据时,该方法包括:
步骤一、将语料划分为源领域数据和目标领域数据,将含有句子数量较少的领域的数据,通过重复利用,补充到与另一领域句子数量相同;
其中,本实施例中设置最大句子长度为128,利用大规模标注源领域语料为pku以及ctb5和ctb7,目标领域语料为专利、诛仙及医学论坛语料;同时每次训练时,一半句子为源领域数据、另一半则为目标领域数据。
步骤二、将源领域和目标领域的中文字符,利用相同字典,映射为向量表示,输入的待分词文本即数值化为每个字符向量列连接而成的数值矩阵;
进一步的,训练好的映射字典,利用词袋模型skip-gram或continuousbag-of-words(cbow),训练得到包含一定词语信息的向量表示,将语料数据的每一个中文字符通过映射字典映射为稠密向量表示,包括:
采用维基百科的大量文本信息预训练字向量;构建映射字典则通过找出所有不重复的字符,为每个字符编号,每个相同字符的向量表示相同,不同字符的向量表示不同,同时设置一个向量表示所有没有在训练语料集合中出现的字符,为未知字符;在训练网络时,引入了dropout机制,随机将一部分参数置零。
本实施例中采用skip-gram对字向量进行预训练;每一个字设置映射向量维度为200;本步骤通过一个映射字典实现,将字符映射为不稀疏的向量表示,首先训练语料进行遍历,找出所有不重复的字符,为每个字符编号,假设共有m个字符,则建立一个200行(字向量映射维度为200),m+1列的矩阵,每个相同字符的向量表示相同,不同字符的向量表示不同,除了m个字符以外,还设置一个向量表示所有没有在训练语料集合中出现的字符,为未知字符。在这一步骤中,本发明引入了dropout机制,在训练网络时,随机将一部分参数置零,这样避免了过拟合并且提供了一种有效的将指数化增长的许多不同的神经元结构大致结合的方法。
步骤三、将数值矩阵输入特征卷积层提取得到源领域特征表示以及目标领域特征表示;
进一步的,所述步骤三中,将数值矩阵输入特征卷积层提取得到特征表示,计算如下:
其中,m∈rd×w为窗口大小为w的卷积核,d与输入矩阵x的行数相同,
本实施例中,由特征卷积层提取到的每个字符特征的维度为200维,卷积核大小设置为3,特征卷积层层数设置为4,同时,源领域和目标领域特征表示由共享的卷积层计算得到。
步骤四、将提取的源领域特征表示输入注意力模块,计算得到权重向量,权重向量点乘提取的源领域特征表示得到加权的源领域特征表示;
进一步的,所述步骤四中,将提取的源领域特征表示输入注意力模块,计算得到权重向量,权重向量点乘提取的源领域特征表示得到加权的源领域特征表示,计算如下:
其中,k∈ri×l×d为权重矩阵,i表示输入神经网络句子的数量,l表示输入句子固定长度,d为特征表示的维度,⊙表示点积,y为特征卷积层提取的i个特征表示连接而成,g表示先将点积结果的第二和第三维度进行平均计算,然后做softmax计算,
本实施例中,输入神经网络的句子个数设置为16。
步骤五、将加权的源领域特征表示和提取的目标领域特征表示分别作为计算mmd的两个输入,得到mmd计算结果;
进一步的,所述步骤五中,mmd计算公式如下:
其中,
步骤六、将提取的源领域特征表示输入分类卷积层得到每一个字符的预测标签概率;
进一步的,所述步骤六中,经过分类卷积层提取到的每一个字符的预测标签概率计算过程与特征卷积层一致,但将特征卷积层使用的relu非线性函数f替换为softmax计算;
在本实施例中,每一个字符有四个标签,包括{b,m,e,s},其中,b表示词首字,m表示词中字,e表示词尾字,s表示单字词;因此,分类卷积层输出每个字符的特征为4。
步骤七、将每个字符的标签概率和真实的标签概率输入条件随机场(conditionalrandomfield,crf),计算似然概率;
进一步的,所述步骤七中,似然概率计算过程如下:
其中,s和y*分别表示输入句子和真实情况该句子标签序列,score表示将每一个字符的预测标签概率通过一个转移矩阵计算得到句子的预测标签概率,y′为所有可能句子的预测标签概率。
步骤八、损失函数由似然概率的负对数和mmd计算结果加权求和,mmd计算结果作为正则项,由反向传播算法(backpropagation,bp)计算更新网络各层权重;
进一步的,所述步骤八中,损失函数计算如下:
其中,λ表示正则化项mmd计算结果的权重。
进一步的,训练中含有少量标注的目标领域语料数据时,将步骤六予以替换,替换如下:
步骤六、将提取的源领域特征表示及少量含有真实标签的目标领域特征表示输入分类卷积层得到每一个字符的预测标签概率。
进一步的,非训练情况下,中文分词时,将步骤一到步骤八予以替换,替换如下:
步骤一、将需要分词的目标领域数据作为神经网络的输入;
步骤二、将需要分词的目标领域数据的中文字符,利用与训练过程中相同的字典,映射为向量表示;
步骤三、将向量表示输入特征卷积层,提取得到特征表示;
步骤四、将特征表示输入分类卷积层得到每个字符的预测标签概率;
步骤五、将每个字符的预测标签概率输入维特比(viterbi)算法解码得到最优序列,完成分词。
一优选实施例,如图3所示,首先将句子中的每一个字符映射为一个稠密向量,向量维度为n,经过卷积,提取得到一句话中每一个字的特征;在训练过程中,将卷积提取得到的特征以源领域和目标领域分成两部分,源领域数据特征经过注意力模块,计算得到每句话的权重;将源领域数据特征和权重相乘,作为mmd计算的第一个输入;将目标领域数据特征作为mmd计算的第二个输入;mmd模块计算得到mmd的数值乘以正则化项权重作为loss函数的正则化项;源领域特征经过分类卷积层得到每一个字符每一个标签的预测概率,经过crf,计算对数似然概率;负对数似然概率作为目标函数与mmd正则化项相加得到最终的损失函数;模型以最小化损失函数为目标,由bp算法更新参数;在非训练情况下,由分类卷积层得到的每一个字符每一个标签的预测概率直接经过维特比算法,计算最后的序列标签,完成分词。
本发明实施例一通过利用传统的mmd方法,实现了在中文分词任务上,特征层面的领域迁移,扩展了中文分词的领域迁移方法;将注意力模块引入计算mmd过程中,能够使得模型自主选择对于目标领域数据有益的源领域数据样本,抑制领域迁移过程中的噪声,实现更高效的领域迁移,缓解了大规模标注语料的压力,提升了领域迁移在小规模标注数据集上的准确率。
上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以所述权利要求的保护范围为准。