CN115391499A - 生成多任务生成模型的方法、问答对生成方法和相关装置 - Google Patents

生成多任务生成模型的方法、问答对生成方法和相关装置 Download PDF

Info

Publication number
CN115391499A
CN115391499A CN202210869521.5A CN202210869521A CN115391499A CN 115391499 A CN115391499 A CN 115391499A CN 202210869521 A CN202210869521 A CN 202210869521A CN 115391499 A CN115391499 A CN 115391499A
Authority
CN
China
Prior art keywords
training
text
model
task
question
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN202210869521.5A
Other languages
English (en)
Inventor
汪硕芃
孙振华
张林箭
宋有伟
王冠颖
张聪
胡志鹏
范长杰
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Netease Hangzhou Network Co Ltd
Original Assignee
Netease Hangzhou Network Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Netease Hangzhou Network Co Ltd filed Critical Netease Hangzhou Network Co Ltd
Priority to CN202210869521.5A priority Critical patent/CN115391499A/zh
Publication of CN115391499A publication Critical patent/CN115391499A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/30Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
    • G06F16/33Querying
    • G06F16/332Query formulation
    • G06F16/3329Natural language query formulation or dialogue systems

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Mathematical Physics (AREA)
  • Theoretical Computer Science (AREA)
  • Artificial Intelligence (AREA)
  • Human Computer Interaction (AREA)
  • Computational Linguistics (AREA)
  • Data Mining & Analysis (AREA)
  • Databases & Information Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Machine Translation (AREA)

Abstract

本申请公开了一种生成多任务生成模型的方法、问答对生成方法和相关装置。该方法包括:利用第一训练集合,对初始预训练模型的第一编码器和第一解码器进行第一训练,获得预训练模型,第一训练集合包括目标领域无标注的第一训练文本,第一训练文本包括部分被掩蔽的文本;根据第二训练集合,对预训练模型训练,生成多任务生成模型,训练包括:对预训练模型中的第二编码器的第一适配器和第二解码器的第二适配器的参数调整,获得多任务生成模型,第二训练集合包括第二训练文本和第二训练文本的标记,第二训练文本包括相互关联的多个任务的多个文本,第二训练文本的标记表示多个文本对应的多个结果。该方法可以提高多任务生成模型的泛化性能和训练效率。

Description

生成多任务生成模型的方法、问答对生成方法和相关装置
技术领域
本申请涉及人工智能技术领域,尤其涉及生成多任务生成模型的方法、问答对生成方法和相关装置。
背景技术
随着人工智能技术的发展,许多应用领域利用人工智能模型实现问答对的自动化生成,以更好地为用户提供个性化服务,同时降低人工成本。从自然语言处理(naturelanguage processing,NLP)领域来说,问答对的自动化生成任务包括以下子任务:问题生成任务和阅读答案任务,问题生成任务是一种基于文本生成问题的任务,阅读理解任务是一种基于文本和问题找到该问题对应的答案的任务。
传统技术中,用于实现问答对生成的多任务生成模型包括多个子模型,该多个子模型与问答对生成任务的多个子任务相关联。训练时,对多个子模型并行独立训练,导致基于这种方式训练获得的多任务生成模型的泛化性能较差、训练效率较低。
因此,亟需一种生成多任务生成模型的方法,通过该方法可以提高多任务生成模型的泛化性能和训练效率。
发明内容
本申请提供了一种生成多任务生成模型的方法、问答对生成方法和相关装置,该方法可以提高多任务生成模型的泛化性能和训练效率。
本申请实施例第一方面提供了一种生成多任务生成模型的方法,用于生产多任务生成模型,该方法包括:利用第一训练集合,对初始预训练模型的第一编码器和第一解码器进行预训练,获得预训练模型,所述第一训练集合包括目标领域的第一训练文本,所述第一训练文本包括部分被掩蔽的文本内容,且所述第一训练文本是无标记的文本;根据第二训练集合,对所述预训练后的所述预训练模型进行第一训练,生成多任务生成模型,所述预训练模型包括第二编码器和第二解码器,所述第一训练包括:对所述第二编码器包括的第一适配器和所述第二解码器包括的第二适配器的参数进行调整,获得训练后的所述多任务生成模型,所述第二训练集合包括第二训练文本和所述第二训练文本的标记,所述第二训练文本包括相互关联的多个任务的多个文本,所述第二训练文本的标记表示所述多个任务的多个文本对应的多个结果。
可选的,在一些实现方式中,所述第一编码器包括第三适配器,所述第一解码器包括第四适配器,所述第三适配器的参数和所述第四适配器的参数是预设的参数,所述初始预训练模型的参数是根据序列到序列模型的参数确定的,其中,所述第一编码器包括的除所述第三适配器的参数之外的参数,与所述序列到序列模型包括的编码器的参数相同;所述第一解码器包括的除所述第四适配器的参数之外的参数,与序列到序列模型包括的解码器的参数相同;所述序列到序列模型是通过第二训练获得的神经网络模型。
可选的,在另一些实现方式中,所述利用第一训练集合,对初始预训练模型的第一编码器和第一解码器进行预训练,获得预训练模型,包括:利用所述第一编码器对所述第一训练文本进行编码,获得编码结果;利用所述第一解码器对所述编码结果进行解码,获得所述部分被掩蔽的文本的还原结果;根据所述还原结果与所述第一训练文本之间的差异,对所述第一编码器的参数和所述第一解码器的参数进行调整;待训练达到第一预设训练条件时,停止对所述第一编码器的参数和所述第一解码器的参数进行调整,获得所述预训练模型。
可选的,在另一些实现方式中,所述第一训练还包括:利用所述第二编码器对所述第二训练文本中的第一局部文本内容进行特征提取,获得第一特征向量,其中,利用所述第一适配器对第二特征向量执行第一操作,获得第三特征向量,所述第二特征向量是对输入至所述第二编码器的所述第一局部文本进行特征提取获得的向量,所述第一操作包括:降采样、非线性处理和升采样,所述第一特征向量是对所述第三特征向量执行求和归一化处理获得的向量;利用所述第二解码器对所述第二编码器的输出结果和所述第二解码器的输入数据进行特征还原,获得第四特征向量,其中,利用所述第二适配器对第五特征向量执行所述第一操作,获得第六特征向量,所述第二编码器的输出结果为所述第一特征向量,所述第二解码器的输入数据包括所述预训练模型对所述第二训练样本中的第二局部文本内容进行预测获得的结果,所述第二局部文本内容与所述第一局部文本内容不完全相同,所述第四特征向量是对所述第六特征向量执行求和归一化处理获得的向量,所述第五特征向量是对输入至所述第二解码器的所述第二编码器的输出结果和所述第二解码器的输入数据进行特征还原获得的向量。
可选的,在另一些实现方式中,所述第二编码器还包括具有第一注意力层的第一残差支路,以及具有第一前馈神经网络层和所述第一适配器的第二残差支路,所述方法还包括:利用所述第一注意力层对所述第一局部文本内容进行特征提取,获得第七特征向量;利用所述第一前馈神经网络层对所述第七特征向量进行特征提取,获得所述第二特征向量;所述第二解码器还包括具有第二注意力层的第三残差支路,具有第三注意力层的第四残差支路,以及具有第二前馈神经网络层和所述第二适配器的第五残差支路,所述方法还包括:利用所述第二注意力层对所述第二解码器的输入数据进行特征还原,获得第八特征向量;利用所述第三注意力层对所述第二编码器的输出结果和所述第八特征向量进行特征还原,获取第九特征向量;利用所述第二前馈神经网络层对所述第九特征向量进行特征还原,获取所述第五特征向量。
可选的,在另一些实现方式中,所述根据第二训练集合,对所述预训练后的所述预训练模型进行第一训练,生成多任务生成模型,包括:将所述第二训练文本输入至所述预训练模型,获得所述预训练模型的输出结果;根据所述第二训练文本的标记与所述预训练模型的输出结果之间的差异,对所述第一适配器的参数和所述第二适配器的参数进行调整;待训练达到第二预设训练条件时,停止对所述第一适配器的参数和所述第二适配器的参数进行调整,获得所述训练后的所述多任务生成模型。
可选的,在另一些实现方式中,所述相互关联的多个任务包括问句生成任务、问句相关性任务、阅读理解任务和答案排序任务,所述第二训练文本包括所述问句生成任务对应的第一任务文本,所述第一任务文本用于指示根据待识别的文本生成问句;所述第二训练文本还包括所述问句相关性任务对应的第二任务文本,所述第二任务文本用于指示确定所述待识别的文本与所述问句是否相关;所述第二训练文本还包括所述阅读理解任务对应的第三任务文本,所述第三任务文本用于指示根据所述问句从所述待识别的文本中获取所述问句对应的答案;所述第二训练文本还包括所述答案排序任务对应的第四任务文本,所述第四任务文本用于指示确定所述问句与所述答案是否相匹配。
可选的,在另一些实现方式中,所述目标领域为电商领域。
本申请实施例第二方面提供了一种问答对生成方法,该方法包括:获取待识别的文本;根据预设规则和多任务生成模型对所述待识别的文本进行处理,获得至少一个问答对,所述至少一个问答对包括从所述待识别的文本中获取的至少一个问题和至少一个答案,所述至少一个问题与所述至少一个答案关联;其中,所述多任务生成模型是根据本申请实施例提供的生成多任务生成模型的方法获得的模型。
可选的,在一些实现方式中,所述相互关联的多个任务包括问句生成任务、问句相关性任务、阅读理解任务和答案排序任务,所述第二训练文本包括所述问句生成任务对应的第一任务文本,所述第一任务文本用于指示根据待识别的文本生成问句;所述第二训练文本还包括所述问句相关性任务对应的第二任务文本,所述第二任务文本用于指示确定所述待识别的文本与所述问句是否相关;所述第二训练文本还包括所述阅读理解任务对应的第三任务文本,所述第三任务文本用于指示根据所述问句从所述待识别的文本中获取所述问句对应的答案;所述第二训练文本还包括所述答案排序任务对应的第四任务文本,所述第四任务文本用于指示确定所述问句与所述答案是否相匹配。
可选的,在另一些实现方式中,所述根据预设规则和多任务生成模型对所述待识别的文本进行处理,获得至少一个问答对,包括:按照所述第一任务文本的格式将所述待识别的文本输入至所述多任务生成模型,获得第一输出结果,所述第一输出结果为根据所述待识别的文本生成的问句;按照所述第二任务文本的格式将所述第一输出结果输入至所述多任务生成模型,获得第二输出结果,所述第二输出结果表示所述第一输出结果与所述待识别的文本是否相关;若所述第二输出结果表示所述第一输出结果与所述待识别的文本相关,则按照所述第三任务文本的格式将所述第一输出结果和所述待识别的文本输入至所述多任务生成模型,获得第三输出结果,所述第三输出结果表示从所述待识别的文本中能否获取所述第一输出结果对应的答案;若所述第三结果表示成功从所述待识别的文本中获取所述第一输出结果对应的答案,则按照所述第四任务文本的格式所述第一输出结果和所述第三输出结果输入至所述多任务模板,获得第四输出结果,所述第四输出结果表示所述第一输出结果与所述第三输出结果是否匹配;若所述第四输出结果表示所述第一输出结果与所述第三输出结果匹配,则将所述第一输出结果确定为所述至少一个问题,以及将所述第三输出结果确定为所述至少一个答案,获得所述至少一个问答对。
可选的,在另一些实现方式中,所述待识别的文本是从电商领域获取的文本。
本申请实施例第三方面提供了一种生成多任务生成模型的装置,该装置包括:训练单元,用于利用第一训练集合,对初始预训练模型的第一编码器和第一解码器进行预训练,获得预训练模型,所述第一训练集合包括目标领域的第一训练文本,所述第一训练文本包括部分被掩蔽的文本内容,且所述第一训练文本是无标记的文本;所述训练单元,还用于根据第二训练集合,对所述预训练后的所述预训练模型进行第一训练,生成多任务生成模型,所述预训练模型包括第二编码器和第二解码器,所述第一训练包括:对所述第二编码器包括的第一适配器和所述第二解码器包括的第二适配器的参数进行调整,获得训练后的所述多任务生成模型,所述第二训练集合包括第二训练文本和所述第二训练文本的标记,所述第二训练文本包括相互关联的多个任务的多个文本,所述第二训练文本的标记表示所述多个任务的多个文本对应的多个结果。
可选的,在一些实现方式中,所述第一编码器包括第三适配器,所述第一解码器包括第四适配器,所述第三适配器的参数和所述第四适配器的参数是预设的参数,所述初始预训练模型的参数是根据序列到序列模型的参数确定的,其中,所述第一编码器包括的除所述第三适配器的参数之外的参数,与所述序列到序列模型包括的编码器的参数相同;所述第一解码器包括的除所述第四适配器的参数之外的参数,与序列到序列模型包括的解码器的参数相同;所述序列到序列模型是通过第二训练获得的神经网络模型。
可选的,在另一些实现方式中,所述训练单元还用于:利用所述第一编码器对所述第一训练文本进行编码,获得编码结果;利用所述第一解码器对所述编码结果进行解码,获得所述部分被掩蔽的文本的还原结果;根据所述还原结果与所述第一训练文本之间的差异,对所述第一编码器的参数和所述第一解码器的参数进行调整;待训练达到第一预设训练条件时,停止对所述第一编码器的参数和所述第一解码器的参数进行调整,获得所述预训练模型。
可选的,在另一些实现方式中,所述训练单元还用于:利用所述第二编码器对所述第二训练文本中的第一局部文本内容进行特征提取,获得第一特征向量,其中,利用所述第一适配器对第二特征向量执行第一操作,获得第三特征向量,所述第二特征向量是对输入至所述第二编码器的所述第一局部文本进行特征提取获得的向量,所述第一操作包括:降采样、非线性处理和升采样,所述第一特征向量是对所述第三特征向量执行求和归一化处理获得的向量;利用所述第二解码器对所述第二编码器的输出结果和所述第二解码器的输入数据进行特征还原,获得第四特征向量,其中,利用所述第二适配器对第五特征向量执行所述第一操作,获得第六特征向量,所述第二编码器的输出结果为所述第一特征向量,所述第二解码器的输入数据包括所述预训练模型对所述第二训练样本中的第二局部文本内容进行预测获得的结果,所述第二局部文本内容与所述第一局部文本内容不完全相同,所述第四特征向量是对所述第六特征向量执行求和归一化处理获得的向量,所述第五特征向量是对输入至所述第二解码器的所述第二编码器的输出结果和所述第二解码器的输入数据进行特征还原获得的向量。
可选的,在另一些实现方式中,所述第二编码器还包括具有第一注意力层的第一残差支路,以及具有第一前馈神经网络层和所述第一适配器的第二残差支路,所述训练单元还用于:利用所述第一注意力层对所述第一局部文本内容进行特征提取,获得第七特征向量;利用所述第一前馈神经网络层对所述第七特征向量进行特征提取,获得所述第二特征向量;以及,所述第二解码器还包括具有第二注意力层的第三残差支路,具有第三注意力层的第四残差支路,以及具有第二前馈神经网络层和所述第二适配器的第五残差支路,利用所述第二注意力层对所述第二解码器的输入数据进行特征还原,获得第八特征向量;利用所述第三注意力层对所述第二编码器的输出结果和所述第八特征向量进行特征还原,获取第九特征向量;利用所述第二前馈神经网络层对所述第九特征向量进行特征还原,获取所述第五特征向量。
可选的,在另一些实现方式中,所述训练单元还用于:将所述第二训练文本输入至所述预训练模型,获得所述预训练模型的输出结果;根据所述第二训练文本的标记与所述预训练模型的输出结果之间的差异,对所述第一适配器的参数和所述第二适配器的参数进行调整;待训练达到第二预设训练条件时,停止对所述第一适配器的参数和所述第二适配器的参数进行调整,获得所述训练后的所述多任务生成模型。
可选的,在另一些实现方式中,所述相互关联的多个任务包括问句生成任务、问句相关性任务、阅读理解任务和答案排序任务,所述第二训练文本包括所述问句生成任务对应的第一任务文本,所述第一任务文本用于指示根据待识别的文本生成问句;所述第二训练文本还包括所述问句相关性任务对应的第二任务文本,所述第二任务文本用于指示确定所述待识别的文本与所述问句是否相关;所述第二训练文本还包括所述阅读理解任务对应的第三任务文本,所述第三任务文本用于指示根据所述问句从所述待识别的文本中获取所述问句对应的答案;所述第二训练文本还包括所述答案排序任务对应的第四任务文本,所述第四任务文本用于指示确定所述问句与所述答案是否相匹配。
可选的,在另一些实现方式中,所述目标领域为电商领域。
本申请实施例第四方面提供了一种问答对生成装置,该装置包括:获取单元,用于获取待识别的文本;处理单元,用于根据预设规则和多任务生成模型对所述待识别的文本进行处理,获得至少一个问答对,所述至少一个问答对包括从所述待识别的文本中获取的至少一个问题和至少一个答案,所述至少一个问题与所述至少一个答案关联;其中,所述多任务生成模型是根据本申请实施例提供的生成多任务生成模型的方法获得的模型。
可选的,在一些实现方式中,所述相互关联的多个任务包括问句生成任务、问句相关性任务、阅读理解任务和答案排序任务,所述第二训练文本包括所述问句生成任务对应的第一任务文本,所述第一任务文本用于指示根据待识别的文本生成问句;所述第二训练文本还包括所述问句相关性任务对应的第二任务文本,所述第二任务文本用于指示确定所述待识别的文本与所述问句是否相关;所述第二训练文本还包括所述阅读理解任务对应的第三任务文本,所述第三任务文本用于指示根据所述问句从所述待识别的文本中获取所述问句对应的答案;所述第二训练文本还包括所述答案排序任务对应的第四任务文本,所述第四任务文本用于指示确定所述问句与所述答案是否相匹配。
可选的,在另一些实现方式中,所述处理单元还用于:按照所述第一任务文本的格式将所述待识别的文本输入至所述多任务生成模型,获得第一输出结果,所述第一输出结果为根据所述待识别的文本生成的问句;按照所述第二任务文本的格式将所述第一输出结果输入至所述多任务生成模型,获得第二输出结果,所述第二输出结果表示所述第一输出结果与所述待识别的文本是否相关;若所述第二输出结果表示所述第一输出结果与所述待识别的文本相关,则按照所述第三任务文本的格式将所述第一输出结果和所述待识别的文本输入至所述多任务生成模型,获得第三输出结果,所述第三输出结果表示从所述待识别的文本中能否获取所述第一输出结果对应的答案;若所述第三结果表示成功从所述待识别的文本中获取所述第一输出结果对应的答案,则按照所述第四任务文本的格式所述第一输出结果和所述第三输出结果输入至所述多任务模板,获得第四输出结果,所述第四输出结果表示所述第一输出结果与所述第三输出结果是否匹配;若所述第四输出结果表示所述第一输出结果与所述第三输出结果匹配,则将所述第一输出结果确定为所述至少一个问题,以及将所述第三输出结果确定为所述至少一个答案,获得所述至少一个问答对。
可选的,在另一些实现方式中,所述待识别的文本是从电商领域获取的文本。
本申请实施例第五方面还提供了一种训练设备,包括:存储器和处理器,存储器和处理器耦合。
其中,存储器用于存储一条或多条计算机指令。
处理器用于执行一条或多条计算机指令,以实现上述第一方面所述的生成多任务生成模型的方法。
本申请实施例第六方面还提供了一种执行设备,包括:存储器和处理器,存储器和处理器耦合。
其中,存储器用于存储一条或多条计算机指令。
处理器用于执行一条或多条计算机指令,以实现上述第二方面所述的问答对生成方法。
本申请实施例第七方面还提供了一种计算机可读存储介质,其上存储有一条或多条计算机指令,其特征在于,该指令被处理器执行以实现上述任意一种技术方案所述的方法。
本申请实施例第八方面还提供一种电子设备,包括:处理器;以及存储器,用于存储数据处理程序,该服务器通电并通过所述处理器运行该程序后,执行如上所述的方法。
应当理解,本部分所描述的内容并非旨在标识本申请公开的实施例的关键或重要特征,也不用于限制本申请公开的范围。本申请公开的其它特征将通过以下的说明书而变得容易理解。
本申请实施例所提供的生成多任务生成模型的方法的技术方案,包括:利用第一训练集合,对初始预训练模型的第一编码器和第一解码器进行预训练,获得预训练模型,第一训练集合包括目标领域的第一训练文本,第一训练文本包括部分被掩蔽的文本内容,且第一训练文本是无标记的文本;根据第二训练集合,对预训练后的预训练模型进行第一训练,生成多任务生成模型,预训练模型包括第二编码器和第二解码器,第一训练包括:对第二编码器包括的第一适配器和第二解码器包括的第二适配器的参数进行调整,获得训练后的多任务生成模型,第二训练集合包括第二训练文本和第二训练文本的标记,第二训练文本包括相互关联的多个任务的多个文本,第二训练文本的标记表示多个任务的多个文本对应的多个结果。上述生成多任务生成模型的过程中,利用无标注的目标领域的第一训练文本,对初始预训练模型进行预训练获得预训练模型,该方法可以提高目标领域的无标注的数据的利用率,避免目标领域有标注的数据紧缺的问题。同时,使得经过预训练后获得的预训练模型能够学习到目标领域的更多特征表示。接下来,利用少量有标注的目标领域的第二训练文本,对预训练模型包括的第二编码器中的第一适配器和第二解码器中的第二适配器的参数进行微调,以获得训练后的多任务生成模型,该方法在保证获得的多任务生成模型的泛化性较高的情况下,避免了对预训练模型的所有参数进行调整,还有利于提高生成多任务生成模型的训练效率。即,本方法在多任务生成模型的训练效率和泛化性能方面,获得了平衡。
附图说明
为了更清楚地说明本申请实施例的技术方案,下面将对本申请实施例的描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1是本申请实施例提供的多任务生成模型适用的一种应用场景的示意图。
图2是本申请实施例提供的一种生成多任务生成模型的方法的示意图。
图3A是本申请实施例提供的一种多任务生成模型的结构示意图。
图3B是本申请实施例提供的一种编码子模块110和解码子模块210的结构示意图。
图3C是本申请实施例提供的一种适配器的结构示意图。
图4A是本申请实施例提供的另一种生成多任务生成模型的方法的示意图。
图4B是本申请实施例提供的一种对第一transformer模型进行训练的过程示意图。
图4C是本申请实施例提供的一种对第二transformer模型进行训练的过程示意图。
图5是本申请实施例提供的一种问答对生成方法的示意图。
图6是本申请实施例提供的另一种问答对生成方法的示意图。
图7是本申请实施例提供的一种生成多任务生成模型的装置的结构示意图。
图8是本申请实施例提供的一种问答对生成装置的结构示意图。
图9是本申请实施例提供的一种训练设备的结构示意图。
图10是本申请实施例提供的一种执行设备的结构示意图。
具体实施方式
为了使本领域的技术人员能够更好的理解本申请的技术方案,下面结合本申请实施例中的附图,对本申请进行清楚、完整地描述。但本申请能够以很多不同于上述描述的其他方式进行实施,因此,基于本申请提供的实施例,本领域普通技术人员在不经过创造性劳动的情况下,所获得的所有其他实施例,都应属于本申请保护的范围。
需要说明的是,本申请的权利要求书、说明书及附图中的术语“第一”、“第二”、“第三”等是用于区别类似的对象,并不用于描述特定的顺序或先后次序。这样使用的数据在适当情况下是可以互换的,以便于本文所描述的本申请的实施例,能够以除了在本文图示或描述的内容以外的顺序实施。此外,术语“包括”、“具有”以及他们的变形形式,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
随着人工智能技术的发展,越来越多的应用领域使用人工智能模型执行任务处理,以降低人工成本。在一些应用领域(例如,电商领域或金融领域等)中,通过利用人工智能模型实现问答对自动化生成,以更好地为用户提供个性化服务。从自然语言处理(naturelanguage processing,NLP)领域来说,问答对自动化生成(又简称为问答对生成)任务可以包括以下两个子任务:问题生成任务和阅读答案任务。其中,问题生成任务,即基于文章和问题的答案生成问题的任务,或基于文章直接生成问题的任务。阅读理解任务,即基于文章和问题找到该问题对应的答案的任务。
传统技术中,用于实现问答对生成的多任务生成模型包括多个子模型,该多个子模型对应问答对生成的多个子任务(例如,问题生成任务和阅读答案任务)。一种获取多任务生成模型的方式中,对多个子模型是并行独立训练的,即各个子模型之间互不相关。虽然问答对生成任务可以分成多个子任务(例如,问题生成任务和阅读答案任务),但这些子任务之间也是相互关联的,即多个子任务之间通过一些共享因素或共享表示(sharerepresentation)联系在一起。上述传统方式中获得多个子任务对应的多个子模型时,忽略了多个子任务之间的关联性,使得基于这种方式获得的每个子模型容易存在过拟合的问题。具体来说,这种实现方式中,多个子模型的输入数据是同样的一份数据,多个子模型对应的多个子任务不同。该多个子模型中的每个子模型根据该每个子模型对应的子任务对该一份数据进行训练,使得训练好的每个子模型更多的关注在该每个子模型对应的子任务的特性,从而忽略了该一份数据实际上对多个子任务中的关联性。进一步,基于这种方式训练获得的多任务生成模型的泛化性能较差。上述训练过程中,需要对多个子模型分别进行训练,这种生成多任务生成模型的训练效率也较低。另一种获取多任务生成模型的方式中,对多个子模型采用串行方式进行训练以获得多任务生成模型。例如,多任务生成模型包括子模型1,……,子模型N,N为大于等于2的整数,训练时利用有标注样本先对子模型1进行任务1的训练获得输出结果,然后利用该输出结果对子模型N进行任务N的训练。由于需要依次进行不同任务的训练,知识容易遗忘,训练到第N个任务时,模型难以保留早期学习信息,导致基于这种方式获得的多任务生成模型的泛化性能也较差。此外,上述两种方式中对多任务生成模型包括的每个子模型进行独立训练时,需要利用大量有标注的样本数据。在一些应用场景中(例如,电商场景),通常难以获取大量带有标注的训练数据,这样,使得利用上述两种方式对少量带有标注的训练数据进行训练获得的多任务生成模型不够准确。进一步,利用该多任务生成模型实现问答对生成时,获得的问答对也不够准确。
基于此,本申请提供了一种生成多任务生成模型的方法、问答对生成方法和相关装置,以解决传统技术中存在的上述问题。
为了便于理解,首先对本申请实施例中可能涉及的技术术语进行简单介绍。
1、人工智能(artificial intelligence,AI)
人工智能是利用数字计算机或者数字计算机控制的机器模拟、延伸和扩展人的智能,感知环境、获取知识并使用知识获得最佳结果的理论、方法、技术及应用系统。换句话说,人工智能是计算机科学的一个综合技术,它企图了解智能的实质,并生产出一种新的能以人类智能相似的方式做出反应的智能机器。
人工智能也就是研究各种智能机器的设计原理与实现方法,使机器具有感知、推理与决策的功能。人工智能技术主要包括计算机视觉技术、自然语言处理技术、以及机器学习/深度学习等几大方向。随着人工智能技术研究和进步,人工智能在多个领域展开研究和应用,例如常见的智能家居、智能客服、虚拟助理、智能音箱、智能营销、无人驾驶、自动驾驶、机器人、智能医疗等,相信随着技术的发展,人工智能将在更多的领域得到应用,并发挥越来越重要的价值。
2、自然语言处理(nature language processing,NLP)
自然语言处理是计算机科学领域与人工智能领域中的一个重要方向。它研究能实现人与计算机之间用自然语言进行有效通信的各种理论和方法。自然语言处理是一门融语言学、计算机科学、数学于一体的科学。因此,这一领域的研究将涉及自然语言,即人们日常使用的语言,所以它与语言学的研究有着密切的联系。自然语言处理技术通常包括文本处理、语义理解、机器翻译、机器人问答、知识图谱等技术。
3、多任务学习(multi-task learning,MTL)
多任务学习是一种基于共享表示(shared representation),把多个相关的任务放在一起学习的一种机器学习方法。具体的,多任务学习把多个相关的任务放在一起学习,学习过程(training)中通过一个在浅层的共享(shared representation)表示来互相分享、互相补充学习到的领域相关的信息(domain information),互相促进学习,提升泛化的效果。
4、多任务预训练模型
深度学习中模型的参数量非常庞大,为了充分训练深层模型参数并防止过拟合,通常需要更多标注数据。在自然语言处理领域,标注数据更是一个昂贵资源。多任务预训练模型从大量无标注数据中进行预训练,得到更好地语义标注,在很多自然语言处理任务获得显著的性能提升。
5、模型泛化性能(model generalization)
模型泛化性能是指模型在某一个或多个领域上训练后直接应用于其他未知的领域上的性能。
6、掩码语言模型(masked language model,MLM)
掩码语言模型是预训练模型中的一个常用的自监督任务。掩码语言模型通过掩蔽(mask)输入神经网络模型的文本中的部分内容,对神经网络模型进行训练,使得训练成功的神经网络模型能够正确还原被掩蔽的部分内容,以增强神经网络模型的语言建模能力。
7、主动学习(active learning)
主动学习的思路包括:通过机器学习的方法获取到那些比较“难”分类的样本数据,让人工再次确认和审核,然后将人工标注得到的数据再次使用有监督学习模型或半监督学习模型进行训练,逐步提升模型的效果。
8、注意力机制(attention mechanism)
注意力机制模仿了生物观察行为的内部过程,即一种将内部经验和外部感觉对齐从而增加部分区域的观察精细度的机制,能够利用有限的注意力资源从大量信息中快速筛选出高价值信息。注意力机制可以快速提取稀疏数据的重要特征,因而被广泛用于自然语言处理任务,特别是机器翻译。而自注意力机制(self-attention mechanism)是注意力机制的改进,其减少了对外部信息的依赖,更擅长捕捉数据或特征的内部相关性。注意力机制的本质思想可以改写为如下公式:
其中,Lx=||Source||代表Source的长度,公式含义即将Source中的构成元素想象成是由一系列的数据对构成,此时给定目标Target中的某个元素Query(简记为Q),通过计算Query和各个Key(简记为K)的相似性或者相关性,得到每个Key对应Value(简记为V)的权重系数,即得到了最终的Attention数值。所以本质上Attention机制是对Source中元素的Value值进行加权求和,而Query和Key用来计算对应Value的权重系数。从概念上理解,把Attention可以理解为从大量信息中有选择地筛选出少量重要信息并聚焦到这些重要信息上,忽略大多不重要的信息。聚焦的过程体现在权重系数的计算上,权重越大越聚焦于其对应的Value值上,即权重代表了信息的重要性,而Value是其对应的信息。自注意力机制可以理解为内部Attention(intra attention),Attention机制发生在Target的元素Query和Source中的所有元素之间,自注意力机制指的是在Source内部元素之间或者Target内部元素之间发生的Attention机制,也可以理解为Target=Source这种特殊情况下的注意力计算机制,其具体计算过程是一样的,只是计算对象发生了变化而已。
9、传输文本到文本转换器(transfer text-to-text transformer,T5模型)
T5模型是一种可以将所有自然语言处理(NLP)任务都转化成文本到文本(text-to-text)任务的神经网络模型。
10、正样本(positive samples)
正样本是待检测的目标。例如待检测的目标为检测人脸时,人脸是正样本。
11、负样本(negative samples)
负样本是除待检测的目标以外的目标。例如待检测的目标为检测人脸时,非人脸是负样本,例如非人脸可以是小狗的脸、树木或花朵等。
下面,结合附图对本申请提供的多任务生成模型适用的应用场景、生成多任务生成模型的方法、问答对生成方法和相关装置进行详细说明。可以理解的是,本申请提供的各实施例之间不冲突的情况下,下述的实施例及实施例中的特征可以相互组合。另外,下述各方法实施例中的步骤时序仅为一种举例,而非严格限定。
首先,结合附图介绍本申请实施例提供的多任务生成模型适用的应用场景。
图1是本申请实施例提供的多任务生成模型适用的一种应用场景的示意图。如图1所示,该应用场景包括至少一个服务器101和至少一个终端102。服务器101与终端102之间可以通过网络103进行通信,以实现数据的传输。其中,网络103可以是有线网络或无线网络,本申请对此不作具体限定。
服务器101可以是提供各种服务的服务器。具体的,服务器101可以用于为终端102运行的应用程序提供后台服务。例如,服务器101可以利用本申请实施例提供的多任务生成模型对终端102发送的文本(例如,商品详情页文本)进行处理获得问答对,并将获得的问答对发送给终端102。可选的,本申请实施例提供的生成多任务生成模型的方法可以由服务器101执行,相应地,生成多任务生成模型的装置可以设置于服务器101中。服务器101可以是硬件,也可以是软件。当服务器101为硬件时,可以实现成多个服务器组成的分布式服务器集群,也可以实现成单个服务器。当服务器101为软件时,可以实现成多个软件或软件模块(例如用来提供分布式服务的软件或软件模块),也可以实现成单个软件或软件模块。本申请实施例对此不作具体限定。
终端102上可以安装和运行有应用程序。例如,该应用程序可以是问答类应用程序、社交类应用程序、图像处理类应用程序、即时通信应用程序、购物类应用程序或者搜索类应用程序等。终端102可以但不限于是个人电脑、智能手机、平板电脑、台式计算机、智能音箱、智能手表或者可穿戴设备等。
可选的,上述无线网络或有线网络使用标准通信技术和/或协议。网络通常为因特网、但也能够是任何网络,包括但不限于局域网(local area network,LAN)、城域网(metropolitan area network,MAN)、广域网(wide area network,WAN)、移动、有线或者无线网络、专用网络或者虚拟专用网络的任何组合)。在一些实施例中,使用包括超文本标记语言(hyper text mark-up language,HTML)、可扩展标记语言(extensible markuplanguage,XML)等的技术和/或格式来代表通过网络交换的数据。此外还能够使用诸如安全套接字层(secure socket layer,SSL)、传输层安全(transport layer security,TLS)、虚拟专用网络(virtual private network,VPN)、网际协议安全(internet protocolsecurity,IPsec)等常规加密技术来加密所有或者一些链路。在另一些实施例中,还能够使用定制和/或专用数据通信技术取代或者补充上述数据通信技术。
应理解,上述图1示出的应用场景仅为示意,并不对本申请实施例提供的多任务生成模型适用的应用场景构成任何限定。可选的,上述应用场景还可以包括更多数目的服务器101、更多数目的终端102和更多数目的网络103。可选的,上述终端102还可以替换为除服务器101以外的服务器。
以下,结合图2至图6介绍本申请实施例提供的生成多任务生成模型的方法、问答对生成方法。
图2是本申请实施例提供的一种生成多任务生成模型的方法的示意图。本申请实施例提供的生成多任务生成模型的方法可以由训练设备来执行。可以理解的是,该训练设备可以实现为软件、或者软件和硬件的组合。例如,本申请实施例中的训练设备可以但不限于是服务器或用户使用的终端设备。如图2所示,本申请实施例提供的生成多任务生成模型的方法包括S210和S220。下面,对S210和S220进行详细介绍。
S210,利用第一训练集合,对初始预训练模型的第一编码器和第一解码器进行预训练,获得预训练模型,第一训练集合包括目标领域的第一训练文本,第一训练文本包括部分被掩蔽的文本内容,且第一训练文本是无标记的文本。
目标领域的第一训练文本,即为不同应用领域或应用场景下获取的第一训练文本。一个应用领域或场景下获取的第一训练文本中包括该一个应用领域特有的词汇。本申请实施例中对目标领域不作具体限定。例如,目标领域可以为以下任意一个领域:电商领域、金融领域、或教育领域等。例如,当目标领域为电商领域时,第一训练文本包括的特有词汇可以但不限于是“预售”或“商品详情页”等。又如,当目标领域为教育领域时,第一训练文本包括的特有词汇可以但不限于是“学校”、“班级”或“学科科目”等。
第一训练集合可以包括目标领域的多个第一训练文本,对第一训练集合包括的第一训练文本的数目不作具体,可以根据实际需求确定第一训练集合包括的目标领域的第一训练文本的数目。每个第一训练文本是无标记文本,即第一训练文本是不携带标注(又称为标签)信息的文本。每个第一训练文本包括部分被掩蔽(mask)的内容。在一些实现方式中,可以通过以下方式获得第一训练文本:按照预设比例,以句子为掩蔽粒度对原始第一训练文本包括的文本内容进行掩蔽,获得第一训练文本。在另一些实现方式中,可以通过以下方式获得第一训练文本:按照预设比例,对原始第一训练文本包括的文本内容中的与目标领域关联的词汇进行掩蔽,获得第一训练文本。可选的,在又一些实现方式中,上述两种掩蔽处理方式还可以结合使用,对此不再赘述。可选的,还可以对原始第一训练文本包括的符号进行掩蔽。示例性的,原始第一训练文本可以为“今天是星期二。明天是星期几?”,通过上述第一种掩蔽方式获得的第一训练文本可以为“今天是星期二。(mask)”示例性的,原始第一训练文本可以为“网站中显示有商品详情页的具体内容”,通过上述第二种掩蔽方式获得的第一训练文本可以为“网站中显示有(mask)的具体内容”。
在本申请实施例中,初始预训练模型的模型结构与预训练模型的模型结构相同,区别在于,这两个模型的模型参数不完全相同。接下来,对初始预训练模型和预训练模型进行介绍。
初始预训练模型包括第一编码器和第一解码器,第一编码器中还包括第三适配器,解码器中还包括第四适配器。其中,第一编码器用于对输入至初始预训练模型的文本进行特征提取以获得特征向量,第一解码器用于对该特征向量进行特征还原获得还原结果。第三适配器和第四适配器的结构是相同,且在这两个适配器中的任意一个适配器中依次执行以下处理:前馈降维处理(FeedForward Down-Project)、非线性处理(Non-Linear)和前馈升维处理(FeedForward Up-Project)、求和处理。可以理解的是,所述第三适配器和所述第四适配器中的任意一个适配器可以包括以下参数:前馈降维处理的参数、前馈升维处理的参数、以及权重参数。前馈降维处理的参数用于执行上述前馈降维处理,前馈升维处理的参数用于执行上述前馈升维处理,权重参数用于指示前馈降维处理的参数的权重和前馈升维处理的参数的权重。其中,前馈降维处理,又称为前馈降采样。前馈升维处理,又称为前馈升采样。前馈降维处理用于对输入至适配器的向量进行降维处理,以获得较低维度的向量,该较低维度的向量包括训练数据集中蕴含的核心重要信息的能力的参数对应的向量。前馈升维处理用于将非线性处理获得的向量还原为原始的高维向量,该高维向量的维度与输入至适配器的输入向量的维度一致。非线性处理,可以理解为是用激活函数(activationfunctions)对前馈降维处理后的向量进行处理的过程。例如,激活函数可以是sigmoid函数。示例性的,图3C示出了上述适配器的结构,下文中对图3C示出的适配器的结构进行了详细介绍,此处未详细赘述的内容可以参见下文中对图3C的描述。
预训练模型包括第二编码器和第二解码器。其中,第二编码器中包括第一适配器,第二解码器中包括第二适配器。第一适配器的结构与第二适配器的结构是相同的,且在这两个适配器中的任意一个适配器中依次执行以下处理:前馈降维处理、非线性处理和前馈升维处理、求和处理。可以理解的是,第一适配器、第二适配器、第三适配器和第四适配器的结构是相同的,但不同适配器的参数是不完全相同的。例如,第一适配器和第二适配器中的前馈降维处理的参数可以均为α,第三适配器和第四适配器中的前馈降维处理的参数可以均为β,但α与β不同。
需说明的是,上文中均匀以第一编码器、第一解码器、第二编码器和第二解码器中的任意一个均包括一个适配器为例进行了介绍。可选的,第一编码器、第一解码器、第二编码器和第二解码器中的任意一个还可以包括更多数目的适配器,这种实现方式中,第一编码器、第一解码器、第二编码器和第二解码器中的任意一个还可以包括多个前馈神经网络层。示例性的,图3B示出的编码器100可以是上述第二编码器,解码器200可以是上述第二解码器。参见图3B,编码器100和解码器200均包括一个适配器,编码器100包括适配器114,解码器包括适配器216。下文中对图3B示出的模型结构进行了详细介绍,此处未详细赘述的内容可以参见下文中对图3B的描述。可选的,当图3示出的编码器100和解码器200均包括2个适配器时,可以在图3B示出的编码器100包括的求和并归一化115之后依次设置以下模块:前馈神经网络层116、适配器117、求和并归一化118,以及在解码器200包括的求和并归一化217之后依次设置以下模块:前馈神经网络层218、适配器219、求和并归一化220。
上述初始预训练模型包括第一编码器和第一解码器,且第一编码器包括第三适配器,第一解码器包括第四适配器,第三适配器的参数和第四适配器的参数是预设的参数,初始预训练模型的参数是根据序列到序列模型的参数确定的,其中,第一编码器包括的除第三适配器的参数之外的参数,与序列到序列模型包括的编码器的参数相同;第一解码器包括的除第四适配器的参数之外的参数,与序列到序列模型包括的解码器的参数相同;序列到序列模型是通过训练获得的神经网络模型。这种实现方式中,序列到序列模型是已经成功训练好的模型,该模型的输入是一段序列文本,输出也是一段序列文本。其中,第三适配器和第四适配器中的任意一个适配器可以包括以下:前馈降维处理的参数、前馈升维处理的参数和权重参数。第三适配器和第四适配器包括的参数是预设的参数,可以是指前馈降维处理的参数和前馈生成处理的参数是预设的参数。可选的,所述预设的参数还可以包括适配器中的权重参数。在一些实现方式中,该预设的参数可以是根据人工经验进行设置的。可选的,在另一些实现方式中,该预设的参数还可以是根据序列到序列模型的编码器包括的前馈神经网络层的参数进行设置的,本申请对此不作具体限定。可选的,在一些可能的实现方式中,所述任意一个适配器中包括的权重参数可以是随机初始化设置的。
在一些可能的实现方式中,序列到序列模型的解码器和编码器可以不包括适配器,基于此,第一编码器可以是利用训练好的序列到序列模型的编码器的参数对初始编码器包括的除去初始适配器的参数之外的参数进行初始化后获得的编码器,第一解码器可以是利用训练好的序列到序列模型的解码器的参数对初始解码器包括的除去初始适配器的参数之外的参数进行初始化后获得的解码器。因此,训练设备还可以执行以下操作:利用训练好的序列到序列模型的编码器的参数对初始编码器包括的除去初始适配器的参数之外的参数进行初始化,获得第一编码器;利用训练好的序列到序列模型的解码器的参数对初始解码器包括的除去初始适配器的参数之外的参数进行初始化后,获得第一解码器。例如,当所述序列到序列模型的编码器和解码器均不包括适配器时,所述序列到序列模型可以但不限于是已经训练好的T5模型,该T5模型是利用中文的维基百科数据,经过自监督的形式训练得到的模型。示例性的,下文图4A所描述的S410中以所述序列到序列模型为训练好的T5模型为例,详细介绍了上述获得初始预训练模型的具体流程,此处未详细赘述的内容可以参见下文S410中的相关描述。选的,在一些可能的实现方式中,序列到序列模型的解码器和编码器中均可以包括一个适配器,基于此,第一编码器可以是利用训练好的序列到序列模型的编码器的参数对初始编码器进行初始化后获得的编码器,第一解码器可以是利用训练好的序列到序列模型的解码器的参数对初始解码器进行初始化后获得的解码器。因此,训练设备还可以执行以下操作:利用训练好的序列到序列模型的编码器的参数对初始编码器进行初始化,获得第一编码器;利用训练好的序列到序列模型的解码器的参数对初始解码器的参数进行初始化后,获得第一解码器。
通常来说,训练一个神经网络模型时想要对该一个神经网络模型训练的比较充分,通常需要的训练样本的数据量的规模为千万级。但在一些应用应用领域或应用场景(例如,电商领域)中,标注上千万数量的文本,需要非常高的人工成本。上述获取初始预训练模型的方式中,利用已经训练好的序列到序列模型的编码器和解码器的参数,对一个神经网络模型进行初始化设置以获得初始预训练模型,避免了利用大量有标注的文本对初始预训练模型进行训练,可以节省人工成本。同时,还可以提高获取预训练模型的效率。
在一些实现方式中,上述预训练模型可以是一种transformer模型,且该transformer模型包括的编码器和解码器中均包括至少一个适配器。进一步,训练设备在对预训练模型进行训练获得多任务生成模型的过程中,还可以执行以下操作:利用第二编码器对第二训练文本中的第一局部文本内容进行特征提取,获得第一特征向量,其中,利用第一适配器对第二特征向量执行第一操作,获得第三特征向量,第二特征向量是对输入至第一编码器的第一局部文本进行特征提取获得的向量,第一操作包括:降采样、非线性处理和升采样,第一特征向量是对第三特征向量执行求和归一化处理获得的向量;利用第二解码器对第二编码器的输出结果和第二解码器的输入数据进行特征还原,获得第四特征向量,其中,利用第二适配器对第五特征向量执行第一操作,获得第六特征向量,第一编码器的输出结果为第一特征向量,第二解码器的输入数据包括预训练模型对第二训练样本中的第二局部文本内容进行预测获得的结果,第二局部文本内容与第一局部文本内容不完全相同,第四特征向量是对第六特征向量执行求和归一化处理获得的向量,第五特征向量是对输入至第二解码器的第二编码器的输出结果和第二解码器的输入数据进行特征还原获得的向量。可以理解的是,输入至第一适配器的向量的维度与第一适配器输出的向量的维度是一致的,即上述第二特征向量的维度与上述第三特征向量的维度是相同的。输入至第二适配器的向量的维度与第二适配器输出的向量的维度是一致的,即上述第五特征向量的维度与上述第六特征向量的维度是相同的。这种实现方式中,上述降采样处理与上文中前馈降维处理的作用一种、非线性处理与上文中非线性处理的作用一种,降采样处理与上文中前馈升维处理的作用一种,此处未详细赘述的内容可以参见上文中对适配器的相关描述。
可选的,在一些可能的实现方式中,当第二编码器包括一个适配器(即,第一适配器),第二解码器包括一个适配器(即,第二适配器)时,第二编码器还包括具有第一注意力层的第一残差支路,以及具有第一前馈神经网络层和第一适配器的第二残差支路,训练设备还可以执行以下操作:利用第一注意力层对第一局部文本内容进行特征提取,获得第七特征向量;利用第一前馈神经网络层对第七特征向量进行特征提取,获得第二特征向量;第二解码器还包括具有第二注意力层的第三残差支路,具有第三注意力层的第四残差支路,以及具有第二前馈神经网络层和第二适配器的第五残差支路,训练设备还可以执行以下操作:利用第二注意力层对第一解码器的输入数据进行特征还原,获得第八特征向量;利用第三注意力层对第二编码器的输出结果和第八特征向量进行特征还原,获取第九特征向量;利用第二前馈神经网络层对第九特征向量进行特征还原,获取第五特征向量。示例性的,当所述预训练模型为图3A示出的模型,且当所述第二编码器为图3B示出的编码器100、所述第二解码器为图3B示出的解码器200时,所述第一残差支路包括编码器100中的掩码多头自注意力层111和求和并归一化112,所述第一注意力层为所述多头自注意力层111。所述第二残差支路包括编码器100中的前馈神经网络层113、适配器114和求和并归一化115,所述第一前馈神经网络层为所述前馈神经网络层113、所述第一适配器为所述适配器114;所述第三残差支路包括解码器200中的掩码多头自注意力层211和求和并归一化212,所述第二注意力层为所述掩码多头自注意力层211。所述第四残差支路包括解码器200中的多头自注意力层213和求和并归一化214,所述第二注意力层为所述多头自注意力层213。所述第五残差支路包括解码器200中的前馈神经网络层215、适配器216和求和并归一化217,所述第二前馈神经网络层为所述前馈神经网络层215、所述第二适配器为所述适配器216。下文中对图3A和图3B示出的模型进行了详细介绍,此处未详细赘述的内容可以参见下文中对图3A和图3B的描述。需说明的是,图3A和图3B示出的解码器100和编码器200的结构仅为示意,并不对本申请实施例提供的预训练模型包括的第二编码器和第二解码器的结构构成任何限定。例如,预训练模型包括的第二编码器和第二解码器中还可以包括更多数目的适配器和更多数目的前馈神经网络层。
可选的,在一些实现方式中,利用第一训练集合,对初始预训练模型的第一编码器和第一解码器进行预训练,获得预训练模型,包括:利用第一编码器对第一训练文本进行编码,获得编码结果;利用第一解码器对编码结果进行解码,获得部分被掩蔽的文本的还原结果;根据还原结果与第一训练文本之间的差异,对第一编码器的参数和第一解码器的参数进行调整;待训练达到第一预设训练条件时,停止对第一编码器的参数和第一解码器的参数进行调整,获得预训练模型。
上述实现方式中,预训练模型是利用掩蔽处理后获取的目标领域的第一训练文本进行训练获得的,使得训练成功的预训练模型能够正确还原目标领域的第一训练文本中被掩蔽的部分内容,上述获取预训练模型的方式可以增强训练好的预训练模型的语言建模能力。可选的,可以利用损失函数表示第一训练文本和输出结果之间的差异。通过调整初始预训练模型的编码器和解码器的参数,以最小化损失函数。对损失函数的类型不作具体限定,例如损失函数可以是交叉熵函数。对第一预训练条件不作具体限定,具体可以根据实际需求来设置第一预设训练条件。在一些实现方式中,所述第一预设条件包括以下任意一种条件:对所述初始预训练模型的训练次数大于预设训练次数、所述初始预训练模型的输出结果对应的损失值在预设误差范围内、或者所述初始预训练模型的输出结果达到预设识别精度。其中,所述预设训练次数、预设误差范围和预设识别精度可以根据实际需求进行选取,本申请实施例对此不作具体限定。示例性的,下文中的图4A示出了对上述初始预训练模型进行训练获得上述预训练模型的一个具体示例,具体可以参见图4A中的相关描述,此处不再详细赘述。需说明的是,图4A示出的第一transformer模型、第二transformer模型,分别相当于上述获取预训练模型的实现方式中的初始预训练模型、预训练模型。图4A示出的第一训练集,相当于上述获取预训练模型的实现方式中的第一训练集合。图4A示出的初始参数,相当于上述获取预训练模型的实现方式中,序列到训练模型的编码器和解码器中的参数。
S220,根据第二训练集合,对预训练后的预训练模型进行第一训练,生成多任务生成模型,预训练模型包括第二编码器和第二解码器,第一训练包括:对第二编码器包括的第一适配器和第二解码器包括的第二适配器的参数进行调整,获得训练后的多任务生成模型,第二训练集合包括第二训练文本和第二训练文本的标记,第二训练文本包括相互关联的多个任务的多个文本,第二训练文本的标记表示多个任务的多个文本对应的多个结果。
对第二训练集合包括的第二训练文本的数目不作具体限定。也就是说,第二训练集合可以包括多个第二训练文本,以及该多个第二训练文本的标记。第二训练文本包括相互关联的多个任务的文本,该多个任务可以理解为是一个任务包括的多个子任务,对该一个任务和该多个子任务不作具体限定。第二训练文本的标记表示多个任务的多个文本对应的多个结果,即第二训练文本是携带有标注信息的训练文本,且多个任务、多个文本与多个结果一一对应。例如,当第二训练文本的标记表示3个任务(任务1、任务2和任务3)的3个文本(文本1、文本2、文本3)对应的3个结果(结果1、结果2、结果3)时,任务k对应的文本为文本k,且与文本k对应的结果为结果k,k=1,2,3。
可选的,在一些实现方式中,第二训练集合包括的多个第二训练文本中的部分第二训练文本可以是所述多个相互关联的多个任务的正样本,除所述部分第二训练文本以外的第二训练文本可以是所述多个相互关联的多个任务的负样本。对第二训练集合包括的正样本的数量和负样本的数量不作具体限定。例如,第二训练集合包的正样本的数量可以少于第二训练集合包的正样本的数量。又如,第二训练集合包的正样本的数量还可以大于第二训练集合包的正样本的数量。
在一些可能的实现方式中,当所述一个任务为问答对生成任务时,所述相互关联的多个任务可以包括:问句生成任务、问句相关性任务、阅读理解任务和答案排序任务。这种实现方式中,第二训练文本包括问句生成任务对应的第一任务文本,第一任务文本用于指示根据待识别的文本生成问句;第二训练文本还包括问句相关性任务对应的第二任务文本,第二任务文本用于指示确定待识别的文本与问句是否相关;第二训练文本还包括阅读理解任务对应的第三任务文本,第三任务文本用于指示根据问句从待识别的文本中获取问句对应的答案;第二训练文本还包括答案排序任务对应的第四任务文本,第四任务文本用于指示确定问句与答案是否相匹配。其中,第一任务文本用于指示根据待识别的文本生成问句,第一任务文本可以包括待识别的文本。这种实现方式中,将问答对生成任务包括的多个语义理解任务,通过多个任务文本模板,转换为了多个文本对应的生成任务。例如,上述问答对生成任务包括的相关性任务是一个文本语义理解任务,传统技术中,相关性任务的输出的标签为“0”或“1”,“0”表示相关,“1”表示不相关。而在本申请实施例提供的方案中,在经过上述第二任务文本处理后,可以将以分类任务为判断依据来决定类别标签的相关性任务,转为由模型生成出“相关”或“不相关”的标签,来决定生成类任务。
下面,举例介绍上述多个任务文本分别对应的模板格式。示例性的,所述第一任务本文的格式可以但不限于为以下格式:“针对以下文本{doc}可以出一个阅读理解题目:”,其中,{doc}表示所述待识别的文本。第二任务文本用于指示确定待识别的文本与问句是否相关,第二任务文本可以包括待识别的文本和所述问句。示例性的,所述第二任务本文的格式可以但不限于为以下格式:“阅读下面的问题{query},请问这个问题和片段{doc}是否意思相关”其中,query表示所述问句,doc表示所述待识别的文本。第三任务文本用于指示根据问句从待识别的文本中获取问句对应的答案,第三任务文本可以包括所述问句和所述待识别的文本。示例性的,所述第三任务本文的格式可以但不限于为以下格式:“阅读下面的这段文本{doc},用户问:{query}请问客服怎么回复比较适合?”。其中,query代表所述问句,doc表示所述待识别的文本。第四任务文本用于指示确定问句与答案是否相匹配,第四任务文本可以包括所述问句和所述答案。示例性的,所述第四任务本文的格式可以但不限于为以下格式:“阅读下面的问题{query},请问这样回复{answer}是否合适”,其中,query表示所述问句,answer表示所述答案。
上述初始预训练模型、预训练模型和训练后的多任务生成模型的模型结构是相同的,区别在于,这3个模型的模型参数不完全一致。上述S220中,将第二训练集合输入至预训练模型,对编码器包括的第一适配器和解码器包括的第二适配器的参数进行调整,获得训练后的多任务生成模型,包括:将第二训练文本输入至预训练模型,获得预训练模型的输出结果;根据第二训练文本的标记与预训练模型的输出结果之间的差异,对第一适配器和第二适配器的参数进行调整;待训练达到第二预设训练条件时,停止对第一适配器和第二适配器的参数进行调整,获得训练后的多任务生成模型。可选的,可以利用损失函数表示第二训练文本的标记与预训练模型的输出结果之间的差异。通过调整预训练模型的编码器的参数,以最小化损失函数。对损失函数的类型不作具体限定,例如损失函数可以是交叉熵函数。对第二预训练条件不作具体限定,具体可以根据实际需求来设置第二预设训练条件。在一些实现方式中,所述第二预设条件包括以下任意一种条件:对所述预训练模型的训练次数大于预设训练次数、所述预训练模型的输出结果对应的损失值在预设误差范围内、或者所述预训练模型的输出结果达到预设识别精度。其中,所述预设训练次数、预设误差范围和预设识别精度可以根据实际需求进行选取,本申请实施例对此不作具体限定。
可以理解的是,上述S220中,对预训练模型进行训练获得训练后的多任务生成模型的过程,是一个多任务训练微调(fine-tune)的过程。这个微调的过程中,通过固定住预训练模型包括的第二编码器中除第一适配器以外的网络参数,以及固定住第二编码器中除第二适配器以外的网络参数,仅调整预训练模型包括第二编码器中的第一适配器的参数和第二解码器中第二适配器的参数,避免了训练整个预训练模型会产生灾难性遗忘的问题。从而达到,既能利用之前已经训练好的神经网络模型的训练带来的泛化提升,又能针对目标领域进行一定性的适应性的学习。同时,这种训练方式还可以节省在模型微调阶段的时间,因为相较于预训练模型的全参数更新,只更新预训练模型的部分参数(即,第一适配器和第二适配器的参数)所需训练更新时间更少。示例性的,下文中的图4A示出了对上述预训练模型进行训练获得上述训练后的多任务生成模型的一个具体示例,具体可以参见图4A中的S440和S450的相关描述,此处不再详细赘述。需说明的是,图4A中的S440示出的第二训练集,相当于上述获取训练后的多任务生成模型的实现方式中的第二训练集合;图4A中的S450示出的第二transformer模型,相当于上述获取多任务训练模型的实现方式中的预训练模型;S450示出的训练好的多任务生成模型,相当于上述生成多任务训练模型的实现方式中的训练后的多任务生成模型。
本申请实施例中,上述初始预训练模型是根据已经训练好的序列到序列模型的编码器和解码器的参数进行初始化后获得的模型,获得初始预训练模型的实现方式较为简单,有利于提高生成多任务生成模型的效率。进一步,利用无标注的目标领域的第一训练文本,对初始预训练模型进行预训练获得预训练模型,该方法可以提高目标领域的无标注的数据的利用率,避免目标领域有标注的数据紧缺的问题。同时,使得经过预训练后获得的预训练模型能够学习到目标领域的更多特征表示。接下来,利用少量有标注的目标领域的第二训练文本,对预训练模型包括的第二编码器中的第一适配器和第二解码器中的第二适配器的参数进行微调,以获得训练后的多任务生成模型,该方法在保证获得的多任务生成模型的泛化性较高的情况下,避免了对预训练模型的所有参数进行调整,还有利于提高生成多任务生成模型的训练效率。即,本方法在多任务生成模型的训练效率和泛化性能方面,获得了平衡。
图3A是本申请实施例提供的一种多任务生成模型的结构示意图。可以理解的是,多任务生成模型是一种神经网络模型。具体的,多任务生成模型可以是一个基于自注意力机制的序列到序列(sequence to sequence,Seq2Seq)的模型。如图3A所示,多任务生成模型包括嵌入层(即输入嵌入层和输出嵌入层)、编码器100和解码器200,编码器100由N个编码子模块110堆叠构成,解码器200由M个解码子模块210堆叠构成,N、M为正整数。N和M的具体取值可以根据实际需要而设置。N和M的取值可以相等或不相等,本申请对此不作具体限定。示例性的,图3B示出的本申请实施例提供的多任务生成模型仅包括一个编码器100和解码器200,即上述N和M等于1。需说明的是,当上述图2示出的方法生成多任务生成模型为图3A示出的模型结构时,图2示出的方法中的初始预训练模型、预训练模型的结构也为图3A示出的模型结构,但初始预训练模型、预训练模型和多任务生成模型的参数不完全相同。
下面,描述本申请实施例提供的多任务生成模型中各部分的具体工作过程:
1、嵌入(embedding)层
嵌入层可以对当前输入文本进行嵌入处理,得到输入文本对应的多个特征向量。具体实现方式为,嵌入层对当前输入文本序列和位置编码进行编码,并将这些编码进行逐元素相加,得到嵌入向量。位置编码用于记录输入文本中包括的文本的顺序。嵌入层对嵌入向量进行处理,得到该嵌入向量对应的查询向量Q,键向量K和值向量V。其中,嵌入层的输出结果包括查询向量Q,键向量K和值向量V。示例性的,参见图3B,图3B示出的输入嵌入层对输入文本进行嵌入处理,获得对应的查询向量Q0,键向量K0和值向量V0;图3B示出的输出嵌入层对历史输入文本进行嵌入处理,获得对应的查询向量Q1,键向量K1和值向量V1。
2、编码子模块110
图3B示出了本申请实施例提供的一种编码子模块110和解码子模块210的结构示意图。如图3B所示,编码子模块110依次包括掩码多头注意力(masked multi-headattention)层111、求和并归一化(add&norm)112、前馈(feed forward)神经网络层113、适配(adapter)层114、求和并归一化115。为便于描述,下文中可以将掩码多头注意力层111与求和并归一化112,称为残差支路1。将前馈神经网络层113、适配器114和求和并归一化115,称为残差支路2。
其中,掩码多头注意力层111从其上一层获取输入向量,采用自注意力机制,基于向量间的关联度对各个向量进行变换,得到该掩码多头注意力层111的输出向量。对该掩码多头注意力层111的输出向量执行求和并归一化112处理,得到残差支路1的输出向量。在一些实现方式中,当该掩码多头注意力层111是与输入嵌入层直接相连的层,例如图3A中示出的输入嵌入层,掩码多头注意力层111获取的输入向量即为输入嵌入层输出的向量。示例性的,图3B中示出了该掩码多头注意力层111是与输入嵌入层直接相连的层,该掩码多头注意力层111的输入包括输入嵌入层的输出向量(即,Q0,K0和V0)。在另一些实现方式中,当该掩码多头注意力层111是后续的编码子模块110包括的掩码多头注意力层111,例如图3A中,与上层(N等于1)的编码子模块110直连的本层(N等于2)的编码子模块110包括的掩码多头注意力层,该本层(N等于2)的编码子模块110包括的掩码多头注意力层111获取的输入向量即为该上层的编码子模块110的输出向量。可以理解的是,掩码多头注意力层111执行上述步骤的目的是提升词的特征表示能力。
其中,前馈神经网络FFN层113,用于对残差支路1输出的向量执行以下操作:线性变换和线性整流函数(linear rectification function,ReLU)激活运算。可以理解的是,FFN层113执行上述操作的目的是将提取到词的特征表示映射到更高维的空间,使得模型的特征提取能力进一步增强。
其中,适配器114,用于对前馈神经网络FFN层113输出的向量进行微调处理,该微调处理具体包括:前馈降维处理(FeedForward Down-Project)、非线性处理(Non-Linear)和前馈升维处理(FeedForward Up-Project)、求和处理。其中,适配器114中可以包括以下参数:前馈降维处理的参数、前馈降维处理的参数和权重参数。前馈降维处理的参数用于执行上述前馈降维处理,前馈升维处理的参数用于执行上述前馈升维处理,权重参数用于指示前馈降维处理的参数的权重和前馈升维处理的参数的权重。具体实现时,可以通过对适配器114包括的参数进行微调,以实现对前馈神经网络FFN层113输出的向量进行上述微调处理。前馈降维处理用于对输入至适配器114的向量进行降维处理,以获得较低维度的向量,该较低维度的向量包括训练数据集中蕴含的核心重要信息的能力的参数对应的向量。前馈升维处理用于将非线性处理获得的向量还原为原始的高维向量,该高维向量的维度与输入至适配器114的输入向量的维度一致。非线性处理,可以理解为是用激活函数(activation functions)对前馈降维处理后的向量进行处理的过程。例如,激活函数可以是sigmoid函数。示例性的,图3C是本申请实施例提供的一种适配器的结构示意图。如图3C所示,在适配器中依次执行以下处理:前馈降维处理、非线性处理和前馈升维处理。其中,适配器的输入数据为输入的隐向量(即,FFN层113输出的向量)、输出数据为输出的隐向量,输出的隐向量维度与输入的隐向量维度一致,前馈降维处理后获得的向量维度与输入至前馈升维处理的向量维度一致。对适配器进行微调时,会先将输入的隐向量通过前馈down-project映射到较低维度,对该较低维度的向量先执行非线性处理,再将非线性处理后的结果通过前馈up-project映射回原先的高维度,从而减少参数量。适配器的参数微调(Adapter-Tuning)只需要训练原多任务生成模型0.5%-8%的参数量即可取得相似的结果。对前馈降维处理的维度范围不作具体限定,具体可以根据下游的实际任务进行选择。例如,前馈降维处理的维度范围可以为8维至1024维。
3、解码子模块210
示例性的,如图3B所示,解码子模块210包括依次掩码多头注意力(masked multi-head attention)层211、求和并归一化(add&norm)212、多头注意力(multi-headattention,MHA)层213、求和并归一化214、前馈神经网络(feed forward neuralnetworks,FFN)层215、适配器216、求和并归一化217。为便于描述,下文中可以将掩码多头注意力层211与求和并归一化212,称为残差支路3。将多头注意力层213与求和并归一化214,称为残差支路4。将前馈神经网络层215、适配器216和求和并归一化217,称为残差支路5。
掩码多头注意力层211从其上一层获取输入向量,采用自注意力机制,基于向量间的关联度对各个向量进行变换,得到该掩码多头注意力层211的输出向量。对掩码多头注意力层211的输出向量执行求和并归一化212处理,得到残差支路3的输出向量Q2。在一些实现方式中,当该掩码多头注意力层211是与输出嵌入层直接相连的层,例如图3A中示出的输出嵌入层,掩码多头注意力层211获取的输入向量即为输出嵌入层输出的向量。示例性的,图3B中示出了该掩码多头注意力层211是与输出嵌入层直接相连的层,该掩码多头注意力层211的输入包括输出嵌入层的输出向量(即,Q1,K1和V1)。在另一些实现方式中,当该掩码多头注意力层211是后续的解码子模块210包括的掩码多头注意力层211,例如图3A中,与上层(N等于1)的解码子模块210直连的本层(N等于2)的解码子模块210包括的掩码多头注意力层,该本层(N等于2)的解码子模块210包括的掩码多头注意力层211获取的输入向量即为该上层的解码子模块210的输出向量。
多头注意力层213的输入包括残差支路3输出的向量Q2,以及编码器100的输出向量(即V2和K2),采用自注意力机制,基于向量间的关联度对各个向量进行变换,得到输出向量。多头注意力层213可以包括多个注意力头(head)。此后,对多头自注意力层213的输出向量执行求和并归一化214处理,得到残差支路4的输出向量。
前馈神经网络层215,用于对残差支路4输出的向量执行以下操作:线性变换和ReLU激活运算。
适配器216的工作原理与上述编码子模块110中的适配器114的工作原理相同,此处未详细赘述的内容,可以参见上文中对适配器114的介绍。可以理解的是,适配器216的参数与适配器114的参数是一致的。此后,对适配器216输出的向量进行求和与归一化处理得到残差支路5的输出向量。
当对解码器200中包括的M个解码子模块210执行上述操作后,对解码器200的输出结果先执行线性处理,获得线性处理后的结果;再对线性处理后的结果执行非线性处理,即可获得问答模块输出的结果。其中,线性处理可以包括线性变换和线性整流函数ReLU激活运算。非线性处理,可以理解为是用激活函数(activation functions)对线性处理后的结果进行处理的过程。例如,激活函数可以是sigmoid函数。
需说明的是,上述图3B中以编码子模块110和解码子模块210中均包括一个适配器为例示出。可选的,上述图3B中以编码子模块110和解码子模块210中还可以包括多个适配器。当编码子模块110包括多个适配器时,该多个适配器的位置可以根据实际任务需要进行设置,本申请对此不作具体限定。
下面,结合图4A介绍本申请实施例提供的另一种生成多任务生成模型的方法。可以理解的是,图4A所述描述的生成多任务生成模型的方法为上述图2所描述的生成多任务生成模型的方法的一个具体示例,图4A所描述的方法仅为示意,并不对本申请提供的生成多任务生成模型的方法构成任何限定。具体的,图4A所描述的方法中,以上述图2所描述的方法中的相互关联的多个任务为问答对生成任务包括的多个子任务,以及目标领域为电商领域为例进行了介绍,且该多个子任务包括:问句生成任务、问句相关性任务、阅读理解任务和答案排序任务。
图4A是本申请实施例提供的另一种生成多任务生成模型的方法的示意图。本申请实施例提供的生成多任务生成模型的方法可以由训练设备来执行。可以理解的是,该训练设备可以实现为软件、或者软件和硬件的组合。例如,本申请实施例中的训练设备可以但不限于是服务器或用户使用的终端设备。如图4A所示,该方法包括S410至S430。下面,详细介绍S410至S430。
S410,利用初始参数对初始transformer模型进行初始化,获得第一transformer模型。
初始参数是从已经训练好的自然语言处理的神经网络模型中获取的参数,该自然语言处理的神经网络模型的输入数据和输出数据均为自然语言(即,文本数据)。上述自然语言处理的神经网络模型可以是传统的transformer模型,即该神经网络模型包括编码器和解码器,且该编码器和解码器不包括适配器。基于此,上述S410中的初始参数包括:从已经训练好的自然语言处理的神经网络模型的编码器中获取的参数,以及从已经训练好的自然语言处理的神经网络模型的解码器中获取的参数。可选的,在上述S410之前,训练设备还可以执行以下操作:从已经训练好的自然语言处理的神经网络模型的编码器中获取参数,以及从已经训练好的自然语言处理的神经网络模型的解码器中获取参数。
示例性的,上述已经训练好的自然语言处理的神经网络模型可以是从网上获取的已开源的(即,已经训练好的)T5模型,该T5模型可以是利用中文的维基百科数据,经过自监督的形式训练得到的模型。对初始T5模型进行训练以获得训练好的T5模型的训练过程包括:预训练阶段和微调阶段。在预训练阶段,transformer模型的输入数据为:那条<mask1>走在<mask2>里,期望transformer模型的输出数据为:<extra_id_0>可爱的狗<extra_id_1>公园<extra_id2>,即初始T5模型需要预测被掩蔽的内容(即,<mask1>和<mask2>的内容)。可以根据初始T5模型真实输出的数据与该期望初始T5模型的输出数据之间的差异,对初始T5模型的编码器和解码器的参数进行调整,以获得第一初始T5模型。接下来,在微调阶段对第一初始T5模型中的编码器和解码器的参数进行进一步调整,第一初始T5模型的输入数据为:“那条可爱的狗走在”,期望第一初始T5模型的输出数据为:“公园里”,基于此,根据第一初始T5模型的真实输出的数据与期望第一初始T5模型输出数据之间的差异对第一初始T5模型的参数进行调整,以获得训练好的T5模型。
初始transformer模型包括编码器和解码器,且该编码器和该解码器中均包括一个适配器。示例性的,参见图3A至图3C示出了该初始transformer模型的结构,图3C示出了适配器的结构,有关初始transformer模型和适配器的详细介绍参见上文中的相关描述,此处不再详细赘述。基于此,执行上述S410,即利用已经训练好的自然语言处理的神经网络模型包括的编码器中的参数,对初始transformer模型包括的编码器中的参数进行初始化,以及利用已经训练好的自然语言处理的神经网络包括的解码器中的参数对初始transformer模型包括的解码器中的参数进行初始化,以获得第一transformer模型。需说明的是,初始transformer模型的编码器中适配器的参数可以利用已经训练好的自然语言处理的神经网络模型包括的编码器中的前馈神经网络层的参数进行初始化。相应的,初始transformer模型的解码器中适配器的参数可以利用已经训练好的自然语言处理的神经网络模型包括的解码器中的前馈神经网络层的参数进行初始化。
一般来说,想要对一个神经网络模型训练的比较充分,通常需要的训练样本的数据量的规模为千万级。然而在电商场景下,想要标注上千万的文本,需要非常高的人工成本。上述S410中,利用已经训练好的T5模型的参数对初始transformer模型的参数进行初始化,避免了利用大量有标注的文本对初始transformer模型进行训练,可以节省人工标注的成本。
S420,获取第一训练集。
其中,第一训练集包括大量的第一训练样本,每个第一训练样本可以是从电商领域获取的文本。电商领域的文本包括电商领域特有的语言词汇,例如,“商品详情页”、“刷单”、或“预售”等。电商领域的文本还包括通用的语言词汇,即其他应用领域和电商领域共同涉及的词汇,例如,“这个”或“照片”等。可以理解的是,第一训练样本是不带标注信息的样本。
S430,利用第一训练集对第一transformer模型进行训练,以获得第二transformer模型。
其中,利用第一训练集对第一transformer模型进行训练,以获得第二transformer模型,包括:对第一训练样本中的部分内容进行语言掩蔽,获得语言掩蔽处理后的文本;将语言掩蔽处理后的文本输入至第一transformer模型包括的编码器进行编码,获得编码结果;将编码结果输入至第一transformer模型包括的解码器进行解码,获得第一训练样本中的部分被掩蔽掉的内容的还原结果;;根据语言掩蔽处理后的文本和还原结果之间的差异,对第一transformer模型包括的编码器的参数和解码器的参数进行训练;待训练达到预设训练条件时,停止对初始transformer模型的训练,获得第二transformer模型。对预设训练条件不作具体限定,可以根据实际需求进行设置。例如,预训练条件可以是对第一transformer模型的训练次数达到预设训练次数,再如第一transformer模型的输出结果已经达到预设的识别精度,又如第一transformer模型的输出结果所对应的损失值在预设误差范围内等。上述将语言掩蔽处理后的文本输入至初始transformer模型的编码器中,包括:将语言掩蔽处理后的文本对应的输入表示向量输入至初始transformer模型的编码器中,获得输出表示向量,其中,输入表示向量是由第一训练样本的词性表示向量、字向量和位置表示向量拼接获得的向量。
上述对第一训练样本中的部分内容进行语言掩蔽,包括:对第一训练样本中的句子进行语言掩蔽,即以句子为粒度对第一训练样本中的部分内容进行语言掩蔽。这样的遮蔽方式,可以尽可能的让训练好的第二transformer模型学习到一些句子上相关的特性以及一些电商场景下常见的语言风格。进一步,考虑到电商领域中的特有词汇,例如,“预售”、“详情页”、或“刷单”等,对第一训练样本中的部分内容进行语言掩蔽,还包括:对第一训练样本中的包括电商领域的特有词汇也进行语言掩蔽,并通过模型预测出这些被遮蔽的词汇,这样可以让模型学习到电商场景下的特有词汇。示例性的,图4B示出了本申请实施例提供的对第一transformer模型进行训练的过程示意图,该过程为对输入文本(即,训练文本)中的词进行掩蔽处理,并利用掩蔽处理后的结果对第一transformer模型进行训练,以使训练好的第一transformer模型(即,第二transformer模型)能够正确输出所述输入文本中被掩蔽的词。如图4B所示,输入文本为一个句子,即“今天天气真好呀”,可以以字符为单位将该句子划分为7个字符。对输入文本对应的7个字符按一定比例进行随机掩蔽处理,获得语言掩蔽处理后的文本,用mask表示被掩蔽的字符。然后,根据语言掩蔽处理后的文本获得该文本对应的输入表示向量,图4B中,Pi为第i个字符的位置向量,Ei为第i个字符的字向量,Si为第i个字符的词性向量,i=1,2,…,7。将输入表示向量输入至第一transformer中,对第一transformer模型包括的编码器的参数和解码器的参数进行训练,以获得第二transformer模型。
在本申请实施例中,可以利用损失函数表示根据语言掩蔽处理后的文本和输出结果之间的差异。通过调整初始transformer模型的编码器和解码器的参数,以最小化损失函数。
上述S430中,将掩蔽处理后的文本输入至初始transformer模型中,并对初始transformer模型包括的编码器和解码器中的所有参数进行训练,训练目标为让所述初始transformer模型的编码器对根据语言掩蔽处理后的文本提取特征获得特征向量,让输出transformer模型的解码器能够根据所述特征向量预测出所述语言掩蔽处理后的文本中被掩蔽的内容,即训练获得的第二transformer模型能够学习到电商场景下的一定的语言特征。可以理解的是,第一训练样本是不带标注信息的样本,即上述S420的训练过程是一种无监督的神经网络模型的训练过程。
S440,获取第二训练集。
其中,第二训练集包括少量的第二训练样本,每个第二训练样本为包括多任务的文本样本,该多个任务包括:问句生成任务、问句相关性任务、阅读理解任务、答案排序任务。并且每个第二训练样本都携带有标注信息(或标签信息),该标注信息为该每个第二训练样本所关联的多个任务对应的目标输出结果。每个第二训练样本为包括多任务的文本样本,即第二训练样本包括:问句生成任务的文本样本、问句相关性任务的文本样本、阅读理解任务的文本样本、答案排序任务的文本样本。以下,详细介绍每个任务的训练样本。
(1)问句生成任务的文本样本
其中,所述文件生成任务的文本样本,相当于上述S220中的第一任务文本。
在训练第二transformer模型的过程中,问句生成任务的文本样本可以表示为:“针对以下文本{doc}可以出一个阅读理解题目:”,其中,{doc}指待识别商品详情页中的片段。例如,可以利用预定义的模板对待识别文档进行封装,以获得上述问句生成任务的文本样本。可以理解的是,问句生成任务的目标输出结果是生成与问句生成任务的文本样本关联的问句。
示例性的,可以采集已公开的中文问答数据集获得问句生成任务的文本样本。例如,已公开的中文问答数据集可以为webQA数据集,该数据集中的数据存储形式为:query-evidence-answer,query表示问题,answer表示答案,evidence表示补充该答案做的一些说明。例如,query为:“耳机多重”,answer为:“5.5g”,evidence为:“耳机仅5.5g轻巧,运动佩戴更舒适”。又如,query为:“世界上最大的平原是什么”,answer为:“亚马孙平原”,evidence为:“亚马孙河是世界流域面积最大的河流,亚马孙河流经的亚马孙平原是世界上面积最大的平原”。训练时可以将evidence作为问句生成模块的输入数据对应的模板中的{doc},将query作为问句生成模块的输出目标。
(2)问句相关性任务的文本样本
其中,所述文件生成任务的文本样本,相当于上述S220中的第二任务文本。
在实际训练第二transformer模型的过程中,问句相关性任务的文本样本可以为:“阅读下面的问题{query},请问这个问题和片段{doc}是否意思相关”其中,query表示用户输入的文本,doc表示待识别商品详情页中的片段。可以理解的是,问句相关性任务的目标输出结果为“相关”或者“不相关”。
还以上述webQA数据集为例举例介绍问句相关性任务的文本样本。此时,问句相关性任务的文本样本中的query表示用户输入的文本内容,doc表示webQA数据集中的evidence。当query与doc相关时,问句相关性任务的输出结果为“相关”;当query与doc不相关时,问句相关性任务的输出结果为“不相关”。基于此,还可以从webQA数据集中随机采样出该evidence以外的多个evidence作为该query的负样本,此时对应的模型训练预测目标即为“不相关”。
为了进一步提升多任务生成模型的泛化性能,还可以利用中文维基百科对上述数据集中的数据进行增强来丰富上述数据集的多样性。具体做法如下,用webQA数据集中的evidence检索中文维基百科,在检索结果中找出包含webQA数据集中的answer的维基百科的段落作为数据增强的正样本,这部分模型的预测目标为“相关”。可选的,还可以将从别的文章(即,与该answer无关联的文章)中随机获取的100个词作为数据增强的负样本,此时对应的模型训练预测目标为“不相关”。
(3)阅读理解任务的文本样本
其中,所述文件生成任务的文本样本,相当于上述S220中的第三任务文本。
在训练第二transformer模型的过程中,阅读理解任务的文本样本可以为:“阅读下面的这段文本{doc},用户问:{query}请问客服怎么回复比较适合?”。其中,query代表用户输入,doc表示待识别文档中的片段。阅读理解模块的目标输出结果,从doc中截取的一段片段作为答案进行回复。
目前尚未有针对电商领域的阅读理解数据,考虑到下游实际使用的适配,本申请还利用上述的webQA数据集构造了对应的阅读理解的数据集。具体做法如下:将经过数据增强后的webQA数据集中的evidence作为阅读理解模块的输入数据对应的模板中的doc,阅读理解模块的输出目标为该webQA数据集中的answer。由于增强后的webQA数据集中存在“不相关”的负样本,针对负样本,阅读理解模块的预测目标为特殊字符:None,None表示找不到答案。
(4)答案排序任务的文本样本
其中,所述文件生成任务的文本样本,相当于上述S220中的第四任务文本。
在训练第二transformer模型的过程中,答案排序任务的文本样本可以表示为:“阅读下面的问题{query},请问这样回复{answer}是否合适”,其中,这里的query代表用户输入,answer指模型生成的回复。可以理解的是,答案排序任务的目标输出结果为,“合适”或者“不合适”。
训练时,可以采样之前预处理后的电商领域的问答对数据作为训练的基础数据。在基础数据上,我们进行一定的筛选和预处理获得训练答案排序模块的正样本和负样本,包括:从问答对数据中选择将用户输入为query,在问答对数据中与其对应的客服回复为answer,并采用一开始的模版进行封装。上述部分,将作为模型训练的正样本,即模型的训练目标为预测出“合适”;以及将问答对数据中将用户输入作为query,将从问答对数据中随机从用户输入和客服回复中挑选句子,作为answer,并采用同样的方式进行封装。上述内容,作为模型训练的负样本,模型对于这部分样本的训练目标为预测出“不合适”。
S450,利用第二训练集对第二transformer模型进行训练,以获得训练好的多任务生成模型。
其中,利用第二训练集对第二transformer模型进行训练,以获得多任务生成模型,包括:将第二训练样本输入至第二transformer模型,获得第二transformer模型的真实输出结果,其中,第二训练样本是包括多个任务的文本样本,第二训练样本携带的标注信息用于表示与该第二训练样本所关联的多个任务对应的目标输出结果;根据第二训练样本携带的标注信息和第二transformer模型的真实输出结果之间的差异,对第二transformer模型的编码器中的适配器和解码器中的适配器进行训练;待训练达到预设训练条件时,停止对第二transformer模型的编码器中的适配器和解码器中的适配器的训练,获得多任务生成模型。
上述第二transformer模型的编码器中的适配器和解码器中的适配器的结构可以参见图3C示出的适配器。对第二transformer模型包括的编码器中的适配器和解码器中的适配器进行训练,即对编码器中的适配器中的所有参数进行训练,以及对解码器中的适配器中的所有参数进行训练,该所有参数包括前馈降维处理的参数、非线性处理的参数和前馈升维处理的参数。
在本申请实施例中,可以利用损失函数表示根据第二训练样本携带的标注信息和第二transformer模型的真实输出结果之间的差异,调整第二transformer模型的编码器中的适配器的参数和解码器中的适配器的参数,以最小化损失函数。对损失函数的类型不作具体限定,例如损失函数可以是交叉熵函数。
可以理解的是,上述S450中对第二transformer模型进行训练的过程,是一个多任务训练微调(fine-tune)的过程,即固定住第二transformer模型中除适配器以外的网络参数更新,仅调整第二transformer模型包括的适配器中的参数大小,避免了训练整个第二transformer模型会产生灾难性遗忘的问题。从而达到,既能利用之前已开源的T5模型的预训练带来的泛化提升,又能针对电商领域进行一定性的适应性的学习。同时,这种训练方式还可以节省在模型微调阶段的时间,因为相较于第二transformer模型的全参数更新,只更新第二transformer模型的部分参数(即,适配器中的参数)所需训练更新时间更少。
示例性的,以图4C为例介绍上述S450的训练过程。图4C示出了本申请实施例提供的对第二transformer模型进行训练的过程示意图。如图4C所示,对第二transformer模型进行训练时,输入至第二transformer模型的第二训练样本是包括相互关联的4个任务的4个文本样本,这4个任务分别为:任务1(即,问句生成任务)、任务2(即,问句相关性任务)、任务3(即,阅读理解任务)、任务4(即,答案排序任务)。该第二训练样本携带的标注信息用于指示以下内容:问句生成任务1对应的目标输出结果为“耳机多重”,问句相关性任务1对应的目标输出结果为“相关”,阅读理解任务1对应的目标输出结果为“耳机重量6.6克”,答案排序任务1对应的目标输出结果为“合适”。根据该第二训练样本携带的标注信息与第二transformer模型的真实输出结果之间的差异,对第二transformer模型的编码器中的适配器的参数和解码器中的适配器的参数进行调整,以获得训练好的多任务生成模型。
可选的,在上述S460之后,还可以执行以下步骤:利用多任务生成模型对多个待识别的商品文本进行处理,以获得每个待识别的商品文本对应的问句相关性任务的目标输出结果和答案排序任务的目标数据结果;通过人工对上述获得的每个待识别的商品文本对应的问句相关性任务的目标输出结果和答案排序任务的目标数据结果进行标注,获得标注后的结果;将标注后的结果与第二训练集中的第二训练样本进行融合,获得融合处理后的结果;利用融合处理后的结果对训练好的多任务生成模型进行优化训练,以获得优化训练后的多任务生成模型。
上述对训练好的多任务生成模型进行优化训练的过程,可以理解为是一个主动学习的训练过程,即将已经训练好的多任务生成模型应用在待识别的商品文本中,来积累实际场景下的相关数据。基于有效的主动学习数据选择策略,不断从未标注的数据中挑选出数据,并将挑选出的数据加入标注信息后对训练集进行更新,对利用更新后的训练集对训练好的多任务生成模型进行优化训练,这种主动学习训练方式可以有效地降低训练的代价,同时,能够进一步提高多任务生成模型的识别能力。
可以理解的是,上述初始transformer模型、第一transformer模型、第二transformer模型和多任务生成模型的具体结构是相同的,例如图3A至图3C示出的结构,区别在于,上述各个模型的模型参数不完全相同。
基于上述对本申请实施例提供的多任务生成模型的介绍,下面,结合图5介绍本申请实施例提供的一种问答对生成方法,该问答对生成方法将利用上述图2所描述的方法实施例中获得的目标领域的多任务生成模型来实现。图5是本申请实施例提供的一种问答对生成方法的示意图。本申请实施例提供的问答对生成方法可以由执行设备来执行。可以理解的是,该执行设备可以实现为软件、或者软件和硬件的组合。例如,本申请实施例中的执行设备可以但不限于是服务器或用户使用的终端设备。如图5所示,该方法包括S510和S520。下面,详细介绍S510和S520。
S510,获取待识别的文本。
待识别的文本可以是从目标领域获取的中文文本或者其他一种语种的文本。例如,目标领域可以但不限于为以下任意一个领域:电商领域、金融领域、或教育领域等。
S520,根据预设规则和多任务生成模型对所述待识别的文本进行处理,获得至少一个问答对,所述至少一个问答对包括从所述待识别的文本中获取的至少一个问题和至少一个答案,所述至少一个问题与所述至少一个答案关联。
其中,多任务生成模型是根据本申请实施例提供的生成多任务生成模型的方法获得的模型。
其中,预设规则用于指示利用多个不同的任务文本和多任务生成模型对待识别的文本进行处理以获得至少一个问题对,所述多个不同的任务文本相互关联,所述多个不同的任务文本包括:第一任务文本、第二任务文本、第三任务文本和第四任务文本,所述第一任务文本用于指示根据待识别的文本生成问句;所述第二任务文本用于指示确定所述待识别的文本与所述问句是否相关;所述第三任务文本用于指示根据所述问句从所述待识别的文本中获取所述问句对应的答案;所述第四任务文本用于指示确定所述问句与所述答案是否相匹配。
上述S520中,根据预设规则和多任务生成模型对待识别的文本进行处理,获得至少一个问答对,包括:按照第一任务文本的格式将待识别的文本输入至多任务生成模型,获得第一输出结果,第一输出结果为根据待识别的文本生成的问句;按照第二任务文本的格式将第一输出结果输入至多任务生成模型,获得第二输出结果,第二输出结果表示第一输出结果与待识别的文本是否相关;若第二输出结果表示第一输出结果与待识别的文本相关,则按照第三任务文本的格式将第一输出结果和待识别的文本输入至多任务生成模型,获得第三输出结果,第三输出结果表示从待识别的文本中能否获取第一输出结果对应的答案;若第三结果表示成功从待识别的文本中获取第一输出结果对应的答案,则按照第四任务文本的格式第一输出结果和第三输出结果输入至多任务模板,获得第四输出结果,第四输出结果表示第一输出结果与第三输出结果是否匹配;若第四输出结果表示第一输出结果与第三输出结果匹配,则将第一输出结果确定为至少一个问题,以及将第三输出结果确定为至少一个答案,获得至少一个问答对。可选的,在另一些实现方式中,若上述第二输出结果表示第一输出结果与待识别的文本不相关,则在获得所述第二输出结果之后停止对所述待识别的文本进行处理。这种实现方式中,即利用所述多任务生成模型对所述待识别的文本处理,无法获得所述至少一个问答对。可选的,在另一些实现方式中,若第三结果表示未能成功从待识别的文本中获取第一输出结果对应的答案,则在获得所述第三输出结果之后停止对所述待识别的文本进行处理。这种实现方式中,即利用所述多任务生成模型对所述待识别的文本处理,无法获得所述至少一个问答对。可选的,在另一些实现方式中,若第四输出结果表示第一输出结果与第三输出结果不匹配,则在获得所述第四输出结果之后停止对所述待识别的文本进行处理。这种实现方式中,即利用所述多任务生成模型对所述待识别的文本处理,无法获得所述至少一个问答对。示例性的,下文中的图6示出了上述“根据预设规则和多任务生成模型对待识别的文本进行处理,获得至少一个问答对”的一个具体示例。可以理解的是,图6所描述的方法中,以上述S510和S520中的待识别的文本为“支持交互红心键功能的手机系统版本须为安卓(Android)6.0以上或iOS8.0及以上。支持该功能的音乐应用程序(application,APP)版本须为6.4.2及以上。一键收藏功能须在云音乐app播放中状态使用。”,以及目标领域为电商领域为例进行了介绍。
在本申请实施例中,利用已经训练好的多任务生成模型生成问答对,使得生成的问答对的准确度较高。具体的,在生成问答对的过程中,增加了若干校验判断功能模块,在一定程度上缓解了因为所述已经训练好的多任务生成模型本身带来的误差累计的现象,有利于进一步提高生成的问答对的准确度。
下面,结合图6介绍本申请实施例提供的另一种问答对生成方法。可以理解的是,图6所述描述的问答对生成方法为上述图5所描述的问答对生成方法的一个具体示例,图6所描述的方法仅为示意,并不对本申请提供的问答对生成方法构成任何限定。
图6是本申请实施例提供的一种问答对生成方法的示意图。可以理解的是,该方法可以利用本申请实施例提供的多任务生成模型执行。如图6所示,该方法包括S601至S609。下面,详细介绍S601至S609。
S601,将商品文档和问句生成模板进行拼接,并将拼接后的结果输入多任务生成模型,多任务生成模型生成问题。
在一些实现方式中,问句生成模板可以表示为:“针对以下文本{doc}可以出一个阅读理解题目:”,其中doc表示商品文档。示例性的,以上述商品文档为:“支持交互红心键功能的手机系统版本须为安卓(Android)6.0以上或iOS8.0及以上。支持该功能的音乐应用程序(application,APP)版本须为6.4.2及以上。一键收藏功能须在云音乐app播放中状态使用。”为例,执行上述S601后,获得的拼接结果可以表示为:“针对以下文本{商品文档为以下内容:“支持交互红心键功能的手机系统版本须为安卓(Android)6.0以上或iOS8.0及以上。支持该功能的音乐应用程序(application,APP)版本须为6.4.2及以上}可以出一个阅读理解题目:”。多任务生成模型生成的问题可以包括以下两个问题:
问题1:手机红心键功能的手机系统版本须为什么?
问题2:支持交互红心键功能的手机系统版本须为什么?
S602,利用问句相关性模板将问题和商品文档进行拼接,并将拼接后的结果输入多任务生成模型。
在一些实现方式中,问句相关性模板可以表示为:“阅读下面的问题{query},请问这个问题和{doc}是否意思相关”,doc表示商品文档。示例性的,继续以上述示例的商品文档为例,对问题1和商品文档进行拼接,获得的拼接结果可以表示为:“阅读下面的问题{手机红心键功能的手机系统版本须为什么?},请问这个问题和{支持交互红心键功能的手机系统版本须为安卓(Android)6.0以上或iOS8.0及以上。支持该功能的音乐应用程序(application,APP)版本须为6.4.2及以上。一键收藏功能须在云音乐app播放中状态使用。}是否意思相关”。同样的,对上述S601获得的问题2也可以执行与问题1相同的操作,为了简洁,此处不再详细赘述。
S603,确定执行上述S602后多任务生成模型是否生成“相关”。
其中,确定执行上述S602后多任务生成模型是否生成“相关”,包括:当执行上述S602后多任务生成模型生成“相关”,在执行上述S603之后继续执行S604;否则执行S609。也就是说,当确定执行上述S602后多任务生成模型生成“不相关”时,在执行上述S603之后继续执行S609。
示例性的,将问题1和商品文档进行拼接后获得的结果输入至多任务生成模型进行问句相关性检测,多任务生成模型输出相关度为0.94。将问题2和商品文档进行拼接后获得的结果输入至多任务生成模型进行问句相关性检测,多任务生成模型输出相关度为0.86。由于上述两个相关度均超过0.8,则可以认为生成得到的问题1和问题2均通过相关性检测。
S604,利用阅读理解模板将商品文档和问题进行拼接,并将拼接后的结果输入多任务生成模型。
在一些实现方式中,阅读理解模板可以表示为:“阅读下面的这段文本{doc},用户问:{query}请问客服怎么回复比较适合?”其中,query代表多任务生成模型生成的问题,doc指商品文档。示例性的,以问题1和上述示例的商品文档为例,利用阅读理解模板将商品文档和问题1进行拼接,获得拼接后的结果可以表示为:“阅读下面的这段文本{支持交互红心键功能的手机系统版本须为安卓(Android)6.0以上或iOS8.0及以上。支持该功能的音乐应用程序(application,APP)版本须为6.4.2及以上。一键收藏功能须在云音乐app播放中状态使用。},用户问:{手机红心键功能的手机系统版本须为什么?}请问客服怎么回复比较适合?”。
S605,确定执行上述S604后多任务生成模型是否生成答案。
其中,确定执行上述S604后多任务生成模型是否生成答案,包括:当执行上述S605后多任务生成模型生成答案,在执行上述S605之后继续执行S606;否则执行S609。也就是说,当确定执行上述S605后多任务生成模型未生成答案时,在执行上述S605之后继续执行S609。可以理解的是,在一些实现方式中,执行上述S604后,多任务生成模型输出的结果为空,即多任务生成模型并未生成答案。这种实现方式中,也就是说,多任务生成模型未能根据当前的问题和商品文档,从商品文档中抽取出该问题对应的答案。这种情况下,在执行S605后可以中止链路。
示例性的,以问题1和上述示例的商品文档为例,执行上述S604后,多任务生成模型生成的答案可以为:“app版本须为6.4.2及以上”。以问题2和上述示例的商品文档为例,执行上述S604后,多任务生成模型生成的答案可以为:“手机系统版本须为Android6.0以上或iOS8.0及以上”。
S606,利用答案排序模板将答案和问题进行拼接,并将拼接后的结果输入多任务生成模型。
在一些实现方式中,答案排序模板可以表示为:“阅读下面的问题{query},请问这样回复{answer}是否合适”。基于此,以上述示例中的问题1的对应多任务生成模型生成的答案为例,执行上述S606后,获得的拼接结果可以表示为:“阅读下面的问题{手机红心键功能的手机系统版本须为什么?},请问这样回复{app版本须为6.4.2及以上}是否合适”。以上述示例中的问题2的对应多任务生成模型生成的答案为例,执行上述S606后,获得的拼接结果可以表示为:“阅读下面的问题{支持交互红心键功能的手机系统版本须为什么?},请问这样回复{手机系统版本须为Android6.0以上或iOS8.0及以上}是否合适”。
S607,确定执行上述S606后多任务生成模型是否生成“匹配”。
其中,确定执行上述S606后多任务生成模型是否生成“匹配”,包括:当执行上述S606后多任务生成模型生成答案,在执行上述S607之后继续执行S608;否则执行S609。也就是说,当确定执行上述S606后多任务生成模型未生成答案时,在执行上述S607之后继续执行S609。
示例性的,当以上述问题1和多任务生成模型生成的问题1的答案为例,执行上述S606后,多任务生成模型输出匹配度为0.337。当以上述问题2和多任务生成模型生成的问题2的答案为例,执行上述S606后,多任务生成模型输出匹配度为0.879。由于问题1和对应的答案的匹配度小于0.7,故可以确定问题1和对应的答案不匹配。由于问题2和对应的答案的匹配度大于0.7,故可以确定问题2和对应的答案匹配。
S608,将上述S601获得的问题和上述S604获得的答案确定为一个问答对,并将问答对存储至常见问题解答系统。
示例性的,执行上述S607后,可以确定问题1和对应的答案不匹配,以及确定问题2和对应的答案匹配。基于此,可以将问题2和对应的答案作为一个问答对存储至常见解答系统中,以便后续使用。
S609,中止链路。
执行S609,即结束问答对生成,也就是说,执行S609后,利用多任务生成模型对商品文档进行处理,不能成功获得与该商品文档关联的至少一个问答对。
应理解,上述图6示出的利用多任务生成模型生成问答对的方法仅为示意,并不对本申请提供的问答对生成方法构成任何限定。
在本申请实施例中,利用上文中已经训练好的多任务生成模型生成问答对使得生成的问答对的准确度较高。具体的,在生成问答对的过程中,新增了若干校验判断功能模块,在一定程度上缓解了因为多任务生成模型本身带来的误差累计的现象,有利于进一步提高生成问答对的准确度。
上文,结合图1至图6详细介绍了本申请提供的多任务生成模型适用的应用场景、本申请提供的生成多任务生成模型的方法、以及问答对生成方法。下面,将结合图7和图10介绍本申请提供的生成多任务生成模型的装置、问答对生成装置、训练设备和执行设备。应理解,上文中生成多任务生成模型的方法与下文中生成多任务生成模型的装置和训练设备相对应。上文中问答对生成方法与下文中问答对生成装置和执行设备相对应。因此,下文中未详细描述的内容可以参见上述方法实施例中的相关描述。
与本申请实施例提供的一种生成多任务生成模型的方法对应的,本申请实施例提供一种生成多任务生成模型的装置。
图7是本申请实施例提供的一种生成多任务生成模型的装置的结构图。如图7所示,该装置包括训练单元701,
所述训练单元701,用于利用第一训练集合,对初始预训练模型的第一编码器和第一解码器进行预训练,获得预训练模型,所述第一训练集合包括目标领域的第一训练文本,所述第一训练文本包括部分被掩蔽的文本内容,且所述第一训练文本是无标记的文本;所述训练单元701还用于:根据第二训练集合,对所述预训练后的所述预训练模型进行第一训练,生成多任务生成模型,所述预训练模型包括第二编码器和第二解码器,所述第一训练包括:对所述第二编码器包括的第一适配器和所述第二解码器包括的第二适配器的参数进行调整,获得训练后的所述多任务生成模型,所述第二训练集合包括第二训练文本和所述第二训练文本的标记,所述第二训练文本包括相互关联的多个任务的多个文本,所述第二训练文本的标记表示所述多个任务的多个文本对应的多个结果。
可选的,在一些实现方式中,所述第一编码器包括第三适配器,所述第一解码器包括第四适配器,所述第三适配器的参数和所述第四适配器的参数是预设的参数,所述初始预训练模型的参数是根据序列到序列模型的参数确定的,其中,所述第一编码器包括的除所述第三适配器的参数之外的参数,与所述序列到序列模型包括的编码器的参数相同;所述第一解码器包括的除所述第四适配器的参数之外的参数,与序列到序列模型包括的解码器的参数相同;所述序列到序列模型是通过第二训练获得的神经网络模型。
可选的,在另一些实现方式中,所述训练单元701还用于:利用所述第一编码器对所述第一训练文本进行编码,获得编码结果;利用所述第一解码器对所述编码结果进行解码,获得所述部分被掩蔽的文本的还原结果;根据所述还原结果与所述第一训练文本之间的差异,对所述第一编码器的参数和所述第一解码器的参数进行调整;待训练达到第一预设训练条件时,停止对所述第一编码器的参数和所述第一解码器的参数进行调整,获得所述预训练模型。可选的,在另一些实现方式中,所述训练单元701还用于:利用所述第二编码器对所述第二训练文本中的第一局部文本内容进行特征提取,获得第一特征向量,其中,利用所述第一适配器对第二特征向量执行第一操作,获得第三特征向量,所述第二特征向量是对输入至所述第二编码器的所述第一局部文本进行特征提取获得的向量,所述第一操作包括:降采样、非线性处理和升采样,所述第一特征向量是对所述第三特征向量执行求和归一化处理获得的向量;利用所述第二解码器对所述第二编码器的输出结果和所述第二解码器的输入数据进行特征还原,获得第四特征向量,其中,利用所述第二适配器对第五特征向量执行所述第一操作,获得第六特征向量,所述第二编码器的输出结果为所述第一特征向量,所述第二解码器的输入数据包括所述预训练模型对所述第二训练样本中的第二局部文本内容进行预测获得的结果,所述第二局部文本内容与所述第一局部文本内容不完全相同,所述第四特征向量是对所述第六特征向量执行求和归一化处理获得的向量,所述第五特征向量是对输入至所述第二解码器的所述第二编码器的输出结果和所述第二解码器的输入数据进行特征还原获得的向量。
可选的,在另一些实现方式中,所述第二编码器还包括具有第一注意力层的第一残差支路,以及具有第一前馈神经网络层和所述第一适配器的第二残差支路,所述训练单元701还用于:利用所述第一注意力层对所述第一局部文本内容进行特征提取,获得第七特征向量;利用所述第一前馈神经网络层对所述第七特征向量进行特征提取,获得所述第二特征向量;所述第二解码器还包括具有第二注意力层的第三残差支路,具有第三注意力层的第四残差支路,以及具有第二前馈神经网络层和所述第二适配器的第五残差支路,所述训练单元701还用于:利用所述第二注意力层对所述第二解码器的输入数据进行特征还原,获得第八特征向量;利用所述第三注意力层对所述第二编码器的输出结果和所述第八特征向量进行特征还原,获取第九特征向量;利用所述第二前馈神经网络层对所述第九特征向量进行特征还原,获取所述第五特征向量。
可选的,在一些实现方式中,所述训练单元701还用于:将所述第二训练文本输入至所述预训练模型,获得所述预训练模型的输出结果;根据所述第二训练文本的标记与所述预训练模型的输出结果之间的差异,对所述第一适配器的参数和所述第二适配器的参数进行调整;待训练达到第二预设训练条件时,停止对所述第一适配器的参数和所述第二适配器的参数进行调整,获得所述训练后的所述多任务生成模型。
可选的,在一些实现方式中,所述相互关联的多个任务包括问句生成任务、问句相关性任务、阅读理解任务和答案排序任务,所述第二训练文本包括所述问句生成任务对应的第一任务文本,所述第一任务文本用于指示根据待识别的文本生成问句;所述第二训练文本还包括所述问句相关性任务对应的第二任务文本,所述第二任务文本用于指示确定所述待识别的文本与所述问句是否相关;所述第二训练文本还包括所述阅读理解任务对应的第三任务文本,所述第三任务文本用于指示根据所述问句从所述待识别的文本中获取所述问句对应的答案;所述第二训练文本还包括所述答案排序任务对应的第四任务文本,所述第四任务文本用于指示确定所述问句与所述答案是否相匹配。
可选的,在另一些实现方式中,所述目标领域为电商领域。
需要说明的是,对于本申请实施例提供的装置实施例的详细描述可以参考对本申请实施例提供的生成多任务生成模型的方法中的相关描述,这里不再赘述。
与本申请实施例提供的一种问答对生成方法对应的,本申请实施例提供一种问答对生成装置。
图8是本申请实施例提供的一种问答对生成装置的结构图。如图8所示,该装置包括获取单元801和处理单元802,
获取单元801,用于获取待识别的文本;处理单元802,用于根据预设规则和多任务生成模型对所述待识别的文本进行处理,获得至少一个问答对,所述至少一个问答对包括从所述待识别的文本中获取的至少一个问题和至少一个答案,所述至少一个问题与所述至少一个答案关联;其中,所述多任务生成模型是根据本申请实施例提供的生成多任务生成模型的方法获得的模型。
可选的,在一些实现方式中,所述处理单元802还用于:按照所述第一任务文本的格式将所述待识别的文本输入至所述多任务生成模型,获得第一输出结果,所述第一输出结果为根据所述待识别的文本生成的问句;按照所述第二任务文本的格式将所述第一输出结果输入至所述多任务生成模型,获得第二输出结果,所述第二输出结果表示所述第一输出结果与所述待识别的文本是否相关;若所述第二输出结果表示所述第一输出结果与所述待识别的文本相关,则按照所述第三任务文本的格式将所述第一输出结果和所述待识别的文本输入至所述多任务生成模型,获得第三输出结果,所述第三输出结果表示从所述待识别的文本中能否获取所述第一输出结果对应的答案;若所述第三结果表示成功从所述待识别的文本中获取所述第一输出结果对应的答案,则按照所述第四任务文本的格式所述第一输出结果和所述第三输出结果输入至所述多任务模板,获得第四输出结果,所述第四输出结果表示所述第一输出结果与所述第三输出结果是否匹配;若所述第四输出结果表示所述第一输出结果与所述第三输出结果匹配,则将所述第一输出结果确定为所述至少一个问题,以及将所述第三输出结果确定为所述至少一个答案,获得所述至少一个问答对。
可选的,在另一些实现方式中,所述待识别的文本是从电商领域获取的文本。
需要说明的是,对于本申请实施例提供的装置实施例的详细描述可以参考对本申请实施例提供的问答对生成方法中的相关描述,这里不再赘述。
与本申请实施例提供的一种生成多任务生成模型的方法对应的,本申请实施例提供一种训练设备。
图9是本申请实施例提供的一种训练设备结构示意图,训练设备900上可以部署有图7对应实施例中所描述的生成多任务生成模型的装置,用于实现上文中图2和图4A所描述的方法的各个步骤。具体的,训练设备900由一个或多个服务器实现,训练设备900可因配置或性能不同而产生比较大的差异,可以包括一个或一个以上中央处理器(centralprocessing units,CPU)922(例如,一个或一个以上处理器)和存储器932,一个或一个以上存储应用程序942或数据944的存储介质930(例如一个或一个以上海量存储设备)。其中,存储器932和存储介质930可以是短暂存储或持久存储。存储在存储介质930的程序可以包括一个或一个以上模块(图示没标出),每个模块可以包括对训练设备中的一系列指令操作。更进一步地,中央处理器922可以设置为与存储介质930通信,在训练设备900上执行存储介质930中的一系列指令操作。
训练设备900还可以包括一个或一个以上电源926,一个或一个以上有线或无线网络接口950,一个或一个以上输入输出接口958,和/或,一个或一个以上操作系统941,例如Windows ServerTM,Mac OS XTM,UnixTM,LinuxTM,FreeBSDTM等等。
本申请实施例中,在一种情况下,中央处理器922,用于执行图3对应实施例中所描述的训练装置执行的步骤。中央处理器922执行前述各个步骤的具体方式,与本申请中图2和图4A对应的各个方法实施例基于同一构思,其带来的技术效果与本申请中图2和图4A对应的各个方法实施例相同,具体内容可参见本申请前述所示的方法实施例中的叙述,此处不再赘述。
与本申请实施例提供的一种问答对生成方法对应的,本申请实施例提供一种执行设备。
图10是本申请实施例提供的一种执行设备的结构示意图,执行设备1000具体可以表现为虚拟现实VR设备、手机、平板、笔记本电脑、智能穿戴设备、监控数据处理设备或者雷达数据处理设备等,此处不做限定。其中,执行设备1000上可以部署有图8对应实施例中所描述的问答对生成装置,用于实现图5和图6对应实施例中的功能。具体的,执行设备1000包括:接收器1001、发射器1002、处理器1003和存储器1004(其中执行设备1000中的处理器1003的数量可以一个或多个,图10中以一个处理器为例),其中,处理器1003可以包括应用处理器10031和通信处理器10032。在本申请的一些实施例中,接收器1001、发射器1002、处理器1003和存储器1004可通过总线或其它方式连接。
存储器1004可以包括只读存储器和随机存取存储器,并向处理器1003提供指令和数据。存储器1004的一部分还可以包括非易失性随机存取存储器(non-volatile randomaccess memory,NVRAM)。存储器1004存储有处理器和操作指令、可执行模块或者数据结构,或者它们的子集,或者它们的扩展集,其中,操作指令可包括各种操作指令,用于实现各种操作。
处理器1003控制执行设备的操作。具体的应用中,执行设备的各个组件通过总线系统耦合在一起,其中总线系统除包括数据总线之外,还可以包括电源总线、控制总线和状态信号总线等。但是为了清楚说明起见,在图中将各种总线都称为总线系统。
上述本申请实施例揭示的方法可以应用于处理器1003中,或者由处理器1003实现。处理器1003可以是一种集成电路芯片,具有信号的处理能力。在实现过程中,上述方法的各步骤可以通过处理器1003中的硬件的集成逻辑电路或者软件形式的指令完成。上述的处理器1003可以是通用处理器、数字信号处理器(digital signal processing,DSP)、微处理器或微控制器,还可进一步包括专用集成电路(application specific integratedcircuit,ASIC)、现场可编程门阵列(field-programmable gate array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。该处理器1003可以实现或者执行本申请实施例中的公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。结合本申请实施例所公开的方法的步骤可以直接体现为硬件译码处理器执行完成,或者用译码处理器中的硬件及软件模块组合执行完成。软件模块可以位于随机存储器,闪存、只读存储器,可编程只读存储器或者电可擦写可编程存储器、寄存器等本领域成熟的存储介质中。该存储介质位于存储器1004,处理器1003读取存储器1004中的信息,结合其硬件完成上述方法的步骤。
接收器1001可用于接收输入的数字或字符信息,以及产生与执行设备的相关设置以及功能控制有关的信号输入。发射器1002可用于通过第一接口输出数字或字符信息;发射器1002还可用于通过第一接口向磁盘组发送指令,以修改磁盘组中的数据;发射器1002还可以包括显示屏等显示设备。
本申请实施例中,处理器1003中的应用处理器10031,用于执行图5和图6对应实施例中的问答对生成方法。需要说明的是,应用处理器10031执行各个步骤的具体方式,与本申请中图5和图6对应的各个方法实施例基于同一构思,其带来的技术效果与本申请中图5和图6对应的各个方法实施例相同,具体内容可参见本申请前述所示的方法实施例中的叙述,此处不再赘述。
本申请实施例还提供了一种计算机可读存储介质,计算机可读存储介质包括计算机指令,计算机指令在被处理器执行时用于实现本申请实施例中任意一种生成多任务生成模型的方法的各个步骤。
本申请实施例还提供了一种计算机可读存储介质,计算机可读存储介质包括计算机指令,计算机指令在被处理器执行时用于实现本申请实施例中任意一种问答对生成方法的各个步骤。
通过以上的实施方式的描述,本领域的技术人员易于理解,这里描述的示例实施方式可以通过软件实现,也可以通过软件结合必要的硬件的方式来实现。因此,根据本公开实施方式的技术方案可以以软件产品的形式体现出来,该软件产品可以存储在一个计算机可读介质上,包括若干指令以使得一台计算设备(可以是个人计算机、服务器、终端装置、或者网络设备等)执行根据本申请公开实施方式的方法。
在一个典型的配置中,计算设备包括一个或多个处理器(CPU)、输入/输出接口、网络接口和内存。
内存可能包括计算机可读介质中的非永久性存储器,随机存取存储器(RAM)和/或非易失性内存等形式,如只读存储器(ROM)或闪存(flash RAM)。内存是计算机可读介质的示例。
1、计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(PRAM)、静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、其他类型的随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、快闪记忆体或其他内存技术、只读光盘只读存储器(CD-ROM)、数字多功能光盘(DVD)或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他磁性存储介质或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括非暂存电脑可读媒体(transitory media),如调制的数据信号和载波。
2、本领域技术人员应明白,本申请的实施例可提供为方法、系统或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本申请虽然以较佳实施例公开如上,但其并不是用来限定本申请,任何本领域技术人员在不脱离本申请的精神和范围内,都可以做出可能的变动和修改,因此本申请的保护范围应当以本申请权利要求所界定的范围为准。

Claims (17)

1.一种生成多任务生成模型的方法,其特征在于,用于生成多任务生成模型,所述方法包括:
利用第一训练集合,对初始预训练模型的第一编码器和第一解码器进行预训练,获得预训练模型,所述第一训练集合包括目标领域的第一训练文本,所述第一训练文本包括部分被掩蔽的文本内容,且所述第一训练文本是无标记的文本;
根据第二训练集合,对所述预训练后的所述预训练模型进行第一训练,生成多任务生成模型,所述预训练模型包括第二编码器和第二解码器,所述第一训练包括:对所述第二编码器包括的第一适配器和所述第二解码器包括的第二适配器的参数进行调整,获得训练后的所述多任务生成模型,所述第二训练集合包括第二训练文本和所述第二训练文本的标记,所述第二训练文本包括相互关联的多个任务的多个文本,所述第二训练文本的标记表示所述多个任务的多个文本对应的多个结果。
2.根据权利要求1所述的方法,其特征在于,所述第一编码器包括第三适配器,所述第一解码器包括第四适配器,所述第三适配器的参数和所述第四适配器的参数是预设的参数,
所述初始预训练模型的参数是根据序列到序列模型的参数确定的,其中,所述第一编码器包括的除所述第三适配器的参数之外的参数,与所述序列到序列模型包括的编码器的参数相同;所述第一解码器包括的除所述第四适配器的参数之外的参数,与序列到序列模型包括的解码器的参数相同;所述序列到序列模型是通过第二训练获得的神经网络模型。
3.根据权利要求1或2所述的方法,其特征在于,所述利用第一训练集合,对初始预训练模型的第一编码器和第一解码器进行预训练,获得预训练模型,包括:
利用所述第一编码器对所述第一训练文本进行编码,获得编码结果;
利用所述第一解码器对所述编码结果进行解码,获得所述部分被掩蔽的文本的还原结果;
根据所述还原结果与所述第一训练文本之间的差异,对所述第一编码器的参数和所述第一解码器的参数进行调整;
待训练达到第一预设训练条件时,停止对所述第一编码器的参数和所述第一解码器的参数进行调整,获得所述预训练模型。
4.根据权利要求1至3任一项所述的方法,其特征在于,所述第一训练还包括:
利用所述第二编码器对所述第二训练文本中的第一局部文本内容进行特征提取,获得第一特征向量,其中,利用所述第一适配器对第二特征向量执行第一操作,获得第三特征向量,所述第二特征向量是对输入至所述第二编码器的所述第一局部文本进行特征提取获得的向量,所述第一操作包括:降采样、非线性处理和升采样,所述第一特征向量是对所述第三特征向量执行求和归一化处理获得的向量;
利用所述第二解码器对所述第二编码器的输出结果和所述第二解码器的输入数据进行特征还原,获得第四特征向量,其中,利用所述第二适配器对第五特征向量执行所述第一操作,获得第六特征向量,所述第二编码器的输出结果为所述第一特征向量,所述第二解码器的输入数据包括所述预训练模型对所述第二训练样本中的第二局部文本内容进行预测获得的结果,所述第二局部文本内容与所述第一局部文本内容不完全相同,所述第四特征向量是对所述第六特征向量执行求和归一化处理获得的向量,所述第五特征向量是对输入至所述第二解码器的所述第二编码器的输出结果和所述第二解码器的输入数据进行特征还原获得的向量。
5.根据权利要求4所述的方法,其特征在于,
所述第二编码器还包括具有第一注意力层的第一残差支路,以及具有第一前馈神经网络层和所述第一适配器的第二残差支路,所述方法还包括:
利用所述第一注意力层对所述第一局部文本内容进行特征提取,获得第七特征向量;
利用所述第一前馈神经网络层对所述第七特征向量进行特征提取,获得所述第二特征向量;
所述第二解码器还包括具有第二注意力层的第三残差支路,具有第三注意力层的第四残差支路,以及具有第二前馈神经网络层和所述第二适配器的第五残差支路,所述方法还包括:
利用所述第二注意力层对所述第二解码器的输入数据进行特征还原,获得第八特征向量;
利用所述第三注意力层对所述第二编码器的输出结果和所述第八特征向量进行特征还原,获取第九特征向量;
利用所述第二前馈神经网络层对所述第九特征向量进行特征还原,获取所述第五特征向量。
6.根据权利要求1至5任一项所述的方法,其特征在于,所述根据第二训练集合,对所述预训练后的所述预训练模型进行第一训练,生成多任务生成模型,包括:
将所述第二训练文本输入至所述预训练模型,获得所述预训练模型的输出结果;
根据所述第二训练文本的标记与所述预训练模型的输出结果之间的差异,对所述第一适配器的参数和所述第二适配器的参数进行调整;
待训练达到第二预设训练条件时,停止对所述第一适配器的参数和所述第二适配器的参数进行调整,获得所述训练后的所述多任务生成模型。
7.根据权利要求1至6任一项所述的方法,其特征在于,所述相互关联的多个任务包括问句生成任务、问句相关性任务、阅读理解任务和答案排序任务,
所述第二训练文本包括所述问句生成任务对应的第一任务文本,所述第一任务文本用于指示根据待识别的文本生成问句;
所述第二训练文本还包括所述问句相关性任务对应的第二任务文本,所述第二任务文本用于指示确定所述待识别的文本与所述问句是否相关;
所述第二训练文本还包括所述阅读理解任务对应的第三任务文本,所述第三任务文本用于指示根据所述问句从所述待识别的文本中获取所述问句对应的答案;
所述第二训练文本还包括所述答案排序任务对应的第四任务文本,所述第四任务文本用于指示确定所述问句与所述答案是否相匹配。
8.根据权利要求1至7任一项所述的方法,其特征在于,所述目标领域为电商领域。
9.一种问答对生成方法,其特征在于,包括:
获取待识别的文本;
根据预设规则和多任务生成模型对所述待识别的文本进行处理,获得至少一个问答对,所述至少一个问答对包括从所述待识别的文本中获取的至少一个问题和至少一个答案,所述至少一个问题与所述至少一个答案关联;
其中,所述多任务生成模型是根据权利要求1至6、8任一项所述的生成多任务生成模型的方法获得的模型。
10.根据权利要求9所述的方法,其特征在于,所述相互关联的多个任务包括问句生成任务、问句相关性任务、阅读理解任务和答案排序任务,
所述第二训练文本包括所述问句生成任务对应的第一任务文本,所述第一任务文本用于指示根据待识别的文本生成问句;
所述第二训练文本还包括所述问句相关性任务对应的第二任务文本,所述第二任务文本用于指示确定所述待识别的文本与所述问句是否相关;
所述第二训练文本还包括所述阅读理解任务对应的第三任务文本,所述第三任务文本用于指示根据所述问句从所述待识别的文本中获取所述问句对应的答案;
所述第二训练文本还包括所述答案排序任务对应的第四任务文本,所述第四任务文本用于指示确定所述问句与所述答案是否相匹配。
11.根据权利要求10所述的方法,其特征在于,所述根据预设规则和多任务生成模型对所述待识别的文本进行处理,获得至少一个问答对,包括:
按照所述第一任务文本的格式将所述待识别的文本输入至所述多任务生成模型,获得第一输出结果,所述第一输出结果为根据所述待识别的文本生成的问句;
按照所述第二任务文本的格式将所述第一输出结果输入至所述多任务生成模型,获得第二输出结果,所述第二输出结果表示所述第一输出结果与所述待识别的文本是否相关;
若所述第二输出结果表示所述第一输出结果与所述待识别的文本相关,则按照所述第三任务文本的格式将所述第一输出结果和所述待识别的文本输入至所述多任务生成模型,获得第三输出结果,所述第三输出结果表示从所述待识别的文本中能否获取所述第一输出结果对应的答案;
若所述第三结果表示成功从所述待识别的文本中获取所述第一输出结果对应的答案,则按照所述第四任务文本的格式所述第一输出结果和所述第三输出结果输入至所述多任务生成模型,获得第四输出结果,所述第四输出结果表示所述第一输出结果与所述第三输出结果是否匹配;
若所述第四输出结果表示所述第一输出结果与所述第三输出结果匹配,则将所述第一输出结果确定为所述至少一个问题,以及将所述第三输出结果确定为所述至少一个答案,获得所述至少一个问答对。
12.根据权利要求9至11任一项所述的方法,其特征在于,所述待识别的文本是从电商领域获取的文本。
13.一种生成多任务生成模型的装置,其特征在于,用于生成多任务生成模型,所述装置包括:
训练单元,用于利用第一训练集合,对初始预训练模型的第一编码器和第一解码器进行预训练,获得预训练模型,所述第一训练集合包括目标领域的第一训练文本,所述第一训练文本包括部分被掩蔽的文本内容,且所述第一训练文本是无标记的文本;
所述训练单元,还用于根据第二训练集合,对所述预训练后的所述预训练模型进行第一训练,生成多任务生成模型,所述预训练模型包括第二编码器和第二解码器,所述第一训练包括:对所述第二编码器包括的第一适配器和所述第二解码器包括的第二适配器的参数进行调整,获得训练后的所述多任务生成模型,所述第二训练集合包括第二训练文本和所述第二训练文本的标记,所述第二训练文本包括相互关联的多个任务的多个文本,所述第二训练文本的标记表示所述多个任务的多个文本对应的多个结果。
14.一种问答对生成装置,其特征在于,包括:
获取单元,用于获取待识别的文本;
处理单元,用于根据预设规则和多任务生成模型对所述待识别的文本进行处理,获得至少一个问答对,所述至少一个问答对包括从所述待识别的文本中获取的至少一个问题和至少一个答案,所述至少一个问题与所述至少一个答案关联;
其中,所述多任务生成模型是根据权利要求1至8任一项所述的生成多任务生成模型的方法获得的模型。
15.一种训练设备,其特征在于,包括:存储器和处理器、所述存储器和所述处理器耦合;
所述存储器用于存储一条或多条计算机指令;
所述处理器用于执行所述一条或多条计算机指令,以实现如权利要求1至8任意一项所述的方法。
16.一种执行设备,其特征在于,包括:存储器和处理器、所述存储器和所述处理器耦合;
所述存储器用于存储一条或多条计算机指令;
所述处理器用于执行所述一条或多条计算机指令,以实现如权利要求9至12任意一项所述的方法。
17.一种计算机可读存储介质,其上存储有一条或多条计算机指令,其特征在于,该指令被处理器执行以实现如权利要求1至12任意一项所述的方法。
CN202210869521.5A 2022-07-22 2022-07-22 生成多任务生成模型的方法、问答对生成方法和相关装置 Pending CN115391499A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202210869521.5A CN115391499A (zh) 2022-07-22 2022-07-22 生成多任务生成模型的方法、问答对生成方法和相关装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202210869521.5A CN115391499A (zh) 2022-07-22 2022-07-22 生成多任务生成模型的方法、问答对生成方法和相关装置

Publications (1)

Publication Number Publication Date
CN115391499A true CN115391499A (zh) 2022-11-25

Family

ID=84116801

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202210869521.5A Pending CN115391499A (zh) 2022-07-22 2022-07-22 生成多任务生成模型的方法、问答对生成方法和相关装置

Country Status (1)

Country Link
CN (1) CN115391499A (zh)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116244417A (zh) * 2023-03-23 2023-06-09 山东倩倩网络科技有限责任公司 应用于ai聊天机器人的问答交互数据处理方法及服务器
CN117076090A (zh) * 2023-10-10 2023-11-17 腾讯科技(深圳)有限公司 任务模型的构建方法、装置、设备及计算机可读存储介质
CN117094362A (zh) * 2023-10-19 2023-11-21 腾讯科技(深圳)有限公司 一种任务处理方法及相关装置

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116244417A (zh) * 2023-03-23 2023-06-09 山东倩倩网络科技有限责任公司 应用于ai聊天机器人的问答交互数据处理方法及服务器
CN116244417B (zh) * 2023-03-23 2024-05-24 上海笑聘网络科技有限公司 应用于ai聊天机器人的问答交互数据处理方法及服务器
CN117076090A (zh) * 2023-10-10 2023-11-17 腾讯科技(深圳)有限公司 任务模型的构建方法、装置、设备及计算机可读存储介质
CN117076090B (zh) * 2023-10-10 2024-03-19 腾讯科技(深圳)有限公司 任务模型的构建方法、装置、设备及计算机可读存储介质
CN117094362A (zh) * 2023-10-19 2023-11-21 腾讯科技(深圳)有限公司 一种任务处理方法及相关装置
CN117094362B (zh) * 2023-10-19 2024-02-09 腾讯科技(深圳)有限公司 一种任务处理方法及相关装置

Similar Documents

Publication Publication Date Title
WO2021082953A1 (zh) 机器阅读理解方法、设备、存储介质及装置
US11507748B2 (en) Method and apparatus for outputting information
CN111859960B (zh) 基于知识蒸馏的语义匹配方法、装置、计算机设备和介质
CN115391499A (zh) 生成多任务生成模型的方法、问答对生成方法和相关装置
CN113919344B (zh) 文本处理方法和装置
CN113268609B (zh) 基于知识图谱的对话内容推荐方法、装置、设备及介质
US20200382612A1 (en) Interpretable user modeling from unstructured user data
CN111666416A (zh) 用于生成语义匹配模型的方法和装置
CN110633577A (zh) 文本脱敏方法以及装置
CN111930914A (zh) 问题生成方法和装置、电子设备以及计算机可读存储介质
CN111666500A (zh) 文本分类模型的训练方法及相关设备
CN111897934A (zh) 问答对生成方法及装置
CN114443899A (zh) 视频分类方法、装置、设备及介质
Malode Benchmarking public large language model
US11036996B2 (en) Method and apparatus for determining (raw) video materials for news
CN115374259A (zh) 一种问答数据挖掘方法、装置及电子设备
CN115954001A (zh) 语音识别方法和模型训练方法
CN117473034A (zh) 交互文本处理方法、装置、电子设备及存储介质
CN116662522A (zh) 问题答案推荐方法、存储介质和电子设备
CN113392190B (zh) 一种文本识别方法、相关设备及装置
CN115759001A (zh) 语言模型训练方法、文本预测方法以及装置
CN116029303A (zh) 语言表达方式识别方法、装置、电子设备和存储介质
Lamons et al. Python Deep Learning Projects: 9 projects demystifying neural network and deep learning models for building intelligent systems
CN111615178B (zh) 识别无线网络类型及模型训练的方法、装置及电子设备
JP6526607B2 (ja) 学習装置、学習方法、および学習プログラム

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination