当前位置: 首页 > 专利查询>宋杰专利>正文

一种基于动态主题窗口模型的多轮对话下意图识别方法技术

技术编号:27976672 阅读:32 留言:0更新日期:2021-04-06 14:11
一种基于动态主题窗口模型的多轮对话下意图识别方法,涉及机器学习与自然语言处理领域,该方法首先构建一个固定大小窗口,在预测文本前后进行滑动,然后基于主题模型来确定引入窗口中的语境信息,从而进行一次粗略的去噪处理,然后使用BERT模型对引入的文本进行编码处理,来获取多层次的语义信息;使用Attention机制来获取特征向量,并通过计算一个状态值来控制引入的上下文相关的语境信息特征,从而进行第二次更为细致的去噪处理。最后使用不同的意图分类模型进行训练,采用少数服从多数的投票方式进行模型融合,给出意图识别结果。本发明专利技术是基于深度学习的方法,具有更精准的识别效果,对于不同领域的意图识别任务可以更好的迁移使用。

【技术实现步骤摘要】
一种基于动态主题窗口模型的多轮对话下意图识别方法
本专利技术涉及机器学习与自然语言处理领域,更具体地说是一种基于动态主题窗口模型的多轮对话下意图识别方法。
技术介绍
构建一个可以使用自然语言与人自动连贯地互动交流的人机对话系统一直是学术研究和商业应用的巨大挑战。从应用的角度来看,对话系统可以分为两大类,即面向任务型导向的对话系统和面向聊天的对话系统。我们的专利技术专利是面向任务型导向人机对话系统中的意图识别。在现有的面向任务型导向人机对话系统中,其对话文本具有以下三个特点:第一,语句中口头表达的比例比较高,同一概念有多种表达方式;其次,短文本的比例比较高,用户在每一轮的输入表达相对较短,有些输入可能只有几个词;第三,多轮对话中每轮的对话内容可能不是独立的,即有时对话的内容很难通过在单轮对话中阐述清楚,此时则可能需要结合上下文信息来帮助理解对话。通过多轮对话可以收集更多的语义信息,更准确的识别出提问者的意图。在实际应用场景中,无论是语音识别还是人的语言表述都是非精确的,这无形之中大大增加了机器人对用户的意图理解难度。如何正确识别提问者的意图,一直以来都是多轮对话系统研究的重点之一。早期的意图识别方法是将其视为语义话语分类问题,主要包括基于规则模板的方法、使用统计特征的方法以及基于机器学习分类算法的方法。基于规则模板的方法,通常针对于一些符合一定的规则的,并且结构非常相似的句子。它需要人为地构建规则模板和类别信息,即哪些关键字对应于哪个意图。然后,通过规则模板解析的方式来确定提问者的意图。基于规则的对话系统无法支持真正的开放域对话,一旦超出规则的范围,系统就无法识别,而且这种方式不仅人工成本高、效率低而且不易扩展。基于统计特征的方法,是使用意图词典进行词频统计,取出现最频繁的词对应的意图为提问者的意图,这种方法虽然相对简单,但是其识别效果不好。基于机器学习的方法通常使用分类器,如NaiveBayes,SupportVectorMachine,LogisticRegressive等等,这些方法实现多意图识别的常用方法是为每个意图训练一个分类器,构成一个分类链,然后逐层使用它,这种方法在意图识别的准确性上有了显著的提高,但是这类方法大多不能解决稀疏矩阵的问题,只能依靠大量的标记语料库,同样无法降低人工成本。近些年来,随着深度学习不断的发展,利用神经网络模型去处理对话系统中意图识别的诸多问题也逐渐成为了主流趋势。其主要思想是将抽象问题转化为具体问题,即将意图识别任务转化为对意图的分类任务,类似于文本中的聚类任务,通过使用文本分类算法达到意图识别的效果。
技术实现思路
本专利技术的目的在于:为了解决复杂任务型会话场景中简短的口头表达以及内容宽泛等因素导致的多轮对话系统中意图识别误检率高的问题。提出了一种基于动态主题窗口模型的多轮对话下意图识别方法。该方法通过有效的利用上下文相关的语境信息,克服了复杂会话场景下简短的口头表述以及内容宽泛的困难问题,并可以有效地识别出的提问者的意图,在面向任务型智能对话系统的发展中具有重要帮助。为了实现上述目的,本专利技术采用了如下技术方案:步骤(1)、数据预处理:去标点、分词以及去停用词;步骤(2)、构建一个动态主题窗口模型去预测待识别文本周围的主题,根据预测结果来引入窗口语境信息;步骤(3)、使用BERT模型对步骤(2)中得到的语境信息进行编码,并基于Attention机制来抽取上下文相关语境信息的特征向量,通过计算一个状态值来控制引入的上下文相关的语境信息特征;步骤(4)、最后,根据抽取到的特征向量来训练不同的意图分类模型,将所有分类模型进行融合,采用投票方式,即可给出意图识别结果;与现有技术相比,本专利技术有益效果体现在:1、首先,使用基于深度学习的方法,可以更好的迁移使用。对于不同领域的意图识别任务来说,只需要更换该领域标注过的意图数据,进行重新训练模型即可。相比于传统的基于规则模板的方法,不需要考虑用户表述的规范性,省去了人工制定模板的成本,而且更易于扩展。2、其次,相对只使用当前文本信息进行意图识别的方法来说,通过使用主题模型可以控制是否需要引入一定范围内的上下文相关的语境信息,从而能更有效的提升分类算法的性能,也能减少从全文引入不必要的语境信息所带来的噪声的影响。3、最后,相对传统的意图识别方法,基于深度学习的方法具有更精准的识别效果,并且采用多模型融合的策略能进一步提升意图识别的效果。附图说明图1为本专利技术方法流程图;图2为本专利技术意图识别算法结构图;图3为本专利技术使用的LDA主题模型图;图4为本专利技术使用BERT模型的编码过程图;图5为本专利技术控制模块中状态信号的实现。具体实施方式本实施例中,一种基于动态主题窗口模型的多轮对话下意图识别方法。数据流程图如图1所示。其中意图识别算法框架主要分为三大模块:编码模块、控制模块和分类模块,如图2所示,具体地说是按如下步骤进行:步骤(1)、数据预处理:去标点、分词以及去停用词;步骤(1.1)、首先将对话文本进行去标点、去特殊符号如表情符号,其次去重;步骤(1.2)、然后,使用特定领域的分词工具pkuseg对文本进行分词,从而在一定程度上消除歧义词的影响;步骤(1.3)、最后,采用公开的停用词库对分词结果进行去停用词操作。步骤(2)、编码模块,构建一个动态主题窗口模型去预测待识别文本周围的主题;步骤(2.1)、首先构建一个包含对话轮数为2的窗口,在预测文本Qi前后进行对话轮数大小为1的滑动操作,记为SW(Qi-1Ai-1,QiAi),其中QiAi为第i轮的一轮对话,前后滑动的对话轮数距离待预测文本不超过3轮;步骤(2.2)、其次、构建LDA模型;步骤(2.2.1)、先建立一个主题库,其中有一个主题的标记为无意图,为每个主题选取一定数量的能反应该主题的词语;步骤(2.2.2)、如图3所示,LDA模型分为两个过程,表示对于每一段对话文本,从主题分布中抽取一个主题Zm,n。表示再从被抽到的主题所对应的词语分布中抽取一个词语Wm,n,重复此过程直至遍历当前对话文本中的每一个词语。这样就生成了一个新的对话文本,这个文本中的词语由不同主题下的词所组成,同时得到主题和词汇的联合概率分布如公式(1)所示:其中K为主题个数,M为文本总数,是每个主题下词汇的多项分布的Dirichlet先验参数,是每个文本下主题的多项分布的Dirichlet先验参数,和是两个隐含变量,分别表示第m个文档下的主题分布和第k个主题下词汇的分布,和分别表示主题和词汇。步骤(2.2.3)、根据联合概率分布,使用GibbsSampling对其进行采样,假设已经观测到的词Wi=t,则由贝叶斯法则得到公式(2)如下所示:结合联合概率分布可推得公式(3):由Dirichlet参数估计的公式:最后得到LDA模型的Gi本文档来自技高网
...

【技术保护点】
1.一种基于动态主题窗口模型的多轮对话下意图识别方法,其特征在于:包括如下步骤:/n步骤(1)、数据预处理,首先对交通客服领域的对话文本进行去标点,然后使用Pkuseg分词工具进行分词,最后去停用词;/n步骤(2)、构建一个动态主题窗口模型去预测待识别文本周围的主题,根据预测结果来确定是否引入窗口语境信息,从而去除无意义信息的干扰;/n步骤(3)、使用BERT模型对文本内容进行编码,其次基于Attention机制来抽取上下文相关语境信息的特征向量,并通过计算一个状态值来控制引入的上下文相关的语境信息特征;/n步骤(4)、最后,根据抽取到的特征向量来训练不同的意图分类模型,将所有分类模型进行融合,采用投票方式,即可给出意图识别结果;/n所述步骤(2)中构建一个动态主题窗口模型的过程分为以下几步:/n步骤(2.1)、首先构建一个包含对话轮数为2的滑动窗口,在预测文本前后进行对话轮数大小为1的滑动操作;/n步骤(2.2)、延续步骤(2.1)每滑动一次,使用LDA主题模型进行预测一次,得到每个主题的预测结果;/n步骤(2.3)、通过计算每个主题对应的得分确定编码过程中是否引入对应的上下文语境信息,统计无意图主题所占比例如果超过0.5,则不需要引入上下文语境信息,否则引入上下文信息;/n所述步骤(2.2)中LDA主题模型的构建过程分为以下几步:/n步骤(2.2.1)、首先建立一个主题库,其中有一个主题的标记为无意图,为每个主题选取一定数量的能反应该主题的词语;/n步骤(2.2.2)、对于每一段对话文本,从主题分布中抽取一个主题,再从被抽到的主题所对应的词语分布中抽取一个词语,重复此过程直至遍历当前对话文本中的每一个词语,然后生成了一个新的对话文本,同时得到主题和词汇的联合概率分布;/n步骤(2.2.3)、根据联合概率分布,使用Gibbs Sampling对其进行采样,得到LDA主题模型的Gibbs Sampling公式,最终确定每段对话文本的主题。/n...

【技术特征摘要】
1.一种基于动态主题窗口模型的多轮对话下意图识别方法,其特征在于:包括如下步骤:
步骤(1)、数据预处理,首先对交通客服领域的对话文本进行去标点,然后使用Pkuseg分词工具进行分词,最后去停用词;
步骤(2)、构建一个动态主题窗口模型去预测待识别文本周围的主题,根据预测结果来确定是否引入窗口语境信息,从而去除无意义信息的干扰;
步骤(3)、使用BERT模型对文本内容进行编码,其次基于Attention机制来抽取上下文相关语境信息的特征向量,并通过计算一个状态值来控制引入的上下文相关的语境信息特征;
步骤(4)、最后,根据抽取到的特征向量来训练不同的意图分类模型,将所有分类模型进行融合,采用投票方式,即可给出意图识别结果;
所述步骤(2)中构建一个动态主题窗口模型的过程分为以下几步:
步骤(2.1)、首先构建一个包含对话轮数为2的滑动窗口,在预测文本前后进行对话轮数大小为1的滑动操作;
步骤(2.2)、延续步骤(2.1)每滑动一次,使用LDA主题模型进行预测一次,得到每个主题的预测结果;
步骤(2.3)、通过计算每个主题对应的得分确定编码过程中是否引入对应的上下文语境信息,统计无意图主题所占比例如果超过0.5,则不需要引入上下文语境信息,否则引入上下文信息;
所述步骤(2.2)中LDA主题模型的构建过程分为以下几步:
步骤(2.2.1)、首先建立一个主题库,其中有一个主题的标记为无意图,为每个主题选取一定数量的能反应该主题的词语;
步骤(2.2.2)、对于每一段对话文本,从主题分布中抽取一个主题,再从被抽到的主题所对应的词语分布中抽取一个词语,重复此过程直至遍历当前对话文本中的每一个词语,然后生成了一个新的对话文本,同时得到主题和词汇的联合概率分布;
步骤(2.2.3)、根据联合概率分布,使用GibbsSampling对其进行采样,得到LDA主题模型的GibbsSampling公式,最终确定每段对话文本的主题。


2.根据权利要求1所述的一种基于动态主题窗口模型的多轮对话下意图识别方法,其特征在于:所述步骤(1)中使用Pkuseg分词工具以及去停用词内容包括:
首先,采用交通领域的分词语料训练分词工具pkuseg;
然后,用训练好的分词模型对对话文本进行分词;
最后,使用公开的停用词库,进行去停用词操作。


3.根据权利要求1所述的一种基于动态主题窗口模型的多轮对话下意图识别方法,其特征在于:所述步骤(2.2.2)中主题和词汇的联合概率分布由公式(1)所示:



其中K为主题个数,M为文本总数,是每个主题下词汇的多项分布的Dirichlet先验参数,是每个文本下主题的多项分布的Di...

【专利技术属性】
技术研发人员:宋杰骆起峰
申请(专利权)人:宋杰骆起峰
类型:发明
国别省市:安徽;34

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1