[发明专利]一种基于多任务学习的对话意图识别方法及识别系统有效
| 申请号: | 202011433531.1 | 申请日: | 2020-12-10 |
| 公开(公告)号: | CN112417894B | 公开(公告)日: | 2023-04-07 |
| 发明(设计)人: | 聂桂芝;陆明名 | 申请(专利权)人: | 上海方立数码科技有限公司 |
| 主分类号: | G06F40/35 | 分类号: | G06F40/35;G06F40/211;G06F40/284;G06N3/0442;G06N3/0464;G06N3/048;G06N3/084 |
| 代理公司: | 上海麦其知识产权代理事务所(普通合伙) 31257 | 代理人: | 董红曼 |
| 地址: | 200333 上海*** | 国省代码: | 上海;31 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 一种 基于 任务 学习 对话 意图 识别 方法 系统 | ||
1.一种基于多任务学习的对话意图识别方法,其特征在于,包括以下步骤:
步骤S1:采集对话语料,构造Complete数据集;采集的每个对话包含多轮交互,每轮交互由轮次、发言者、语句组成;
步骤S2:选取部分对话语料,标注每个语句的意图,构造Intent数据集;所述语句的意图包括初始提问、重复提问、后续提问、澄清提问、信息补充、答案回复、积极反馈、消极反馈、问候、感谢中的一个或多个;若语句的意图不属于前述意图中的任何一类,则该语句的意图为其他;
步骤S3:将Intent数据集按比例随机划分为训练集、验证集和测试集三个部分;
步骤S4:将Intent训练集和Complete数据集输入多任务学习模型,初始化模型参数,设置好优化器和最大迭代次数,进行模型训练;所述多任务学习模型包含1个主任务和2个辅助任务;主任务是意图分类,辅助任务是轮次分类和发言者分类;意图分类样本来自Intent数据集,轮次分类样本和发言者分类样本来自Complete数据集;轮次分类目标是预测语句在对话中的相对位置,发言者分类目标是预测语句的发言者是用户还是专家;
多任务学习模型3个任务共享模型的词表示层和语句表示层,只有输出层不同;所述多任务学习模型训练包括以下步骤:
S41:每个任务分别输入相同数量的语句,首先经过词表示层将语句每个单词转换为向量,然后进入语句表示层,生成各自的语句向量;
S42:每个任务的语句向量经各自输出层转换为类别分布,由此计算每个任务的损失值;
S43:将3个任务的损失值加权求和,得到总的损失值,然后计算梯度并更新多任务学习模型;
对于一个由n个单词组成的语句它对应的意图y是集合的一个子集;其中,c为意图总数,用向量的形式表示y,则y={y1,...,yc},其中yj={0,1}(1≤j≤c)表示意图lj在y中存在与否,0为不存在,1为存在;语句u对应的发言者为s,轮次为t,则有s∈{User,System},1≤t≤T,T为对话轮数;记语句u在对话中的相对位置为p,其计算方法为:
m为相对位置的类别数;
步骤S5:每完成一次训练迭代,计算Intent验证集的损失值;
步骤S6:设置模型迭代超参数,若经过设定的连续迭代次数后,验证集损失值都不再下降,则结束训练,并选择损失值最小时的模型作为训练得到的最终模型;
步骤S7:利用Intent测试集评估多任务学习模型性能,计算评价指标,包括样本准确率、微精度、微召回率、微F1值;
步骤S8:将新的对话语句输入已训练好的多任务学习模型,预测每个意图的概率,从中选出所有大于0.5的作为该语句意图,完成意图识别;所述意图预测过程,新的对话语句输入模型后,经词表示层和语句表示层获得语句向量,然后只进入意图分类任务的输出层,忽略2个辅助任务的输出层,模型输出只有每个意图的概率分布。
2.一种基于多任务学习的对话意图识别系统,其特征在于,包括:存储器和处理器;
所述存储器上存储有计算机程序,当所述计算机程序被所述处理器执行时,实现如权利要求1所述的方法。
3.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时,实现如权利要求1所述的方法。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于上海方立数码科技有限公司,未经上海方立数码科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202011433531.1/1.html,转载请声明来源钻瓜专利网。
- 上一篇:线粒体运动营养组合物
- 下一篇:多超越离合混合动力传动装置





