发明内容
本发明实施例的目的在于提供一种意图识别方法、电子设备及计算机可读存储介质,以降低错误响应语音数据的概率,提高用户体验。具体技术方案如下:
第一方面,为了达到上述目的,本发明实施例公开了一种意图识别方法,所述方法包括:
接收待识别的第一语音数据;
获取所述第一语音数据的第一语义特征;
利用预先训练的分类网络模型,获取所述第一语义特征属于每一预设意图类别的第一概率;
基于所述第一概率,从各个预设意图类别中确定多个目标意图类别;其中,多个所述目标意图类别对应的第一概率大于第一概率阈值;
利用每一所述目标意图类别对应的目标高斯混合模型,获取所述第一语音数据的第二语义特征属于每一所述目标意图类别的第二概率,并将最大的第二概率作为目标概率;
判断所述目标概率是否大于第二概率阈值;
若是,则确定所述目标概率对应的目标意图类别为所述第一语音数据的实际意图,并执行所述实际意图对应的第一操作;
若否,则执行用于确认所述目标概率对应的目标意图类别是否为所述第一语音数据的实际意图的第二操作。
可选的,在所述获取所述第一语音数据的第一语义特征之前,所述方法还包括:
获取所述第一语音数据的第二语义特征,具体包括:
将所述第一语音数据输入至第二特征提取网络,得到所述第一语音数据的第二语义特征;
其中,所述第二特征提取网络包括:
输入层,用于将所述第一语音数据转化为文本信息;
独热转换层,用于对所述文本信息进行编码,得到对应的数组;
字嵌入转换层,用于对所述数组进行字嵌入转换,得到特征矩阵;
特征编码神经网络,用于对所述特征矩阵进行卷积处理,得到所述第二语义特征。
可选的,所述获取所述第一语音数据的第一语义特征,包括:
将所述第二语义特征输入至第一特征提取网络,得到所述第一语义特征;
其中,所述第一特征提取网络包括:
卷积层,用于对所述第二语义特征进行卷积处理,得到待处理语义特征;
池化层,用于对所述待处理语义特征进行下采样,得到采样语义特征;
融合层,用于对所述采样语义特征进行特征融合,得到所述第一语义特征。
可选的,所述分类网络模型包括:全连接层和softmax层;
所述利用预先训练的分类网络模型,获取所述第一语义特征属于每一预设意图类别的第一概率,包括:
利用所述全连接层,计算所述第一语义特征对应每一所述预设意图类别的置信度;
通过所述softmax层,对各个置信度进行归一化处理,得到每一所述置信度对应的概率,作为所述第一语义特征属于每一所述预设意图类别的第一概率。
可选的,所述执行用于确认所述目标概率对应的目标意图类别是否为所述第一语音数据的实际意图的第二操作,包括:
判断所述目标概率是否大于第三概率阈值;其中,所述第三概率阈值小于所述第二概率阈值;
若是,执行用于确认所述目标概率对应的目标意图类别是否为所述第一语音数据的实际意图的第三操作;
若否,则确定意图识别失败。
可选的,所述执行用于确认所述目标概率对应的目标意图类别是否为所述第一语音数据的实际意图的第三操作,包括:
生成询问信息;其中,所述询问信息用于确认所述目标概率对应的目标意图类别是否为所述第一语音数据的实际意图;
获取用户针对所述询问信息发出的第二语音数据;
根据所述第二语音数据,判断所述目标概率对应的目标意图类别是否为所述第一语音数据的实际意图;
若是,则执行实际意图对应的第一操作;
若否,则确定意图识别失败。
可选的,在所述利用每一所述目标意图类别对应的目标高斯混合模型,获取所述第一语音数据的第二语义特征属于每一所述目标意图类别的第二概率之前,所述方法还包括:
基于多个目标意图类别,从各个预设意图类别对应的所有高斯混合模型中确定目标高斯混合模型,其中,每一预设意图类别对应一个训练的高斯混合模型;目标意图类别对应的高斯混合模型为目标高斯混合模型。
可选的,每一预设意图类别对应的高斯混合模型的训练过程包括:
针对每一预设意图类别,拟合该预设意图类别对应的初始高斯混合模型,其中,每一所述高斯混合模型由多个单高斯模型拟合形成;
将该预设意图类别的多种表达文本对应的第三语义特征作为训练样本,利用最大期望值算法调整所述初始高斯混合模型的参数,得到该预设意图类别对应的高斯混合模型。
可选的,所述分类网络模型采取如下步骤训练获得:
获取每一预设意图类别的样本语音数据对应的第四语义特征;
将所述第四语义特征输入至待训练的分类网络模型,得到该样本语音数据属于每一预设意图类别的概率,作为预测概率;
基于所述预测概率,计算所述分类网络模型的损失值;
基于所述损失值调整所述分类网络模型的模型参数,继续训练,直到所述分类网络模型收敛。
为了达到上述目的,本发明实施例还公开了一种电子设备,所述电子设备包括处理器、通信接口、存储器和通信总线,其中,所述处理器,所述通信接口,所述存储器通过所述通信总线完成相互间的通信;
所述存储器,用于存放计算机程序;
所述处理器,用于执行所述存储器上所存放的程序时,实现如上述第一方面所述的意图识别方法。
本发明实施例还提供了一种计算机可读存储介质,所述计算机可读存储介质内存储有计算机程序,所述计算机程序被处理器执行时实现如上述第一方面所述的意图识别方法。
本发明实施例还提供了一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机执行上述任一所述的意图识别方法。
本发明实施例有益效果:
本发明实施例提供的意图识别方法,可以接收待识别的第一语音数据;获取第一语音数据的第一语义特征;利用预先训练的分类网络模型,获取第一语义特征属于每一预设意图类别的第一概率;基于第一概率,从各个预设意图类别中确定多个目标意图类别;其中,多个目标意图类别对应的第一概率大于第一概率阈值;利用每一目标意图类别对应的目标高斯混合模型,获取第一语音数据的第二语义特征属于每一目标意图类别的第二概率,并将最大的第二概率作为目标概率;判断目标概率是否大于第二概率阈值;若是,则确定目标概率对应的目标意图类别为第一语音数据的实际意图,并执行实际意图对应的第一操作;若否,则执行用于确认目标概率对应的目标意图类别是否为第一语音数据的实际意图的第二操作。
若目标概率大于第一概率阈值,表明第一语音数据属于该目标概率对应的意图类别,则认为意图识别正确,该意图类别为第一语音数据代表的实际意图。此时,可以执行其实际意图对应的第一操作。若目标概率不大于第一概率阈值,表明第一语音数据可能并不属于预设意图类别,此时可以进一步确认目标概率对应的目标意图类别是否为第一语音数据的实际意图,而不是直接执行待响应意图类别对应的操作,也就能够降低错误响应语音数据的概率,提高用户体验。
当然,实施本发明的任一产品或方法并不一定需要同时达到以上所述的所有优点。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员基于本发明所获得的所有其他实施例,都属于本发明保护的范围。
本发明实施例提供了一种意图识别方法,该方法可以应用于不同的场景中的电子设备,该电子设备可以获取用户的语音数据,并根据语音数据执行相应的操作。例如,该电子设备可以为汽车中的语音助手,或者,也可以为家庭中的智能音箱等。
参见图1,图1为本发明实施例提供的一种意图识别方法的流程图,该方法可以包括以下步骤:
S101:接收待识别的第一语音数据。
S102:获取第一语音数据的第一语义特征。
S103:利用预先训练的分类网络模型,获取第一语义特征属于每一预设意图类别的第一概率。
S104:基于第一概率,从各个预设意图类别中确定多个目标意图类别。
其中,多个目标意图类别对应的第一概率大于第一概率阈值。
S105:利用每一目标意图类别对应的目标高斯混合模型,获取第一语音数据的第二语义特征属于每一目标意图类别的第二概率,并将最大的第二概率作为目标概率。
S106:判断目标概率是否大于第二概率阈值。
S107:若是,则确定目标概率对应的目标意图类别为第一语音数据的实际意图,并执行实际意图对应的第一操作。
S108:若否,则执行用于确认目标概率对应的目标意图类别是否为第一语音数据的实际意图的第二操作。
本发明实施例提供的意图识别方法,若目标概率大于第一概率阈值,表明第一语音数据属于该目标概率对应的意图类别,则认为意图识别正确,该意图类别为第一语音数据代表的实际意图。此时,可以执行其实际意图对应的第一操作。若目标概率不大于第一概率阈值,表明第一语音数据可能并不属于预设意图类别,此时可以进一步确认目标概率对应的目标意图类别是否为第一语音数据的实际意图,而不是直接执行待响应意图类别对应的操作,也就能够降低错误响应语音数据的概率,提高用户体验。
另外,先用分类网络模型筛选,确定若干个可能的目标意图类别,之后只需要计算第二语义特征响应各个目标意图类别对应的高斯混合模型的概率,不需要计算响应每一预设意图类别对应的高斯混合模型的概率,进而,能够减少计算量,提高意图识别的效率。
针对步骤S103,预设意图类别可以为当前待响应的意图类别,可以由当前的应用场景确定,具体的,可以包括电子设备需要响应的语音数据所属的意图类别。例如,在驾驶汽车的场景中,预设意图类别可以包括“导航”、“车控”、“音乐”。
针对步骤S107,若目标概率大于第二概率阈值,表明第一语音数据属于预设意图类别,则直接执行第一语音数据的实际意图对应的第一操作。例如,实际意图的类别表明第一语音数据表示“导航至A地”,则可以直接导航至A地;实际意图的类别表明第一语音数据表示“关闭车窗”,则可以直接关闭车窗。
在一个实施例中,第一语义特征与第二语义特征可以相同,也可以不同。
在一个实施例中,参见图2,在图1的基础上,在上述步骤S102之前,该方法还可以包括以下步骤:
获取第一语音数据的第二语义特征,具体的,参见图2,获取第二语义特征的步骤可以包括:
S109:将第一语音数据输入至第二特征提取网络,得到第一语音数据的第二语义特征。
其中,第二特征提取网络包括:
输入层,用于将第一语音数据转化为文本信息。
独热转换层,用于对文本信息进行编码,得到对应的数组。
字嵌入转换层,用于对数组进行字嵌入转换,得到特征矩阵。
特征编码神经网络,用于对特征矩阵进行卷积处理,得到第二语义特征。
在本发明实施例中,输入层可以基于自动语音识别算法(Automatic SpeechRecognition,ASR)将第一语音数据转化为文本信息。
在一个实施例中,独热转换层可以基于One-hot(独热)编码算法,对文本信息进行编码,得到对应的数组。
例如,参见表(1),可以预先设置一个字表,每一个汉字对应一个整数(可以称为该汉字的索引)。
表(1)
字 |
索引 |
字 |
索引 |
导 |
201 |
广 |
7 |
航 |
3321 |
场 |
5551 |
去 |
98 |
南 |
778 |
人 |
666 |
京 |
65 |
民 |
44 |
路 |
101 |
通过该字表,可以得到文本信息中的汉字对应的索引,得到对应的数组。例如,文本信息为“导航去人民广场南京路”,对应的索引为:[201,3321,98,666,44,7,5551,778,65,101]。
字嵌入转换,即,用一个多维的浮点数据表示每个字对应的索引。例如,每个字对应的索引可以用包含128个元素的一维数组表示。相应的,“导航去人民广场南京路”有10个字,每个字的索引对应一个128维的数组,即,得到的特征矩阵为10×128的矩阵。
在一个实施例中,特征编码神经网络可以为CNN(Convolutional NeuralNetworks,卷积神经网络)。例如,可以包括卷积层、池化层、融合层。另外,特征编码神经网络还可以包括全连接层,以降低融合层输出的特征的维度。
示例性的,特征编码神经网络可以是LSTM(Long Short-Term Memory,长短期记忆)网络,或者,也可以为BILSTM(Bi-directional Long Short-Term Memory,双向长短期记忆)网络,或者,还可以为BERT(Bidirectional Enc oder Representation fromTransformers,基于变压器的双向编码表示)网络,但并不限于此。
基于特征编码神经网络对特征矩阵进行卷积处理,得到多维的数组,作为语义特征。输出数组的维度可以是预先设置的,例如,预先设置的维度为32,则基于特征编码神经网络进行处理后,可以得到一个32维的数组。
在一个实施例中,可以将得到的第二语义特征直接作为第一语义特征。
在一个实施例中,上述步骤S102可以包括以下步骤:
S1021:将第二语义特征输入至第一特征提取网络,得到第一语义特征。
其中,第一特征提取网络包括:
卷积层,用于对第二语义特征进行卷积处理,得到待处理语义特征。
池化层,用于对待处理语义特征进行下采样,得到采样语义特征。
融合层,用于对采样语义特征进行特征融合,得到第一语义特征。
也就是说,在本发明实施例中,可以基于网络模型获取第一语义特征,也可以基于网络模型获取第二语义特征,且第一语义特征与第二语义特征不同。
参见图3,图3为本发明实施例提供的一种训练分类网络模型的方法流程图,该方法可以包括以下步骤:
S301:获取每一预设意图类别的样本语音数据对应的第四语义特征。
S302:将第四语义特征输入至待训练的分类网络模型,得到该样本语音数据属于每一预设意图类别的概率,作为预测概率。
S303:基于预测概率,计算分类网络模型的损失值。
S304:基于损失值调整分类网络模型的模型参数,继续训练,直到分类网络模型收敛。
其中,第四语义特征的获取方法可以参考上述第一语义特征的获取方法。具体的,可以通过第二特征提取网络对样本语音数据进行处理,得到第四语义特征。或者,通过第二特征提取网络对样本语音数据进行处理,并将处理结果输入至第一特征提取网络,得到第四语义特征。
在本发明实施例中,在驾驶汽车的场景中,预设意图类别可以包括“导航”、“车控”、“音乐”。一个预设意图类别可以有多种表达方式,相应的,每一预设意图类别的样本语音数据转化成文本对应有多种表达文本,各自对应的样本语音数据的表达文本可以参考表(2)。
参见表(2)
表(2)中,可以将样本语音数据划分为不同的意图类别。一个意图类别有不同的表达文本,例如,“导航去人民广场”的语音数据的意图类别为“导航”,“导航去A路和B路的交叉口”的语音数据的意图类别也为“导航”;“打开空调”的语音数据的意图类别为“车控”,“打开后备箱”的语音数据的意图类别也为“车控”;“放一首A的歌”的语音数据的意图类别为“音乐”,“请帮我放一首情歌”的语音数据的意图类别为“音乐”。
在一个实施例中,参见图4,图4为本发明实施例提供的一种意图识别模型的结构图,分类网络模型可以包括其中的全连接层和Softmax层。
图4中虚线框的部分为可选部分,也就是说,一种方式中,该意图识别模型可以包括输入层、独热转换层、字嵌入层、特征编码神经网络、卷积层、池化层、融合层、全连接层、Softmax层和目标高斯混合模型。另一种方式中,该意图识别模型可以包括输入层、独热转换层、字嵌入层、特征编码神经网络、全连接层、Softmax层和目标高斯混合模型。
图4中,输入层、独热转换层、字嵌入转换层和特征编码神经网络可以对应上述第二特征提取网络;卷积层、池化层和融合层可以对应上述第一特征提取网络。
具体的,输入层可以将第一语音数据转换为文本信息。
独热转换层可以对该文本信息进行编码,得到对应的数组。
字嵌入层生成独热转换层得到的数组对应的特征矩阵。
特征编码神经网络对字嵌入层得到的特征矩阵进行卷积处理,得到编码矩阵,即第二语义特征。
然后,可以利用每一目标高斯混合模型,获取第二语义特征属于每一目标意图类别的第二概率。
卷积层对第二语义特征进行卷积处理,得到待处理语义特征。
池化层对待处理语义特征进行下采样,得到采样语义特征。具体的,池化层可以提取上述卷积层中各卷积核得到的编码矩阵中最大的值。
融合层对采样语义特征进行特征融合,得到第一语义特征。具体的,融合层可以将各个池化层提取的最大的值组合得到一维数组。
相应的,上述步骤S103可以包括以下步骤:
利用全连接层,计算第一语义特征对应每一预设意图类别的置信度;通过softmax层,对各个置信度进行归一化处理,得到每一置信度对应的概率,作为第一语义特征属于每一预设意图类别的第一概率。
一种实现方式中,基于图4所示的网络模型,全连接层可以基于融合层输出的一维数组,将一维数组表示的语义特征映射到样本标记的预设意图类别,得到属于各个预设意图类别的可能性,该可能性用n个浮点数表示,n表示预设意图类别的数目。
Softmax层对全连接层输出的浮点数做归一化处理,归一化后的n个数值在0-1之间,分别表示第一语义特征属于每一预设意图类别的概率。
在对分类网络模型进行训练时,针对每一第四语义特征,可以得到Softmax层输出的对应的样本语音数据属于每一预设意图类别的概率(即预测概率)。进而,可以基于其预测概率与该样本语音数据的标签,得到分类网络模型的损失值,并基于损失值调整分类网络模型的模型参数。例如,可以采用交叉熵损失函数计算损失值,并采用梯度下降法调整模型参数。
其中,样本语音数据的标签表示该样本语音数据属于每一预设意图类别的真实概率。例如,该样本语音数据为“导航”意图类别的语音数据,则该样本语音数据针对“导航”意图类别的标签为1,针对其他待响应意图类别的标签为0。
在一个实施例中,可以将第一语音数据输入至图4所述的网络模型,获取特征编码神经网络的输出,作为第一语义特征,同时,也作为第二语义特征。
或者,也可以获取特征编码神经网络的输出,作为第二语义特征,并获取融合层的输出,作为第一语义特征。
或者,也可以获取融合层的输出,作为第一语义特征,同时,也作为第二语义特征。
在一个实施例中,参见图5,在图1的基础上,在上述步骤S105之前,该方法还可以包括以下步骤:
S1010:基于多个目标意图类别,从各个预设意图类别对应的所有高斯混合模型中确定目标高斯混合模型。
其中,每一预设意图类别对应一个训练的高斯混合模型。每一高斯混合模型由多个单高斯模型拟合形成。
在本发明实施例中,可以预先生成每一预设意图类别对应的高斯混合模型,进而,在确定出目标意图类别后,可以从中选择各个目标意图类别对应的高斯混合模型(即目标高斯混合模型)。
在一个实施例中,参见图6,每一预设意图类别对应的高斯混合模型的训练过程可以包括以下步骤:
S601:针对每一预设意图类别,拟合该预设意图类别对应的初始高斯混合模型。
S602:将该预设意图类别的多种表达文本对应的第三语义特征作为训练样本,利用最大期望值算法调整初始高斯混合模型的参数,得到该预设意图类别对应的高斯混合模型。
在一个实施例中,可以提取该预设意图类别的多种表达文本各自的语义特征(即第三语义特征)。此处提取第三语义特征的方法,与上述提取第二语义特征的方法类似,可以参考上述步骤S109的相关介绍。
相应的,可以基于最大期望值算法,结合该预设意图类别的多种表达文本对应的第三语义特征,生成对应的高斯混合模型。
高斯混合模型的概率密度函数可以用公式(1)表示:
其中,P(x|θ)表示高斯混合模型的概率密度函数;K表示高斯混合模型中的单高斯模型的个数;a
k表示第k个单高斯模型的概率权重,a
k≥0,且K个单高斯模型的概率权重的总和值为1;
表示第k个单高斯模型的概率密度函数。
为参数组合,包括每一单高斯模型的期望、方差和在高斯混合模型中发生的概率。
高斯混合模型由K和
确定,其中,K是超参数,即,K可以由技术人员根据经验预先设定。基于EM算法,可以根据各个第三语义特征,确定出最佳的高斯混合模型的参数组合
例如,针对每一预设意图类别,可以拟合该预设意图类别对应的初始高斯混合模型,也就是说,可以预先初始化各个单高斯模型的概率权重、均值和方差。然后,依次循环执行E步和M步。
在E步中,假设某个第三语义特征是属于某一个单高斯模型,计算每一个第三语义特征属于各个单高斯模型的概率(可以称为后验概率);在M步中,计算E步的假设下最大化当前数据的概率所需要的参数组合
并进行下一轮E步和M步的处理,直至当前第三语义特征的概率达到最大,此时的参数组合就认为是最佳参数组合。
具体的,E步:假设某个第三语义特征是属于某一个单高斯模型,通过固定μk,σk,基于公式(2)计算每一个第三语义特征属于各个单高斯模型的后验概率(可以称为单个高斯模型对该第三语义特征的响应度)。
其中,xj表示第j个第三语义特征,γjk表示第j个第三语义特征属于第k个单高斯模型的后验概率;j=1,2,3,4…,J,J表示第三语义特征的个数。
M步:在当前概率下,使用最大似然估计法求解最大化当前概率时的参数组合
得到新的组合参数。
新的参数组合可以基于公式(3)、(4)和(5)计算:
在一个实施例中,可以基于图4的网络模型生成高斯混合模型。
针对每一预设意图类别,将该预设意图类别的样本语音数据输入至图4的网络模型,进而,可以获取特征编码神经网络输出的语义特征,或者,也可以获取融合层输出的语义特征。
进而,针对每一预设意图类别,拟合对应的初始高斯混合模型,并基于获取的语义特征,利用EM算法调整初始高斯混合模型的参数,确定最佳的参数组合
得到对应的高斯混合模型。
在一个实施例中,参见图7,在图1的基础上,在上述步骤S108可以包括以下步骤:
S1081:若目标概率不大于第二概率阈值,判断目标概率是否大于第三概率阈值。
S1082:若目标概率大于第三概率阈值,执行用于确认目标概率对应的目标意图类别是否为第一语音数据的实际意图的第三操作。
S1083:若目标概率不大于第三概率阈值,则确定意图识别失败。
其中,第三概率阈值小于第二概率阈值。
在本发明实施例中,若目标概率不大于第二概率阈值,表明第一语音数据可能不属于预设意图类别,因此,可以进一步进行判定。
若目标概率不大于第三概率阈值,则表明第一语音数据不属于预设意图类别,此时,可以确定意图识别失败,则不响应第一语音数据。
若目标概率大于第三概率阈值,表明第一语音数据可能不属于预设意图类别,因此,可以基于执行第三操作,以进一步进行判定。
在一个实施例中,参见图8,在图7的基础上,上述步骤S1082可以包括以下步骤:
S10821:若目标概率大于第三概率阈值,生成询问信息。
其中,询问信息用于确认目标概率对应的目标意图类别是否为第一语音数据的实际意图。
S10822:获取用户针对询问信息发出的第二语音数据。
S10823:根据第二语音数据,判断目标概率对应的目标意图类别是否为第一语音数据的实际意图。
S10824:若是,则执行实际意图对应的第一操作。
S10825:若否,则确定意图识别失败。
在本发明实施例中,若目标概率不大于第三概率阈值,表明第一语音数据有可能为预设意图类别,因此,可以向用户再次确认,即,生成询问信息,以使用户确认是否执行第一操作。例如,第一语音数据表示“导航至A地”,而确定出的目标概率不大于第二概率阈值,且大于第三概率阈值,则可以播放“你是不是想导航至A地”语音;若第一语音数据表示“关闭车窗”,而确定出的目标概率不大于第二概率阈值,且大于第三概率阈值,则可以播放“你是不是想关闭车窗”语音。
相应的,用户则可以对询问信息进行答复,则电子设备可以接收到第二语音数据。例如,若用户对询问信息进行答复的语音数据为“是”,则可以判定目标概率对应的目标意图类别为第一语音数据的实际意图,进而,则可以执行第一操作。若用户对询问信息进行答复的语音数据为“不是”,则可以确定意图识别失败,不响应第一语音数据。
基于上述处理,能够在目标概率不大于第二概率阈值,且大于第三概率阈值时,生成询问信息,以进一步确定是否执行第一操作,能够避免错误地响应语音数据,提高用户体验。
参见图9,图9为本发明实施例提供的一种意图识别的流程示意图。
第一语音数据的文本信息经过独热转换层、字嵌入转换和特征编码神经网络处理后,可以得到第二语义特征。
分类处理:将第一语音数据的第一语义特征输入至分类网络模型,得到第一语义特征属于每一预设意图类别的第一概率。
第一语义特征与第二语义特征可以相同,也可以不同。
确定目标意图类别:从各个预设意图类别中选择多个意图类别,作为目标意图类别。目标意图类别对应的第一概率大于第一概率阈值。
M个高斯混合模型,即,M个预设图类别各自对应的高斯混合模型。
从M个高斯混合模型中,确定目标意图类别对应的高斯混合模型。计算第二语义特征,响应每一目标意图类别对应的高斯混合模型得到的概率,作为第二概率,并确定出各个第二概率中最大的目标概率。
判断目标概率是否大于第二概率阈值,如果是,则执行第一语音数据的实际意图对应的第一操作,即,直接响应第一语音数据;如果否,判断目标概率是否大于第三概率阈值。
若目标概率大于第三概率阈值,确定话术。确定话术即生成询问信息,进而,可以根据用户的第二语音数据,确定是否执行第一操作。
若目标概率不大于第三概率阈值,确认意图识别失败,则不响应第一语音数据。
本发明实施例还提供了一种电子设备,如图10所示,包括处理器1001、通信接口1002、存储器1003和通信总线1004,其中,处理器1001,通信接口1002,存储器1003通过通信总线1004完成相互间的通信,
存储器1003,用于存放计算机程序;
处理器1001,用于执行存储器1003上所存放的程序时,实现如下步骤:
接收待识别的第一语音数据;
获取所述第一语音数据的第一语义特征;
利用预先训练的分类网络模型,获取所述第一语义特征属于每一预设意图类别的第一概率;
基于所述第一概率,从各个预设意图类别中确定多个目标意图类别;其中,多个所述目标意图类别对应的第一概率大于第一概率阈值;
利用每一所述目标意图类别对应的目标高斯混合模型,获取所述第一语音数据的第二语义特征属于每一所述目标意图类别的第二概率,并将最大的第二概率作为目标概率;
判断所述目标概率是否大于第二概率阈值;
若是,则确定所述目标概率对应的目标意图类别为所述第一语音数据的实际意图,并执行所述实际意图对应的第一操作;
若否,则执行用于确认所述目标概率对应的目标意图类别是否为所述第一语音数据的实际意图的第二操作。
上述电子设备提到的通信总线可以是外设部件互连标准(Peripheral ComponentInterconnect,PCI)总线或扩展工业标准结构(Extended Industry StandardArchitecture,EISA)总线等。该通信总线可以分为地址总线、数据总线、控制总线等。为便于表示,图中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
通信接口用于上述电子设备与其他设备之间的通信。
存储器可以包括随机存取存储器(Random Access Memory,RAM),也可以包括非易失性存储器(Non-Volatile Memory,NVM),例如至少一个磁盘存储器。可选的,存储器还可以是至少一个位于远离前述处理器的存储装置。
上述的处理器可以是通用处理器,包括中央处理器(Central Processing Unit,CPU)、网络处理器(Network Processor,NP)等;还可以是数字信号处理器(Digital SignalProcessor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现场可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。
在本发明提供的又一实施例中,还提供了一种计算机可读存储介质,该计算机可读存储介质内存储有计算机程序,所述计算机程序被处理器执行时实现上述任一意图识别方法的步骤。
在本发明提供的又一实施例中,还提供了一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机执行上述实施例中任一意图识别方法。
在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。所述计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行所述计算机程序指令时,全部或部分地产生按照本发明实施例所述的流程或功能。所述计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。所述计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输,例如,所述计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如同轴电缆、光纤、数字用户线(DSL))或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。所述计算机可读存储介质可以是计算机能够存取的任何可用介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。所述可用介质可以是磁性介质,(例如,软盘、硬盘、磁带)、光介质(例如,DVD)、或者半导体介质(例如固态硬盘Solid State Disk(SSD))等。
需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
本说明书中的各个实施例均采用相关的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于电子设备、计算机可读存储介质以及计算机程序产品实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
以上所述仅为本发明的较佳实施例,并非用于限定本发明的保护范围。凡在本发明的精神和原则之内所作的任何修改、等同替换、改进等,均包含在本发明的保护范围内。