针对多轮对话的分类方法和装置
技术领域
本说明书一个或多个实施例涉及计算机领域,尤其涉及针对多轮对话的分类方法和装置。
背景技术
在机器人回答用户问题时,常常会涉及到针对用户问句的分类。例如,确定用户问句对应的标准问句,以便由机器人提供该标准问句对应的答案。其中,标准问句也称为标准问题,是根据业务整理的一些用户可能问的问题。每个问题有一个问题标识。由于用户问句通常口语化,机器人与用户之间常常要进行多轮对话后,才能确定用户的述求。
现有技术中,针对多轮对话的分类效果不佳,常常无法满足用户述求。
因此,希望能有改进的方案,能够保证针对多轮对话的分类的效果。
发明内容
本说明书一个或多个实施例描述了一种针对多轮对话的分类方法和装置,能够保证针对多轮对话的分类的效果。
第一方面,提供了一种针对多轮对话的分类方法,方法包括:
获取目标用户与机器人之间进行的多轮对话;
将所述多轮对话中各轮对话的用户问句分别输入第一特征提取模型,通过所述第一特征提取模型分别输出所述各轮对话分别对应的第一特征向量;
根据所述各轮对话的顺序,对所述各轮对话之前的对话对应的第一特征向量采用自注意力机制,生成所述各轮对话分别对应的第二特征向量;
将所述目标用户的预设历史行为的行为特征输入第二特征提取模型,通过所述第二特征提取模型输出第三特征向量;
至少根据所述各轮对话分别对应的第二特征向量和所述第三特征向量,确定所述多轮对话的类别。
在一种可能的实施方式中,所述方法还包括:
将用于指示所述目标用户的行为轨迹的序列数据输入第三特征提取模型,通过所述第三特征提取模型输出第四特征向量;
所述至少根据所述各轮对话分别对应的第二特征向量和所述第三特征向量,确定所述多轮对话的类别,包括:
根据所述各轮对话分别对应的第二特征向量、所述第三特征向量和所述第四特征向量,确定所述多轮对话的类别。
在一种可能的实施方式中,所述第一特征提取模型包括双向门控循环单元(gatedrecurrent unit,GRU);
其中,所述双向GRU分别获取用户问句的前向词序列输入和反向词序列输入,得到所述各轮对话的用户问句中最后一个分词对应的前向隐层向量和反向隐层向量,对所述前向隐层向量和所述反向隐层向量进行加权求和,得到所述各轮对话分别对应的第一特征向量。
在一种可能的实施方式中,所述生成所述各轮对话分别对应的第二特征向量,包括:
对于所述各轮对话中的目标对话,根据所述各轮对话的顺序,确定所述目标对话和所述目标对话之前的对话相对于所述目标对话的各注意力得分;
根据所述各注意力得分,对所述目标对话和所述目标对话之前的对话对应的第一特征向量进行加权求和,生成所述目标对话对应的第二特征向量。
在一种可能的实施方式中,所述将所述目标用户的预设历史行为的行为特征输入第二特征提取模型,通过所述第二特征提取模型输出第三特征向量,包括:
针对所述目标用户的预设历史行为的行为特征中属于离散型的第一行为特征,对所述第一行为特征进行one-hot编码,得到第一类编码;
针对所述目标用户的预设历史行为的行为特征中属于连续型的第二行为特征,对所述第二行为特征进行归一化处理,得到第二类编码;
将所述第一类编码和所述第二类编码串接后输入所述第二特征提取模型,通过所述第二特征提取模型输出所述第三特征向量。
在一种可能的实施方式中,所述第二特征提取模型包括:
深度神经网络(deep neural networks,DNN),所述DNN用于对所述目标用户的预设历史行为的行为特征进行特征提取,得到所述第三特征向量。
进一步地,所述将用于指示所述目标用户的行为轨迹的序列数据输入第三特征提取模型,通过所述第三特征提取模型输出第四特征向量,包括:
通过初始化的转换矩阵,确定所述行为轨迹中各行为分别对应的各初始嵌入向量;
将所述各初始嵌入向量,按照所述各行为在所述行为轨迹中的顺序输入所述第三特征提取模型,通过所述第三特征提取模型得到最后一个输入的行为对应的隐状态向量,作为所述第四特征向量。
进一步地,所述第三特征提取模型包括:
循环神经网络(recurrent neural network,RNN)、长短期记忆网络(long short-term memory,LSTM)或门控循环单元GRU。
在一种可能的实施方式中,所述至少根据所述各轮对话分别对应的第二特征向量和所述第三特征向量,确定所述多轮对话的类别,包括:
至少对所述各轮对话分别对应的第二特征向量和所述第三特征向量进行拼接,得到所述各轮对话分别对应的第五特征向量;
将所述各轮对话分别对应的第五特征向量输入多层感知器(multi-layerperception,MLP),通过所述MLP输出长度为所述类别的数量的第六特征向量;
根据所述第六特征向量,确定所述多轮对话的类别。
在一种可能的实施方式中,所述多轮对话的类别包括:
所述多轮对话对应的标准问句;和/或
所述多轮对话对应的人工客服技能组。
第二方面,提供了一种针对多轮对话的分类装置,装置包括:
获取单元,用于获取目标用户与机器人之间进行的多轮对话;
第一特征提取单元,用于将所述获取单元获取的多轮对话中各轮对话的用户问句分别输入第一特征提取模型,通过所述第一特征提取模型分别输出所述各轮对话分别对应的第一特征向量;
第二特征提取单元,用于根据所述获取单元获取的各轮对话的顺序,对所述第一特征提取单元输出的所述各轮对话之前的对话对应的第一特征向量采用自注意力机制,生成所述各轮对话分别对应的第二特征向量;
第三特征提取单元,用于将所述目标用户的预设历史行为的行为特征输入第二特征提取模型,通过所述第二特征提取模型输出第三特征向量;
确定单元,用于至少根据所述各轮对话分别对应的所述第二特征提取单元生成的所述第二特征向量和所述第三特征提取单元生成的所述第三特征向量,确定所述获取单元获取的所述多轮对话的类别。
第三方面,提供了一种计算机可读存储介质,其上存储有计算机程序,当所述计算机程序在计算机中执行时,令计算机执行第一方面的方法。
第四方面,提供了一种计算设备,包括存储器和处理器,所述存储器中存储有可执行代码,所述处理器执行所述可执行代码时,实现第一方面的方法。
通过本说明书实施例提供的方法和装置,首先获取目标用户与机器人之间进行的多轮对话;然后将所述多轮对话中各轮对话的用户问句分别输入第一特征提取模型,通过所述第一特征提取模型分别输出所述各轮对话分别对应的第一特征向量;接着根据所述各轮对话的顺序,对所述各轮对话之前的对话对应的第一特征向量采用自注意力机制,生成所述各轮对话分别对应的第二特征向量;再将所述目标用户的预设历史行为的行为特征输入第二特征提取模型,通过所述第二特征提取模型输出第三特征向量;最后至少根据所述各轮对话分别对应的第二特征向量和所述第三特征向量,确定所述多轮对话的类别。由上可见,本说明书实施例,针对多轮对话中的各轮对话分别进行特征提取,各轮对话之间不会相互干扰,避免了丢失重要信息,能够保证针对多轮对话的分类的效果。
附图说明
为了更清楚地说明本发明实施例的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其它的附图。
图1为本说明书披露的一个实施例的实施场景示意图;
图2示出根据一个实施例的针对多轮对话的处理方法流程图;
图3示出根据一个实施例的针对多轮对话的分类方法流程图;
图4示出根据一个实施例的多轮对话模型结构示意图;
图5示出根据一个实施例的针对多轮对话的分类装置的示意性框图。
具体实施方式
下面结合附图,对本说明书提供的方案进行描述。
图1为本说明书披露的一个实施例的实施场景示意图。该实施场景涉及针对多轮对话的分类,也就是说,确定多轮对话归属的类别,上述类别可以但不限于包括多轮对话对应的标准问句,和/或,多轮对话对应的人工客服技能组。参照图1,第一阶段,进行的是用户跟机器对话,也就是说,由机器人回答用户问题,其中,机器人具体可以为机器人客服。第二阶段,进行的是用户跟小二对话,可以理解的是,小二即人工客服,也就是说,由人工客服回答用户问题。在第一阶段,机器无法回答用户问题时,会进入第二阶段,由人工客服回答用户问题。
可以理解的是,可以预先针对用户跟机器对话的轮数设定阈值,例如,设定阈值为3,第一阶段,当用户跟机器对话的轮数达到3轮,且用户仍然表示机器确定的标准问句不满足其述求时,由第一阶段切换为第二阶段,由人工客服回答用户问题。
本说明书实施例,还可以根据用户指令,由第一阶段切换为第二阶段,例如,第一阶段,当用户跟机器对话的轮数达到2轮,用户发出切换为人工客服的用户指令时,由第一阶段切换为第二阶段,由人工客服回答用户问题。
图2示出根据一个实施例的针对多轮对话的处理方法流程图,该方法涵盖了图1所示的第一阶段和第二阶段的处理过程。在第一阶段,引导用户说出需求,机器跟用户对话,详细分析用户需求,进行问题识别,也就是识别多轮对话对应的标准问句。当问题识别不成功时,进入第二阶段,智能派单,小二跟用户对话并且标注用户问题,其中,智能派单即确定多轮对话对应的人工客服技能组,标注用户问题即标注多轮对话对应的标准问句。
在一个示例中,机器在接收到用户问句后,针对用户问句,确定该用户问句对应的标准问句,并将确定的标准问句展示给用户,由用户确认该标准问句是否满足其述求,如果用户确认该标准问句不满足其述求,则由用户补充部分描述,机器会针对与用户之间的多轮对话,再次确定该多轮对话对应的标准问句。当机器与用户之间的对话轮数达到预设阈值,并且仍然不满足用户述求时,确定多轮对话对应的人工客服技能组,由人工客服跟用户对话并且标注多轮对话对应的标准问句。
上述图1所示的场景中涉及两次分类过程,包括:确定多轮对话对应的标准问句和确定多轮对话对应的人工客服技能组。需要说明的是,该场景仅为示例,并不用于对本说明书实施例的实施场景的限定,本说明书实施例提供的针对多轮对话的分类方法可以但不限于上述两种分类。
图3示出根据一个实施例的针对多轮对话的分类方法流程图,该方法可以基于图1所示的应用场景。如图3所示,该实施例中针对多轮对话的分类方法包括以下步骤:步骤31,获取目标用户与机器人之间进行的多轮对话;步骤32,将所述多轮对话中各轮对话的用户问句分别输入第一特征提取模型,通过所述第一特征提取模型分别输出所述各轮对话分别对应的第一特征向量;步骤33,根据所述各轮对话的顺序,对所述各轮对话之前的对话对应的第一特征向量采用自注意力机制,生成所述各轮对话分别对应的第二特征向量;步骤34,将所述目标用户的预设历史行为的行为特征输入第二特征提取模型,通过所述第二特征提取模型输出第三特征向量;步骤35,至少根据所述各轮对话分别对应的第二特征向量和所述第三特征向量,确定所述多轮对话的类别。下面描述以上各个步骤的具体执行方式。
首先在步骤31,获取目标用户与机器人之间进行的多轮对话。可以理解的是,上述多轮对话可以为两轮或两轮以上的对话。其中,机器人具体可以为机器人客服,也就是说,在目标用户与机器人客服的第一轮对话中,机器人客服猜测的标准问句不满足目标用户的述求。
本说明书实施例,可以仅获取上述多轮对话中目标用户的对话内容,或者,也可以既获取上述多轮对话中目标用户的对话内容,还获取上述多轮对话中机器人客服的对话内容。
然后在步骤32,将所述多轮对话中各轮对话的用户问句分别输入第一特征提取模型,通过所述第一特征提取模型分别输出所述各轮对话分别对应的第一特征向量。可以理解的是,第一特征提取模型分别对各轮对话进行特征提取,能够避免各轮对话之间的干扰。
在一个示例中,所述第一特征提取模型包括双向门控循环单元(gated recurrentunit,GRU);其中,所述双向GRU分别获取用户问句的前向词序列输入和反向词序列输入,得到所述各轮对话的用户问句中最后一个分词对应的前向隐层向量和反向隐层向量,对所述前向隐层向量和所述反向隐层向量进行加权求和,得到所述各轮对话分别对应的第一特征向量。
本说明书实施例,双向GRU也可称为BiGRU。此外,双向GRU可以替换为双向长短期记忆网络(long short-term memory,LSTM)。
接着在步骤33,根据所述各轮对话的顺序,对所述各轮对话之前的对话对应的第一特征向量采用自注意力机制,生成所述各轮对话分别对应的第二特征向量。可以理解的是,第二特征向量为基于上文的特征向量。
在一个示例中,对于所述各轮对话中的目标对话,根据所述各轮对话的顺序,确定所述目标对话和所述目标对话之前的对话相对于所述目标对话的各注意力得分;根据所述各注意力得分,对所述目标对话和所述目标对话之前的对话对应的第一特征向量进行加权求和,生成所述目标对话对应的第二特征向量。
再在步骤34,将所述目标用户的预设历史行为的行为特征输入第二特征提取模型,通过所述第二特征提取模型输出第三特征向量。可以理解的是,用户的述求往往与该用户的历史行为有关,通过对目标用户的预设历史行为的行为特征进行特征提取,有利于明确用户述求。
在一个示例中,针对所述目标用户的预设历史行为的行为特征中属于离散型的第一行为特征,对所述第一行为特征进行one-hot编码,得到第一类编码;针对所述目标用户的预设历史行为的行为特征中属于连续型的第二行为特征,对所述第二行为特征进行归一化处理,得到第二类编码;将所述第一类编码和所述第二类编码串接后输入所述第二特征提取模型,通过所述第二特征提取模型输出所述第三特征向量。
在一个示例中,所述第二特征提取模型包括:
深度神经网络(deep neural networks,DNN),所述DNN用于对所述目标用户的预设历史行为的行为特征进行特征提取,得到所述第三特征向量。
最后在步骤35,至少根据所述各轮对话分别对应的第二特征向量和所述第三特征向量,确定所述多轮对话的类别。可以理解的是,在确定多轮对话的类别时,可以结合多项特征,从而使分类结果更为准确。
在一个示例中,将用于指示所述目标用户的行为轨迹的序列数据输入第三特征提取模型,通过所述第三特征提取模型输出第四特征向量;根据所述各轮对话分别对应的第二特征向量、所述第三特征向量和所述第四特征向量,确定所述多轮对话的类别。
进一步地,通过初始化的转换矩阵,确定所述行为轨迹中各行为分别对应的各初始嵌入向量;将所述各初始嵌入向量,按照所述各行为在所述行为轨迹中的顺序输入所述第三特征提取模型,通过所述第三特征提取模型得到最后一个输入的行为对应的隐状态向量,作为所述第四特征向量。
进一步地,所述第三特征提取模型包括:
循环神经网络(recurrent neural network,RNN)、长短期记忆网络LSTM或门控循环单元GRU。
在一个示例中,至少对所述各轮对话分别对应的第二特征向量和所述第三特征向量进行拼接,得到所述各轮对话分别对应的第五特征向量;将所述各轮对话分别对应的第五特征向量输入多层感知器(multi-layer perception,MLP),通过所述MLP输出长度为所述类别的数量的第六特征向量;根据所述第六特征向量,确定所述多轮对话的类别。
在一个示例中,所述多轮对话的类别包括:所述多轮对话对应的标准问句;和/或所述多轮对话对应的人工客服技能组。
可以理解的是,确定所述多轮对话对应的标准问句属于一种分类任务;确定所述多轮对话对应的人工客服技能组属于另一种分类任务。本说明书实施例,可以针对上述两种分类任务进行联合建模。其中,上述两种分类任务的区别是,确定所述多轮对话对应的标准问句需要识别用户的意图到具体的问题粒度。而确定所述多轮对话对应的人工客服技能组只需要识别用户意图到人工客服技能组粒度。一个人工客服技能组会包含很多问题。问题识别更侧重语义级别的分析。由于这两个任务具有很强的业务关联,针对这两个任务联合建模可以互相促进模型的识别效果。
通过本说明书实施例提供的方法,首先获取目标用户与机器人之间进行的多轮对话;然后将所述多轮对话中各轮对话的用户问句分别输入第一特征提取模型,通过所述第一特征提取模型分别输出所述各轮对话分别对应的第一特征向量;接着根据所述各轮对话的顺序,对所述各轮对话之前的对话对应的第一特征向量采用自注意力机制,生成所述各轮对话分别对应的第二特征向量;再将所述目标用户的预设历史行为的行为特征输入第二特征提取模型,通过所述第二特征提取模型输出第三特征向量;最后至少根据所述各轮对话分别对应的第二特征向量和所述第三特征向量,确定所述多轮对话的类别。由上可见,本说明书实施例,针对多轮对话中的各轮对话分别进行特征提取,各轮对话之间不会相互干扰,避免了丢失重要信息,能够保证针对多轮对话的分类的效果。
图4示出根据一个实施例的多轮对话模型结构示意图。可以理解的是,该多轮对话模型可以包括图3所示实施例中提到的第一特征提取模型、第二特征提取模型和第三特征提取模型。参照图4,该多轮对话模型涉及两部分的建模,一部分的建模为对用户的属性进行建模,另一部分的建模为对多轮对话的内容的建模。
本说明书实施例,对用户的属性进行建模。属性包括:特征因子、行为轨迹和服务轨迹;其中,特征因子用于指示该用户的预设历史行为的行为特征,可以通过前述第二特征提取模型进行特征提取,第二特征提取模型也可以称为前馈网络;行为轨迹和服务轨迹分别为从两种不同角度描述用户的与时间有关的特征的序列数据,可以通过前述第三特征提取模型进行特征提取。
作为示例,特征因子有多项,包括f1、f2、……fnf。可以将多项特征因子分为两类,一类是值为枚举(离散)型的特征因子,对其转换为one-hot编码的形式;另一类是值为连续型的特征因子,对其通过sigmoid函数转换后,以便归一化。然后,将这些one-hot编码和转换后的连续值串接,形成模型的输入向量。最后这个向量经过DNN模型,输出用户在特征因子方面的嵌入(embedding)表达。
行为轨迹可以为多项行为构成的序列,例如,行为轨迹为b1、b2、……bnb构成的序列;服务轨迹可以为多项服务构成的序列,例如,服务轨迹为s1、s2、……sns构成的序列。在行为轨迹和服务轨迹中,因为数据是时序性的,所以可以采用RNN或LSTM或GRU进行建模。可以预先初始化每个行为或服务的嵌入矩阵,然后将用户的行为轨迹或服务轨迹通过嵌入矩阵转换为初始嵌入向量,然后将初始嵌入向量输入到模型中,取模型的最后一个隐状态向量作为用户在行为轨迹或服务轨迹方面的特征向量。
本说明书实施例,对多轮对话的内容的建模具体可以为对文本的建模。可以先根据各轮对话中用户输入的文本生成各轮对话分别对应的句子向量(sentence_encoding),然后再根据各轮对话分别对应的句子向量生成上下文向量(context_encoding),例如,w11、w12、w13、w1n1对应一轮对话的用户的文本,w21、w22、w23、w2n2对应另一轮对话的用户的文本。针对每一轮对话,会将用户的对话编码为句子向量,编码方式为双向LSTM或双向GRU,输出为编码模型的最后一个隐状态向量,或者可以对所有RNN单元进行最大值池化(max_pooling)操作,以便可以抓住关键信息。在生成句子向量之后,会将当前轮用户说话的文本信息和前面所有轮用户说话的文本信息结合,输出上下文向量。具体做法是采用屏蔽自注意力(maskself-attention)机制,其中,模型只关注当前轮对话前面所有轮(包括当前轮)的对话,不会关注当前轮对话后面的对话。先计算当前轮的句子向量和前面所有轮句子向量的各注意力得分,然后用各注意力得分对前面所有轮的句子向量进行加权求和,输出上下文向量。
最后,针对每一轮对话,将针对用户的各属性提取的特征向量与上下文向量串接(或相加),得到综合向量,将综合向量经过单层MLP(也可称为前馈网络),转换为长度为类别数量(例如标准问句的数量)的向量。之后经过softmax函数进行归一化,然后计算交叉熵函数(cross_entropy)作为训练时分类的损失函数,或者计算argmax函数预测用户想要问的问题。可以理解的是,图4中多轮对话模型的输出O1、O2、O3、……Om用于指示多轮对话的类别。
本说明书实施例提供的多轮对话模型,将每一轮对话经过一个双向GRU,针对不同轮对话不同对待,将多轮对话单独建模,避免拼接造成的不同轮对话之间的干扰,从而提高分类的准确性。
该多轮对话模型既可以单独做问题识别和派单,也可以做多任务分类,同时给出问题和派单标签。可以理解的是,派单即确定多轮对话对应的人工客服技能组。通过将问题识别和派单整合在一个模型中统一解决。两个强相关的任务结合起来可以互相促进。
根据另一方面的实施例,还提供一种针对多轮对话的分类装置,该装置用于执行本说明书实施例提供的针对多轮对话的分类方法。图5示出根据一个实施例的针对多轮对话的分类装置的示意性框图。如图5所示,该装置500包括:
获取单元51,用于获取目标用户与机器人之间进行的多轮对话;
第一特征提取单元52,用于将所述获取单元51获取的多轮对话中各轮对话的用户问句分别输入第一特征提取模型,通过所述第一特征提取模型分别输出所述各轮对话分别对应的第一特征向量;
第二特征提取单元53,用于根据所述获取单元51获取的各轮对话的顺序,对所述第一特征提取单元52输出的所述各轮对话之前的对话对应的第一特征向量采用自注意力机制,生成所述各轮对话分别对应的第二特征向量;
第三特征提取单元54,用于将所述目标用户的预设历史行为的行为特征输入第二特征提取模型,通过所述第二特征提取模型输出第三特征向量;
确定单元55,用于至少根据所述各轮对话分别对应的所述第二特征提取单元53生成的所述第二特征向量和所述第三特征提取单元54生成的所述第三特征向量,确定所述获取单元51获取的所述多轮对话的类别。
可选地,作为一个实施例,所述装置还包括:
第四特征提取单元,用于将用于指示所述目标用户的行为轨迹的序列数据输入第三特征提取模型,通过所述第三特征提取模型输出第四特征向量;
所述确定单元55,具体用于根据所述各轮对话分别对应的所述第二特征提取单元53生成的所述第二特征向量、所述第三特征提取单元54生成的所述第三特征向量和所述第四特征提取单元生成的所述第四特征向量,确定所述获取单元获取的所述多轮对话的类别。
可选地,作为一个实施例,所述第一特征提取模型包括双向门控循环单元GRU;
其中,所述双向GRU分别获取用户问句的前向词序列输入和反向词序列输入,得到所述各轮对话的用户问句中最后一个分词对应的前向隐层向量和反向隐层向量,对所述前向隐层向量和所述反向隐层向量进行加权求和,得到所述各轮对话分别对应的第一特征向量。
可选地,作为一个实施例,所述第二特征提取单元53,具体用于:
对于所述各轮对话中的目标对话,根据所述各轮对话的顺序,确定所述目标对话和所述目标对话之前的对话相对于所述目标对话的各注意力得分;
根据所述各注意力得分,对所述目标对话和所述目标对话之前的对话对应的第一特征向量进行加权求和,生成所述目标对话对应的第二特征向量。
可选地,作为一个实施例,所述第三特征提取单元54,具体用于:
针对所述目标用户的预设历史行为的行为特征中属于离散型的第一行为特征,对所述第一行为特征进行one-hot编码,得到第一类编码;
针对所述目标用户的预设历史行为的行为特征中属于连续型的第二行为特征,对所述第二行为特征进行归一化处理,得到第二类编码;
将所述第一类编码和所述第二类编码串接后输入所述第二特征提取模型,通过所述第二特征提取模型输出所述第三特征向量。
可选地,作为一个实施例,所述第二特征提取模型包括:
深度神经网络DNN,所述DNN用于对所述目标用户的预设历史行为的行为特征进行特征提取,得到所述第三特征向量。
进一步地,所述第四特征提取单元,具体用于:
通过初始化的转换矩阵,确定所述行为轨迹中各行为分别对应的各初始嵌入向量;
将所述各初始嵌入向量,按照所述各行为在所述行为轨迹中的顺序输入所述第三特征提取模型,通过所述第三特征提取模型得到最后一个输入的行为对应的隐状态向量,作为所述第四特征向量。
进一步地,所述第三特征提取模型包括:
循环神经网络RNN、长短期记忆网络LSTM或门控循环单元GRU。
可选地,作为一个实施例,所述确定单元55,具体用于:
至少对所述各轮对话分别对应的第二特征向量和所述第三特征向量进行拼接,得到所述各轮对话分别对应的第五特征向量;
将所述各轮对话分别对应的第五特征向量输入多层感知器MLP,通过所述MLP输出长度为所述类别的数量的第六特征向量;
根据所述第六特征向量,确定所述多轮对话的类别。
可选地,作为一个实施例,所述多轮对话的类别包括:
所述多轮对话对应的标准问句;和/或
所述多轮对话对应的人工客服技能组。
通过本说明书实施例提供的装置,首先获取单元51获取目标用户与机器人之间进行的多轮对话;然后第一特征提取单元52将所述多轮对话中各轮对话的用户问句分别输入第一特征提取模型,通过所述第一特征提取模型分别输出所述各轮对话分别对应的第一特征向量;接着第二特征提取单元53根据所述各轮对话的顺序,对所述各轮对话之前的对话对应的第一特征向量采用自注意力机制,生成所述各轮对话分别对应的第二特征向量;第三特征提取单元54再将所述目标用户的预设历史行为的行为特征输入第二特征提取模型,通过所述第二特征提取模型输出第三特征向量;最后确定单元55至少根据所述各轮对话分别对应的第二特征向量和所述第三特征向量,确定所述多轮对话的类别。由上可见,本说明书实施例,针对多轮对话中的各轮对话分别进行特征提取,各轮对话之间不会相互干扰,避免了丢失重要信息,能够保证针对多轮对话的分类的效果。
根据另一方面的实施例,还提供一种计算机可读存储介质,其上存储有计算机程序,当所述计算机程序在计算机中执行时,令计算机执行结合图3所描述的方法。
根据再一方面的实施例,还提供一种计算设备,包括存储器和处理器,所述存储器中存储有可执行代码,所述处理器执行所述可执行代码时,实现结合图3所描述的方法。
本领域技术人员应该可以意识到,在上述一个或多个示例中,本发明所描述的功能可以用硬件、软件、固件或它们的任意组合来实现。当使用软件实现时,可以将这些功能存储在计算机可读介质中或者作为计算机可读介质上的一个或多个指令或代码进行传输。
以上所述的具体实施方式,对本发明的目的、技术方案和有益效果进行了进一步详细说明,所应理解的是,以上所述仅为本发明的具体实施方式而已,并不用于限定本发明的保护范围,凡在本发明的技术方案的基础之上,所做的任何修改、等同替换、改进等,均应包括在本发明的保护范围之内。