CN112417894B - 一种基于多任务学习的对话意图识别方法及识别系统 - Google Patents
一种基于多任务学习的对话意图识别方法及识别系统 Download PDFInfo
- Publication number
- CN112417894B CN112417894B CN202011433531.1A CN202011433531A CN112417894B CN 112417894 B CN112417894 B CN 112417894B CN 202011433531 A CN202011433531 A CN 202011433531A CN 112417894 B CN112417894 B CN 112417894B
- Authority
- CN
- China
- Prior art keywords
- intent
- intention
- model
- task
- training
- 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.)
- Active
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/30—Semantic analysis
- G06F40/35—Discourse or dialogue representation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/20—Natural language analysis
- G06F40/205—Parsing
- G06F40/211—Syntactic parsing, e.g. based on context-free grammar [CFG] or unification grammars
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/20—Natural language analysis
- G06F40/279—Recognition of textual entities
- G06F40/284—Lexical analysis, e.g. tokenisation or collocates
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/045—Combinations of networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Abstract
本发明提供了一种基于多任务学习的对话意图识别方法,包括以下步骤:S1:采集对话语料,构造Complete数据集;S2:选取部分对话,标注每个语句的意图,构造Intent数据集;S3:划分Intent数据集为训练集、验证集和测试集;S4:输入Intent训练集和Complete数据集,训练多任务学习模型;S5:每完成一次训练迭代,计算Intent验证集的损失值;S6:选择验证集损失值最小时的模型作为训练得到的最终模型;S7:利用Intent测试集评估模型性能,计算样本准确率等评价指标;S8:将新的对话语句输入已训练好的模型,识别其意图。本发明充分利用对话语句之外的辅助信息学习丰富的语句表征,以此提升意图识别性能。
Description
技术领域
本发明涉及自然语言处理技术领域,尤其涉及对话意图识别方法及识别系统。
背景技术
近年来,以对话系统为基础的虚拟语音助手、智能音箱和智能服务机器人获得了极大关注,逐渐发展为新的人机交互手段,也在促进大众生活方式的变革。正确识别对话中每个语句的意图是实现对话系统的关键一步,影响着对话理解的准确性以及后续处理流程。
作为一个分类问题,意图识别方法主要有基于规则的、基于传统机器学习、基于深度学习的等类型。基于规则的意图识别需要专家设计匹配模板,只适合小规模、特定领域的对话系统。基于传统机器学习的意图识别有最大熵、隐马尔可夫、条件随机场、支持向量机、深度置信网络等模型。如今,基于卷积神经网络、循环神经网络等深度学习模型的意图识别成为研究的主流。
上述模型大多关注语句本身的词法、句法和语义特征,忽视了语句之外的轮次、发言者等辅助信息,这些信息往往与意图有着很强的关联性。例如,提问相关的意图多由用户发出且位于对话开头,回答相关的意图则由系统发出且位于对话结尾。有效利用这些强关联的辅助信息,势必可以进一步提升对话意图识别性能。
发明内容
本发明的目的是提供一种基于多任务学习的对话意图识别方法,以有效利用与意图有强关联的轮次、发言者等辅助信息,充分性训练模型,习得丰富的语句表征,从而提升意图识别性能。
为实现上述目的,本发明提供如下技术方案:
首先,是构造Complete和Intent两个数据集。Complete数据集主要提供辅助信息相关的训练样本,Intent数据集则提供意图分类样本。具体地,采集对话语料,构造Complete数据集;选取部分对话语料,标注每个语句的意图,构造Intent数据集;将Intent数据集按8:1:1的比例随机划分为训练集、验证集和测试集三个部分。Complete数据集中每个对话包含多轮交互,每轮交互由轮次、发言者、语句等部分组成。语句意图可以是初始提问、重复提问、澄清提问、后续提问、信息补充、答案回复、积极反馈、消极反馈、问候、感谢、其他中的一个或多个。初始提问指对话开始时提出的第一个问题;重复提问指重复之前的问题;后续提问指与初始提问相关的其他问题;澄清提问指请求问题相关的更多细节;信息补充指提供问题相关的更多细节;答案回复指潜在答案或解决方案;积极反馈指解决方案可行;消息反馈指解决方案不可行;问候指礼貌地问候对方;感谢指向对方表达感谢;其他指不属于以上任何一类的意图。Intent训练集和验证集用于模型训练,训练集则用来评估模型性能。
其次,是训练多任务学习模型。多任务学习模型包含1个主任务和2个辅助任务,主任务是意图分类,辅助任务是轮次分类和发言者分类。轮次分类目标是预测语句在对话中的相对位置,发言者分类目标是预测语句的发言者是用户还是专家。3个任务共享模型的词表示层和语句表示层,只有输出层不同。具体地,将Intent训练集和Complete数据集输入多任务学习模型,初始化模型参数,设置好优化器和最大迭代次数,开始训练;每完成一次训练迭代,计算Intent验证集的损失值;设定模型迭代超参数,若经过连续10次迭代后,验证集损失值都不再下降,则结束训练,并选择损失值最小时的模型作为训练得到的最终模型。模型训练步骤如下:每个任务分别输入相同数量的语句,首先经过词表示层将语句每个单词转换为向量,然后进入语句表示层,生成各自的语句向量;每个任务的语句向量经各自输出层转换为类别分布,由此计算每个任务的损失值;将3个任务的损失值加权求和,得到总的损失值,计算梯度并更新多任务学习模型。
再次,是评估模型性能。利用Intent测试集评估模型性能,计算样本准确率、微精度、微召回率、微F1值等评价指标。根据这些指标对比多任务学习前后模型效果,说明多任务学习模型的有效性和优越性。
最后,是利用已训练好的多任务学习模型预测对话语句意图。将新的对话语句输入模型,经词表示层和语句表示层获得语句向量,然后只进入意图分类任务的输出层,忽略2个辅助任务的输出层,由此预测出每个意图的概率,选择所有大于0.5的作为该语句意图,完成意图识别。
本发明还提出了一种基于多任务学习的对话意图识别系统,包括:存储器和处理器;所述存储器上存储有计算机程序,当所述计算机程序被所述处理器执行时,实现上述的基于多任务学习的对话意图识别方法。
本发明还提出了一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时,实现上述的基于多任务学习的对话意图识别方法。
本发明的有益效果是:提出一种基于多任务学习的对话意图识别方法,通过轮次、发言者等辅助信息样本,更好地学习语句表征,有效提升了意图识别性能,意图识别的准确率提升了3.74%,微F1值提升了3.59%,取得了当前最优结果。
附图说明
附图是用来进一步理解本发明,并且构成说明书的一部分,与下面的具体实施方式一起用于解释本公开,但不构成对本发明的限制。在附图中:
图1是本发明一实施例一种基于多任务学习的对话意图识别方法的流程示意图;
图2是本发明一实施例一种基于多任务学习的对话意图识别方法的多任务学习模型架构;
图3是本发明一实施例一种基于多任务学习的对话意图识别方法中步骤S4模型训练的流程示意图。
具体实施方式
结合以下具体实施例和附图,对发明作进一步的详细说明。实施本发明的过程、条件、实验方法等,除以下专门提及的内容之外,均为本领域的普遍知识和公知常识,本发明没有特别限制内容。
本发明实施例提出一种基于多任务学习的对话意图识别方法,如图1所示,包括以下步骤:
S1:采集对话语料,构造Complete数据集。每个对话包含多轮交互,每轮交互由轮次、发言者、语句等部分组成。轮次从1开始编号,发言者有用户和专家两类。
S2:选取部分轮数在3~10之间的对话语料,标注每个语句的意图,构造Intent数据集。语句意图可以是初始提问、重复提问、后续提问、澄清提问、信息补充、答案回复、积极反馈、消极反馈、问候、感谢、其他中的一个或多个;
S3:将Intent数据集按8:1:1的比例随机划分为训练集、验证集和测试集三个部分。训练集和验证集用于意图识别模型的训练,测试集用于模型性能的评估;
S4:将Intent训练集和Complete数据集输入多任务学习模型,初始化模型参数,设置好优化器和最大迭代次数,进行模型训练;
S5:每完成一次训练迭代,计算Intent验证集的损失值;
S6:设定模型迭代超参数,若经过连续10次迭代后,验证集损失值都不再下降,则结束训练,并选择损失值最小时的模型作为训练得到的最终模型;
S7:利用Intent测试集评估模型性能,计算样本准确率、微精度、微召回率、微F1值等评价指标;
S8:将新的对话语句输入已训练好的多任务学习模型,预测每个意图的概率,从中选出所有大于0.5的作为该语句意图,完成意图识别。
在本实施例中,多任务学习模型包含1个主任务和2个辅助任务,主任务是意图分类,辅助任务是轮次分类和发言者分类。轮次分类目标是预测语句在对话中的相对位置,发言者分类目标是预测语句的发言者是用户还是专家。如图2所示,3个任务共享模型的词表示层和语句表示层,只有输出层不同。
在本实施例中,如图3所示,多任务学习模型训练包括以下步骤:
S41:每个任务分别输入相同数量的语句,首先经过词表示层将语句每个单词转换为向量,然后进入语句表示层,生成各自的语句向量;
S42:每个任务的语句向量经各自输出层转换为类别分布,由此计算每个任务的损失值;
S43:将3个任务的损失值加权求和,得到总的损失值,然后计算梯度并更新多任务学习模型。
具体而言,对于一个由n个单词组成的语句它对应的意图y是集合的一个子集。其中,c为意图总数,本实施例中c=11。如果用向量的形式表示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为相对位置的类别数,本实施例中m=4。由此可见,意图分类是一个多标签分类任务,轮次分类是一个多分类任务,发言者分类是一个二分类任务。
在本实施例步骤S41中,词表示层通过拼接预训练的GloVe嵌入、自训练的Word2Vec嵌入和基于CNN的字符嵌入,将语句u中每个单词wi转换为向量xi。GloVe嵌入选择glove.840B.300d版本,大小为300维。Word2Vec嵌入由Complete数据集所有语句训练得到,大小为100维。字符嵌入首先将单词中每个字符转换为16维的字符向量,再使用128个大小为3的卷积核进行编码,激活函数为ReLU,由此得到的字符嵌入大小为128维。
在本实施例步骤S41中,语句表示层是一个结合自注意力机制的双向LSTM网络。首先,使用每个方向隐层大小为150的双向LSTM获得词的上下文表示hi:
hi=BiLSTM(X,i)
ei=wThi
最后,将hi与αi相乘,生成语句向量z:
其中,λ2=0.1,λ3=0.2。优化器选用Adam,初始学习率为0.001。模型每一层dropout的概率为0.4,mini-batch中每个任务的样本数为32。
在本实施例步骤S7中,样本准确率Acc的计算方法为:
微精度P的计算方法为:
微召回率R的计算方法为:
微F1值的计算方法为:
利用上述4项评价指标,对比多任务学习前后模型效果。多任务学习之前,模型准确率、微精度、微召回率和微F1值分别为65.89%、75.17%、62.37%和68.17%。经多任务学习之后,4项指标分别增长至69.63%、77.37%、66.91%和71.76%,模型性能提升显著。因此,多任务学习能够从轮次和发言者等辅助信息习得丰富的语句表征,进而提高对话意图识别准确率。
本发明的保护内容不局限于以上实施例。在不背离发明构思的精神和范围下,本领域技术人员能够想到的变化和优点都被包括在本发明中,并且以所附的权利要求书为保护范围。
Claims (3)
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所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011433531.1A CN112417894B (zh) | 2020-12-10 | 2020-12-10 | 一种基于多任务学习的对话意图识别方法及识别系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011433531.1A CN112417894B (zh) | 2020-12-10 | 2020-12-10 | 一种基于多任务学习的对话意图识别方法及识别系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112417894A CN112417894A (zh) | 2021-02-26 |
CN112417894B true CN112417894B (zh) | 2023-04-07 |
Family
ID=74776515
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011433531.1A Active CN112417894B (zh) | 2020-12-10 | 2020-12-10 | 一种基于多任务学习的对话意图识别方法及识别系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112417894B (zh) |
Families Citing this family (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113806501B (zh) * | 2021-04-06 | 2023-11-03 | 京东科技控股股份有限公司 | 意图识别模型的训练方法、意图识别方法和设备 |
CN112800777B (zh) * | 2021-04-14 | 2021-07-30 | 北京育学园健康管理中心有限公司 | 语义确定方法 |
CN113377936B (zh) * | 2021-05-25 | 2022-09-30 | 杭州搜车数据科技有限公司 | 智能问答方法、装置及设备 |
CN114118101B (zh) * | 2021-11-26 | 2022-12-09 | 北京百度网讯科技有限公司 | 对话数据生成方法及装置、设备和介质 |
CN114661899A (zh) * | 2022-02-15 | 2022-06-24 | 北京结慧科技有限公司 | 一种任务创建方法、装置、计算机设备和存储介质 |
CN116759077A (zh) * | 2023-08-18 | 2023-09-15 | 北方健康医疗大数据科技有限公司 | 一种基于智能体的医疗对话意图识别方法 |
CN117648430B (zh) * | 2024-01-30 | 2024-04-16 | 南京大经中医药信息技术有限公司 | 对话式大语言模型监督训练评价系统 |
Family Cites Families (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10467509B2 (en) * | 2017-02-14 | 2019-11-05 | Microsoft Technology Licensing, Llc | Computationally-efficient human-identifying smart assistant computer |
CN108334496B (zh) * | 2018-01-30 | 2020-06-12 | 中国科学院自动化研究所 | 用于特定领域的人机对话理解方法与系统及相关设备 |
CN109446306A (zh) * | 2018-10-16 | 2019-03-08 | 浪潮软件股份有限公司 | 一种基于任务驱动的多轮对话的智能问答方法 |
WO2020163627A1 (en) * | 2019-02-07 | 2020-08-13 | Clinc, Inc. | Systems and methods for machine learning-based multi-intent segmentation and classification |
CN110532355B (zh) * | 2019-08-27 | 2022-07-01 | 华侨大学 | 一种基于多任务学习的意图与槽位联合识别方法 |
CN111198937B (zh) * | 2019-12-02 | 2023-06-30 | 泰康保险集团股份有限公司 | 对话生成及装置、计算机可读存储介质、电子设备 |
CN111090728B (zh) * | 2019-12-13 | 2023-05-26 | 车智互联(北京)科技有限公司 | 一种对话状态跟踪方法、装置及计算设备 |
CN111581958A (zh) * | 2020-05-27 | 2020-08-25 | 腾讯科技(深圳)有限公司 | 对话状态确定方法、装置、计算机设备及存储介质 |
CN111625641B (zh) * | 2020-07-30 | 2020-12-01 | 浙江大学 | 一种基于多维度语义交互表征模型的对话意图识别方法及系统 |
-
2020
- 2020-12-10 CN CN202011433531.1A patent/CN112417894B/zh active Active
Non-Patent Citations (1)
Title |
---|
基于对话结构和联合学习的情感和意图分类;张伟生等;《中文信息学报》;20200815(第08期);全文 * |
Also Published As
Publication number | Publication date |
---|---|
CN112417894A (zh) | 2021-02-26 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112417894B (zh) | 一种基于多任务学习的对话意图识别方法及识别系统 | |
Schuurmans et al. | Intent classification for dialogue utterances | |
CN111145718B (zh) | 一种基于自注意力机制的中文普通话字音转换方法 | |
CN110609891A (zh) | 一种基于上下文感知图神经网络的视觉对话生成方法 | |
CN110377916B (zh) | 词预测方法、装置、计算机设备及存储介质 | |
CN111274362B (zh) | 一种基于transformer架构的对话生成方法 | |
CN110298044B (zh) | 一种实体关系识别方法 | |
CN111400461B (zh) | 智能客服问题匹配方法及装置 | |
CN112417884A (zh) | 一种基于知识增强和知识迁移的句子语义相关度判断方法 | |
CN116150335A (zh) | 一种军事场景下文本语义检索方法 | |
CN109308316B (zh) | 一种基于主题聚类的自适应对话生成系统 | |
CN114781375A (zh) | 一种基于bert与注意力机制的军事装备关系抽取方法 | |
CN111984780A (zh) | 多意图识别模型训练方法和多意图识别方法及相关装置 | |
CN111914553A (zh) | 一种基于机器学习的金融信息负面主体判定的方法 | |
CN114817307A (zh) | 一种基于半监督学习和元学习的少样本nl2sql方法 | |
Matějů et al. | An empirical assessment of deep learning approaches to task-oriented dialog management | |
CN112560440A (zh) | 一种基于深度学习的面向方面级情感分析的句法依赖方法 | |
Kim et al. | Speaker-sensitive dual memory networks for multi-turn slot tagging | |
CN116303966A (zh) | 基于提示学习的对话行为识别系统 | |
CN116010874A (zh) | 基于深度学习多模态深尺度情感特征融合的情感识别方法 | |
CN115376547A (zh) | 发音评测方法、装置、计算机设备和存储介质 | |
CN114692615A (zh) | 一种针对小语种的小样本意图识别方法 | |
CN111274359B (zh) | 基于改进vhred与强化学习的查询推荐方法及系统 | |
CN112667788A (zh) | 一种新型的基于bertcontext的多轮对话自然语言理解模型 | |
Kreyssig | Deep learning for user simulation in a dialogue system |
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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |