CN115238066A - 用户意图识别方法、装置、对话系统、设备以及存储介质 - Google Patents

用户意图识别方法、装置、对话系统、设备以及存储介质 Download PDF

Info

Publication number
CN115238066A
CN115238066A CN202110444584.1A CN202110444584A CN115238066A CN 115238066 A CN115238066 A CN 115238066A CN 202110444584 A CN202110444584 A CN 202110444584A CN 115238066 A CN115238066 A CN 115238066A
Authority
CN
China
Prior art keywords
text
candidate
intention
vector
recognized
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
CN202110444584.1A
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.)
Beijing Sankuai Online Technology Co Ltd
Original Assignee
Beijing Sankuai Online Technology 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 Beijing Sankuai Online Technology Co Ltd filed Critical Beijing Sankuai Online Technology Co Ltd
Priority to CN202110444584.1A priority Critical patent/CN115238066A/zh
Publication of CN115238066A publication Critical patent/CN115238066A/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/35Clustering; Classification
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/20Natural language analysis
    • G06F40/279Recognition of textual entities
    • G06F40/289Phrasal analysis, e.g. finite state techniques or chunking
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/26Speech to text systems

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Health & Medical Sciences (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computational Linguistics (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Databases & Information Systems (AREA)
  • Data Mining & Analysis (AREA)
  • Human Computer Interaction (AREA)
  • Acoustics & Sound (AREA)
  • Multimedia (AREA)
  • Artificial Intelligence (AREA)
  • General Health & Medical Sciences (AREA)
  • Machine Translation (AREA)

Abstract

本申请实施例提供了一种用户意图识别方法、装置、设备以及存储介质,涉及计算机技术领域,旨在提高意图识别的效率和准确性,所述方法包括:获得待识别文本,以及多个候选意图各自的描述语句;对所述多个候选意图各自的描述语句进行处理,得到所述多个候选意图各自对应的句向量;对所述待识别文本中各个词语各自对应的词向量进行拼接,得到所述待识别文本对应的词向量序列;基于所述待识别文本对应的词向量序列和所述多个候选意图各自对应的句向量,从所述多个候选意图中确定与所述待识别文本匹配的用户意图。

Description

用户意图识别方法、装置、对话系统、设备以及存储介质
技术领域
本申请涉及计算机技术领域,特别是涉及一种用户意图识别方法、装置、对话系统、设备及存储介质。
背景技术
近年来,以对话系统为核心的产品,比如智能音箱、智能客服等,逐渐步入大众的视野,其中,在对话系统中涉及到机器人针对用户提出的问题进行解答,表现为用户问机器人回答的对话形式。如此,需要对用户提出的问题进行意图识别,以确定用户问问题的真实意图,进而向用户反馈匹配其真实意图的信息。
相关技术中,意图识别是指对输入的文本进行识别,以确定用户的真实意图,常用的方法是做文本分类,具体方式是将待识别的文本的向量与多个候选意图的描述语句的向量拼接后,输入到模型进行匹配,根据匹配的结果,得到用户真实的意图。
然而,采用这一方式时,往往受限于模型对输入的向量的最长长度限制,不适用于有大量候选意图的场景,存在意图识别效率低的问题。
发明内容
为了解决上述问题,本申请提供了一种用户意图识别方法、装置、对话系统、设备及存储介质,旨在提高意图识别的效率。
本公开实施例的第一方面,提供了一种用户意图识别方法,所述方法包括:
获得待识别文本,以及多个候选意图各自的描述语句;
对所述多个候选意图各自的描述语句进行处理,得到所述多个候选意图各自对应的句向量;
对所述待识别文本中各个词语各自对应的词向量进行拼接,得到所述待识别文本对应的词向量序列;
基于所述待识别文本对应的词向量序列和所述多个候选意图各自对应的句向量,从所述多个候选意图中确定与所述待识别文本匹配的用户意图。
可选地,对所述多个候选意图各自的描述语句进行处理,得到所述多个候选意图各自对应的句向量,包括:
将所述多个候选意图各自的描述语句输入预先训练的向量转换模型,得到所述多个候选意图各自对应的句向量;
其中,所述向量转换模型是以多个样本意图各自对应的描述语句为训练数据,对第一预设模型进行训练得到的。
可选地,对所述多个候选意图各自的描述语句进行处理,得到所述多个候选意图各自对应的句向量,包括:
针对每个候选意图的描述语句,执行以下步骤:
获得该候选意图的描述语句中各个词语各自对应的词向量;
将所得到的多个词向量压缩为一个向量,得到该候选意图对应的句向量。
可选地,基于所述待识别文本对应的词向量序列和所述多个候选意图各自对应的句向量,从所述多个候选意图中确定与所述待识别文本匹配的用户意图,包括:
对所述待识别文本对应的词向量序列和所述多个候选意图各自对应的句向量进行拼接,得到第一拼接向量;
将所述第一拼接向量输入到第一意图识别模型,获得由所述第一意图识别模型输出的与所述待识别文本匹配的用户意图;
其中,所述第一意图识别模型是以多个携带标签的拼接向量样本为训练样本,对第二预设模型训练得到的;其中,所述拼接向量样本为样本文本的对应的词向量序列和多个样本候选意图各自对应的句向量拼接而成的,所述标签用于表征与所述拼接向量样本匹配的意图。
可选地,基于所述待识别文本对应的词向量序列和所述多个候选意图各自对应的句向量,从所述多个候选意图中确定与所述待识别文本匹配的用户意图,包括:
对所述待识别文本对应的词向量序列和所述多个候选意图各自对应的句向量进行拼接,得到第二拼接向量;
将所述第二拼接向量输入到第二意图识别模型,获得由所述第二意图识别模型输出的与所述待识别文本匹配的用户意图;
其中,所述第二意图识别模型是以多个携带双重标签的拼接向量样本为训练数据,对第三预设模型训练得到的;所述拼接向量样本为样本文本的对应的词向量序列和多个样本候选意图各自对应的句向量拼接而成的;
所述双重标签中的一种分类标签用于表征与所述拼接向量样本匹配的意图,另一种匹配标签用于表征所述多个样本候选意图各自对应的句向量与所述样本文本对应的词向量序列是否匹配。
可选地,所述第二意图识别模型是通过以下步骤得到:
将所述多个携带双重标签的拼接向量样本输入到所述第三预设模型;
获得所述第三预设模型输出的分类预测结果和匹配预测结果,其中,所述分类预测结果用于表征与所述拼接向量样本匹配的意图,所述匹配预测结果用于表征所述多个样本候选意图各自对应的句向量与所述样本文本对应的词向量序列是否匹配;
根据所述分类预测结果和所述分类标签,确定分类损失,以及根据所述匹配预测结果和所述匹配标签,确定匹配损失;
根据所述分类损失和所述匹配损失,对所述第三预设模型进行更新;
将多次更新后得到的第三预设模型确定为所述第二意图识别模型。
可选地,根据所述分类损失和所述匹配损失,对所述第三预设模型进行更新,包括:
根据所述分类损失对应的权重和所述匹配损失对应的权重,对所述分类损失和所述匹配损失进行融合,得到整体损失;
根据所述整体损失,对所述第三预设模型进行更新。
本公开实施例的第二方面,提供了一种用户意图识别装置,所述装置包括:
获得模块,用于获得待识别文本,以及多个候选意图各自的描述语句;
处理模块,用于对所述多个候选意图各自的描述语句进行处理,得到所述多个候选意图各自对应的句向量;
拼接模块,用于对所述待识别文本中各个词语各自对应的词向量进行拼接,得到所述待识别文本对应的词向量序列;
识别模块,用于基于所述待识别文本对应的词向量序列和所述多个候选意图各自对应的句向量,从所述多个候选意图中确定与所述待识别文本匹配的用户意图。
本公开实施例的第三方面,提供了一种对话系统,包括语音识别模块、意图识别模块、对话模块;其中:
所述语音识别模块,用于将接收到待识别语音识别为待识别文本;
所述意图识别模块用于执行第一方面实施例所述的用户意图识别方法,以输出与所述待识别文本匹配的用户意图;
所述对话模块用于根据所述用户意图,输出自然语音。
本公开实施例还提供一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行时实现如第一方面所述的用户意图识别方法。
本公开实施例还提供了一种非临时性计算机可读存储介质,当所述存储介质中的指令由处理器执行时,能够执行上述第一方面中任一项所述的用户意图识别方法所执行的操作。
本申请实施例中,可以获得待识别文本,以及多个候选意图各自的描述语句;并对多个候选意图各自的描述语句进行处理,得到多个候选意图各自对应的句向量;接着,对待识别文本中各个词语各自对应的词向量进行拼接,得到待识别文本对应的词向量序列;之后,基于待识别文本对应的词向量序列和所述多个候选意图各自对应的句向量,从多个候选意图中确定与所述待识别文本匹配的用户意图。
一方面,由于将待识别文本处理为词向量序列,将多个候选意图的描述语句处理为一个句向量,由此缩短了候选意图的向量长度,进而在后续将待识别的文本的向量与多个候选意图的向量拼接后,其拼接得到的向量的长度被大幅缩短,从而可以允许拼接更多数量的候选意图,提高了意图识别的效率。另一方面,由于缩短了候选意图的向量长度,如此,每个候选意图在拼接后的向量中的长度占比被降低,相应的,由于待识别文本被处理为词向量序列(词向量序列的长度大于句向量),由此,待识别文本的向量在拼接后的向量中的长度占比被提高,从而使得待识别文本的信息可以被最大程度的保留,从而可以充分利用待识别文本的信息进行意图识别,进而提高了意图识别的准确率。
附图说明
为了更清楚地说明本申请实施例的技术方案,下面将对实施例或相关技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1是本申请一实施例示出的一种用户意图识别方法的步骤流程图;
图2是本申请一实施例示出的利用拼接向量样本对第三预设模型进行训练的示意图;
图3是本申请一实施例示出的训练得到第二意图识别模型的步骤流程图;
图4是本申请一实施例示出的一种用户意图识别装置的框架示意图;
图5是本申请一实施例示出的一种对话系统的框架示意图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
需要说明的是,本公开的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本公开的实施例能够以除了在这里图示或描述的那些以外的顺序实施。以下示例性实施例中所描述的实施方式并不代表与本公开相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本公开的一些方面相一致的装置和方法的例子。
为便于理解本申请的技术方案,对本申请的技术术语做如下说明:
候选意图的描述语句:候选意图可以理解为是系统预先存储的反映用户需求的意图,候选意图的描述语句可以是指描述意图的一个标准文本,例如,候选意图是“退款”,则描述语句可以是“我要退款”。
词向量序列:是指对一个文本中包括的每个词语的向量进行拼接后得到的向量序列,例如,文本是“我要查询余额”,则词向量序列是“我”、“要”、“查询”、“余额”各自的向量拼接后的向量。当然,这个仅为示例性说明,实际中,对文本中的词语的划分可以依据实际情况确定。
相关技术中,对意图识别的方式主要如下所述:
一种是如背景部分所述的,将待识别的文本的向量与作为标签的多个意图的描述语句的向量拼接后,输入到模型进行匹配,以得到用户真实的意图,这一方式又称为N分类器的识别方法。然而,采用这一方式时,往往受限于模型对输入的向量的最长长度限制,不适用于有大量候选意图的场景,存在致意图识别的效率低的问题。
为避免受限于模型对输入的向量的最长长度限制,相关技术中还提出了另一种方式,即构建二分类器,即将待识别的文本和一个意图的描述语句拼接后输入到二分类器中,以判断待识别的文本是否与该意图匹配,由此,若候选意图有N个,则需要进行N次的匹配,当N较大时,效率太低,不适用于实时性要求较高的对话系统中。
有鉴于此,本申请人为提高意图识别的效率,提出了以下技术构思:
将候选意图的描述语句转换成句向量的表示,使得描述语句的向量长度变短,如此,在与待识别文本中每个词的词向量的表示进行拼接后送入模型识别时,可以在模型对输入的向量的最长长度限制的情况下,增多可拼接的候选意图的数量,如此,可以在候选意图的数量较多的情况下,提高意图识别的效率。当然,在候选意图的向量长度变短后,仍然可以利用二分类器进行一对一的匹配识别,这样,由于候选意图的向量长度变短,使得单次匹配识别的效率得到提高,也可以提高意图识别的效率。
参照图1所示,示出了本申请实施例的一种用户意图识别方法的步骤流程图,如图1所示,具体可以包括以下步骤:
步骤S101:获得待识别文本,以及多个候选意图各自的描述语句。
本实施例中,待识别文本可以是对用户的语音进行语音识别后得到的,该待识别文本可以理解为对用户当前所需求的业务的信息描述,例如,用户输入的语音是“我想退款”,则待识别文本也可以为“我想退款”。
实际中,由于用户的语言习惯的不同,表达同一个意图所用的待识别文本便可以是不同的,例如,同样是表达退款的意图,A用户所产生的待识别文本可以是“我想退款”,B用户产生的待识别文本可以是“我要求退钱”,一般而言,针对一个意图,系统会预设一个标准的描述语句,例如,针对退款的意图,标准的描述语句可以是“我要退款”。
其中,候选意图可以理解为是系统预先存储的反映用户需求的意图,候选意图的描述语句可以是指描述意图的一个标准文本,例如,候选意图是“退款”,则描述语句可以是“我要退款”。
本实施例中,可以获得多个候选意图各自的描述语句,其中,多个候选意图各自的描述语句可以是预先存储的。
步骤S102:对所述多个候选意图各自的描述语句进行处理,得到所述多个候选意图各自对应的句向量。
本实施例中,可以对每个候选意图的描述语句进行处理,具体地,可以是将每个候选意图的描述语句转换为句向量,例如,可以通过向量模型将描述语句处理为句向量。
其中,区别于词向量是词语的一种表示,本实施例中的句向量是句子(包含多个词语)的一种表示。实际中,句向量也可以理解为是从整个描述语句的粒度,对整个描述语句进行转换后得到的唯一表征该描述语句的向量。例如,描述语句是“我要退款”,则句向量可以是反映整个句子“我要退款”的一个向量。
由于通过句向量表征描述语句,因此,一个描述语句的向量表示的长度较短。
步骤S103:对所述待识别文本中各个词语各自对应的词向量进行拼接,得到所述待识别文本对应的词向量序列。
本实施例中,词向量是词语的一种表示,一般待识别文本是由多个词语组合而成的,因此,可以确定一个待识别文本中每个词语的词向量,进而将一个待识别文本中多个词语各自的词向量进行拼接,得到词向量序列。其中,由于一个待识别文本一般包括多个词语,而将多个词语各自的词向量进行拼接后得到的词向量序列的长度,相对于句向量而言便较长,而该词向量序列又可以从词语的粒度反映待识别文本的信息,从而词向量序列可以更细致的反映待识别文本的信息,即增强了对待识别文本的信息表达。
其中,由于描述语句是用句向量表示,而待识别文本是用词向量序列表示,相应地,候选意图对应的向量表示的长度可以短于待识别文本对应的向量表示的长度。这样,在后续将词向量序列与句向量进行拼接后,词向量序列在拼接后的向量中的占比便得到提高,从而使得待识别文本的信息可以尽量被凸显。
步骤S104:基于所述待识别文本对应的词向量序列和所述多个候选意图各自对应的句向量,从所述多个候选意图中确定与所述待识别文本匹配的用户意图。
本实施例中,在得到待识别文本对应的词向量序列和多个候选意图各自对应的句向量后,便可以依据词向量序列和候选意图各自对应的句向量,确定待识别文本所匹配的候选意图。
具体实施时,可以基于每个候选意图对应的句向量和词向量序列,确定该候选意图是否与待识别文本匹配,即二分类器的识别方法,或者,也可以将多个候选意图各自对应的句向量与词向量序列进行拼接,以一次性从多个候选意图中确定与待识别文本匹配的候选意图,即N分类器的识别方法。
其中,无论是采取哪一匹配方式,由于候选意图对应的向量表示较短,至少使得匹配识别的效率得到提高,满足实时性要求。并且在将待识别文本中每个词的词向量的表示进行拼接后送入模型识别时,可以在模型对输入的最长长度限制的情况下,增多一次可拼接的候选意图的数量,如此便适用于具有大量候选意图的场景,从而提高意图识别的效率。
再一方面,由于待识别文本被处理为词向量序列(词向量序列的长度大于句向量),由此,待识别文本的向量在拼接后的向量中的长度占比被提高,词向量序列在拼接后的向量中的占比便得到提高,从而使得待识别文本的信息可以尽量被凸显,进而提高了意图识别的准确率。
相应地,在一种实施例中,提供了将多个候选意图各自对应的句向量与词向量序列进行拼接后,以一次性从多个候选意图中确定与待识别文本匹配的意图的具体实施方式,即具体的两种N分类器的识别方法。
其中,为从多个候选意图中确定与所述待识别文本匹配的用户意图,本申请实施例提供了两种意图识别模型,以确定与待识别文本匹配的用户意图。
第一种模型:第一意图识别模型。具体地,第一意图识别模型是通过如下方式获得的:
以多个携带标签的拼接向量样本为训练样本,对第二预设模型训练得到的。
其中,所述拼接向量样本为样本文本的对应的词向量序列和多个样本候选意图各自对应的句向量拼接而成的,所述标签用于表征与所述拼接向量样本匹配的意图。
本实施例中,样本文本可以是指收集的历史过程中多个用户输入的文本,样本候选意图可以是作为样本的候选意图的描述语句;标签可以表征与拼接向量样本匹配的候选意图,具体而言,可以是表征与拼接向量样本中的词向量序列所匹配的句向量,继而可以表征与样本文本所匹配的样本候选意图。
具体实施时,标签可以是与样本文本所匹配的样本候选意图的标识,例如,有N个样本候选意图,标识从1-N,则标签可以为5,表征标识为5的样本候选意图是与样本文本匹配的样本候选意图。
其中,第二预设模型可以是BERT模型,其中,在训练第二预设模型时,可以以拼接向量样本为输入,该第二预设模型输出的是与样本文本所匹配的句向量的概率,例如,以CLS占位符的形式输出,继而可以得到与样本文本所匹配的样本候选意图。进而,可以根据第二预设模型输出的与样本文本匹配的样本候选意图、以及标签,确定第二预设模型的损失,进而根据该损失,更新第二预设模型的参数,并在第二预设模型收敛或更新达到预设次数后,将更新后的第二预设模型作为第一意图识别模型。
在得到第一意图识别模型后,可以对所述待识别文本对应的词向量序列和所述多个候选意图各自对应的句向量进行拼接,得到第一拼接向量;将所述第一拼接向量输入到第一意图识别模型,获得由所述第一意图识别模型输出的与所述待识别文本匹配的用户意图。
本实施例中,在得到第一意图识别模型后,可以利用第一意图识别模型进行意图识别,具体地,可以将待识别文本对应的词向量序列和多个候选意图各自对应的句向量进行拼接,得到第一拼接向量。在拼接时,可以将词向量序列和多个句向量依次首尾拼接,从而得到长的向量表示,其中,词向量序列和句向量之间用第一分隔符分割,而不同的句向量之间用第二分隔符分割。
在得到第一拼接向量后,可以将第一拼接向量输入到第一意图识别模型,进而得到第一意图识别模型输出的与待识别文本匹配的用户意图。
第二种模型:第二意图识别模型,具体地,第二意图识别模型是通过如下方式获得的:
以多个携带双重标签的拼接向量样本为训练数据,对第三预设模型训练得到的。
其中,所述拼接向量样本为样本文本的对应的词向量序列和多个样本候选意图各自对应的句向量拼接而成的;所述双重标签中的一种分类标签用于表征与所述拼接向量样本匹配的意图,另一种匹配标签用于表征所述多个样本候选意图各自对应的句向量与所述样本文本对应的词向量序列是否匹配。
本实施例中,样本文本可以是指收集的历史过程中多个用户输入的文本,样本候选意图可以是作为样本的候选意图的描述语句。其中,本实施例中的标签是双重标签,可以理解为是具有两种标签,分别为:分类标签和匹配标签。其中,分类标签可以表征与拼接向量样本匹配的候选意图,具体而言,可以是表征与拼接向量样本中的词向量序列所匹配的句向量,继而可以表征与样本文本所匹配的样本候选意图。而匹配标签可以表征样本文本的词向量序列和每个样本候选意图对应的句向量是否匹配。
具体实施时,分类标签可以是与样本文本所匹配的样本候选意图的标识,例如,有N个样本候选意图,标识从1-N,则分类标签可以为5,表征标识为5的样本候选意图是与样本文本匹配的样本候选意图。
而匹配标签可以是0或1的数字,例如,1代表样本文本的词向量序列与候选意图对应的句向量匹配,0则代表样本文本的词向量序列与候选意图对应的句向量不匹配。可以理解的是,匹配标签的数量与样本候选意图的数量相同,即每个样本候选意图都对应一个匹配标签。
其中,第三预设模型可以是BERT模型,其中,在训练第三预设模型时,可以以拼接向量样本为输入。具体地,参照图2所示,示出了利用拼接向量样本对第三预设模型进行训练的示意图,如图2所示,有L个样本候选意图,其中,CLS为分类标签,CLS-1至CLS-L为匹配标签;其中,输入的是拼接向量样本,该拼接向量样本中包括拼接在一起的样本文本的词向量序列和候选意图对应的句向量。其中,f(y1)至f(yL)为L个候选意图分别对应的句向量。
参照图3,图3示出了训练得到第二意图识别模型的步骤流程图,具体地,可以包括以下步骤:
步骤S301:将所述多个携带双重标签的拼接向量样本输入到所述第三预设模型。
本实施例中,可以将多个携带双重标签的拼接向量样本输入到第三预设模型,具体地,可以一次输入多个拼接向量样本,或者一次输入一个拼接向量样本,以分批次地对第三预设模型进行训练。
步骤S302:获得所述第三预设模型输出的分类预测结果和匹配预测结果。
本实施例中,在输入拼接向量样本后,第三预设模型所输出的是分类预测结果和匹配预测结果。
其中,所述分类预测结果用于表征与拼接向量样本匹配的意图,进一步的也即是表征与拼接向量样本中的词向量序列所匹配的句向量,继而可以表征与样本文本所匹配的样本候选意图。匹配预测结果用于表征多个样本候选意图各自对应的句向量与所述样本文本对应的词向量序列是否匹配。
步骤S303:根据所述分类预测结果和所述分类标签,确定分类损失,以及根据所述匹配预测结果和所述匹配标签,确定匹配损失。
本实施例中,可以根据分类预测结果和分类标签,确定分类损失,该分类损失可以表征第三预设模型所输出的分类预测结果与真实的分类结果之间的差异,更进一步地,该分类损失可以理解为是第三预设模型所预测的样本文本所属的样本候选意图与其真实所属的样本候选意图之间的差距。
其中,可以根据匹配预测结果和所述匹配标签,确定匹配损失,该匹配损失可以反映:第三预设模型所输出的样本文本与每个样本候选意图之间相匹配的匹配概率与真实的匹配概率之间的差距,例如,有L个样本候选意图,则第三预设模型会预测出L个匹配概率,进而匹配损失可以反映L个匹配概率与对应的真实匹配概率之间的差距。
在一种实施例中,由于匹配预测结果可以包含与多个样本候选意图各自对应的匹配概率,即有多个匹配概率,而匹配标签也可以包括与多个样本候选意图各自对应的匹配标签,即有多个匹配标签,如此,针对每一个样本候选意图而言,均可以根据该样本候选意图对应的匹配概率和匹配标签,确定一个子匹配损失,进而会得到多个子匹配损失。实际中,可以将多个子匹配损失之和确定为最终的匹配损失。
步骤S304:根据所述分类损失和所述匹配损失,对所述第三预设模型进行更新。
本实施例中,在对第三预设模型进行更新时,可以根据分类损失和匹配损失之和,对对第三预设模型进行更新。
在一种实施例中,可以根据分类损失对应的权重和所述匹配损失对应的权重,对所述分类损失和所述匹配损失进行融合,得到整体损失;并根据所述整体损失,对所述第三预设模型进行更新。
其中,分类损失对应的权重和匹配损失对应的权重可以根据实际情况预先设置,在对分类损失和匹配损失进行融合时,可以指按照分类损失对应的权重和匹配损失对应的权重,对分类损失和匹配损失进行加权求和,从而得到整体损失,例如,分类损失对应的权重为w,则匹配损失对应的权重为(1-w),假设分类损失为L_c,匹配损失是各个子匹配损失之和,为L_1+L-2+…+L_M;整体损失为L,则L=w*(L_c)+(1-w)(L_1+L-2+…+L_M)。
步骤S305:将多次更新后得到的第三预设模型确定为所述第二意图识别模型。
本实施例中,在第三预设模型收敛或更新达到预设更新次数后,将更新后的第三预设模型作为第二意图识别模型。
在得到第二意图识别模型后,便可以对待识别文本对应的词向量序列和多个候选意图各自对应的句向量进行拼接,得到第二拼接向量;并将所述第二拼接向量输入到第二意图识别模型,获得由所述第二意图识别模型输出的与所述待识别文本匹配的用户意图。
由于第二意图模型输出的是分类预测结果和匹配预测结果,因此,在将第二拼接向量输入到第二意图模型后,得到的可以是分类预测结果和匹配预测结果,其中,分类预测结果是与待识别文本所匹配的候选意图,而匹配预测结果是各个候选意图与待识别文本之间的匹配概率,其中,匹配概率最高的即为与待识别文本匹配的候选意图。
实际中,可以根据分类预测结果和匹配预测结果,确定与待识别文本匹配的用户意图,具体实施时,在分类预测结果所表征的待识别文本所匹配的候选意图,与匹配预测结果中匹配概率最高对应的候选意图是同一候选意图时,便可以将该候选意图作为与待识别文本匹配的用户意图。若二者对应的不是同一候选意图时,则可以将分类预测结果中所匹配候选意图作为与待识别文本匹配的用户意图,或者,将匹配预测结果中匹配概率最高的候选意图作为与待识别文本匹配的用户意图。
当然,在训练第三预设模型时,可以尽量使得匹配预测结果和分类预测结果相互靠近,即尽量得到同一个匹配结果。如此,可以提高第二意图识别模型进行意图识别时的准确率。
下面,在本申请的一个实施例中,提供了获得候选意图各自对应的句向量的两种方式:
方式一:将所述多个候选意图各自的描述语句输入预先训练的向量转换模型,得到所述多个候选意图各自对应的句向量;
其中,所述向量转换模型是以多个样本意图各自对应的描述语句为训练数据,对第一预设模型进行训练得到的。
在一种实施例中,向量转换模型可以是双向LSTM模型,可以候选意图的描述语句送入双向LSTM模型,使用前向和后向的网络的最后一个隐状态拼接成为句向量。其中,训练得到向量转换模型的过程可以参照相关技术即可,在此不再赘述。
方式二:针对每个候选意图的描述语句,获得该候选意图的描述语句中各个词语各自对应的词向量;并将所得到的多个词向量压缩为一个向量,得到该候选意图对应的句向量。
在一种实施例中,由于句向量是一个完整的句子的表示,而一个完整的句子可以包括多个词语,因此,针对每个候选意图的描述语句,可以先获得该候选意图的描述语句中各个词语各自对应的词向量,然后再将多个词向量编码压缩为一个向量,从而得到一个句向量。
其中,得到描述语句中各个词语各自对应的词向量的方式可以参照相关技术即可,在此不再赘述。
采用本申请实施例的技术方案,主要具有以下优点:
一、可以适应较多数量的候选意图下的意图识别场景。
由于将待识别文本处理为词向量序列,将多个候选意图的描述语句处理为一个句向量,由此缩短了候选意图的向量长度,进而可以缩短待识别的文本的向量与多个候选意图的向量拼接后的长度,从而可以允许拼接更多数量的候选意图,提高了意图识别的效率。
二、可以提高意图识别的实时性。
由于缩短了候选意图的向量长度,如此,每个候选意图在拼接后的向量中的长度占比被降低,相比于现有技术中针对同样多数量的候选意图的识别,本申请由于候选意图的向量长度较短,数据量相对较小,从而可以提高意图识别的效率,如此,可以满足在一些对话场景中的实时性要求,例如,用户输出语音与得到系统的回应之间的间隔时长会缩短,从而优化了用户的体验。
三、可以从输入的数据的层面和模型的层面,提高意图识别的准确率。
一方面,输入的拼接向量中待识别文本的信息会被增强,由此提高了识别准确率。具体的,由于待识别文本被处理为词向量序列(词向量序列的长度大于句向量),由此,待识别文本的向量在拼接后的向量中的长度占比被提高,从而使得待识别文本的信息可以被最大程度的保留和体现,可以充分利用待识别文本的信息进行意图识别,进而从输入数据的层面帮助提高了意图识别的准确率。
另一方面,由于在训练得到第二意图识别模型时,采用了分类损失和匹配损失,进而从两个维度计算了损失,使得损失计算所依据的信息更多,进而可以更加精确地更新第三预设模型的参数,从而提高所得到的第二意图识别模型的效果,进而从模型的层面帮助提高了意图识别的准确率。
基于与上述实施例同一发明构思,本公开实施例的第二方面,提供了一种用户意图识别装置,参照图4所示,示出了用户意图识别装置的结构框架示意图,如图4所示,具体可以包括以下模块:
获得模块401,用于获得待识别文本,以及多个候选意图各自的描述语句;
处理模块402,用于对所述多个候选意图各自的描述语句进行处理,得到所述多个候选意图各自对应的句向量;
拼接模块403,用于对所述待识别文本中各个词语各自对应的词向量进行拼接,得到所述待识别文本对应的词向量序列;
识别模块404,用于基于所述待识别文本对应的词向量序列和所述多个候选意图各自对应的句向量,从所述多个候选意图中确定与所述待识别文本匹配的用户意图。
可选地,所述处理模块402,具体可以用于将所述多个候选意图各自的描述语句输入预先训练的向量转换模型,得到所述多个候选意图各自对应的句向量;其中,所述向量转换模型是以多个样本意图各自对应的描述语句为训练数据,对第一预设模型进行训练得到的。
可选地,所述处理模块402,具体可以包括一下单元:
词向量获得单元,用于获得该候选意图的描述语句中各个词语各自对应的词向量;
压缩单元,用于将所得到的多个词向量压缩为一个向量,得到该候选意图对应的句向量。
可选地,所述识别模块404,具体可以包括以下单元:
第一拼接单元,用于对所述待识别文本对应的词向量序列和所述多个候选意图各自对应的句向量进行拼接,得到第一拼接向量;
第一输入单元,用于将所述第一拼接向量输入到第一意图识别模型,获得由所述第一意图识别模型输出的与所述待识别文本匹配的用户意图;
其中,所述第一意图识别模型是以多个携带标签的拼接向量样本为训练样本,对第二预设模型训练得到的;其中,所述拼接向量样本为样本文本的对应的词向量序列和多个样本候选意图各自对应的句向量拼接而成的,所述标签用于表征与所述拼接向量样本匹配的意图。
可选地,所述识别模块404,具体可以包括以下单元:
第二拼接单元,用于对所述待识别文本对应的词向量序列和所述多个候选意图各自对应的句向量进行拼接,得到第二拼接向量;
第二输入单元,用于将所述第二拼接向量输入到第二意图识别模型,获得由所述第二意图识别模型输出的与所述待识别文本匹配的用户意图;
其中,所述第二意图识别模型是以多个携带双重标签的拼接向量样本为训练数据,对第三预设模型训练得到的;所述拼接向量样本为样本文本的对应的词向量序列和多个样本候选意图各自对应的句向量拼接而成的;
所述双重标签中的一种分类标签用于表征与所述拼接向量样本匹配的意图,另一种匹配标签用于表征所述多个样本候选意图各自对应的句向量与所述样本文本对应的词向量序列是否匹配。
可选地,所述装置还可以包括模型训练模块,所述模型训练模块具体用于获得第二意图识别模型,可以包括以下单元:
输入单元,用于将所述多个携带双重标签的拼接向量样本输入到所述第三预设模型;
结果获得单元,用于获得所述第三预设模型输出的分类预测结果和匹配预测结果,其中,所述分类预测结果用于表征与所述拼接向量样本匹配的意图,所述匹配预测结果用于表征所述多个样本候选意图各自对应的句向量与所述样本文本对应的词向量序列是否匹配;
损失确定单元,用于根据所述分类预测结果和所述分类标签,确定分类损失,以及根据所述匹配预测结果和所述匹配标签,确定匹配损失;
更新单元,用于根据所述分类损失和所述匹配损失,对所述第三预设模型进行更新;
确定单元,用于将多次更新后得到的第三预设模型确定为所述第二意图识别模型。
可选地,所述更新单元,具体可以包括以下子单元:
第一损失确定子单元,用于根据所述分类损失对应的权重和所述匹配损失对应的权重,对所述分类损失和所述匹配损失进行融合,得到整体损失;
更新子单元,用于根据所述整体损失,对所述第三预设模型进行更新。
需要说明的是,装置实施例与方法实施例相近,故描述的较为简单,相关之处参见方法实施例即可。
基于与上述实施例同一发明构思,本公开实施例的第三方面,提供了一种对话系统,参照图5所示,示出了对话系统的结构框架示意图,如图5所示,具体可以包括以下模块:
包括语音识别模块、意图识别模块、对话模块;其中:
所述语音识别模块,用于将接收到待识别语音识别为待识别文本;
所述意图识别模块,用于执行本申请实施例的用户意图识别方法,以输出与所述待识别文本匹配的用户意图;
所述对话模,用于根据所述用户意图,输出自然语音。
本发明实施例还提供了一种电子设备,该电子设备可以包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器被配置为执行所述的用户意图识别方法。
本公开实施例还提供了一种非临时性计算机可读存储介质,当所述存储介质中的指令由处理器执行时,使得所述处理器能够执行一种以实现本公开上述的用户意图识别方法所执行的操作。
本说明书中的各个实施例均采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似的部分互相参见即可。
本领域内的技术人员应明白,本发明实施例的实施例可提供为方法、装置、或计算机程序产品。因此,本发明实施例可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明实施例可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本发明实施例是参照根据本发明实施例的方法、终端设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理终端设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理终端设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理终端设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理终端设备上,使得在计算机或其他可编程终端设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程终端设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
尽管已描述了本发明实施例的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例做出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本发明实施例范围的所有变更和修改。
最后,还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者终端设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者终端设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者终端设备中还存在另外的相同要素。
以上对本发明所提供的一种用户意图识别方法、装置、对话系统、设备以及存储介质,进行了详细介绍,本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。

Claims (11)

1.一种用户意图识别方法,其特征在于,所述方法包括:
获得待识别文本,以及多个候选意图各自的描述语句;
对所述多个候选意图各自的描述语句进行处理,得到所述多个候选意图各自对应的句向量;
对所述待识别文本中各个词语各自对应的词向量进行拼接,得到所述待识别文本对应的词向量序列;
基于所述待识别文本对应的词向量序列和所述多个候选意图各自对应的句向量,从所述多个候选意图中确定与所述待识别文本匹配的用户意图。
2.根据权利要求1所述的方法,其特征在于,对所述多个候选意图各自的描述语句进行处理,得到所述多个候选意图各自对应的句向量,包括:
将所述多个候选意图各自的描述语句输入预先训练的向量转换模型,得到所述多个候选意图各自对应的句向量;
其中,所述向量转换模型是以多个样本意图各自对应的描述语句为训练数据,对第一预设模型进行训练得到的。
3.根据权利要求1所述的方法,其特征在于,对所述多个候选意图各自的描述语句进行处理,得到所述多个候选意图各自对应的句向量,包括:
针对每个候选意图的描述语句,执行以下步骤:
获得该候选意图的描述语句中各个词语各自对应的词向量;
将所得到的多个词向量压缩为一个向量,得到该候选意图对应的句向量。
4.根据权利要求1所述的方法,其特征在于,基于所述待识别文本对应的词向量序列和所述多个候选意图各自对应的句向量,从所述多个候选意图中确定与所述待识别文本匹配的用户意图,包括:
对所述待识别文本对应的词向量序列和所述多个候选意图各自对应的句向量进行拼接,得到第一拼接向量;
将所述第一拼接向量输入到第一意图识别模型,获得由所述第一意图识别模型输出的与所述待识别文本匹配的用户意图;
其中,所述第一意图识别模型是以多个携带标签的拼接向量样本为训练样本,对第二预设模型训练得到的;其中,所述拼接向量样本为样本文本的对应的词向量序列和多个样本候选意图各自对应的句向量拼接而成的,所述标签用于表征与所述拼接向量样本匹配的意图。
5.根据权利要求1所述的方法,其特征在于,基于所述待识别文本对应的词向量序列和所述多个候选意图各自对应的句向量,从所述多个候选意图中确定与所述待识别文本匹配的用户意图,包括:
对所述待识别文本对应的词向量序列和所述多个候选意图各自对应的句向量进行拼接,得到第二拼接向量;
将所述第二拼接向量输入到第二意图识别模型,获得由所述第二意图识别模型输出的与所述待识别文本匹配的用户意图;
其中,所述第二意图识别模型是以多个携带双重标签的拼接向量样本为训练数据,对第三预设模型训练得到的;所述拼接向量样本为样本文本的对应的词向量序列和多个样本候选意图各自对应的句向量拼接而成的;
所述双重标签中的一种分类标签用于表征与所述拼接向量样本匹配的意图,另一种匹配标签用于表征所述多个样本候选意图各自对应的句向量与所述样本文本对应的词向量序列是否匹配。
6.根据权利要求5所述的方法,其特征在于,所述第二意图识别模型是通过以下步骤得到:
将所述多个携带双重标签的拼接向量样本输入到所述第三预设模型;
获得所述第三预设模型输出的分类预测结果和匹配预测结果,其中,所述分类预测结果用于表征与所述拼接向量样本匹配的意图,所述匹配预测结果用于表征所述多个样本候选意图各自对应的句向量与所述样本文本对应的词向量序列是否匹配;
根据所述分类预测结果和所述分类标签,确定分类损失,以及根据所述匹配预测结果和所述匹配标签,确定匹配损失;
根据所述分类损失和所述匹配损失,对所述第三预设模型进行更新;
将多次更新后得到的第三预设模型确定为所述第二意图识别模型。
7.根据权利要求6所述的方法,其特征在于,根据所述分类损失和所述匹配损失,对所述第三预设模型进行更新,包括:
根据所述分类损失对应的权重和所述匹配损失对应的权重,对所述分类损失和所述匹配损失进行融合,得到整体损失;
根据所述整体损失,对所述第三预设模型进行更新。
8.一种用户意图识别装置,其特征在于,所述装置包括:
获得模块,用于获得待识别文本,以及多个候选意图各自的描述语句;
处理模块,用于对所述多个候选意图各自的描述语句进行处理,得到所述多个候选意图各自对应的句向量;
拼接模块,用于对所述待识别文本中各个词语各自对应的词向量进行拼接,得到所述待识别文本对应的词向量序列;
识别模块,用于基于所述待识别文本对应的词向量序列和所述多个候选意图各自对应的句向量,从所述多个候选意图中确定与所述待识别文本匹配的用户意图。
9.一种对话系统,其特征在于,包括语音识别模块、意图识别模块、对话模块;其中:
所述语音识别模块,用于将接收到待识别语音识别为待识别文本;
所述意图识别模块用于执行权1-7任一项所述的用户意图识别方法,以输出与所述待识别文本匹配的用户意图;
所述对话模块用于根据所述用户意图,输出自然语音。
10.一种电子设备,其特征在于,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行时实现如权利要求1-7任一项所述的用户意图识别方法。
11.一种计算机可读存储介质,其特征在于,其存储的计算机程序使得处理器执行如权利要求1-7任一项所述的用户意图识别方法。
CN202110444584.1A 2021-04-23 2021-04-23 用户意图识别方法、装置、对话系统、设备以及存储介质 Pending CN115238066A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110444584.1A CN115238066A (zh) 2021-04-23 2021-04-23 用户意图识别方法、装置、对话系统、设备以及存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110444584.1A CN115238066A (zh) 2021-04-23 2021-04-23 用户意图识别方法、装置、对话系统、设备以及存储介质

Publications (1)

Publication Number Publication Date
CN115238066A true CN115238066A (zh) 2022-10-25

Family

ID=83666506

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110444584.1A Pending CN115238066A (zh) 2021-04-23 2021-04-23 用户意图识别方法、装置、对话系统、设备以及存储介质

Country Status (1)

Country Link
CN (1) CN115238066A (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116956941A (zh) * 2023-09-21 2023-10-27 腾讯科技(深圳)有限公司 一种文本识别方法、装置、设备及介质

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116956941A (zh) * 2023-09-21 2023-10-27 腾讯科技(深圳)有限公司 一种文本识别方法、装置、设备及介质
CN116956941B (zh) * 2023-09-21 2024-01-09 腾讯科技(深圳)有限公司 一种文本识别方法、装置、设备及介质

Similar Documents

Publication Publication Date Title
CN110930980B (zh) 一种中英文混合语音的声学识别方法及系统
CN110910903B (zh) 语音情绪识别方法、装置、设备及计算机可读存储介质
CN111081280B (zh) 与文本无关的语音情感识别方法及装置、用于识别情感的算法模型的生成方法
CN112017645B (zh) 一种语音识别方法及装置
CN111344717B (zh) 交互行为预测方法、智能装置和计算机可读存储介质
CN110634469B (zh) 基于人工智能的语音信号处理方法、装置及存储介质
CN111159358A (zh) 多意图识别训练和使用方法及装置
CN112242144A (zh) 基于流式注意力模型的语音识别解码方法、装置、设备以及计算机可读存储介质
CN112463942A (zh) 文本处理方法、装置、电子设备及计算机可读存储介质
CN110704590A (zh) 扩充训练样本的方法和装置
CN114639386A (zh) 文本纠错及文本纠错词库构建方法
CN107967304A (zh) 会话交互处理方法、装置及电子设备
CN111524043A (zh) 诉讼风险评估问卷自动生成的方法和装置
KR20190074508A (ko) 챗봇을 위한 대화 모델의 데이터 크라우드소싱 방법
CN114283786A (zh) 语音识别方法、装置及计算机可读存储介质
CN115238066A (zh) 用户意图识别方法、装置、对话系统、设备以及存储介质
CN112035648B (zh) 一种用户数据的处理方法、装置及电子设备
CN115617975B (zh) 针对少样本多轮对话的意图识别方法及装置
CN116522905A (zh) 文本纠错方法、装置、设备、可读存储介质及程序产品
CN111402864A (zh) 语音处理方法及电子设备
CN112002325B (zh) 多语种语音交互方法和装置
CN113851105A (zh) 信息提醒方法、装置、设备与存储介质
CN113064988A (zh) 一种基于人工智能的富模式客服对话方法及装置
CN111739518A (zh) 音频的识别方法和装置、存储介质及电子设备
CN113763934A (zh) 音频识别模型的训练方法、装置和存储介质及电子设备

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