发明内容
基于此,有必要针对上述技术问题,提供一种能够挖掘文本深层语义的多任务模型生成方法、装置、计算机设备、计算机可读存储介质和计算机程序产品,提高了挖掘文本语义信息的效率。
一种多任务模型生成方法,所述方法包括:
获取第一语言表征模型,所述第一语言表征模型是基于第一历史文本数据对原始语言表征模型训练得到的;
获取第二语言表征模型,所述第二语言表征模型是通过第二历史文本数据对应的增强训练集对第一语言表征模型进行训练得到的;
基于所述第二历史文本数据对应的原始训练集对所述第二语言表征模型进行训练,得到中间语言表征模型和所述原始训练集对应的中间语义向量;
基于所述中间语义向量对原始实体识别模型进行训练,得到中间实体识别模型;
基于各个所述中间语义向量对原始情感分析模型进行训练,得到中间情感分析模型;
将所述中间语言表征模型分别与中间实体识别模型和中间情感分析模型连接组成多任务模型,基于所述原始训练集对所述多任务模型进行多次训练,生成对应的多个候选多任务模型;
基于所述第二历史文本数据对应的测试集对各个所述候选多任务模型进行测试评估,记录各个候选多任务模型对应的中间实体识别模型的第一评价结果和中间情感分析模型的第二评价结果;
基于所述第一评价结果和第二评价结果从所述多个候选多任务模型中确定目标多任务模型。
在其中一个实施例中,获取第一语言表征模型,所述第一语言表征模型是基于第一历史文本数据对原始语言表征模型训练得到的之前,还包括:
从所述第一历史文本数据中获取第一目标词,所述第一目标词是从各个文本中随机选取预设比例的词得到的;
基于所述第一历史文本数据和第一目标词,对所述原始语言表征模型进行训练,得到所述第一语言表征模型,所述第一历史文本数据中随机的一个文本会被多次作为所述原始语言表征模型的输入数据,所述随机文本中各个第一目标词按第一预设比例的概率替换成特殊字符,按第二预设比例的概率替换成其他任意词和按第三预设比例的概率将保留原始词。
在其中一个实施例中,获取第二语言表征模型,所述第二语言表征模型是通过第二历史文本数据对应的增强训练集对第一语言表征模型进行训练得到的之前,还包括:
基于二项分布和标签对所述第二历史文本对应的原始训练集的字进行替换,得到第二训练集;
基于通用本体获取所述第二历史文本对应的原始训练集中的同义词,基于二项分布对各个同义词进行随机同义词替换,依次延展所述替换的同义词对应的标签,得到第三训练集;
获取所述第二历史文本对应的原始训练集中具有相同实体类型的实体,基于二项分布对各个所述实体进行随机同类型实体替换,依次延展所述替换的实体对应的标签,得到第四训练集;
基于实体切分所述第二历史文本对应的原始训练集中的各个文本,基于二项分布将切分得到的各个文本片段进行随机文本片段交换,得到第五训练集;
基于第二训练集、第三训练集、第四训练集和第五训练集组成所述第二历史文本数据对应的增强训练集。
在其中一个实施例中,基于所述第二历史文本数据对应的原始训练集对所述第二语言表征模型进行训练,得到中间语言表征模型和所述原始训练集对应的中间语义向量包括:
将所述原始训练集进行字级别的分词操作,获得所述原始训练集对应的各个字,根据词库的映射将所述各个字转成所述词库中对应的索引,获得各个字对应的索引编号,基于所述各个字对应的索引编号和各个字对应的文本获取所述原始训练集中各个文本对应的索引串;
对各个所述索引串进行编码得到对应的编码向量;
将各个所述编码向量输入到所述第二语言表征模型的文本语义提取层中,所述第二语言表征模型由预设数量的文本语义提取层构成,将所述编码向量在每一层的文本语义提取层中进行多次线性变换,得到第一矩阵、第二矩阵和第三矩阵;
将所述第一矩阵、第二矩阵和第三矩阵进行融合,得到文本语义提取层中各自注意力层对应的注意力得分矩阵,将各个注意力得分矩阵进行拼接,得到中间注意力得分矩阵;
将所述中间注意力得分矩阵输入全连接层,得到文本语义提取层中多头注意力层的输出结果,将所述输出结果依次输入残差模块、归一化层、全连接层、残差模块和归一化层之后,得到目标输出结果,基于所述目标输出结果获取所述原始训练集对应的中间语义向量,生成中间语言表征模型。
在其中一个实施例中,基于所述中间语义向量对原始实体识别模型进行训练,得到中间实体识别模型包括:
基于所述中间语义向量,获取状态分数矩阵;
获取随机的转移分数矩阵,基于所述状态分数矩阵和转移分数矩阵对所述原始实体识别模型进行训练并计算对应的损失函数,基于所述损失函数,不断调整转移分数矩阵,得到当前转移分数矩阵,基于当前转移分数矩阵和状态分数矩阵对所述原始实体识别模型不断进行训练,直到对应的损失函数满足预设条件后,得到满足预设条件的损失函数所对应的目标转移分数矩阵;
基于所述状态分数矩阵,获得状态特征函数和状态特征函数对应的权值,基于所述目标转移分数矩阵,获得状态转移函数和状态转移函数对应的权值,基于所述状态特征函数和状态特征函数对应的权值以及状态转移函数和状态转移函数对应的权值得到目标似然性函数,获得所述中间实体识别模型。
在其中一个实施例中,基于各个所述中间语义向量对原始情感分析模型进行训练,得到中间情感分析模型包括:
基于各个文本对应的中间语义向量进行相加求平均得到文本特征向量;
基于所述文本特征向量对所述原始情感分析模型进行训练,得到所述中间情感分析模型。
在其中一个实施例中,基于所述第一评价结果和第二评价结果从所述多个候选多任务模型中确定目标任务模型之后,还包括:
获取目标文本数据,对所述目标文本数据进行字粒度分词,获得目标文本数据中的各个字,基于词库的映射对所述各个字进行索引编号,基于所述索引编号和目标文本数据对应的索引串,确定目标文本数据对应的编码向量;
基于所述编码向量和目标多任务模型,得到目标实体标注序列和目标情感倾向。
一种多任务模型生成装置,所述装置包括:
第一语言表征模型获取模块,用于获取第一语言表征模型,所述第一语言表征模型是基于第一历史文本数据对原始语言表征模型训练得到的;
第二语言表征模型获取模块,用于获取第二语言表征模型,所述第二语言表征模型是通过第二历史文本数据对应的增强训练集对第一语言表征模型进行训练得到的;
中间语言表征模型生成模块,用于基于所述第二历史文本数据对应的原始训练集对所述第二语言表征模型进行训练,得到中间语言表征模型和所述原始训练集对应的中间语义向量;
中间实体识别模型生成模块,用于基于所述中间语义向量对原始实体识别模型进行训练,得到中间实体识别模型;
中间情感分析模型生成模块,用于基于各个所述中间语义向量对原始情感分析模型进行训练,得到中间情感分析模型;
候选多任务模型生成模块,用于将所述中间语言表征模型分别与中间实体识别模型和中间情感分析模型连接组成多任务模型,基于所述原始训练集对所述多任务模型进行多次训练,生成对应的多个候选多任务模型;
评价结果记录模块,用于基于所述第二历史文本数据对应的测试集对各个所述候选多任务模型进行测试评估,记录各个候选多任务模型对应的中间实体识别模型的第一评价结果和中间情感分析模型的第二评价结果;
目标多任务模型确定模块,用于基于所述第一评价结果和第二评价结果从所述多个候选多任务模型中确定目标任务模型。
一种计算机设备。所述计算机设备包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现以下步骤:
获取第一语言表征模型,所述第一语言表征模型是基于第一历史文本数据对原始语言表征模型训练得到的;
获取第二语言表征模型,所述第二语言表征模型是通过第二历史文本数据对应的增强训练集对第一语言表征模型进行训练得到的;
基于所述第二历史文本数据对应的原始训练集对所述第二语言表征模型进行训练,得到中间语言表征模型和所述原始训练集对应的中间语义向量;
基于所述中间语义向量对原始实体识别模型进行训练,得到中间实体识别模型;
基于各个所述中间语义向量对原始情感分析模型进行训练,得到中间情感分析模型;
将所述中间语言表征模型分别与中间实体识别模型和中间情感分析模型连接组成多任务模型,基于所述原始训练集对所述多任务模型进行多次训练,生成对应的多个候选多任务模型;
基于所述第二历史文本数据对应的测试集对各个所述候选多任务模型进行测试评估,记录各个候选多任务模型对应的中间实体识别模型的第一评价结果和中间情感分析模型的第二评价结果;
基于所述第一评价结果和第二评价结果从所述多个候选多任务模型中确定目标多任务模型。
一种计算机可读存储介质。所述计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现以下步骤:
获取第一语言表征模型,所述第一语言表征模型是基于第一历史文本数据对原始语言表征模型训练得到的;
获取第二语言表征模型,所述第二语言表征模型是通过第二历史文本数据对应的增强训练集对第一语言表征模型进行训练得到的;
基于所述第二历史文本数据对应的原始训练集对所述第二语言表征模型进行训练,得到中间语言表征模型和所述原始训练集对应的中间语义向量;
基于所述中间语义向量对原始实体识别模型进行训练,得到中间实体识别模型;
基于各个所述中间语义向量对原始情感分析模型进行训练,得到中间情感分析模型;
将所述中间语言表征模型分别与中间实体识别模型和中间情感分析模型连接组成多任务模型,基于所述原始训练集对所述多任务模型进行多次训练,生成对应的多个候选多任务模型;
基于所述第二历史文本数据对应的测试集对各个所述候选多任务模型进行测试评估,记录各个候选多任务模型对应的中间实体识别模型的第一评价结果和中间情感分析模型的第二评价结果;
基于所述第一评价结果和第二评价结果从所述多个候选多任务模型中确定目标多任务模型。
一种计算机程序产品。所述计算机程序产品,包括计算机程序,该计算机程序被处理器执行时实现以下步骤:
获取第一语言表征模型,所述第一语言表征模型是基于第一历史文本数据对原始语言表征模型训练得到的;
获取第二语言表征模型,所述第二语言表征模型是通过第二历史文本数据对应的增强训练集对第一语言表征模型进行训练得到的;
基于所述第二历史文本数据对应的原始训练集对所述第二语言表征模型进行训练,得到中间语言表征模型和所述原始训练集对应的中间语义向量;
基于所述中间语义向量对原始实体识别模型进行训练,得到中间实体识别模型;
基于各个所述中间语义向量对原始情感分析模型进行训练,得到中间情感分析模型;
将所述中间语言表征模型分别与中间实体识别模型和中间情感分析模型连接组成多任务模型,基于所述原始训练集对所述多任务模型进行多次训练,生成对应的多个候选多任务模型;
基于所述第二历史文本数据对应的测试集对各个所述候选多任务模型进行测试评估,记录各个候选多任务模型对应的中间实体识别模型的第一评价结果和中间情感分析模型的第二评价结果;
基于所述第一评价结果和第二评价结果从所述多个候选多任务模型中确定目标多任务模型。
上述多任务模型生成方法、装置、计算机设备、存储介质和计算机程序产品,通过获取第一语言表征模型,所述第一语言表征模型是基于第一历史文本数据对原始语言表征模型训练得到的,获取第二语言表征模型,所述第二语言表征模型是通过第二历史文本数据对应的增强训练集对第一语言表征模型进行训练得到的,基于所述第二历史文本数据对应的原始训练集对所述第二语言表征模型进行训练,得到中间语言表征模型和所述原始训练集对应的中间语义向量,基于所述中间语义向量对原始实体识别模型进行训练,得到中间实体识别模型,基于各个所述中间语义向量对原始情感分析模型进行训练,得到中间情感分析模型,将所述中间语言表征模型分别与中间实体识别模型和中间情感分析模型连接组成多任务模型,基于所述原始训练集对所述多任务模型进行多次训练,生成对应的多个候选多任务模型,基于所述第二历史文本数据对应的测试集对各个所述候选多任务模型进行测试评估,记录各个候选多任务模型对应的中间实体识别模型的第一评价结果和中间情感分析模型的第二评价结果,基于所述第一评价结果和第二评价结果从所述多个候选多任务模型中确定目标多任务模型。通过基于无标注的第一历史文本数据对原始语言表征模型进行训练得到第一语言表征模型,基于有标注的第二历史文本数据对应的增强训练集对第一语言表征模型进行训练得到第二语言表征模型,基于第二历史文本数据对应的原始训练集对第二语言表征模型进行训练得到中间情感分析模型和所述原始训练集对应的中间语义向量,基于所述中间语义向量分别对原始实体识别模型和中间情感分析模型进行训练,得到中间实体识别模型和中间情感分析模型,基于所述中间语言表征模型、中间实体识别模型和中间情感分析模型得到多任务模型,基于多任务模型和第二历史文本数据对应的训练集进行多次调参训练,得到多个候选多任务模型,基于第二历史文本数据对应的测试集对各个候选多任务模型进行测试评估,得到评估结果,基于评估结果确定目标多任务模型,提高了多任务模型的泛化性能和鲁棒性,从而提高了挖掘文本语义信息的效率。
具体实施方式
为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。
本申请实施例提供的多任务模型生成方法,可以应用于如图1所示的应用环境中。其中,终端102通过网络与服务器104进行通信。数据存储系统可以存储服务器104需要处理的数据。数据存储系统可以集成在服务器104上,也可以放在云上或其他网络服务器上。终端102用于展示更新的各种推荐数据。服务器104用于确定目标多任务模型,所述目标多任务模型基于第一历史文本数据和候选多任务模型确定的。其中,终端102可以但不限于是各种个人计算机、笔记本电脑、智能手机、平板电脑、物联网设备和便携式可穿戴设备,物联网设备可为智能音箱、智能电视、智能空调、智能车载设备等。便携式可穿戴设备可为智能手表、智能手环、头戴设备等。服务器104可以用独立的服务器或者是多个服务器组成的服务器集群来实现。
在一个实施例中,如图2所示,提供了一种多任务模型生成方法,以该方法应用于图1中的服务器为例进行说明,包括以下步骤:
步骤200,获取第一语言表征模型,所述第一语言表征模型是基于第一历史文本数据对原始语言表征模型训练得到的。
其中,第一语言表征模型是基于已经使用了大量预料预训练过的原始语言表征模型的基础上,再用本申请收集的第一历史文本数据进行MLM预训练得到的模型。第一历史文本数据指收集到的没有对数据进行标注的文本数据。原始语言表征模型指经过原模型作者预训练过的BERT模型。MLM,全称为Masked Language Model,是BERT模型预训练的两大任务之一,是一种无监督的训练方法,它可以在大型的无标注语料上预训练得到一个较好的文本语义提取器,在训练的时候随机从输入语料上标注掉一些词,然后通过文本的上下文预测标注掉的词。BERT模型,全称为Bidirectional Encoder Representation fromTransformers,是一个预训练的语言表征模型,其强调了不再像以前一样采用传统的单向语言模型或者把两个单向语言模型进行浅层拼接的方法进行预训练,而是采用新的maskedlanguage model(MLM),以致能生成深度的双向语言表征。
具体地,为了获得泛化性能和鲁棒性更好的语言表征模型,便在原始语言表征模型的基础上,通过无标注的第一历史文本数据对原始语言表征模型进行MLM预训练,MLM预训练是一种无监督的训练方法,可以在较大型的无标注的第一历史文本数据上预训练获得一个较好的文本语义提取器,在一定程度上提高了语言表征模型的泛化性能,为后续进程的执行奠定了一个较好的基础。
步骤202,获取第二语言表征模型,所述第二语言表征模型是通过第二历史文本数据对应的增强训练集对第一语言表征模型进行训练得到的。
其中,第二语言表征模型是指基于第一语言表征模型的基础上,通过对第二历史文本数据对应的增强训练集进行数据增强操作得到增强训练集,基于增强训练集对第一语言表征模型进行训练得到的模型。第二历史文本数据是指收集到的对数据进行标注的文本数据。数据增强操作指为扩充数据集的规模,使得训练出来的语言表征模型的泛化性能和实体识别任务的性能能够得到增强,采用方法对第二历史文本数据对应的原始训练集进行规模扩充的操作,其中所采用的方法有Label-wise token replacement(LWTR)、Synonymreplacement(SR)、Mention replacement(MR)、Shuffle within segments(SiS)。原始训练集指第二历史文本数据中划分出用于训练模型的文本数据集。增强训练集指对原始数据集进行数据增强操作获得的文本数据集。
具体地,为了最后训练出来的多任务模型的泛化性能能够尽可能的达到预期,采用4种静态的数据增强方式,在训练前处理好增强的数据,得到数据量的原始训练集4倍的增强数据集,基于所述增强数据集对第一语言表征模型进行训练,得到泛化性能有所提高的第二语言表征模型。
步骤204,基于所述第二历史文本数据对应的原始训练集对所述第二语言表征模型进行训练,得到中间语言表征模型和所述原始训练集对应的中间语义向量。
其中,原始训练集指第二历史文本数据中划分出用于训练模型的文本数据集。中间语言表征模型指基于第二历史文本数据对应的原始训练集对第二语言表征模型进行训练得到的模型,该模型用于分别与下游结构中的实体识别模型和情感分析模型进行连接。实体识别模型用于完成命名实体识别任务。情感分析模型用于完成情感分析任务。中间语义向量指通过第二历史文本数据对应的原始训练集对第二语言表征模型进行训练后,对原始训练集中的文本进行语义提取,使得文本中的每个字都得到对应的语义向量,该语义向量用于作为实体识别模型和情感分析模型的输入特征。一个文本指一句话。
具体地,因为增强训练集在一定程度上来说不是完全真实的数据,所以需要进一步纠正模型在真实数据上的学习能力。因此需要继续采用第二历史文本数据对应的原始训练集对第二语言表征模型进行训练,使得训练出来的中间语言表征模型能够更好的学习到原始训练集的文本规律,更好的提取文本的语义信息。
步骤206,基于所述中间语义向量对原始实体识别模型进行训练,得到中间实体识别模型。
其中,原始实体识别模型指能够用于完成命名实体识别任务的CRF模型,CRF模型也称条件随机场,其结合了最大熵模型和隐马尔科夫模型的特点,是一种无向图模型,常用于标注或分析序列资料,如自然语言文字或是生物序列。中间实体识别模型指基于中间语义向量对原始实体识别模型进行训练得到的模型。
具体地,语言表征模型只是学到了文本中每个字最有可能对应的实体标注是什么,在语言表征模型的训练过程有考虑到每个字左边和右边的上下文信息,但是输出的最大分数对应的实体标注可能有误,不能做到百分之百的正确,可能会出现“B-”后面直接跟着“B-”,或标注开头以“I-”开头等问题,因此需要通过实体识别模型解决该问题。通过中间语义向量对原始实体识别模型进行训练学习,使得训练得到的中间实体识别模型学习到了原始训练集中实体标签之间的约束条件,也将这些条件称为转移规则,从而较好的解决了上述存在的问题。
步骤208,基于各个所述中间语义向量对原始情感分析模型进行训练,得到中间情感分析模型。
其中,原始情感分析模型指能够用于情感分析任务的多层感知机(MLP,Multilayer Perceptron),也叫人工神经网络,该情感分析模型除了输入输出层,其中间采用了两层的隐藏层,此外各层之间采用ReLU激活函数以及Dropout层,输出层设置三个输出神经元。中间情感分析模型指基于中间语义向量对原始情感分析模型进行训练得到的模型。
具体地,由于情感分析属于二分类任务,需要基于各个文本的文本特征向量进行训练,而中间语义向量对应的是原始训练中每个字都编码成的一个向量,因此需要先将各个文本的所有字的向量转换成一个向量,也就是将各个文本对应的各个中间语义向量相加求平均得到的平均向量作为各个文本对应的文本特征向量,然后基于所述文本特征向量对原始情感分析模型进行训练得到中间情感分析模型。
步骤210,将所述中间语言表征模型分别与中间实体识别模型和中间情感分析模型连接组成多任务模型,基于所述原始训练集对所述多任务模型进行多次训练,生成对应的多个候选多任务模型。
其中,多任务模型指能够用于提取文本更深层语义问题并确定文本相邻实体标签之间的转移规则的模型,该模型能够完成命名实体识别任务和情感分析任务,即一个模型同时实现了两个任务的决策。候选多任务模型指基于原始训练集调参训练出的具有不同参数的多任务模型。
具体地,为了尽可能地获取具有最好泛化性能模型,需要对多任务模型进行多次调参训练,其中多任务模型的损失函数采用两个任务的加权损失进行参数更新,然后从训练得到的多个候选多任务模型中选出最优的模型作为目标多任务模型,所述目标多任务模型从原始训练集中学习得到了原始训练集文本中的规律,能够较好的确保命名实体识别任务和情感分析任务的预测更加准确。
步骤212,基于所述第二历史文本数据对应的测试集对各个所述候选多任务模型进行测试评估,记录各个候选多任务模型对应的中间实体识别模型的第一评价结果和中间情感分析模型的第二评价结果。
其中,测试集指从第二历史文本数据中划分用于测试评估多任务模型泛化性能的文本数据。第一评价结果指基于测试集对中间实体识别模型进行测试评估计算得到的评价指标。第二评价结果指基于测试集对中间情感分析模型进行测试评估计算得到的评价指标。所述评价指标均指F1分数。F1分数是统计学用来衡量分类模型精确度的一种指标,其同时兼顾了分类模型的精确度和召回率,是分类模型精确度和召回率的调和平均。精确度指预测结果中为真的结果中实际结果的占比。召回率指实际结果为真的情况中预测结果为真的占比。
具体地,通过训练得到多个候选多任务模型之后,需要从各个候选多任务模型中选出最优的模型,也就是各个候选多任务模型中具有最好泛化性能的模型。基于综合方面考虑,采用F1分数作为评价指标,F1分数的计算公式如公式(1)所示,其中F1指代F1分数,P指代精确度,R指代召回率。在训练得到多个候选多任务模型时需要将各个候选多任务模型对应的中间实体识别模型的第一评价结果和中间情感分析模型的第二评价结果进行记录,为后续进程做数据准备。
步骤214,基于所述第一评价结果和第二评价结果从所述多个候选多任务模型中确定目标多任务模型。
其中,目标多任务模型指各个候选多任务模型中具有最优泛化性能的候选多任务模型。
具体地,将各个候选多任务模型对应的中间实体识别模型的第一评价结果和中间情感分析模型的第二评价结果进行相加求平均,得到第三评价结果。将所述第三评价结果作为对应的候选多任务模型的评价指标,从各个所述评价指标中找出最大评价指标,将最大评价指标对应的候选多任务模型作为目标多任务模型。其中,多任务模型整体框架构建流程如图3所示。
上述多任务模型生成方法、装置、计算机设备、存储介质和计算机程序产品,通过获取第一语言表征模型,所述第一语言表征模型是基于第一历史文本数据对原始语言表征模型训练得到的,获取第二语言表征模型,所述第二语言表征模型是通过第二历史文本数据对应的增强训练集进行训练得到的,基于所述第二历史文本数据对应的原始训练集对所述第二语言表征模型进行训练,得到中间语言表征模型和所述原始训练集对应的中间语义向量,基于所述中间语义向量对原始实体识别模型进行训练,得到中间实体识别模型,基于各个所述中间语义向量对原始情感分析模型进行训练,得到中间情感分析模型,将所述中间语言表征模型分别与中间实体识别模型和中间情感分析模型连接组成多任务模型,基于所述原始训练集对所述多任务模型进行多次训练,生成对应的多个候选多任务模型,基于所述第二历史文本数据对应的测试集对各个所述候选多任务模型进行测试评估,记录各个候选多任务模型对应的中间实体识别模型的第一评价结果和中间情感分析模型的第二评价结果,基于所述第一评价结果和第二评价结果从所述多个候选多任务模型中确定目标多任务模型。通过基于无标注的第一历史文本数据对原始语言表征模型进行训练得到第一语言表征模型,基于有标注的第二历史文本数据对应的增强训练集对第一语言表征模型进行训练得到第二语言表征模型,基于第二历史文本数据对应的原始训练集对第二语言表征模型进行训练得到中间情感分析模型和所述原始训练集对应的中间语义向量,基于所述中间语义向量分别对原始实体识别模型和原始情感分析模型进行训练,得到中间实体识别模型和中间情感分析模型,基于所述中间语言表征模型、中间实体识别模型和中间情感分析模型得到多任务模型,基于多任务模型和第二历史文本数据对应的训练集进行多次调参训练,得到多个候选多任务模型,基于第二历史文本数据对应的测试集对各个候选多任务模型进行测试评估,得到评估结果,基于评估结果确定目标多任务模型,提高了多任务模型的泛化性能和鲁棒性,从而提高了挖掘文本语义信息的效率。
在一个实施例中,如图4所示,步骤S200之前,还包括:
步骤S400,从所述第一历史文本数据中获取第一目标词,所述第一目标词是从各个文本中随机选取预设比例的词得到的。
其中,所述第一目标词指从第一历史文本数据的各个文本中随机抽取用于标注成特殊符号的词。预设比例指一个文本对应的第一目标词占该文本的比例。本申请的预设比例是百分之十五。
具体地,通过无监督的MLM无监督的训练方法,随机筛选第一目标词进行特殊字符的标注,通过原始语言表征模型来预测被标注掉的词,不断地调整模型的参数使得模型预测正确的概率尽可能增大,从而使得原始语言表征模型更好的学习到上下文的语义规律,有利于训练得到的第一语言表征模型的泛化性能较原始语言表征模型有一定程度的提高。
步骤S402,基于所述第一历史文本数据和第一目标词,对所述原始语言表征模型进行训练,得到所述第一语言表征模型,所述第一历史文本数据中随机的一个文本会被多次作为所述原始语言表征模型的输入数据,所述随机文本中各个第一目标词按第一预设比例的概率替换成特殊字符,按第二预设比例的概率替换成其他任意词和按第三预设比例的概率将保留原始词。
其中,第一预设比例指第一目标词被替换成特殊字符的概率。第二预设比例指第一目标词被替换成其他任意词的概率。第三预设比例指第一目标词保持原始词的概率。特殊符号指用来标注替换掉的词的符号,且特殊符号是唯一确定的,均为“[mask]”。第一预设比例等于百分之八十,第二预设比例等于百分之十,第三预设比例等于百分之十,第一预设比例、第二预设比例和第三预设比例相加等于1。
具体地,对原始语言表征模型进行训练过程中,各个文本都会有预设比例个词被特殊符号替换掉,并且各个文本都会随机多次的作为原始语言表征模型的输入数据用于参数学习,对应文本中的第一目标词并不是每次都替换成特殊符号,而是有第一预设比例的概率替换成特殊字符,第二预设比例的概率替换成其他任意词,第三预设比例的概率保持原有词。根据一定的比例替换成不同的词或特殊符号主要是因为语言表征模型的文本提取层要保持对每个输入词的分布式表征,以避免语言表征模型将特殊符号作为字词记忆。文本提取层是一个利用注意力机制来提高模型训练速度的Transformer模型,其是完全基于自注意力机制的一个深度学习模型,因为其适用于并行化计算和其本身模型的复杂程度导致它在精度和性能上都要高于循环神经网络RNN。
本实施例基于第一历史文本对原始语言表征模型进行训练,得到第一语言表征模型,在训练的过程中采用了MLM无监督的训练方法,有利于提高训练得到的第一语言表征模型挖掘文本上下文语义的准确率以及效率。
在一个实施例中,如图5所示,步骤S202之前,还包括:
步骤S500,基于二项分布和标签对所述第二历史文本对应的原始训练集的字进行替换,得到第二训练集。
其中,二项分布指多个独立的成功/失败试验中成功的次数的离散概率分布。第二训练集指对原始训练集进行具有相同标签的字替换之后得到的数据集。
具体地,对第二历史文本数据对应的原始训练集的每一字,都通过二项分布来选择是否被替换掉,如果是被替换,就从原始训练集中选择与对应字有相同标签的字进行替换,也就是具有相同标签的字进行替换。
步骤S502,基于通用本体获取所述第二历史文本对应的原始训练集中的同义词,基于二项分布对各个同义词进行随机同义词替换,依次延展所述替换的同义词对应的标签,得到第三训练集。
其中,通用本体指用于描述若干个领域知识的一种专门本体,本申请采用的是WordNet通用本体。同义词指具有相近意思的词。第三训练集指对原始训练集进行随机同义词替换之后得到的数据集。
具体地,通过通用本体查找原始训练集中具有相近意思的同义词,然后根据二项分布对各个同义词进行随机同义词替换,如果替换的同义词字数大于被替换的同义词,则依次延展替换同义词的标签。
步骤S504,获取所述第二历史文本对应的原始训练集中具有相同实体类型的实体,基于二项分布对各个所述实体进行随机同类型实体替换,依次延展所述替换的实体对应的标签,得到第四训练集。
其中,实体指命名实体,它一般指的是文本中具有特定意义或者指代性强的实体,学术上通常包括实体类、时间类、数字类三大类和人名、地名、组织机构名、时间、日期、货币、百分比七小类。第四训练集指对原始训练集进行随机同类型实体替换之后得到的数据集。
具体地,从原始训练集中找出具有相同实体类型的同类型实体,然后根据二项分布对各个同类型实体进行随机同类型实体替换,如果替换的同类型实体字数大于被替换的同类型实体,则依次延展替换同类型实体的标签。
步骤S506,基于实体切分所述第二历史文本对应的原始训练集中的各个文本,基于二项分布将切分得到的各个文本片段进行随机文本片段交换,得到第五训练集;
其中,文本片段指根据文本中实体进行切分后得到的片段。第五训练集指对原始训练集进行随机文本片段交换之后得到的数据集。
具体地,找出各个文本中的实体,在个实体的位置对文本进行切分,然后根据二项分布对切分后得到的文本片段进行随机交换。
步骤S508,基于第二训练集、第三训练集、第四训练集和第五训练集组成所述第二历史文本数据对应的增强训练集。
其中,增强训练集指将通过对原始训练集进行同标签字替换得到的第二训练集、进行同义词替换得到的第三训练集、进行同类型实体替换得到的第四训练集和进行文本片段替换得到的第五训练集的集合。
具体地,扩大数据集的规模,可以采用Label-wise token replacement(LWTR)、Synonym replacement(SR)、Mention replacement(MR)和Shuffle within segments(SiS)这四种静态的数据增强方式,对原始数据集进行改变,得到数据量是原始训练集四倍的增强训练集。
本实施例通过对原始训练集进行同标签字替换、同义词替换、同类型实体替换和文本片段替换得到增强训练集,扩充了数据集的规模,基于增强训练集对第一语言表征模型进行训练得到第二语言表征模型,有利于第二语言表征模型的权重有一个更好的学习起点,方便第二语言表征模型在原始训练集上快速收敛,从而提高了后续训练得到的各个模型的泛化性能,有利于最终目标多任务模型挖掘文本语义效率的提高。
在一个实施例中,如图6所示,步骤S204包括:
步骤S600,将所述原始训练集进行字级别的分词操作,获得所述原始训练集对应的各个字,根据词库的映射将所述各个字转成所述词库中对应的索引,获得各个字对应的索引编号,基于所述各个字对应的索引编号和各个字对应的文本获取所述原始训练集中各个文本对应的索引串。
其中,字级别的分词操作指以字为单位对文本中的字词进行切分的操作。词库用于存储字词与字词对应的索引。索引编号指原始训练集中各个字在词库中对应的编号。索引串指由原始训练集中各个文本中各个字对应索引编号组成的,具有字与索引之间映射关系的串。
具体地,先将原始训练集中的文本进行字级别的分词,然后根据词库存在的映射关系,将分词操作后得到的各个字转成词库里对应的索引,使得每个字都有对应的索引编号,基于各个字的索引编号完成文本从字符串到索引串的映射。
步骤S602,对各个所述索引串进行编码得到对应的编码向量。
其中,编码向量是词向量(对应token embedding)、文本向量(对应segmentembedding)和位置向量(对应position embedding)这三个嵌入特征的和。词向量指初始化时为每个字索引分配一个随机的固定维度的向量,后续训练阶段所述向量能够随着模型的训练反向传播更新所述向量对应的值。文本向量只有两种向量表示:第一种,若两个文本简单拼接在一起之后输入到模型中,则其中一个文本向量是把0赋值给第一个文本中的各个字,另外一个文本向量是把1赋值给第二个文本中的各个字,例如两组文本向量:[[0,0,…],[1,1,…]]区分两个文本;第二种,若只有一个文本输入到模型中,则其文本中的各个字赋值为0。位置向量指各个字对应的绝对位置编码,因为语言表征模型无法确定文本中字或词的相对位置,所以采用绝对位置编码来显示地引入位置信息。
步骤S604,将各个所述编码向量输入到所述第二语言表征模型的文本语义提取层中,所述第二语言表征模型由预设数量的文本语义提取层构成,将所述编码向量在每一层的文本语义提取层中进行多次线性变换,得到第一矩阵、第二矩阵和第三矩阵。
其中,文本语义提取层是一个利用注意力机制来提高模型训练速度的Transformer模型,其是完全基于自注意力机制的一个深度学习模型,因为其适用于并行化计算和其本身模型的复杂程度导致它在精度和性能上都要高于循环神经网络RNN,其包含有12个注意力头,也就是对应有12个自注意力层。线性变换指线性空间到其自身的线性映射。预设数量指本申请的语言表征模型中包含的文本语义提取层的数目,其中本申请中的语言表征模型采用十二层文本语义提取层,各文本语义提取层按照串联的形式堆叠构成语言表征模型的核心结构。第一矩阵指最能表达各个文本语义的字词的特征表示,本申请指代的是文本语义提取层中自注意力层对应的Q矩阵。第二矩阵指各个文本的关键字的特征表示,本申请指代的是文本语义提取层中自注意力层对应的K矩阵。第三矩阵指各个文本的内容的特征表示,本申请指代的是文本语义提取层中自注意力层对应的V矩阵。自注意力层指文本语义提取层中的self-attention,其能够减少对外部信息的依赖,快速地捕捉特征的内部相关性。
具体地,所述第二语言表征模型中采用十二层的文本语义提取层,十二层文本语义提取层以串联的形式进行堆叠,使得上一层的文本语义提取层的输出作为下一层文本语义层的输入,每一层的文本语义层都要对输入向量进行三次线性变换,得到第一矩阵、第二矩阵和第三矩阵,因此每一层的文本语义提取层其实都是更深层次地对所述编码向量进行语义的挖掘。
步骤S606,将所述第一矩阵、第二矩阵和第三矩阵进行融合得到文本语义提取层中各自注意力层对应的注意力得分矩阵,将各个注意力得分矩阵进行拼接,得到中间注意力得分矩阵。
其中,融合指先对第一矩阵和第二矩阵进行点积计算,基于点积计算得到的结果除以预设常数,再基于除以预设常数得到的结果进行softmax归一化的操作。softmax归一化指归一化指数函数,其是逻辑函数的一种推广,能将一个含任意实数的k维向量“压缩”到另一个k维实向量中,使得每一个元素的范围都在(0,1)之间,并且所有元素的和为1。注意力得分矩阵是经过自注意力层之后得到的特征向量,该特征向量可以表示各文本特征的内部相关性。中间注意力得分矩阵是将各个注意力得分合并拼接之后得到的特征向量。
具体地,每一层的文本语义提取层中,将得到的第一矩阵和第二矩阵进行点积计算,基于点积计算得到的结果除以预设常数,再基于除以预设常数得到的结果进行归一化的操作,获得了文本语义层中各自注意力层对应的注意力得分矩阵,基于各个注意力得分矩阵进行拼接,得到中间注意力得分矩阵。
步骤S608,将所述中间注意力得分矩阵输入全连接层,得到文本语义提取层中多头注意力层的输出结果,将所述输出结果依次输入残差模块、归一化层、全连接层、残差模块和归一化层之后,得到目标输出结果,基于所述目标输出结果获取所述原始训练集对应的中间语义向量,生成中间语言表征模型。
其中,全连接层是每一个结点都与上一层的所有结点相连,用来把输入的特征综合来。输出结果指编码向量经过多头注意力层的操作之后输出的特征向量。目标输出结果是一个文本语义提取层对应的输出结果。中间语义向量指原始训练集中各个字进行语义提取后对应的语义向量。中间语言表征模型指基于第二历史文本数据对应的原始训练集对第二语言表征模型进行训练后得到的模型。
具体地,将中间注意力得分矩阵输入全连接层,所述全连接层的输出即为文本语义提取层对应的多头注意力层的输出结果,将所述输出结果依次输入残差模块、归一化层、两层全连接层、残差模块和归一化层之后,得到目标输出结果,所述目标输出结果为一层文本语义提取层的输出结果,每一层的文本语义层的目标输出结果作为下一层文本语义提取层的输入,最后一层文本语义提取层的目标输出结果即为对第二语言表征模型进行训练得到的输出结果,即文本中每一个字都得到了对应的语义向量,将所述语义向量作为原始训练集对应的中间语义向量,将基于第二历史文本数据对应的原始训练集对第二语言表征模型训练生成的模型作为中间语言表征模型。
本实施例通过基于第二历史文本数据对应的原始训练集对第二语言表征模型进行训练,得到了中间语言表征模型,所述中间语言表征模型对原始训练集进行了语义的提取,进一步纠正了第二语言表征模型在原始训练集上的学习能力,提高了模型的泛化性能,从而有利于文本语义挖掘效率的提升。
在一个实施例中,如图7所示,步骤S206包括:
步骤S700,基于所述中间语义向量,获取状态分数矩阵;
其中,状态分数矩阵用于表示第二历史文本数据对应的原始训练集的文本中,各个字对应的实体标签可以换成各种实体标签类型的概率。
具体地,在基于第二历史文本数据对第二语言表征模型进行训练得到中间语言表征模型的过程中,已记录有出各个字对应的实体标签可换成各种实体类型的情况,基于存储了所述情况得中间语义向量获取对应的状态分数矩阵。
步骤S702,获取随机的转移分数矩阵,基于所述状态分数矩阵和转移分数矩阵对所述原始实体识别模型进行训练并计算对应的损失函数,基于所述损失函数,不断调整转移分数矩阵,得到当前转移分数矩阵,基于当前转移分数矩阵和状态分数矩阵对所述原始实体识别模型不断进行训练,直到对应的损失函数满足预设条件后,得到满足预设条件的损失函数所对应的目标转移分数矩阵;
其中,转移分数矩阵用于表示第二历史文本数据对应的原始训练集的文本中,各个字与字对应的相邻字的实体标签的各种组合的概率。损失函数指用来度量模型的预测值与真实值的差异程度的运算函数,其由真实路径分数和所有路径总分数两部分组成。其中,对于一个文本,文本中每一字都有一个实体标签,将多个字连接起来,就得到了一个标签序列,一个文本中可以有多个不同的标签序列,一个标签对应一条路径。真实路径分数指真实的标签序列对应的路径得分。所有路径总分数指将每个标签序列对应的路径进行计算并求和的路径得分。当前转移分数矩阵指在对实体识别模型进行训练的反向传播过程中,不断调整转移分数矩阵得到的矩阵。预设条件指期望训练得到损失函数的最小设定值。目标转移分数矩阵指训练原始实体模型得到的最小化损失函数对应的转移分数矩阵。
具体地,原始实体识别模型中主要有状态特征函数和状态转移函数这两种特征函数,要获得输入的字序列与对字序列进行实体标签后的标签序列之间的关系,需要知道状态特征函数和状态转移函数以及这两种函数对应的权值。因此先随机获取一个初始化的转移分数矩阵,在对原始实体识别模型训练的反向传播过程中,基于损失函数不断调整优化转移分数矩阵得到当前转移分数矩阵,而随着转移分数矩阵的不断调整,真实路径的分数会变得越来越大,损失函数也相应增大,所述情况不太符合反向传播的工作机制,因此需要将真实路径的分数取负。最后损失函数满足预设条件,也就是训练得到最小化损失函数,将所述损失函数对应的转移分数矩阵作为目标转移分数矩阵。
步骤S704,基于所述状态分数矩阵,获得状态特征函数和状态特征函数对应的权值,基于所述目标转移分数矩阵,获得状态转移函数和状态转移函数对应的权值,基于所述状态特征函数和状态特征函数对应的权值以及状态转移函数和状态转移函数对应的权值得到目标似然性函数,获得所述中间实体识别模型。
其中,状态特征函数是用来计算输入序列对应的状态分数的,其只针对当前位置的字可以被转换成哪种类型的实体标签。状态特征函数对应的权值指状态特征函数对目标似然性函数的重要程度。状态转移函数是用来计算输入序列对应的转移分数的,其关注的是当前位置和其相邻位置的字可以有哪些实体标签类型的组合。状态转移函数对应的权值指状态转移函数对目标似然性函数的重要程度。目标似然性函数指预测序列与目标实体标注序列之间的关系。预测序列指用于预测命名实体的序列,目标实体标注序列指将预测序列进行实体标签的标注,标注得到最优的标签序列。
具体地,目标似然性函数需要特征函数及特征函数对应的权值求取得到,基于状态分数矩阵和目标转移分数矩阵可以求取对应的目标似然性函数,基于目标似然性函数就可以获取预测序列对应的目标实体标注序列,其中目标似然性函数的公式如公式(2),其中P(y|x)表示在x条件下产生y条件的概率,x表示预测序列,y表示预测序列对应的实体标注序列,tk表示状态转移函数,λk表示状态转移函数对应的权值,sl表示状态特征函数,μl表示状态特征函数对应的权值,k表示状态转移的个数,l表示某个词上定义的状态特征的个数,i表示词在句子中的位置,Z(x)是规范化因子,其计算公式如公式(3)所示。
本实施例通过基于中间语义向量对原始实体识别模型进行训练得到中间实体识别模型,其中在所述原始实体识别模型训练的过程中,原始实体识别模型可以自动学习到中间语义向量中实体标注之间的约束条件,也就是相邻实体标签之间的转移规则,从而更好地保证了最终预测出的实体标注序列结果的有效性。
在一个实施例中,如图8所示,步骤S208包括:
步骤S800,基于各个文本对应的中间语义向量进行相加求平均得到文本特征向量;
具体地,为了更好的表征各个文本,将各个文本对应的中间语义向量相加求平均得到的特征向量作为各个文本对应的文本特征向量,这样就得到了各个文本对应的语义表示,有利于后续对原始情感分析模型二分类任务的顺利进行。
步骤S802,基于所述文本特征向量对所述原始情感分析模型进行训练,得到所述中间情感分析模型。
具体地,将文本特征向量依次输入输入层、隐藏层、ReLU激活函数、Dropout层、隐藏层、ReLU激活函数、Dropout层、输出层,得到对应的情感倾向结果,完成对原始情感分析模型的训练,得到中间情感分析模型。此外,为了获得具有较好泛化性能的情感分析模型,将模型对应的情感倾向结果与真实训练标签输入交叉熵损失函数进行损失计算的关系式作为对原始情感分析模型进行训练时对应的损失函数。
本实施例基于所述原始训练集中的各个中间语义向量计算出各个文本对应的文本特征向量,基于文本特征向量对原始情感分析模型进行训练得到中间情感分析模型,较好地将中间语言表征模型提取的文本语义特征应用于情感分析任务,在一定程度上提高了挖掘文本语义信息的效率。其中情感分析模型中只采用了两层隐藏层,避免了由于中间语言表征模型已提取足够深层的语义信息后,又进行再深层语义信息的提取导致的过拟合现象,在各层之间引入非线性元素ReLU激活函数增强了情感分析模型的拟合能力,同时在各层之间加入Dropout层提高了情感分析模型的鲁棒性,有效地防止情感分析模型出现过拟合现象。
在一个实施例中,如图9所示,步骤S214之后,还包括:
步骤S900,获取目标文本数据,对所述目标文本数据进行字粒度分词,获得目标文本数据中的各个字,基于词库的映射对所述各个字进行索引编号,基于所述索引编号和目标文本数据对应的索引串,确定目标文本数据对应的编码向量;
其中,目标文本数据指预测的文本数据。字粒度分词指字级别的分词。
具体地,目标文本数据不能直接作为目标多任务模型的直接输入,还需要对文本进行字粒度的分词操作,并求取目标文本对应的编码向量。
步骤S902,基于所述编码向量和目标多任务模型,获取得到目标实体标注序列和目标情感倾向。
其中,目标实体标注序列指目标文本对应的最优的实体标签序列。目标情感倾向指目标文本对应的情感表达意向,其中包括正面、负面和中立三种情感倾向类别。
具体地,当输入的目标文本数据是产品评论文本时,目标多任务模型推理阶段的流程如图10所示。
本实施例通过基于目标文本数据和目标多任务模型,获得目标文本数据对应的目标实体标注序列和目标情感倾向,实现了一模型实现两任务的决策。也就是说,实现了端到端的预测,节省预测成本的消耗。
在一个实施例中,将收集到的无标注的产品评论数据集作为第一历史文本数据,将经过BERT模型原作者预训练过的BERT模型作为原始语言表征模型,基于所述第一历史文本数据对所述原始语言表征模型进行训练得到第一语言表征模型。将收集到的有标注的评论原始自然语言文本作为第二历史文本数据,其中所述第二历史文本数据的标注包含命名实体识别任务所需的实体标注-BIO格式的实体标注(包含了银行实体、产品实体、用户评论名词实体与用户评论形容词实体,具体BIO标注示例图如图11所示)和情感分析任务的数据标签(1表示正面,0表示负面,2表示中立),所述命名实体任务对应实体识别模型的执行过程,所述情感分析任务对应情感分析模型对应的执行过程。将第二历史文本数据对应的原始训练集进行数据增强操作,得到增强训练集,基于增强训练集对第一语言表征模型进行训练得到第二语言表征模型。基于第二历史文本数据对应的原始训练集对第二语言表征模型进行训练,得到中间语言表征模型和所述原始训练集对应的中间语义向量。基于中间语义向量对原始实体识别模型进行训练得到中间实体识别模型。基于中间语义向量对原始情感分析模型进行训练得到中间情感分析模型。将中间语言表征模型分别与中间实体识别模型和中间情感分析模型进行连接得到多任务模型。基于第二历史文本数据对应的测试集对多任务模型进行预测,得到预测的实体标注序列和预测的情感倾向。通过采用经过大型语料预训练过的原始语言表征模型以及采用领域内继续预训练和针对实体粒度的数据增强方式,极大地提高了多任务模型的泛化性能和鲁棒性,可以更好地挖掘文本的深层语义信息,从而提高了挖掘文本语义信息的效率。采用CRF模型作为原始实体识别模型,将原始实体识别模型所谓命名实体识别任务的下游结构,能够规范化相邻实体之间的转移规则问题,进一步提升命名实体识别任务的准确性。命名实体识别任务和情感分析任务共享语言表征模型框架,多任务模型训练的损失函数采用所述命名实体识别任务和情感分析任务对应的加权损失进行模型的参数更新,实现了端到端的训练与预测,节省了训练与预测的成本消耗。
基于同样的发明构思,本申请实施例还提供了一种用于实现上述所涉及的多任务模型生成方法的多任务模式生成装置。该装置所提供的解决问题的实现方案与上述方法中所记载的实现方案相似,故下面所提供的一个或多个多任务模型生成装置实施例中的具体限定可以参见上文中对于多任务模型生成方法的限定,在此不再赘述。
在一个实施例中,如图12所示,提供了一种多任务模型生成装置,包括:第一语言表征模型获取模块1200、第二语言表征模型获取模块1202、中间语言表征模型生成模块1204、中间实体识别模型生成模块1206、中间情感分析模型生成模块1208、候选多任务模型生成模块1210、评价结果记录模块1212和目标多任务模型确定模块1214,其中:
第一语言表征模型获取模块1200,用于获取第一语言表征模型,所述第一语言表征模型是基于第一历史文本数据对原始语言表征模型训练得到的。
第二语言表征模型获取模块1202,用于获取第二语言表征模型,所述第二语言表征模型是通过第二历史文本数据对应的增强训练集进行训练得到的。
中间语言表征模型生成模块1204,用于基于所述第二历史文本数据对应的原始训练集对所述第二语言表征模型进行训练,得到中间语言表征模型和所述原始训练集对应的中间语义向量。
中间实体识别模型生成模块1206,用于基于所述中间语义向量对原始实体识别模型进行训练,得到中间实体识别模型。
中间情感分析模型生成模块1208,用于基于各个所述中间语义向量对原始情感分析模型进行训练,得到中间情感分析模型。
候选多任务模型生成模块1210,用于将所述中间语言表征模型分别与中间实体识别模型和中间情感分析模型连接组成多任务模型,基于所述原始训练集对所述多任务模型进行多次训练,生成对应的多个候选多任务模型。
评价结果记录模块1212,用于基于所述第二历史文本数据对应的测试集对各个所述候选多任务模型进行测试评估,记录各个候选多任务模型对应的中间实体识别模型的第一评价结果和中间情感分析模型的第二评价结果。
目标多任务模型确定模块1214,用于基于所述第一评价结果和第二评价结果从所述多个候选多任务模型中确定目标任务模型。
在一个实施例中,多任务模型生成装置还包括第一历史文本数据处理模块1216,用于从所述第一历史文本数据中获取第一目标词,所述第一目标词是从各个文本中随机选取预设比例的词得到的;基于所述第一历史文本数据和第一目标词,对所述原始语言表征模型进行训练,得到所述第一语言表征模型,所述第一历史文本数据中随机的一个文本会被多次作为所述原始语言表征模型的输入数据,所述随机文本中各个第一目标词按第一预设比例的概率替换成特殊字符,按第二预设比例的概率替换成其他任意词和按第三预设比例的概率将保留原始词。
在一个实施例中,多任务模型生成装置还包括增强训练集获取模块1218,用于基于二项分布和标签对所述第二历史文本对应的原始训练集的字进行替换,得到第二训练集;基于通用本体获取所述第二历史文本对应的原始训练集中的同义词,基于二项分布对各个同义词进行随机同义词替换,依次延展所述替换的同义词对应的标签,得到第三训练集;获取所述第二历史文本对应的原始训练集中具有相同实体类型的实体,基于二项分布对各个所述实体进行随机同类型实体替换,依次延展所述替换的实体对应的标签,得到第四训练集;基于实体切分所述第二历史文本对应的原始训练集中的各个文本,基于二项分布将切分得到的各个文本片段进行随机文本片段交换,得到第五训练集;基于第二训练集、第三训练集、第四训练集和第五训练集组成所述第二历史文本数据对应的增强训练集。
在一个实施例中,中间语言表征模型生成模块1204还用于将所述原始训练集进行字级别的分词操作,获得所述原始训练集对应的各个字,根据词库的映射将所述各个字转成所述词库中对应的索引,获得各个字对应的索引编号,基于所述各个字对应的索引编号和各个字对应的文本获取所述原始训练集中各个文本对应的索引串;对各个所述索引串进行编码得到对应的编码向量;将各个所述编码向量输入到所述第二语言表征模型的文本语义提取层中,所述第二语言表征模型由预设数量的文本语义提取层构成,将所述编码向量在每一层的文本语义提取层中进行多次线性变换,得到第一矩阵、第二矩阵和第三矩阵;将所述第一矩阵、第二矩阵和第三矩阵进行融合得到文本语义提取层中各自注意力层对应的注意力得分矩阵,将各个注意力得分矩阵进行拼接,得到中间注意力得分矩阵;将所述中间注意力得分矩阵输入全连接层,得到文本语义提取层中多头注意力层的输出结果,将所述输出结果依次输入残差模块、归一化层、全连接层、残差模块和归一化层之后,得到目标输出结果,基于所述目标输出结果获取所述原始训练集对应的中间语义向量,生成中间语言表征模型。
在一个实施例中,中间实体识别模型生成模块1206还用于基于所述中间语义向量,获取状态分数矩阵;获取随机的转移分数矩阵,基于所述状态分数矩阵和转移分数矩阵对所述原始实体识别模型进行训练并计算对应的损失函数,基于所述损失函数,不断调整转移分数矩阵,得到当前转移分数矩阵,基于当前转移分数矩阵和状态分数矩阵对所述原始实体识别模型不断进行训练,直到对应的损失函数满足预设条件后,得到满足预设条件的损失函数所对应的目标转移分数矩阵;基于所述状态分数矩阵,获得状态特征函数和状态特征函数对应的权值,基于所述目标转移分数矩阵,获得状态转移函数和状态转移函数对应的权值,基于所述状态特征函数和状态特征函数对应的权值以及状态转移函数和状态转移函数对应的权值得到目标似然性函数,获得所述中间实体识别模型。
在一个实施例中,中间情感分析模型生成模块1208还用于基于各个文本对应的中间语义向量进行相加求平均得到文本特征向量;基于所述文本特征向量对所述原始情感分析模型进行训练,得到所述中间情感分析模型。
在一个实施例中,多任务模型生成装置还包括目标实体标注序列和目标情感倾向获取模块1220,用于获取目标文本数据,对所述目标文本数据进行字粒度分词,获得目标文本数据中的各个字,基于词库的映射对所述各个字进行索引编号,基于所述索引编号和目标文本数据对应的索引串,确定目标文本数据对应的编码向量;基于所述编码向量和目标多任务模型,获取目标实体标注序列和目标情感倾向。
上述多任务模型生成装置中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。
在一个实施例中,提供了一种计算机设备,该计算机设备可以是服务器,其内部结构图可以如图13所示。该计算机设备包括处理器、存储器、输入/输出接口(Input/Output,简称I/O)和通信接口。其中,处理器、存储器和输入/输出接口通过系统总线连接,通信接口通过输入/输出接口连接到系统总线。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质和内存储器。该非易失性存储介质存储有操作系统、计算机程序和数据库。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的数据库用于存储历史文本数据。该计算机设备的输入/输出接口用于处理器与外部设备之间交换信息。该计算机设备的通信接口用于与外部的终端通过网络连接通信。该计算机程序被处理器执行时以实现一种多任务模型生成方法。
在一个实施例中,提供了一种计算机设备,该计算机设备可以是终端,其内部结构图可以如图14所示。该计算机设备包括处理器、存储器、输入/输出接口、通信接口、显示单元和输入装置。其中,处理器、存储器和输入/输出接口通过系统总线连接,通信接口、显示单元和输入装置通过输入/输出接口连接到系统总线。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质和内存储器。该非易失性存储介质存储有操作系统和计算机程序。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的输入/输出接口用于处理器与外部设备之间交换信息。该计算机设备的通信接口用于与外部的终端进行有线或无线方式的通信,无线方式可通过WIFI、移动蜂窝网络、NFC(近场通信)或其他技术实现。该计算机程序被处理器执行时以实现一种多任务模型生成方法。该计算机设备的显示单元用于形成视觉可见的画面,可以是显示屏、投影装置或虚拟现实成像装置。显示屏可以是液晶显示屏或者电子墨水显示屏,该计算机设备的输入装置可以是显示屏上覆盖的触摸层,也可以是计算机设备外壳上设置的按键、轨迹球或触控板,还可以是外接的键盘、触控板或鼠标等。
本领域技术人员可以理解,图13和图14中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
在一个实施例中,提供了一种计算机设备,包括存储器和处理器,存储器中存储有计算机程序,该处理器执行计算机程序时实现上述各方法实例中的步骤。
在一个实施例中,提供了一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现上述各方法实施例中的步骤。
在一个实施例中,提供了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中。计算机设备的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该计算机设备执行上述各方法实施例中的步骤。
需要说明的是,本申请所涉及的用户信息(包括但不限于用户设备信息、用户个人信息等)和数据(包括但不限于用于分析的数据、存储的数据、展示的数据等),均为经用户授权或者经过各方充分授权的信息和数据,且相关数据的收集、使用和处理需要遵守相关国家和地区的相关法律法规和标准。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、数据库或其它介质的任何引用,均可包括非易失性和易失性存储器中的至少一种。非易失性存储器可包括只读存储器(Read-OnlyMemory,ROM)、磁带、软盘、闪存、光存储器、高密度嵌入式非易失性存储器、阻变存储器(ReRAM)、磁变存储器(Magnetoresistive Random Access Memory,MRAM)、铁电存储器(Ferroelectric Random Access Memory,FRAM)、相变存储器(Phase Change Memory,PCM)、石墨烯存储器等。易失性存储器可包括随机存取存储器(Random Access Memory,RAM)或外部高速缓冲存储器等。作为说明而非局限,RAM可以是多种形式,比如静态随机存取存储器(Static Random Access Memory,SRAM)或动态随机存取存储器(Dynamic RandomAccess Memory,DRAM)等。本申请所提供的各实施例中所涉及的数据库可包括关系型数据库和非关系型数据库中至少一种。非关系型数据库可包括基于区块链的分布式数据库等,不限于此。本申请所提供的各实施例中所涉及的处理器可为通用处理器、中央处理器、图形处理器、数字信号处理器、可编程逻辑器、基于量子计算的数据处理逻辑器等,不限于此。
以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
以上所述实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对本申请专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请的保护范围应以所附权利要求为准。