一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

对话回复生成方法、装置、电子设备及存储介质与流程

2022-06-11 12:11:42 来源:中国专利 TAG:


1.本发明涉及人工智能技术领域,尤其涉及一种对话回复生成方法、装置、电子设备及存储介质。


背景技术:

2.历史对话信息中通常包含很多有用的关键信息,可以作为回答现有用户提问的参考数据,以供更加准确且直观的分析出针对用户提问的合适回复。当前实现多轮对话对历史对话信息处理的普遍方式是直接将历史对话记录与当前用户输入的提问直接拼接在一起作为输入序列交给多轮对话模型处理,模型生成合适的回复。然而未经处理的历史对话有时过于冗长,有效信息密度低,若保留的历史对话轮次太多,则过长的输入导致模型生成回答时占用内存增大并且生成速度慢;若保留的历史对话轮次太少,则有效信息太少,导致最终模型生成的回复质量差。因此亟待提出一种在保证准确度的同时提高对话回复生成的效率。


技术实现要素:

3.本发明提供一种对话回复生成方法、装置及存储介质,其主要目的在于提高对话回复生成的效率。
4.为实现上述目的,本发明提供的一种对话回复生成方法,包括:
5.获取预设数量的多轮对话语料,对所述多轮对话语料进行有效信息标注,得到标注对话集;
6.对所述标注对话集中的有效标注对话进行摘要提取,得到摘要信息;
7.按照预设的第一划分比例对所述标注对话集进行对话划分,得到训练对话集和验证对话集,按照预设的第二划分比例对所述摘要信息进行信息划分,得到训练摘要信息和验证摘要信息;
8.基于所述训练对话集和所述验证对话集对预设的有效信息判断模型进行训练及验证,得到标准判断模型;
9.将所述摘要信息及所述摘要信息对应的有效标注对话进行拼接,得到训练拼接序列,利用所述训练拼接序列对预设的摘要提取模型进行训练,得到初始摘要提取模型,利用所述验证摘要信息对所述初始摘要提取模型进行验证处理,得到标准摘要提取模型;
10.基于所述摘要信息和所述多轮对话语料构建对话序列,利用所述对话序列训练得到多轮对话模型;
11.获取用户提问及多轮历史对话,利用所述标准判断模型对所述多轮历史对话进行对话判断,并对所述对话判断后的符合预设标准的对话进行拼接处理,得到对话拼接序列;
12.将所述对话拼接序列输入至所述标准摘要提取模型中,得到对话摘要,将所述对话摘要和所述用户提问进行拼接处理,并输入至所述多轮对话模型中,得到用户回复。
13.可选地,所述基于所述训练对话集和所述验证对话集对预设的有效信息判断模型
进行训练及验证,得到标准判断模型,包括:
14.对所述训练对话集中的训练对话进行序列转换,得到输入序列;
15.利用所述有效信息判断模型中的中文字典将所述输入序列转换为对话编号;
16.根据所述训练对话中是否包含有效信息将所述训练对话转化为对应的类别编号;
17.将所述对话编号和所述类别编号输入至所述有效信息判断模型中的交叉熵损失函数中,得到交叉熵损失值;
18.基于所述交叉熵损失值和梯度下降的反向传播算法更新所述有效信息判断模型的参数权重,得到初始判断模型;
19.利用所述验证对话集对所述初始判断模型进行验证处理,当所述验证处理通过时,将所述初始判断模型输出为标准判断模型。
20.可选地,所述利用所述验证对话集对所述初始判断模型进行验证处理,包括:
21.对所述验证对话集进行字典转换,得到转换对话集;
22.将所述转换对话集输入至所述初始判断模型中,得到预测分类结果;
23.基于所述预测分类结果和预设的真实分类结果计算验证值,判断所述验证值和预设的验证阈值之间的大小;
24.当所述验证值小于所述验证阈值时,将所述验证处理判定为处理未通过;
25.当所述验证值大于或者等于所述验证阈值时,将所述验证处理判定为处理通过。
26.可选地,所述利用所述训练拼接序列对预设的摘要提取模型进行训练,得到初始摘要提取模型,包括:
27.利用所述摘要提取模型中的字典将所述训练拼接序列转换为拼接标号;
28.将所述拼接标号中所述摘要对话对应的位置标记为预设的摘要标签;
29.将所述拼接标号和所述摘要标签输入至所述摘要提取模型中,得到交叉熵损失值;
30.基于所述交叉熵损失值对所述摘要提取模型进行迭代优化,得到初始摘要提取模型。
31.可选地,所述基于所述摘要信息和所述多轮对话语料构建对话序列,包括:
32.提取所述多轮对话语料中的预设轮数的对话语料,并利用预设的第一角色标记和预设的第二角色标记分割所述对话语料,得到角色序列;
33.将所述角色序列和所述摘要信息进行拼接处理,得到对话序列。
34.可选地,所述对所述标注对话集中的有效标注对话进行摘要提取,得到摘要信息,包括:
35.去除所述有效标注对话中的无意义词,得到筛选标注对话;
36.对所述筛选标准对话进行分词处理,得到分词对话集;
37.对所述分词对话集进行词性标注,并保留所述分词对话集中符合预设词性的分词对话;
38.按照预设连接方法对符合预设词性的分词对话进行连接,得到摘要信息。
39.可选地,所述对所述多轮对话语料进行有效信息标注,得到标注对话集,包括:
40.对所述多轮对话语料进行对话拆分,得到拆分对话集;
41.将所述拆分对话集中的拆分对话与预设的标注数据库中的标注数据进行比对;
42.将与所述标注数据库中任意标注数据一致的拆分对话标注为有效对话,将与所述标注数据库中的标注数据不一致的拆分对话标注为无效对话;
43.对所述有效对话和所述无效对话进行汇总处理,得到标注对话集。
44.为了解决上述问题,本发明还提供一种对话回复生成装置,所述装置包括:
45.数据处理模块,用于获取预设数量的多轮对话语料,对所述多轮对话语料进行有效信息标注,得到标注对话集,对所述标注对话集中的有效标注对话进行摘要提取,得到摘要信息,按照预设的第一划分比例对所述标注对话集进行对话划分,得到训练对话集和验证对话集,按照预设的第二划分比例对所述摘要信息进行信息划分,得到训练摘要信息和验证摘要信息;
46.标准判断模块,用于基于所述训练对话集和所述验证对话集对预设的有效信息判断模型进行训练及验证,得到标准判断模型;
47.摘要提取模块,用于将所述摘要信息及所述摘要信息对应的有效标注对话进行拼接,得到训练拼接序列,利用所述训练拼接序列对预设的摘要提取模型进行训练,得到初始摘要提取模型,利用所述验证摘要信息对所述初始摘要提取模型进行验证处理,得到标准摘要提取模型;
48.对话回复模块,用于基于所述摘要信息和所述多轮对话语料构建对话序列,利用所述对话序列训练得到多轮对话模型,获取用户提问及多轮历史对话,利用所述标准判断模型对所述多轮历史对话进行对话判断,并对所述对话判断后的符合预设标准的对话进行拼接处理,得到对话拼接序列,将所述对话拼接序列输入至所述标准摘要提取模型中,得到对话摘要,将所述对话摘要和所述用户提问进行拼接处理,并输入至所述多轮对话模型中,得到用户回复。
49.为了解决上述问题,本发明还提供一种电子设备,所述电子设备包括:
50.至少一个处理器;以及,
51.与所述至少一个处理器通信连接的存储器;其中,
52.所述存储器存储有可被所述至少一个处理器执行的计算机程序,所述计算机程序被所述至少一个处理器执行,以使所述至少一个处理器能够执行上述所述的对话回复生成方法。
53.为了解决上述问题,本发明还提供一种计算机可读存储介质,所述计算机可读存储介质中存储有至少一个计算机程序,所述至少一个计算机程序被电子设备中的处理器执行以实现上述所述的对话回复生成方法。
54.本发明实施例中通过分别训练有效信息判断模型、标准摘要提取模型和多轮对话模型,使用有效信息判断模型判断历史对话是否包含有效信息,使用标准摘要提取模型对有效信息判断模型判断后的历史对话进行摘要信息提取,得到摘要信息,将摘要信息与用户提问拼接起来作为输入至多轮对话模型,生成合适的回复。通过进行有效信息判断和历史对话摘要提取,避免了历史对话出现过于冗长、有效信息密度低以及过长的输入占用内存过大且生成速度慢等问题,在保证准确度的同时提高了对话回复生成的效率。因此本发明提出的对话回复生成方法、装置、电子设备及计算机可读存储介质,可以解决对话回复生成的效率较低的问题。
附图说明
55.图1为本发明一实施例提供的对话回复生成方法的流程示意图;
56.图2为图1中其中一个步骤的详细实施流程示意图;
57.图3为图1中其中一个步骤的详细实施流程示意图;
58.图4为图1中其中一个步骤的详细实施流程示意图;
59.图5为图4中另一个步骤的详细实施流程示意图;
60.图6为图1中其中一个步骤的详细实施流程示意图;
61.图7为图1中其中一个步骤的详细实施流程示意图;
62.图8为本发明一实施例提供的对话回复生成装置的功能模块图;
63.图9为本发明一实施例提供的实现所述对话回复生成方法的电子设备的结构示意图。
64.本发明目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。
具体实施方式
65.应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
66.本技术实施例提供一种对话回复生成方法。所述对话回复生成方法的执行主体包括但不限于服务端、终端等能够被配置为执行本技术实施例提供的该方法的电子设备中的至少一种。换言之,所述对话回复生成方法可以由安装在终端设备或服务端设备的软件或硬件来执行,所述软件可以是区块链平台。所述服务端包括但不限于:单台服务器、服务器集群、云端服务器或云端服务器集群等。所述服务器可以是独立的服务器,也可以是提供云服务、云数据库、云计算、云函数、云存储、网络服务、云通信、中间件服务、域名服务、安全服务、内容分发网络(contentdelivery network,cdn)、以及大数据和人工智能平台等基础云计算服务的云服务器。
67.参照图1所示,为本发明一实施例提供的对话回复生成方法的流程示意图。在本实施例中,所述对话回复生成方法包括以下步骤s1-s8:
68.s1、获取预设数量的多轮对话语料,对所述多轮对话语料进行有效信息标注,得到标注对话集。
69.本发明实施例中,所述预设数量可以为10000,因此可以获取10000组多轮对话语料,所述多轮对话语料可以作为后续的数据基础。
70.具体地,参照图2所示,所述对所述多轮对话语料进行有效信息标注,得到标注对话集,包括以下步骤s11-s14:
71.s11、对所述多轮对话语料进行对话拆分,得到拆分对话集;
72.s12、将所述拆分对话集中的拆分对话与预设的标注数据库中的标注数据进行比对;
73.s13、将与所述标注数据库中任意标注数据一致的拆分对话标注为有效标注对话,将与所述标注数据库中的标注数据不一致的拆分对话标注为无效标注对话;
74.s14、对所述有效标注对话和所述无效标注对话进行汇总处理,得到标注对话集。
75.详细地,所述标注数据库中包含在某一实施例中需要进行有效标注的多条对话数据,将拆分对话集中的拆分对话与所述标注数据库中的任意标注数据进行比对,并将与所
述标注数据库中任意标注数据一致的拆分对话标注为有效标注对话,将与所述标注数据库中的标注数据不一致的拆分对话标注为无效标注对话。
76.例如,所述多轮对话语料为“a:有人在线吗?我需要帮忙,我有一点事想问问。”“b:请讲”“a:如何避免与别人的隔阂,请给出最详细的方案!请给指教。”“b:你多大年龄?这个问题太大了不是几句话就能说清楚的。”“a:“18了,就是得罪人了,请问怎么办?那人似乎喋喋不休了”“b:你需要学习、交流、感受”。对所述多轮对话语料进行有效信息标注,得到标注对话集,“a:喂喂喂,喂喂喂。”“b:嗯?”属于语气词,不在所述标注数据库中,因此将其标注为无效标注对话,而后续对话属于有效内容,具有实际参考意义,因此将其标注为有效标注对话。
77.s2、对所述标注对话集中的有效标注对话进行摘要提取,得到摘要信息。
78.本发明实施例中,所述标注对话集中包括有效标注对话和无效标注对话,筛选出所述标准对话集中的有效标注对话,将所述无效标注对话剔除掉。
79.具体地,参照图3所示,所述对所述标注对话集中的有效标注对话进行摘要提取,得到摘要信息,包括以下步骤s21-s24:
80.s21、去除所述有效标注对话中的无意义词,得到筛选标注对话;
81.s22、对所述筛选标准对话进行分词处理,得到分词对话集;
82.s23、对所述分词对话集进行词性标注,并保留所述分词对话集中符合预设词性的分词对话;
83.s24、按照预设连接方法对符合预设词性的分词对话进行连接,得到摘要信息。
84.详细地,所述无意义词是指虚词、感叹词、用于链接音节或者表示语气等作用的词语。
85.例如,抽取所述有效标注对话中的关键信息作为摘要信息,“a:如何避免与别人的隔阂?“b:你多大了?问题太大了。”“a:18,得罪人了,那人喋喋不休。”“b:学习、交流、感受。”86.s3、按照预设的第一划分比例对所述标注对话集进行对话划分,得到训练对话集和验证对话集,按照预设的第二划分比例对所述摘要信息进行信息划分,得到训练摘要信息和验证摘要信息。
87.本发明实施例中,所述第一划分比例可以为所述训练对话集为85%,所述验证对话集为15%,所述第二划分比例可以与所述第一划分比例一致,将所述训练摘要信息为85%,所述验证摘要信息为15%,或者所述第二划分比例与所述第二划分比例不一致,所述训练摘要信息为80%,所述验证摘要信息为20%。此处不作限定。
88.其中,所述训练对话集和所述训练摘要信息用于后续对模型进行训练,所述验证对话集和所述验证摘要信息用于对训练后的模型进行验证处理。
89.s4、基于所述训练对话集和所述验证对话集对预设的有效信息判断模型进行训练及验证,得到标准判断模型。
90.本发明实施例中,所述预设的有效信息判断模型为中文预训练模型bert-base-chinese。其中,bert-base-chinese是预训练模型bert中文版本的基础模型,由12层transformer编码器构成。
91.具体地,参照图4所示,所述基于所述训练对话集和所述验证对话集对预设的有效信息判断模型进行训练及验证,得到标准判断模型,包括以下步骤s41-s46:
92.s41、对所述训练对话集中的训练对话进行序列转换,得到输入序列;
93.s42、利用所述有效信息判断模型中的中文字典将所述输入序列转换为对话编号;
94.s43、根据所述训练对话中是否包含有效信息将所述训练对话转化为对应的类别编号;
95.s44、将所述对话编号和所述类别编号输入至所述有效信息判断模型中的交叉熵损失函数中,得到交叉熵损失值;
96.s45、基于所述交叉熵损失值和梯度下降的反向传播算法更新所述有效信息判断模型的参数权重,得到初始判断模型;
97.s46、利用所述验证对话集对所述初始判断模型进行验证处理,当所述验证处理通过时,将所述初始判断模型输出为标准判断模型。
98.详细地,所述对所述训练对话集中的训练对话进行序列转换,在所述训练对话中插入间隔标示,例如,所述训练对话集为“a:有人在线吗?我需要帮忙,我有一点事想问问。”,序列转换得到输入序列[cls]有人在线吗?我需要帮忙,我有一点事想问问[sep]。根据所述有效信息判断模型中的中文字典,即bert模型中的中文字典将所述输入序列转换为对话编号101330078217625296140880432769744462062376256480242769330067141577522682730951164356382511102。根据所述训练对话是否包含有效信息将所述训练对话转化为类别编号,当所述训练对话中不包含有效信息,则对应的类别编号为0,当所述训练对话中包含有效信息,则对应的类别编号为1。
[0099]
进一步地,参照图5所示,所述利用所述验证对话集对所述初始判断模型进行验证处理,包括以下步骤s461-s465:
[0100]
s461、对所述验证对话集进行字典转换,得到转换对话集;
[0101]
s462、将所述转换对话集输入至所述初始判断模型中,得到预测分类结果;
[0102]
s463、基于所述预测分类结果和预设的真实分类结果计算验证值,判断所述验证值和预设的验证阈值之间的大小;
[0103]
s464、当所述验证值小于所述验证阈值时,将所述验证处理判定为处理未通过;
[0104]
s465、当所述验证值大于或者等于所述验证阈值时,将所述验证处理判定为处理通过。
[0105]
详细地,当所述验证值小于所述验证阈值时,将所述验证处理判定为处理未通过,对所述初始判断模型进行再次训练,直至所述验证值大于或者等于所述验证阈值时,将所述验证处理判定为处理通过,并将所述初始判断模型输出为标准判断模型。
[0106]
s5、将所述摘要信息及所述摘要信息对应的有效标注对话进行拼接,得到训练拼接序列,利用所述训练拼接序列对预设的摘要提取模型进行训练,得到初始摘要提取模型,利用所述验证摘要信息对所述初始摘要提取模型进行验证处理,得到标准摘要提取模型。
[0107]
本发明实施例中,所述摘要提取模型为中文预训练模型gpt2-chinese。gpt2-chinese是预训练模型gpt-2使用大规模中文语料进行预训练后的中文通用预训练模型,由12层修改后的transformer解码器构成。
[0108]
具体地,所述将所述摘要信息及所述摘要信息对应的有效标注对话进行拼接,其中,所述摘要信息是从所述有效标注对话中提取所得。
[0109]
进一步地,参照图6所示,所述利用所述训练拼接序列对预设的摘要提取模型进行
训练,得到初始摘要提取模型,包括以下步骤s51-s54:
[0110]
s51、利用所述摘要提取模型中的字典将所述训练拼接序列转换为拼接标号;
[0111]
s52、将所述拼接标号中所述摘要对话对应的位置标记为预设的摘要标签;
[0112]
s53、将所述拼接标号和所述摘要标签输入至所述摘要提取模型中,得到交叉熵损失值;
[0113]
s54、基于所述交叉熵损失值对所述摘要提取模型进行迭代优化,得到初始摘要提取模型。
[0114]
具体地,利用所述验证摘要信息对所述初始摘要提取模型进行验证处理,得到标准摘要提取模型,使用所述验证摘要信息集对所述初始提取摘要模型进行验证,当验证结果满足预设验证要求,则验证结束并将所述初始摘要模型输出为标准摘要提取模型,当所述验证结果不满足预设验证要求时,对所述初始摘要模型进行再次训练,直至所述验证结果满足所述预设验证要求时,将所述初始摘要模型输出为标准摘要模型。
[0115]
s6、基于所述摘要信息和所述多轮对话语料构建对话序列,利用所述对话序列训练得到多轮对话模型。
[0116]
本发明实施例中,参照图7所示,所述基于所述摘要信息和所述多轮对话语料构建对话序列,包括以下步骤s61-s62:
[0117]
s61、提取所述多轮对话语料中的预设轮数的对话语料,并利用预设的第一角色标记和预设的第二角色标记分割所述对话语料,得到角色序列;
[0118]
s62、将所述角色序列和所述摘要信息进行拼接处理,得到对话序列。
[0119]
详细地,所述预设轮数的对话语料是指对话语料中最后一轮对话的语料,所述第一角色标记为[speaker1],所述第二角色标记为[speaker2],以所述第一角色标记[speaker1]和所述第二角色标记[speaker2]分割对话语料中不同的说话角色,得到角色序列,将所述角色序列和所述摘要序列进行首尾拼接,得到对话序列。
[0120]
具体地,利用所述对话序列训练多轮对话模型,利用所述多轮对话模型中的字典将内容中每个字转化为相应的数字形式的编号作为文字编号,即input_ids;将所述对话序列中提问的tokens全部记为[speaker1],回复的tokens全部记为[speaker2],得token_type_ids;将input_ids除最后一轮对话的回复之外所有的id全部标记为-1,得lm_labels。将input_ids、token_type_ids、lm_labels输入初始对轮对话模型中,其中,本方案的初始多轮对话模型采用cdial-gpt模型,得到交叉熵损失;通过基于梯度下降的反向传播更新模型的参数权重,经过多次迭代之后,即可得到多轮对话模型。使用验证集验证多轮对话模型,计算客观指标bleu、dist、greedymatching、embeddingaverage,并在对话流畅性、上下文相关性和回复多样性三个维度进行人工评价,若所有评价均优于预设的最低要求,则训练结束,或者,若比最低要求差,则增加多轮对话语料的数量并继续训练。
[0121]
s7、获取用户提问及多轮历史对话,利用所述标准判断模型对所述多轮历史对话进行对话判断,并对所述对话判断后的符合预设标准的对话进行拼接处理,得到对话拼接序列。
[0122]
本发明实施例中,多轮对话系统在与用户进行交互时,获取当前用户提出的问题,同时获取最多n轮历史对话(例如,n=5):若系统与用户已经完成了超过n轮对话,则只保留最近的n轮对话;若少于n轮则保留所有历史对话。
[0123]
具体地,利用所述标准判断模型对所述多轮历史对话进行对话判断,并对所述对话判断后的符合预设标准的对话进行拼接处理,得到对话拼接序列。
[0124]
例如,使用有效信息判断模型,对每一轮历史对话是否包含有效信息进行判断,若模型判断为包含有效信息,则该轮历史对话保留;若模型判断为不包含有效信息,则不保留该轮历史对话。将保留下来的所有历史对话按原顺序拼接,作为下一步的输入。
[0125]
s8、将所述对话拼接序列输入至所述标准摘要提取模型中,得到对话摘要,将所述对话摘要和所述用户提问进行拼接处理,并输入至所述多轮对话模型中,得到用户回复。
[0126]
本发明实施例中,将所述对话拼接序列输入至所述标准摘要提取模型中,得到对话摘要,将所述对话摘要和所述用户提问进行拼接处理,并输入至所述多轮对话模型中,得到用户回复。
[0127]
本发明实施例中通过分别训练有效信息判断模型、标准摘要提取模型和多轮对话模型,使用有效信息判断模型判断历史对话是否包含有效信息,使用标准摘要提取模型对有效信息判断模型判断后的历史对话进行摘要信息提取,得到摘要信息,将摘要信息与用户提问拼接起来作为输入至多轮对话模型,生成合适的回复。通过进行有效信息判断和历史对话摘要提取,避免了历史对话出现过于冗长、有效信息密度低以及过长的输入占用内存过大且生成速度慢等问题,在保证准确度的同时提高了对话回复生成的效率。因此本发明提出的对话回复生成方法可以解决对话回复生成的效率较低的问题。
[0128]
如图8所示,是本发明一实施例提供的对话回复生成装置的功能模块图。
[0129]
本发明所述对话回复生成装置100可以安装于电子设备中。根据实现的功能,所述对话回复生成装置100可以包括数据处理模块101、标准判断模块102、摘要提取模块103及对话回复模块104。本发明所述模块也可以称之为单元,是指一种能够被电子设备处理器所执行,并且能够完成固定功能的一系列计算机程序段,其存储在电子设备的存储器中。
[0130]
在本实施例中,关于各模块/单元的功能如下:
[0131]
所述数据处理模块101,用于获取预设数量的多轮对话语料,对所述多轮对话语料进行有效信息标注,得到标注对话集,对所述标注对话集中的有效标注对话进行摘要提取,得到摘要信息,按照预设的第一划分比例对所述标注对话集进行对话划分,得到训练对话集和验证对话集,按照预设的第二划分比例对所述摘要信息进行信息划分,得到训练摘要信息和验证摘要信息;
[0132]
所述标准判断模块102,用于基于所述训练对话集和所述验证对话集对预设的有效信息判断模型进行训练及验证,得到标准判断模型;
[0133]
所述摘要提取模块103,用于将所述摘要信息及所述摘要信息对应的有效标注对话进行拼接,得到训练拼接序列,利用所述训练拼接序列对预设的摘要提取模型进行训练,得到初始摘要提取模型,利用所述验证摘要信息对所述初始摘要提取模型进行验证处理,得到标准摘要提取模型;
[0134]
所述对话回复模块104,用于基于所述摘要信息和所述多轮对话语料构建对话序列,利用所述对话序列训练得到多轮对话模型,获取用户提问及多轮历史对话,利用所述标准判断模型对所述多轮历史对话进行对话判断,并对所述对话判断后的符合预设标准的对话进行拼接处理,得到对话拼接序列,将所述对话拼接序列输入至所述标准摘要提取模型中,得到对话摘要,将所述对话摘要和所述用户提问进行拼接处理,并输入至所述多轮对话
模型中,得到用户回复。
[0135]
详细地,所述对话回复生成装置100各模块的具体实施方式如下:
[0136]
步骤一、获取预设数量的多轮对话语料,对所述多轮对话语料进行有效信息标注,得到标注对话集。
[0137]
本发明实施例中,所述预设数量可以为10000,因此可以获取10000组多轮对话语料,所述多轮对话语料可以作为后续的数据基础。
[0138]
具体地,所述对所述多轮对话语料进行有效信息标注,得到标注对话集,包括:
[0139]
对所述多轮对话语料进行对话拆分,得到拆分对话集;
[0140]
将所述拆分对话集中的拆分对话与预设的标注数据库中的标注数据进行比对;
[0141]
将与所述标注数据库中任意标注数据一致的拆分对话标注为有效标注对话,将与所述标注数据库中的标注数据不一致的拆分对话标注为无效标注对话;
[0142]
对所述有效标注对话和所述无效标注对话进行汇总处理,得到标注对话集。
[0143]
详细地,所述标注数据库中包含在某一实施例中需要进行有效标注的多条对话数据,将拆分对话集中的拆分对话与所述标注数据库中的任意标注数据进行比对,并将与所述标注数据库中任意标注数据一致的拆分对话标注为有效标注对话,将与所述标注数据库中的标注数据不一致的拆分对话标注为无效标注对话。
[0144]
例如,所述多轮对话语料为“a:有人在线吗?我需要帮忙,我有一点事想问问。”“b:请讲”“a:如何避免与别人的隔阂,请给出最详细的方案!请给指教。”“b:你多大年龄?这个问题太大了不是几句话就能说清楚的。”“a:“18了,就是得罪人了,请问怎么办?那人似乎喋喋不休了”“b:你需要学习、交流、感受”。对所述多轮对话语料进行有效信息标注,得到标注对话集,“a:喂喂喂,喂喂喂。”“b:嗯?”属于语气词,不在所述标注数据库中,因此将其标注为无效标注对话,而后续对话属于有效内容,具有实际参考意义,因此将其标注为有效标注对话。
[0145]
步骤二、对所述标注对话集中的有效标注对话进行摘要提取,得到摘要信息。
[0146]
本发明实施例中,所述标注对话集中包括有效标注对话和无效标注对话,筛选出所述标准对话集中的有效标注对话,将所述无效标注对话剔除掉。
[0147]
具体地,所述对所述标注对话集中的有效标注对话进行摘要提取,得到摘要信息,包括:
[0148]
去除所述有效标注对话中的无意义词,得到筛选标注对话;
[0149]
对所述筛选标准对话进行分词处理,得到分词对话集;
[0150]
对所述分词对话集进行词性标注,并保留所述分词对话集中符合预设词性的分词对话;
[0151]
按照预设连接方法对符合预设词性的分词对话进行连接,得到摘要信息。
[0152]
详细地,所述无意义词是指虚词、感叹词、用于链接音节或者表示语气等作用的词语。
[0153]
例如,抽取所述有效标注对话中的关键信息作为摘要信息,“a:如何避免与别人的隔阂?“b:你多大了?问题太大了。”“a:18,得罪人了,那人喋喋不休。”“b:学习、交流、感受。”[0154]
步骤三、按照预设的第一划分比例对所述标注对话集进行对话划分,得到训练对话集和验证对话集,按照预设的第二划分比例对所述摘要信息进行信息划分,得到训练摘
要信息和验证摘要信息。
[0155]
本发明实施例中,所述第一划分比例可以为所述训练对话集为85%,所述验证对话集为15%,所述第二划分比例可以与所述第一划分比例一致,将所述训练摘要信息为85%,所述验证摘要信息为15%,或者所述第二划分比例与所述第二划分比例不一致,所述训练摘要信息为80%,所述验证摘要信息为20%。此处不作限定。
[0156]
其中,所述训练对话集和所述训练摘要信息用于后续对模型进行训练,所述验证对话集和所述验证摘要信息用于对训练后的模型进行验证处理。
[0157]
步骤四、基于所述训练对话集和所述验证对话集对预设的有效信息判断模型进行训练及验证,得到标准判断模型。
[0158]
本发明实施例中,所述预设的有效信息判断模型为中文预训练模型bert-base-chinese。其中,bert-base-chinese是预训练模型bert中文版本的基础模型,由12层transformer编码器构成。
[0159]
具体地,所述基于所述训练对话集和所述验证对话集对预设的有效信息判断模型进行训练及验证,得到标准判断模型,包括:
[0160]
对所述训练对话集中的训练对话进行序列转换,得到输入序列;
[0161]
利用所述有效信息判断模型中的中文字典将所述输入序列转换为对话编号;
[0162]
根据所述训练对话中是否包含有效信息将所述训练对话转化为对应的类别编号;
[0163]
将所述对话编号和所述类别编号输入至所述有效信息判断模型中的交叉熵损失函数中,得到交叉熵损失值;
[0164]
基于所述交叉熵损失值和梯度下降的反向传播算法更新所述有效信息判断模型的参数权重,得到初始判断模型;
[0165]
利用所述验证对话集对所述初始判断模型进行验证处理,当所述验证处理通过时,将所述初始判断模型输出为标准判断模型。
[0166]
详细地,所述对所述训练对话集中的训练对话进行序列转换,在所述训练对话中插入间隔标示,例如,所述训练对话集为“a:有人在线吗?我需要帮忙,我有一点事想问问。”,序列转换得到输入序列[cls]有人在线吗?我需要帮忙,我有一点事想问问[sep]。根据所述有效信息判断模型中的中文字典,即bert模型中的中文字典将所述输入序列转换为对话编号101330078217625296140880432769744462062376256480242769330067141577522682730951164356382511102。根据所述训练对话是否包含有效信息将所述训练对话转化为类别编号,当所述训练对话中不包含有效信息,则对应的类别编号为0,当所述训练对话中包含有效信息,则对应的类别编号为1。
[0167]
进一步地,所述利用所述验证对话集对所述初始判断模型进行验证处理,包括:
[0168]
对所述验证对话集进行字典转换,得到转换对话集;
[0169]
将所述转换对话集输入至所述初始判断模型中,得到预测分类结果;
[0170]
基于所述预测分类结果和预设的真实分类结果计算验证值,判断所述验证值和预设的验证阈值之间的大小;
[0171]
当所述验证值小于所述验证阈值时,将所述验证处理判定为处理未通过;
[0172]
当所述验证值大于或者等于所述验证阈值时,将所述验证处理判定为处理通过。
[0173]
详细地,当所述验证值小于所述验证阈值时,将所述验证处理判定为处理未通过,
对所述初始判断模型进行再次训练,直至所述验证值大于或者等于所述验证阈值时,将所述验证处理判定为处理通过,并将所述初始判断模型输出为标准判断模型。
[0174]
步骤五、将所述摘要信息及所述摘要信息对应的有效标注对话进行拼接,得到训练拼接序列,利用所述训练拼接序列对预设的摘要提取模型进行训练,得到初始摘要提取模型,利用所述验证摘要信息对所述初始摘要提取模型进行验证处理,得到标准摘要提取模型。
[0175]
本发明实施例中,所述摘要提取模型为中文预训练模型gpt2-chinese。gpt2-chinese是预训练模型gpt-2使用大规模中文语料进行预训练后的中文通用预训练模型,由12层修改后的transformer解码器构成。
[0176]
具体地,所述将所述摘要信息及所述摘要信息对应的有效标注对话进行拼接,其中,所述摘要信息是从所述有效标注对话中提取所得。
[0177]
进一步地,所述利用所述训练拼接序列对预设的摘要提取模型进行训练,得到初始摘要提取模型,包括:
[0178]
利用所述摘要提取模型中的字典将所述训练拼接序列转换为拼接标号;
[0179]
将所述拼接标号中所述摘要对话对应的位置标记为预设的摘要标签;
[0180]
将所述拼接标号和所述摘要标签输入至所述摘要提取模型中,得到交叉熵损失值;
[0181]
基于所述交叉熵损失值对所述摘要提取模型进行迭代优化,得到初始摘要提取模型。
[0182]
具体地,利用所述验证摘要信息对所述初始摘要提取模型进行验证处理,得到标准摘要提取模型,使用所述验证摘要信息集对所述初始提取摘要模型进行验证,当验证结果满足预设验证要求,则验证结束并将所述初始摘要模型输出为标准摘要提取模型,当所述验证结果不满足预设验证要求时,对所述初始摘要模型进行再次训练,直至所述验证结果满足所述预设验证要求时,将所述初始摘要模型输出为标准摘要模型。
[0183]
步骤六、基于所述摘要信息和所述多轮对话语料构建对话序列,利用所述对话序列训练得到多轮对话模型。
[0184]
本发明实施例中,所述基于所述摘要信息和所述多轮对话语料构建对话序列,包括:
[0185]
提取所述多轮对话语料中的预设轮数的对话语料,并利用预设的第一角色标记和预设的第二角色标记分割所述对话语料,得到角色序列;
[0186]
将所述角色序列和所述摘要信息进行拼接处理,得到对话序列。
[0187]
详细地,所述预设轮数的对话语料是指对话语料中最后一轮对话的语料,所述第一角色标记为[speaker1],所述第二角色标记为[speaker2],以所述第一角色标记[speaker1]和所述第二角色标记[speaker2]分割对话语料中不同的说话角色,得到角色序列,将所述角色序列和所述摘要序列进行首尾拼接,得到对话序列。
[0188]
具体地,利用所述对话序列训练多轮对话模型,利用所述多轮对话模型中的字典将内容中每个字转化为相应的数字形式的编号作为文字编号,即input_ids;将所述对话序列中提问的tokens全部记为[speaker1],回复的tokens全部记为[speaker2],得token_type_ids;将input_ids除最后一轮对话的回复之外所有的id全部标记为-1,得lm_labels。
unit),利用各种接口和线路连接整个电子设备的各个部件,通过运行或执行存储在所述存储器11内的程序或者模块(例如执行对话回复生成程序等),以及调用存储在所述存储器11内的数据,以执行电子设备的各种功能和处理数据。
[0199]
所述存储器11至少包括一种类型的可读存储介质,所述可读存储介质包括闪存、移动硬盘、多媒体卡、卡型存储器(例如:sd或dx存储器等)、磁性存储器、磁盘、光盘等。所述存储器11在一些实施例中可以是电子设备的内部存储单元,例如该电子设备的移动硬盘。所述存储器11在另一些实施例中也可以是电子设备的外部存储设备,例如电子设备上配备的插接式移动硬盘、智能存储卡(smart media card,smc)、安全数字(secure digital,sd)卡、闪存卡(flash card)等。进一步地,所述存储器11还可以既包括电子设备的内部存储单元也包括外部存储设备。所述存储器11不仅可以用于存储安装于电子设备的应用软件及各类数据,例如对话回复生成程序的代码等,还可以用于暂时地存储已经输出或者将要输出的数据。
[0200]
所述通信总线12可以是外设部件互连标准(peripheral component interconnect,简称pci)总线或扩展工业标准结构(extended industry standard architecture,简称eisa)总线等。该总线可以分为地址总线、数据总线、控制总线等。所述总线被设置为实现所述存储器11以及至少一个处理器10等之间的连接通信。
[0201]
所述通信接口13用于上述电子设备与其他设备之间的通信,包括网络接口和用户接口。可选地,所述网络接口可以包括有线接口和/或无线接口(如wi-fi接口、蓝牙接口等),通常用于在该电子设备与其他电子设备之间建立通信连接。所述用户接口可以是显示器(display)、输入单元(比如键盘(keyboard)),可选地,用户接口还可以是标准的有线接口、无线接口。可选地,在一些实施例中,显示器可以是led显示器、液晶显示器、触控式液晶显示器以及oled(organic light-emitting diode,有机发光二极管)触摸器等。其中,显示器也可以适当的称为显示屏或显示单元,用于显示在电子设备中处理的信息以及用于显示可视化的用户界面。
[0202]
图9仅示出了具有部件的电子设备,本领域技术人员可以理解的是,图9示出的结构并不构成对所述电子设备1的限定,可以包括比图示更少或者更多的部件,或者组合某些部件,或者不同的部件布置。
[0203]
例如,尽管未示出,所述电子设备还可以包括给各个部件供电的电源(比如电池),优选地,电源可以通过电源管理装置与所述至少一个处理器10逻辑相连,从而通过电源管理装置实现充电管理、放电管理、以及功耗管理等功能。电源还可以包括一个或一个以上的直流或交流电源、再充电装置、电源故障检测电路、电源转换器或者逆变器、电源状态指示器等任意组件。所述电子设备还可以包括多种传感器、蓝牙模块、wi-fi模块等,在此不再赘述。
[0204]
应该了解,所述实施例仅为说明之用,在专利申请范围上并不受此结构的限制。
[0205]
所述电子设备1中的所述存储器11存储的对话回复生成程序是多个指令的组合,在所述处理器10中运行时,可以实现:
[0206]
获取预设数量的多轮对话语料,对所述多轮对话语料进行有效信息标注,得到标注对话集;
[0207]
对所述标注对话集中的有效标注对话进行摘要提取,得到摘要信息;
[0208]
按照预设的第一划分比例对所述标注对话集进行对话划分,得到训练对话集和验证对话集,按照预设的第二划分比例对所述摘要信息进行信息划分,得到训练摘要信息和验证摘要信息;
[0209]
基于所述训练对话集和所述验证对话集对预设的有效信息判断模型进行训练及验证,得到标准判断模型;
[0210]
将所述摘要信息及所述摘要信息对应的有效标注对话进行拼接,得到训练拼接序列,利用所述训练拼接序列对预设的摘要提取模型进行训练,得到初始摘要提取模型,利用所述验证摘要信息对所述初始摘要提取模型进行验证处理,得到标准摘要提取模型;
[0211]
基于所述摘要信息和所述多轮对话语料构建对话序列,利用所述对话序列训练得到多轮对话模型;
[0212]
获取用户提问及多轮历史对话,利用所述标准判断模型对所述多轮历史对话进行对话判断,并对所述对话判断后的符合预设标准的对话进行拼接处理,得到对话拼接序列;
[0213]
将所述对话拼接序列输入至所述标准摘要提取模型中,得到对话摘要,将所述对话摘要和所述用户提问进行拼接处理,并输入至所述多轮对话模型中,得到用户回复。
[0214]
具体地,所述处理器10对上述指令的具体实现方法可参考附图对应实施例中相关步骤的描述,在此不赘述。
[0215]
进一步地,所述电子设备1集成的模块/单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读存储介质中。所述计算机可读存储介质可以是易失性的,也可以是非易失性的。例如,所述计算机可读介质可以包括:能够携带所述计算机程序代码的任何实体或装置、记录介质、u盘、移动硬盘、磁碟、光盘、计算机存储器、只读存储器(rom,read-only memory)。
[0216]
本发明还提供一种计算机可读存储介质,所述可读存储介质存储有计算机程序,所述计算机程序在被电子设备的处理器所执行时,可以实现:
[0217]
获取预设数量的多轮对话语料,对所述多轮对话语料进行有效信息标注,得到标注对话集;
[0218]
对所述标注对话集中的有效标注对话进行摘要提取,得到摘要信息;
[0219]
按照预设的第一划分比例对所述标注对话集进行对话划分,得到训练对话集和验证对话集,按照预设的第二划分比例对所述摘要信息进行信息划分,得到训练摘要信息和验证摘要信息;
[0220]
基于所述训练对话集和所述验证对话集对预设的有效信息判断模型进行训练及验证,得到标准判断模型;
[0221]
将所述摘要信息及所述摘要信息对应的有效标注对话进行拼接,得到训练拼接序列,利用所述训练拼接序列对预设的摘要提取模型进行训练,得到初始摘要提取模型,利用所述验证摘要信息对所述初始摘要提取模型进行验证处理,得到标准摘要提取模型;
[0222]
基于所述摘要信息和所述多轮对话语料构建对话序列,利用所述对话序列训练得到多轮对话模型;
[0223]
获取用户提问及多轮历史对话,利用所述标准判断模型对所述多轮历史对话进行对话判断,并对所述对话判断后的符合预设标准的对话进行拼接处理,得到对话拼接序列;
[0224]
将所述对话拼接序列输入至所述标准摘要提取模型中,得到对话摘要,将所述对
话摘要和所述用户提问进行拼接处理,并输入至所述多轮对话模型中,得到用户回复。
[0225]
在本发明所提供的几个实施例中,应该理解到,所揭露的设备,装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述模块的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式。
[0226]
所述作为分离部件说明的模块可以是或者也可以不是物理上分开的,作为模块显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。
[0227]
另外,在本发明各个实施例中的各功能模块可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用硬件加软件功能模块的形式实现。
[0228]
对于本领域技术人员而言,显然本发明不限于上述示范性实施例的细节,而且在不背离本发明的精神或基本特征的情况下,能够以其他的具体形式实现本发明。
[0229]
因此,无论从哪一点来看,均应将实施例看作是示范性的,而且是非限制性的,本发明的范围由所附权利要求而不是上述说明限定,因此旨在将落在权利要求的等同要件的含义和范围内的所有变化涵括在本发明内。不应将权利要求中的任何附关联图标记视为限制所涉及的权利要求。
[0230]
本发明所指区块链是分布式数据存储、点对点传输、共识机制、加密算法等计算机技术的新型应用模式。区块链(blockchain),本质上是一个去中心化的数据库,是一串使用密码学方法相关联产生的数据块,每一个数据块中包含了一批次网络交易的信息,用于验证其信息的有效性(防伪)和生成下一个区块。区块链可以包括区块链底层平台、平台产品服务层以及应用服务层等。
[0231]
本技术实施例可以基于人工智能技术对相关的数据进行获取和处理。其中,人工智能(artificial intelligence,ai)是利用数字计算机或者数字计算机控制的机器模拟、延伸和扩展人的智能,感知环境、获取知识并使用知识获得最佳结果的理论、方法、技术及应用系统。
[0232]
此外,显然“包括”一词不排除其他单元或步骤,单数不排除复数。系统权利要求中陈述的多个单元或装置也可以由一个单元或装置通过软件或者硬件来实现。第一、第二等词语用来表示名称,而并不表示任何特定的顺序。
[0233]
最后应说明的是,以上实施例仅用以说明本发明的技术方案而非限制,尽管参照较佳实施例对本发明进行了详细说明,本领域的普通技术人员应当理解,可以对本发明的技术方案进行修改或等同替换,而不脱离本发明技术方案的精神和范围。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献