本发明涉及自然语言处理技术领域中的一种多任务学习技术,具体地,涉及一种具有依赖关系的自然语言多任务建模、预测方法及系统。
背景技术:
随在机器学习领域,多任务学习是一种重要的学习方法,因为它允许利用上相关任务的知识来提升机器学习的效果。近年来,有一些研究针对具有依赖关系的任务提出了层级多任务模型,由于能利用上任务间的潜在依赖关系,其效果一般会比扁平的多任务框架更好。但是,这些层级多任务模型仅仅考虑了神经网络的编码器的层叠,而忽略预测结果之间的强逻辑关联,从而导致了多种任务之间的预测结果不一致的情况,限制了机器学习模型在实际场景中的应用,例如在基于裁判文书的司法判决预测的应用中,会造成预测的相关法条和罪名不一致的情况。
技术实现要素:
针对现有技术中存在的上述不足,本发明的目的是提供一种具有依赖关系的自然语言多任务建模、预测方法及系统。
本发明是通过以下技术方案实现的。
根据本发明的一个方面,提供了一种具有依赖关系的自然语言多任务结果预测方法,包括:
s1:对一个长度为n的输入文本x进行词嵌入,转换成一个词嵌入序列e={ei}1≤i≤n。
s2:对于任一任务k,将前k-1个任务的标签进行嵌入和迁移:
定义每个任务的标签为
其中,wk是每个任务的全连接神经网络的参数矩阵;
将每个任务的标签嵌入经过一个标签迁移器
s3:对词嵌入序列、迁移后的标签嵌入以及任务k-1的编码进行处理,得到任务k的编码
hk=encoder(k)(e,thk-1,hk-1)
其中,encoder(k)为任务k的编码器;
s4:对任务k的编码进行预测,得到任务k的输出为:
其中,predictor(k)为任务k的预测器,由单层或多层全连接神经网络组成,然后再用softmax函数对
其中,概率分布
s5:使用gumbel采样对s4中得到的任务k的预测结果进行反事实取值,得到:
其中,
s6:将得到的采样值
s7,采用损失函数对s6得到的任务k预测结果进行训练和优化:
若任务k为命名实体识别,则其损失函数由交叉熵计算而得:
其中,
若任务k为文本序列分类任务,则其损失函数为:
其中,
将多个任务的损失函数综合可得:
其中,
最小化总损失函数,实现对任务k预测结果的训练及优化。
优选地,所述任务k的编码器包括:双向长短时记忆网络、卷积神经网络或基于注意力的变形网络。
优选地,所述任务k的预测器包括:全连接神经网络。
根据本发明的另一个方面,提供了一种具有依赖关系的自然语言多任务模型构建方法,包括:
构建词嵌入层,所述词嵌入层用于对输入文本x进行词嵌入;
构建层级编码器,所述层级编码器用于对输入的词嵌入针对不同层次的任务进行不同层次的处理,使得低层任务得到浅层的编码表示,高层任务得到深层的编码表示;
构建标签嵌入层,所述标签嵌入层用于将不同任务的标签嵌入到同一个拉式空间;
构建标签迁移器,所述标签迁移器用于将嵌入后的标签进行转移,使得每一个任务均能够利用其所有下层任务的标签信息;
构建预测器,所述预测器根据每个任务的层级编码器输出的编码结果和标签迁移器输出的迁移结果,对每个任务的概率分布进行预测;
构建gumbel采样层,所述gumbel采样层针对每个任务预测的概率分布进行gumbel采样,并以设定概率进行反事实取值,从而进行反事实推断,若任务间存在因果关联,则得到其因果效应,对多任务模型进行联合优化。
优选地,所述构建层级编码器的方法,包括:
基于深度神经网络构建每个任务的编码器;
堆叠不同任务的编码器,使得每个任务的编码器均能够利用其低层任务的编码器输出、原始的词嵌入以及其低层任务的预测器预测结果迁移的信息。
优选地,所述标签嵌入层采用全连接神经网络将每个任务的预测结果嵌入到同一拉式空间。
优选地,所述标签迁移器采用单向长短时记忆网络进行任务间的标签迁移,使得每个任务均能够利用其所有低层任务的标签信息。
优选地,所述每个任务均能够利用其所有低层任务的标签信息,包括:
-间接因果路径,对于任务k,设其标签为yk,编码器输出的编码结果为hk,所有低层任务迁移后的标签信息为thk-1,迁移后的标签信息对于标签的间接因果路径为thk-1→hk→yk,即低层任务的标签信息通过影响任务k的编码结果从而影响任务k的预测结果;
-直接因果路径,对于任务k,设其标签为yk,所有低层任务迁移后的标签信息为thk-1,迁移后的标签信息对于标签的直接因果路径thk-1→yk,即低层任务的标签信息直接输入给预测器,此路径不受输入文本的影响。
优选地,所述gumbel采样层对多任务模型进行联合优化的方法,包括:
在多任务训练阶段,根据每个任务的预测概率进行gumbel采样,使得每个任务以设定概率得到反事实取值;
把采样后的预测概率结果输入到编码器和预测器,同时由于gumbel采样使得整个模型端到端可导,每个任务会向其低层任务反向梯度,惩罚低层任务的反事实取值;
gumbel采样同时也通过反事实推理,从观测数据中计算出任务间的因果效应。
根据本发明的第三个方面,提供了一种具有依赖关系的自然语言多任务结果预测系统,包括基于深度神经网络的层次化编码器模块、多任务间的预测结果嵌入及迁移模块、以及基于gumbel采样的因果推断联合优化模块;其中:
所述基于深度神经网络的层次化编码器模块,使用基于深度神经网络的编码器,对输入的词嵌入针对不同层次的任务进行不同层次的处理,使得低层任务得到浅层的编码表示,高层任务得到深层的编码表示;
所述多任务间的预测结果嵌入及迁移模块,对不同任务的标签嵌入到同一个拉式空间,再使用单向长短时记忆网络对嵌入后的标签进行转移,使得每一个任务利用上所有其下层任务的标签信息,并根据基于深度神经网络的层次化编码器模块输出的每个任务的编码结果和嵌入后的标签转移结果,得到每个任务的概率分布预测结果;
所述基于gumbel采样的因果推断联合优化模块,对每个任务预测的概率分布进行gumbel采样,并以设定概率进行反事实取值,从而进行反事实推断,若任务间存在因果关联,则根据关联信息预测因果效应,对深度神经网络的层次化编码器模块、多任务间的预测结果嵌入及迁移模块进行联合优化。
根据本发明的第四个方面,提供了一种终端,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时可用于执行上述任一项所述的方法。
根据本发明的第五个方面,提供了一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时可用于执行上述任一项所述的方法。
由于采用了上述技术方案,本发明具有如下有益效果:
本发明提供的具有依赖关系的自然语言多任务建模、预测方法及系统,基于因果推断更好的利用了任务间的因果关联,在基于层级多任务模型的基础上,创新地提出了标签嵌入迁移器、基于反事实推断的gumbel采样,一方面,标签嵌入迁移器把低层任务的输出结果嵌入后提供给高层任务,使得高层任务的预测能利用上低层任务的信息,更好地建模它们之间的依赖关系;另一反面,基于反事实推断的gumbel采样可以正确地估计任务之间的因果关联,并且使得高层任务之间可以为低层任务提供反馈,联合优化减少任务间的误差累计问题。
本发明提供的具有依赖关系的自然语言多任务建模、预测方法及系统,相较于传统模型,由于利用了任务间的因果关联,因此准确性、鲁棒性有所提升,当面对新的数据时,其能够给出更加合理的预测。
附图说明
通过阅读参照以下附图对非限制性实施例所作的详细描述,本发明的其它特征、目的和优点将会变得更明显:
图1是本发明所采用的因果假设原理示意图。
图2是本发明一优选实施例中提出的多任务因果拓扑图。
图3是本发明一优选实施例中提出的多任务模型架构图。
具体实施方式
下面对本发明的实施例作详细说明:本实施例在以本发明技术方案为前提下进行实施,给出了详细的实施方式和具体的操作过程。应当指出的是,对本领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干变形和改进,这些都属于本发明的保护范围。
本发明实施例提供了一种具有依赖关系的自然语言多任务建模、预测方法及系统,旨在基于因果推断建模多任务之间的逻辑依赖关系,同时利用此依赖关系提升多任务学习,从而提升多任务预测结果的准确性和一致性。
本发明一实施例,提供了一种具有依赖关系的自然语言多任务结果预测方法,针对任务间有逻辑依赖的情况下,利用上多任务之间的依赖关系,根据因果推断中的反事实推理,提升预测结果的一致性和准确性。
本实施例提供的方法,包括:
对于具有依赖关系的多种自然语言处理进行联合学习:如命名实体识别、关系提取两个任务的联合学习,其中关系提取任务依赖于命名实体识别任务;又如基于大陆法系的裁判文书预测中包含三个任务,相关法条预测、罪名预测、刑期预测,其中罪名预测依赖于相关法条预测,刑期预测依赖于前两个任务。具体而言,该多任务学习方法可分为以下几个步骤:
步骤1:对一个长度为n的输入文本x进行词嵌入,转换成一个词嵌入序列e={ei}1≤i≤n。
步骤2:以任务的真实结果作为标签,对于任一任务k,将前k-1个任务的标签进行嵌入和迁移:
定义每个任务的标签为
其中,wk是每个任务的全连接神经网络的参数矩阵;
将每个任务的标签嵌入经过一个标签迁移器
步骤3:对词嵌入序列、迁移后的标签嵌入以及任务k-1的编码进行处理,得到任务k的编码
hk=encoder(k)(e,thk-1,hk-1)
其中,encoder(k)为任务k的编码器;
步骤4:对任务k的编码进行预测,得到任务k的输出为:
其中,predictor(k)为任务k的预测器,由单层或多层全连接神经网络组成,然后再用softmax函数对
其中,概率分布
步骤5:由于步骤4中的预测结果考虑了任务k对于其前k-1个任务的依赖关系,因此有可能导致任务间的累积误差,即前k-1个任务的预测结果错误,会影响任务k的预测结果。为了减少该累积误差,并且提升多个任务预测结果的一致性,本实施例使用gumbel采样对步骤4中得到的任务k的预测结果进行反事实取值,得到:
其中,
步骤6:将得到的采样值
步骤7,采用损失函数对s6得到的任务k预测结果进行训练和优化:
若任务k为命名实体识别,则其损失函数由交叉熵计算而得:
其中,
若任务k为文本序列分类任务,则其损失函数为:
其中,
同时把多个任务的损失函数综合可得:
其中,
训练和优化的过程为最小化该损失函数的过程;由于
作为一优选实施例,任务k的编码器包括:双向长短时记忆网络、卷积神经网络或基于注意力的变形网络。
作为一优选实施例,任务k的预测器包括:全连接神经网络。
本发明另一实施例,提供了一种具有依赖关系的自然语言多任务模型构建方法,包括:
构建词嵌入层,词嵌入层用于对输入文本x进行词嵌入;
构建层级编码器,层级编码器用于对输入的词嵌入针对不同层次的任务进行不同层次的处理,使得低层任务得到浅层的编码表示,高层任务得到深层的编码表示;例如,在命名实体识别任务和关系抽取的多任务学习中,命名实体识别为低层任务,关系抽取为高层任务,关系抽取需要的语义信息更加丰富,因此需要更加深层的编码表示;
构建标签嵌入层,标签嵌入层用于将不同任务的标签嵌入到同一个拉式空间;
构建标签迁移器,标签迁移器用于将嵌入后的标签进行转移,使得每一个任务均能够利用其所有下层任务的标签信息;
构建预测器,预测器根据每个任务的层级编码器输出的编码结果和标签迁移器输出的迁移结果,对每个任务的概率分布进行预测;
构建gumbel采样层,gumbel采样层针对每个任务预测的概率分布进行gumbel采样,并以设定概率进行反事实取值,从而进行反事实推断,若任务间存在因果关联,则得到其因果效应,对多任务模型进行联合优化。
作为一优选实施例,构建层级编码器的方法,包括:
基于深度神经网络构建每个任务的编码器;
堆叠不同任务的编码器,使得每个任务的编码器均能够利用其低层任务的编码器输出、原始的词嵌入以及其低层任务的预测器预测结果迁移的信息。
作为一优选实施例,标签嵌入层采用全连接神经网络将每个任务的预测结果嵌入到同一拉式空间。
作为一优选实施例,标签迁移器采用单向长短时记忆网络进行任务间的标签迁移,使得每个任务均能够利用其所有低层任务的标签信息。
作为一优选实施例,每个任务均能够利用其所有低层任务的标签信息,包括:
-间接因果路径,对于任务k,设其标签为yk,编码器输出的编码结果为hk,所有低层任务迁移后的标签信息为thk-1,迁移后的标签信息对于标签的间接因果路径为thk-1→hk→yk,即低层任务的标签信息通过影响任务k的编码结果从而影响任务k的预测结果;
-直接因果路径,对于任务k,设其标签为yk,所有低层任务迁移后的标签信息为thk-1,迁移后的标签信息对于标签的直接因果路径thk-1→yk,即低层任务的标签信息直接输入给预测器,此路径不受输入文本的影响。
作为一优选实施例,gumbel采样层对多任务模型进行联合优化的方法,包括:
在多任务训练阶段,根据每个任务的预测概率进行gumbel采样,使得每个任务以设定概率得到反事实取值;
把采样后的预测概率结果输入到编码器和预测器,同时由于gumbel采样使得整个模型端到端可导,每个任务会向其低层任务反向梯度,惩罚低层任务的反事实取值(即惩罚低层任务的错误预测结果);
gumbel采样同时也通过反事实推理,从观测数据中计算出任务间的因果效应。
本实施例中构建得到的多任务模型,可以用于执行上述实施例所提供的预测方法以及构建以下实施例中所提供的预测系统。
本发明第三个实施例,提供了一种具有依赖关系的自然语言多任务结果预测系统,包括基于深度神经网络的层次化编码器模块、多任务间的预测结果嵌入及迁移模块、以及基于gumbel采样的因果推断联合优化模块;其中:
基于深度神经网络的层次化编码器模块,使用基于深度神经网络的编码器,对输入的词嵌入针对不同层次的任务进行不同层次的处理,使得低层任务得到浅层的编码表示,高层任务得到深层的编码表示;
多任务间的预测结果嵌入及迁移模块,对不同任务的标签嵌入到同一个拉式空间,再使用单向长短时记忆网络对嵌入后的标签进行转移,使得每一个任务利用上所有其下层任务的标签信息,并根据基于深度神经网络的层次化编码器模块输出的每个任务的编码结果和嵌入后的标签转移结果,得到每个任务的概率分布预测结果;
基于gumbel采样的因果推断联合优化模块,对每个任务预测的概率分布进行gumbel采样,并以设定概率进行反事实取值,从而进行反事实推断,若任务间存在因果关联,则根据关联信息预测因果效应,对深度神经网络的层次化编码器模块、多任务间的预测结果嵌入及迁移模块进行联合优化。
下面结合附图,对本发明上述上述实施例的所提供的技术方案以及所涉及的技术原理和所达到的技术效果进一步详细说明。
首先,本发明实施例从因果推断的角度看待多任务模型,对于两个任务m和n的输出变量ym和yn,传统多任务学习是基于混杂因果关系假设,如图1(a)所示,编码器从输入的样本中提取的特征表示h为混杂因素,多种任务的输出由该混在变量决定,在这种假设下,变量ym和yn之间虽然存在相关性,但相互之间不存在因果关联,为条件独立,也意味着这种假设并没有成功建模ym和yn的依赖关系。对于有依赖关系的多任务,本发明则是基于间接因果关系假设,如图1(b)所示,对于两个任务的输出变量ym和yn,ym通过影响特征表示h,从而间接的影响yn。混杂因果假设下的多任务似然函数为:
p(ym,yn|x)=p(ym|x)p(yn|x)
间接因果假设下的多任务似然函数为:
p(ym,yn|x)=p(ym|x)p(yn|x,ym)
从似然函数可以看出,间接因果假设更能建模ym和yn的依赖关系。特别的是,本发明实施例采用的间接因果假设,两者之间的存在两条因果路径。间接因果路径为ym→h→yn,直接因果路径为ym→yn。
本发明实施例基于间接因果假设,扩展到超过2种任务数量的场景,其因果效应拓扑图如图2所示,标签之间同样存在间接因果路径和直接因果路径。对于任务k而言,hk为编码器的输出,thk-1为其低层任务标签的迁移结果,其标签为yk,迁移后的标签信息对于标签的间接因果路径为thk-1→hk→yk,直接因果路径为thk-1→yk。
基于提出的多任务因果拓扑图,本发明实施例提出一种因果多任务模型的构建方法,其构建得到的模型架构图如图3所示。在层级多任务模型的基础上,采用了多任务间的预测结果嵌入及迁移、以及基于gumbel采样的因果推断联合优化。模型架构如图3所示,包括词嵌入层、层级编码器、预测器、gumbel采样层、标签嵌入层、标签迁移器。
基于本发明实施例所提供的多任务模型架构,本发明实施例同时实现了一种多任务结果的预测方法,该方法包括以下步骤:
步骤1:对一个长度为n的输入文本x进行词嵌入,转换成一个词嵌入序列e={ei}1≤i≤n。
步骤2:以任务的真实结果作为标签,对于任一任务k,将前k-1个任务的标签进行嵌入和迁移:
定义每个任务的标签为
其中,wk是每个任务的全连接神经网络的参数矩阵;
将每个任务的标签嵌入经过一个标签迁移器
步骤3:对词嵌入序列、迁移后的标签嵌入以及任务k-1的编码进行处理,得到任务k的编码
hk=encoder(k)(e,thk-1,hk-1)
其中,encoder(k)为任务k的编码器;
步骤4:对任务k的编码进行预测,得到任务k的输出为:
其中,predictor(k)为任务k的预测器,由单层或多层全连接神经网络组成,然后再用softmax函数对
其中,概率分布
步骤5:由于步骤4中的预测结果考虑了任务k对于其前k-1个任务的依赖关系,因此有可能导致任务间的累积误差,即前k-1个任务的预测结果错误,会影响任务k的预测结果。为了减少该累积误差,并且提升多个任务预测结果的一致性,本方法使用gumbel采样进行反事实取值,得到:
其中,
步骤6:将得到的采样值
步骤7,对步骤6进行训练及优化:
如若任务k为命名实体识别,则其损失函数由交叉熵计算而得:
其中,
其中,
其中,
以下通过一具体实例对本发明上述实施例提出的技术方案做进一步的详细描述。对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,仅用于示例性说明,不能理解为对本专利的限制。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
实例1
设定人工智能司法判决预测的任务中,有三个子任务,根据裁判文书中的认定事实描述,进行相关法条预测、罪名预测、和刑期预测。在大陆法系(如中国的司法系统)中,这三个子任务之间存在逻辑依赖关系,罪名和刑期依赖于相关法条,刑期也依赖于罪名,因此三个子任务的逻辑顺序为:相关法条预测→罪名预测→刑期预测。以下一份裁判文书中的认定事实:
东莞市第三市区人民检察院指控称,2014年7月17日4时许,被告人蒋某伙同他人到东莞市黄江镇田美村东进路35号被害人钟某住处,强行将钟某带到东莞市长安镇新安二路德安商务旅店317房。期间蒋某等人将钟某钱包内的5000元现金及银行卡抢走,并逼迫钟某告知银行卡密码,后蒋某等人在钟某的银行卡内取出14900元,并用钟某的银行卡消费515元。得手后,蒋某等人将钟某送到黄江镇后携款逃跑……。
预测结果:本发明上述实施例所提供的模型构建方法构建得到的多任务模型及其预测方法,成功预测了相关法条为第二百三十八条,罪名为非法拘禁罪,刑期为2-3年。其中第二百三十八条规定了非法拘禁他人或者以其他方法非法剥夺他人人身自由的,处三年以下有期徒刑、拘役、管制或者剥夺政治权利。具有殴打、侮辱情节的,从重处罚。其罪名和刑期都符合相关法条的规定。
分析:在去除模型的gumbel采样,标签迁移器两个机制后,得到传统的层次多任务模型,其预测结果为相关法条为第二百三十八条,罪名为绑架罪,得到罪名和刑期不一致的结果,说明仅仅堆叠编码器不足以建模任务间的依赖关系。在引入gumbel采样和标签迁移器两个机制后,模型从因果推断的角度正确地估计了任务间的因果关联,并利用此因果关联提升多任务预测结果的准确性和一致性。
显然,以上仅是本发明的部分实施方式,应当指出,对于本技术领域技术人员来说,在不脱离本发明原理的前提下,可根据实际需求进行若干改进和调整,这些改进和调整也应视为本发明的保护范围。
本发明第四个实施例提供了一种终端,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时可用于执行本发明上述实施例中任一项所述的建模方法或预测方法。
可选地,存储器,用于存储程序;存储器,可以包括易失性存储器(英文:volatilememory),例如随机存取存储器(英文:random-accessmemory,缩写:ram),如静态随机存取存储器(英文:staticrandom-accessmemory,缩写:sram),双倍数据率同步动态随机存取存储器(英文:doubledataratesynchronousdynamicrandomaccessmemory,缩写:ddrsdram)等;存储器也可以包括非易失性存储器(英文:non-volatilememory),例如快闪存储器(英文:flashmemory)。存储器用于存储计算机程序(如实现上述方法的应用程序、功能模块等)、计算机指令等,上述的计算机程序、计算机指令等可以分区存储在一个或多个存储器中。并且上述的计算机程序、计算机指令、数据等可以被处理器调用。
上述的计算机程序、计算机指令等可以分区存储在一个或多个存储器中。并且上述的计算机程序、计算机指令、数据等可以被处理器调用。
处理器,用于执行存储器存储的计算机程序,以实现上述实施例涉及的方法中的各个步骤。具体可以参见前面方法实施例中的相关描述。
处理器和存储器可以是独立结构,也可以是集成在一起的集成结构。当处理器和存储器是独立结构时,存储器、处理器可以通过总线耦合连接。
本发明第五个实施例提供了一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时可用于执行上述实施例中任一项所述的建模方法或预测方法。
本发明上述实施例提供的具有依赖关系的自然语言多任务建模、预测方法及系统,针对具有依赖关系的多任务联合优化的问题,实现了一种基于因果推断的自然语言多任务模型构建方法、结果预测方法以及结果预测系统。其中:基于深度神经网络的层级编码器:对于多种存在依赖关系的任务,用分层多编码器可以获得比扁平编码器更好的性能;复杂任务的编码器放置在上层,可以获得更加语义丰富的表示,简单任务的编码器放置在下层,只需要对输入进行浅层处理即可。多任务间的预测结果嵌入及迁移:利用多任务间的逻辑依存关系,可以把多任务建模成一个序列化的标签生成问题,因此,本发明实施例先把标签嵌入到一个固定维度的向量空间中,再采用循环神经网络对标签进行任务间的迁移,从而是高层任务对低层任务的预测信息进行利用。基于gumbel采样的因果推断联合优化:预测结果迁移机制利用了任务间的逻辑关联性,但同时也导致了误差累积的出现,因此本发明实施例设计了基于gumbel采样的因果推断联合优化方法,其核心思想是利用因果推断中的反事实推理,即当低层任务的标签进行反事实取值时,对于高层任务的输出是否会变化,根据变化值,判断是否存在因果关联。由于这种因果关联的存在,低层任务可以从高层任务中获得回报,从而使得优化后的模型对于低层任务的预测结果更加精准,进行提升高层任务的预测精度。
以上对本发明的具体实施例进行了描述。需要理解的是,本发明并不局限于上述特定实施方式,本领域技术人员可以在权利要求的范围内做出各种变形或修改,这并不影响本发明的实质内容。
1.一种具有依赖关系的自然语言多任务结果预测方法,其特征在于,包括:
s1:对一个长度为n的输入文本x进行词嵌入,转换成一个词嵌入序列e={ei}1≤i≤n。
s2:对于任一任务k,将前k-1个任务的标签进行嵌入和迁移:
定义每个任务的标签为
其中,wk是每个任务的全连接神经网络的参数矩阵;
将每个任务的标签嵌入经过一个标签迁移器
s3:对词嵌入序列、迁移后的标签嵌入以及任务k-1的编码进行处理,得到任务k的编码
hk=encoder(k)(e,thk-1,hk-1)
其中,encoder(k)为任务k的编码器;
s4:对任务k的编码进行预测,得到任务k的输出为:
其中,predictor(k)为任务k的预测器,由单层或多层全连接神经网络组成,然后再用softmax函数对
其中,概率分布
s5:使用gumbel采样对s4中得到的任务k的预测结果进行反事实取值,得到:
其中,
s6:将得到的采样值
s7,采用损失函数对s6得到的任务k预测结果进行训练和优化:
若任务k为命名实体识别,则其损失函数由交叉熵计算而得:
其中,
若任务k为文本序列分类任务,则其损失函数为:
其中,
将多个任务的损失函数进行综合得到:
其中,
最小化总损失函数,实现对任务k预测结果的训练及优化。
2.根据权利要求1所述的具有依赖关系的自然语言多任务结果预测方法,其特征在于,所述任务k的编码器包括:双向长短时记忆网络、卷积神经网络或基于注意力的变形网络。
3.根据权利要求1所述的具有依赖关系的自然语言多任务结果预测方法,其特征在于,所述任务k的预测器包括:全连接神经网络。
4.一种具有依赖关系的自然语言多任务模型构建方法,其特征在于,包括:
构建词嵌入层,所述词嵌入层用于对输入文本x进行词嵌入;
构建层级编码器,所述层级编码器用于对输入的词嵌入针对不同层次的任务进行不同层次的处理,任务的编码器依次层叠,使得低层任务得到浅层的编码表示,高层任务得到深层的编码表示;
构建标签嵌入层,所述标签嵌入层用于将不同任务的标签嵌入到同一个拉式空间;
构建标签迁移器,所述标签迁移器用于将嵌入后的标签进行转移,使得每一个任务均能够利用其所有下层任务的标签信息;
构建预测器,所述预测器根据每个任务的层级编码器输出的编码结果和标签迁移器输出的迁移结果,对每个任务的概率分布进行预测;
构建gumbel采样层,所述gumbel采样层针对每个任务预测的概率分布进行gumbel采样,并以设定概率进行反事实取值,从而进行反事实推断,若任务间存在因果关联,则得到其因果效应,对多任务模型进行联合优化。
5.根据权利要求4所述的具有依赖关系的自然语言多任务模型构建方法,其特征在于,所述构建层级编码器的方法,包括:
基于深度神经网络构建每个任务的编码器;
堆叠不同任务的编码器,使得每个任务的编码器均能够利用其低层任务的编码器输出、原始的词嵌入以及其低层任务的预测器预测结果迁移的信息。
6.根据权利要求4所述的具有依赖关系的自然语言多任务模型构建方法,其特征在于,所述标签嵌入层采用全连接神经网络将每个任务根据预测结果的概率分布而得的采样值嵌入到同一拉式空间。
7.根据权利要求4所述的具有依赖关系的自然语言多任务模型构建方法,其特征在于,所述标签迁移器采用单向长短时记忆网络进行任务间的标签迁移,使得每个任务均能够利用其所有低层任务的标签信息。
8.根据权利要求7要求所述的具有依赖关系的自然语言多任务模型构建方法,其特征在于,所述每个任务均能够利用其所有低层任务的标签信息,包括:
-间接因果路径,对于任务k,设其标签为yk,编码器输出的编码结果为hk,所有低层任务迁移后的标签信息为thk-1,迁移后的标签信息对于标签的间接因果路径为thk-1→hk→yk,即低层任务的标签信息通过影响任务k的编码结果从而影响任务k的预测结果;
-直接因果路径,对于任务k,设其标签为yk,所有低层任务迁移后的标签信息为thk-1,迁移后的标签信息对于标签的直接因果路径thk-1→yk,即低层任务的标签信息直接输入给预测器,此路径不受输入文本的影响。
9.根据权利要求4所述的具有依赖关系的自然语言多任务模型构建方法,其特征在于,所述gumbel采样层对多任务模型进行联合优化的方法,包括:
在多任务训练阶段,根据每个任务的预测概率进行gumbel采样,使得每个任务以设定概率得到反事实取值;
把采样后的预测概率结果输入到编码器和预测器,同时由于gumbel采样使得整个模型端到端可导,每个任务会向其低层任务反向梯度,惩罚低层任务的反事实取值;
gumbel采样同时也通过反事实推理,从训练数据中计算出任务间的因果效应。
10.一种具有依赖关系的自然语言多任务结果预测系统,其特征在于,包括基于深度神经网络的层次化编码器模块、多任务间的预测结果嵌入及迁移模块、以及基于gumbel采样的因果推断联合优化模块;其中:
所述基于深度神经网络的层次化编码器模块,使用基于深度神经网络的编码器,对输入的词嵌入针对不同层次的任务进行不同层次的处理,使得低层任务得到浅层的编码表示,高层任务得到深层的编码表示;
所述多任务间的预测结果嵌入及迁移模块,对不同任务的标签嵌入到同一个拉式空间,再使用单向长短时记忆网络对嵌入后的标签进行转移,使得每一个任务利用上所有其下层任务的标签信息,并根据基于深度神经网络的层次化编码器模块输出的每个任务的编码结果和嵌入后的标签转移结果,得到每个任务的概率分布预测结果;
所述基于gumbel采样的因果推断联合优化模块,对每个任务预测的概率分布进行gumbel采样,并以设定概率进行反事实取值,从而进行反事实推断,若任务间存在因果关联,则根据关联信息预测因果效应,对深度神经网络的层次化编码器模块、多任务间的预测结果嵌入及迁移模块进行联合优化。
11.一种终端,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述程序时可用于执行权利要求1-3或4-9中任一项所述的方法。
12.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行时可用于执行权利要求1-3或4-9中任一项所述的方法。
技术总结