首页 > 乐器声学 专利正文
一种语音异常检测的方法及装置与流程

时间:2022-02-24 阅读: 作者:专利查询

一种语音异常检测的方法及装置与流程

1.本说明书涉及计算机技术领域,尤其涉及一种语音异常检测的方法及装置。


背景技术:

2.目前,智能语音应答技术得到了长足的发展,并应用到了诸如智能客服、信息搜索等领域中,不仅有效地提高了这些领域一些业务的执行效率,也给用户的日常生活带来了极大的便利。
3.在实际应用中,可能会有一些不法份子对提供智能语音应答的平台进行攻击,如,持续占用平台的智能语音应答窗口,致使需要执行语音应答业务的其他用户无法顺利地执行业务。而为了应对这种情况所带来的不利影响,在现有技术中,平台通常采用扩容的方式,即,增加提供语音应答业务的设备数量,然而,这种方式不仅会极大的增加平台的运营成本,也无法降低不法份子对平台的攻击行为。
4.所以,如何有效地防止不法份子对平台提供的语音应答业务所采取的攻击行为,则是一个亟待解决的问题。


技术实现要素:

5.本说明书提供一种语音异常检测的方法及装置,以部分的解决现有技术存在的上述问题。
6.本说明书采用下述技术方案:
7.本说明书提供了一种语音异常检测的方法,包括:
8.获取待检测语音信息;
9.确定所述待检测语音信息对应的语音信息特征,所述语音信息特征包括:声纹特征、数据传输特征以及语音回话请求特征中的至少一种,所述数据传输特征用于表征所述待检测语音信息在数据传输量上的特征,所述语音回话请求特征,用于表征所述待检测语音信息对应的语音回话请求的回话窗口特征;
10.将所述语音信息特征输入到预先训练的识别模型中,得到针对所述待检测语音信息的识别结果;
11.根据所述识别结构,对所述待检测语音信息进行语音异常检测;
12.若确定所述待检测语音信息为异常语音信息,并且在启动备用服务设备的条件下,从所述待检测语音信息对应的语音源处重新获取到的语音信息依然为异常语音信息,确定所述语音源存在网络语音攻击行为,并通过预设的异常处理策略,对所述语音源进行处理。
13.可选地,所述声纹特征包括:所述待检测语音信息对应的语速特征、所述待检测语音信息对应的音量特征中的至少一种;
14.所述数据传输特征包括:所述待检测语音信息对应的数据传输包的数据量大小、所述待检测语音信息在传输过程中每秒字节数、所述待检测语音信息对应的数据传输包的
数量中的至少一种;
15.所述语音会话请求特征包括:所述待检测语音信息对应的语音会话请求的会话窗口大小、所述待检测语音信息的会话窗口对应的报头大小中的至少一种。
16.可选地,所述识别模型包括语音重构模型以及语音异常识别模型;
17.将所述语音信息特征输入到预先训练的识别模型中,得到针对所述待检测语音信息的识别结果,具体包括:
18.将所述语音信息特征输入到预先训练的语音重构模型以及语音异常识别模型中,以通过所述语音重构模型,确定所述待检测语音信息对应的重构分值,以及通过所述语音异常识别模型,确定针对所述待检测语音信息的异常分值;
19.根据所述识别结果,对所述待检测语音信息进行语音异常检测,具体包括:
20.根据所述异常分值以及所述重构分值,对所述待检测语音信息进行语音异常检测。
21.可选地,根据所述异常分值以及所述重构分值,对所述待检测语音信息进行语音异常检测,具体包括:
22.确定所述异常分值对应的置信度;
23.根据所述置信度、所述异常分值以及所述重构分值,对所述待检测语音信息进行语音异常检测。
24.可选地,根据所述置信度、所述异常分值以及所述重构分值,对所述待检测语音信息进行语音异常检测,具体包括:
25.根据所述置信度的大小,确定所述置信度对应的惩罚权重,其中,若所述置信度越低,所述惩罚权重越高;
26.根据所述置信度、所述惩罚权重以及所述异常分值,确定补偿后异常分值;
27.根据所述补偿后异常分值以及所述重构分值,对所述待检测语音信息进行语音异常检测。
28.可选地,训练所述语音重构模型,具体包括:
29.获取第一样本语音信息;
30.将所述第一样本语音信息输入到所述语音重构模型中,以对所述第一样本语音信息进行重构,得到重构语音信息;
31.根据所述重构语音信息与所述第一样本语音信息之间的偏差,对所述语音重构模型进行训练。
32.可选地,训练所述语音异常识别模型,具体包括:
33.获取第二样本语音信息;
34.将所述第二样本语音信息输入到所述语音异常识别模型中,得到所述第二样本语音信息对应的异常分值;
35.以最小化所述第二样本语音信息对应的异常分值与所述第二样本语音信息对应的标注信息为优化目标,对所述语音异常识别模型进行训练。
36.本说明书提供了一种语音异常检测的装置,包括:
37.获取模块,用于获取待检测语音信息;
38.确定模块,用于确定所述待检测语音信息对应的语音信息特征,所述语音信息特
征包括:声纹特征、数据传输特征以及语音会话请求特征中的至少一种,所述数据传输特征用于表征所述待检测语音信息在数据传输量上的特征,所述语音会话请求特征用于表征所述待检测语音信息对应的语音会话请求的会话窗口特征;
39.输入模块,用于将所述语音信息特征输入到预先训练的识别模型中,得到针对所述待检测语音信息的识别结果;
40.检测模块,用于根据所述识别结果,对所述待检测语音信息进行语音异常检测;
41.异常处理模块,用于若确定所述待检测语音信息为异常语音信息,并且在启动备用服务设备的条件下,从所述待检测语音信息对应的语音源处重新获取到的语音信息依然为异常语音信息,确定所述语音源存在网络语音攻击行为,并通过预设的异常处理策略,对所述语音源进行处理。
42.本说明书提供了一种计算机可读存储介质,所述存储介质存储有计算机程序,所述计算机程序被处理器执行时实现上述语音异常检测的方法。
43.本说明书提供了一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现上述语音异常检测的方法。
44.本说明书采用的上述至少一个技术方案能够达到以下有益效果:
45.在本说明书提供的语音异常检测的方法中,首先获取待检测语音信息,接着,确定待检测语音信息对应的语音信息特征,该语音信息特征包括:声纹特征、数据传输特征以及语音会话请求特征中的至少一种,其中数据传输特征用于表征待检测语音信息在数据传输量上的特征,语音会话请求特征用于表征待检测语音信息对应的语音会话请求的会话窗口特征,再将待检测语音信息特征输入到预先训练的识别模型中,得到针对该待检测语音信息的识别结果,并根据该识别结果,对待检测语音信息进行语音异常检测。而后,若确定待检测语音信息为异常语音信息,并且在启动备用服务设备的条件下,从该待检测语音信息对应的语音源处重新获取到的语音信息依然为异常语音信息,则确定该语音源存在网络语音攻击行为,并通过预设的异常处理策略,对该语音源进行处理。
46.从上述方法中可以看出,能够通过对智能语音应答业务对应的语音信息进行语音异常检测,识别出不法份子的攻击行为,并针对不法份子的攻击行为,采取预设的异常处理策略,对异常语音信息对应的语音源进行异常处理,以阻止不法分子的攻击行为,维护系统稳定。
附图说明
47.此处所说明的附图用来提供对本说明书的进一步理解,构成本说明书的一部分,本说明书的示意性实施例及其说明用于解释本说明书,并不构成对本说明书的不当限定。在附图中:
48.图1为本说明书中一种语音异常检测的方法的流程示意图;
49.图2为本说明书提供的识别模型训练过程的示意图;
50.图3为本说明书提供的一种语音异常检测的装置的示意图;
51.图4为本说明书提供的一种对应于图1的电子设备的示意图。
具体实施方式
52.为使本说明书的目的、技术方案和优点更加清楚,下面将结合本说明书具体实施例及相应的附图对本说明书技术方案进行清楚、完整地描述。显然,所描述的实施例仅是本说明书一部分实施例,而不是全部的实施例。基于本说明书中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本说明书保护的范围。
53.以下结合附图,详细说明本说明书各实施例提供的技术方案。
54.图1为本说明书中一种语音异常检测的方法的流程示意图,包括以下步骤:
55.步骤s100,获取待检测语音信息。
56.为了解决提供智能语音应答的平台被不法分子攻击,出现智能语音应答窗口被持续占用,进而导致需要执行语音应答业务的其他用户无法顺利地执行业务的问题,本说明书中提供一种语音异常检测的方法,实现对智能语音应答窗口中正在进行的语音会话进行语音异常检测,并在确定语音信息为异常语音信息时,采取一定的异常处理措施,以减小不法份子的攻击行为对智能语音应答的平台的影响,维护系统稳定,提升智能语音应答服务的业务执行效率。
57.本说明书中提供的语音异常检测的方法的执行主体可以是诸如台式电脑等终端设备,也可以是提供智能语音应答服务的平台或服务器。下面为了方便描述,将仅以提供智能语音应答服务的平台为执行主体为例进行说明。
58.具体实施中,平台可以针对每一次的智能语音应答业务,进行语音异常检测,这样,上述待检测语音信息,即可以是每一次智能语音应答业务所涉及的语音信息。实际应用中,绝大多数的智能语音应答业务都是正常的,只有很少的一部分是不法分子发起的攻击行为,因此,本说明书中的语音异常检测方案具体实施时,也可以针对每一次的智能语音应答业务进行监控,当监测到该智能语音应答业务持续的时长达到设定时长,发起对该智能语音应答业务的语音异常检测。
59.步骤s102,确定所述待检测语音信息对应的语音信息特征,所述语音信息特征包括:声纹特征、数据传输特征以及语音会话请求特征中的至少一种,所述数据传输特征用于表征所述待检测语音信息在数据传输量上的特征,所述语音会话请求特征用于表征所述待检测语音信息对应的语音会话请求的会话窗口特征。
60.具体实施中,平台获取到待检测语音信息后,将针对该待检测语音信息,进行语音信息特征提取。实际应用中,一般智能语音应答是平台与客户拥有的终端(如手机、平板电脑、笔记本电脑)之间建立的语音对话,用户通过终端向平台发送语音信息,通常来说,该语音信息是由人发出的。而不法分子对提供智能语音应答的平台进行攻击时,这些攻击行为可能通常是由程序完成的,也就是说,不法份子基于终端所发出的语音信息为机器人的语音信息。因此,这些攻击行为对应的语音信息的语音信息特征与人的语音信息的语音信息特征之间应该存在较大的差别。
61.实际业务场景中,平台针对客户的智能语音应答中,客户需要与平台进行语音对话,沟通业务内容,并根据平台的回复给出相应的语音回复,这样的对话中各轮次语音交互中所涉及的语音信息会存在比较大的长短差异,且语速和声音的大小也会随对话的内容发生变化,同时,客户在对话内容涉及的业务完成后,随即结束对话,释放智能语音应答窗口。
62.然而,攻击行为的目的并不在于对话沟通,因此攻击行为的语音信息对应的语速
和声音的大小不会跟随对话的内容发生转变,并且在各轮次语音交互中,所涉及的语音信息之间的长短差异相对于真实客户发出的语音信息来说会相对较小,同时当攻击行为对应的语音对话长时间占用智能语音应答窗口时,平台将为这段语音会话分配更多的资源,以满足该语音对话的需求。
63.如此,本说明书中至少可以从声纹特征,数据传输特征,语音会话请求特征中这三个方面来识别异常语音信息。
64.其中,声纹特征,用于表征待检测语音信息所具备的声波频谱特性,该声纹特征可以包括:待检测语音信息对应的语速特征(如,语速的大小、语速的变化幅度等)、待检测语音信息对应的音量特征(音量大小、音量最大值等)等。
65.实际应用中,客户的语音信息的语速以及音量,都会随对话内容发生变化,而,机器人的语音信息的语速则会比较平均,音量大小较为稳定。这样,待检测语音信息对应的语速的变化幅度越大,该待检测语音信息越可能是正常语音信息,反之,则该待检测语音信息越可能是异常语音信息。待检测语音信息对应的音量最大值越大,该待检测语音信息越可能是正常语音信息,反之,则该待检测语音信息越可能是异常语音信息。
66.数据传输特征,用于表征待检测语音信息在数据传输量上的特征,该数据传输特征可以包括:待检测语音信息对应的数据传输包的数据量大小(如、平均包大小(average packet size)、正向流中包大小的标准差(fwd packet length std)等),待检测语音信息在传输过程中的每秒字节数(如、每秒流经的字节数(flow byte/s))、待检测语音信息对应的数据传输包的数量(如,每秒流经的包数量(flow packets/s)、反向流中的包数量(total bwd packets))等。
67.实际应用中,客户的语音信息会根随对话内容发生变化,每轮对话中对话内容有长有短,并且,对话内容中涉及的业务内容沟通完成后,随即会结束语音对话,释放智能语音应答窗口,如此,正常语音信息对应的数据传输包的数据量会比较小,数据传输包的数据量的标准差会比较大,数据包的数量也会比较少。而,机器人的语音信息的对应的数据量会比较大,数据传输包的数据量的标准差会比较小,数据包的数量也会比较多。
68.这样,待检测语音信息对应的数据传输包的数据量越大,该待检测语音信息越可能是异常语音信息,反之,该待检测语音信息越可能是正常语音信息。待检测语音信息对应的数据传输包的数据量的标准差越大,该待检测语音信息越可能是正常语音信息。反之,该待检测语音信息越可能是异常语音信息。
69.语音会话请求特征,用于表征待检测语音信息对应的语音会话请求的会话窗口特征,该语音会话请求特征包括:待检测语音信息对应的语音会话请求的会话窗口大小(如,tcp窗口大小),待检测语音信息的会话窗口对应的包头大小(如,流量包包头大小)等。
70.实际业务场景中,客户的语音信息对应的对话内容中涉及的业务内容沟通完成后,随即会结束语音对话,释放智能语音应答窗口,然而,机器人的异常语音信息会长时间的占用智能语音应答窗口,导致平台为了满足该异常语音对话的需求,为该异常语音信息分配更多的会话资源。这样,待检测语音信息对应的tcp窗口越大,该待检测语音信息越可能是异常语音信息,反之,该待检测语音信息越可能是正常语音信息。待检测语音信息对应的流量包包头越大,该待检测语音信息越可能是异常语音信息,反之,该待检测语音信息越可能是正常语音信息。
71.步骤s104,将所述语音信息特征输入到预先训练的识别模型中,得到针对所述待检测语音信息的识别结果。
72.步骤s106,根据所述识别结果,对所述待检测语音信息进行语音异常检测。
73.具体实施中,平台获取到待检测语音信息对应的语音信息特征后,会将该语音信息特征输入到预先训练的识别模型中去,以通过该识别模型,对该待检测语音信息进行识别,判断该待检测语音信息是正常语音信息,还是异常语音信息。其中,上述识别模型可以包括语音重构模型,以及语音异常识别模型。
74.平台通过该识别模型进行异常语音信息识别时,将该语音信息特征输入到预先训练的语音重构模型中,以通过语音重构模型,确定待检测语音信息对应的重构分值。同时,平台还将该语音信息特征输入到预先训练的语音异常识别模型中,以及通过该语音异常识别模型,确定针对该待检测语音信息的异常分值。而后,平台根据得到的异常分值以及重构分值,对待检测语音信息进行语音异常检测。
75.实际应用中,平台确定重构分值时,可以将该语音信息特征输入到预先训练的语音重构模型中,而后,该语音重构模型采用预设的自动编码器对该语音信息特征进行编码,再解码得到重构语音信息,接着,平台根据该重构语音信息,与待检测语音信息进行比对,确定待检测语音信息对应的重构分值。其中,重构语音信息,与该待检测语音信息之间的差异越大,对应的重构分值越大,该待检测语音信息是异常语音信息的可能性越高。
76.其中,重构语音信息,与待检测语音信息之间的差异,可以通过重构语音信息所对应的重构语音信息特征对应的表征向量,与该语音信息特征对应的表征向量之间的距离表示。两者间的距离越小,重构语音信息与待检测语音信息之间的差异越小。实际应用中,该重构语音信息所对应的重构语音信息特征,与待检测语音信息对应的语音信息特征之间的距离,可以直接作为待检测语音信息对应的重构分值。
77.实际应用中,正常语音信息,经过语音重构模型的编码以及解码后,得到的重构语音信息与编解码前的正常语音信息之间的差异比较小,然而,异常语音信息,经过语音重构模型的编码以及解码后,得到的重构语音信息与编解码前的异常语音信息之间的差异会比较大。因此,本说明书中,可以通过语音重构模型,对待检测语音信息进行语音异常检测。
78.平台确定异常分值时,则将待检测该语音信息特征,输入到预先训练的语音异常识别模型中,由该语音异常识别模型,对该待检测语音信息进行分类,以确定针对该待检测语音信息的异常分值。该待检测语音信息是异常语音信息的概率越高,该待检测语音信息的异常分值越高。
79.进一步地,本说明书中针对待检测语音信息的异常分值,还对应设置了该异常分值对应的置信度,以减小语音异常识别模型识别错误对识别结果的影响。其中,异常分值对应的置信度高时,说明该异常分值比较具有参考性,该异常分值比较能反映出待检测语音信息的异常情况。反之,异常分值对应的置信度低时,无论异常分值取值高低,都说明语音异常识别模型的分类结果极有可能是错误的,异常分值不具备参考条件。此时,可以根据置信度的大小,确定置信度对应的惩罚权重,其中,置信度越低,惩罚权重越高。
80.最后,平台根据置信度、惩罚权重以及异常分值,确定补偿后异常分值,并根据补偿后异常分值以及重构分值,对待检测语音信息进行语音异常检测。
81.本说明书中,待检测语音信息对应的总异常得分的表达式可以表示为:
[0082][0083]
其中,为待检测语音信息i的总异常得分;
[0084]
为待检测语音信息i的补偿后异常分值;
[0085]
为待检测语音信息i的异常分值;
[0086]
为待检测语音信息i的异常分值对应的置信度;
[0087]
η为待检测语音信息i的异常分值项对应的权重系数;
[0088]
∈为根据置信度的大小设定的置信度对应的惩罚权重,其中,置信度越小,∈对应的值越大,对应的值也越大,总异常得分越高;
[0089]
为待检测语音信息i对应的重构分值。
[0090]
当待检测语音信息对应的总异常得分越高时,该待检测语音信息越可能是异常语音信息。本说明书中,可以在确定待检测语音信息对应的总异常得分,大于设定异常得分时,确定该待检测语音信息是异常语音信息。
[0091]
步骤s108,若确定所述待检测语音信息为异常语音信息,并且在启动备用服务设备的条件下,从所述待检测语音信息对应的语音源处重新获取到的语音信息依然为异常语音信息,确定所述语音源存在网络语音攻击行为,并通过预设的异常处理策略,对所述语音源进行处理。
[0092]
具体实施中,平台确定待检测语音信息为异常语音信息后,启动备用服务设备,该备用服务设备用于执行语音交互业务。而后,平台在启动该备用服务设备的条件下,从待检测语音信息对应的语音源重新获取语音信息,并针对该语音信息进行异常检测,若确定该语音信息依然是异常语音信息,则通过预设的异常处理策略,对异常语音信息对应的语音源进行处理。这样,平台就可以通过启动备用服务设备,来提升自身的服务能力,以避免由于受到平台自身服务能力的限制,出现将正常语音信息识别为异常语音信息的情况,提高了语音异常检测的准确性,提升智能语音应答服务的业务执行效率。
[0093]
因为,在实际业务场景中,当平台的负载过大时,也可能会出现由于平台无法及时响应客户的语音,导致该客户对应的智能语音应答业务持续占用智能语音应答窗口的情况,此时,平台极有可能将该客户的语音信息误判为异常语音信息。基于此,平台在识别出异常语音信息后,可以通过上述方式,对识别出的异常语音信息进行再次检测,排除掉由于平台自身负载过大被误判为异常语音信息的正常语音信息,得到攻击行为对应的异常语音信息,以便于后续平台针对这些异常语音信息,进行异常处理。
[0094]
本说明书中,平台对异常语音信息对应的语音源进行处理时,可以将异常语音信息对应的语音源的网际互连协议(intemet protocol,ip)地址加入黑名单,来阻止异常语音信息对应的不法分子的攻击行为,以维护系统的稳定。
[0095]
通过上述步骤,平台能够对智能语音应答业务对应的语音信息进行语音异常检测,识别出不法份子的攻击行为,并针对不法份子的攻击行为,采取预设的异常处理策略,对异常语音信息对应的语音源进行异常处理,以达到阻止不法分子的攻击行为,维护系统稳定的目的。
[0096]
针对上述语音异常检测所使用的异常语音检测方案,本说明书中还提供了该语音异常检测的方法实施时所采用的语音重构模型的训练过程以及所采用的语音异常识别模型的训练过程。
[0097]
具体实施中,在对语音重构模型进行模型训练时,平台首先获取第一样本语音信息,而后,将第一样本语音信息输入到语音重构模型中,由该语音重构模型,采用预设的自动编码器对该第一样本语音信息进行编码,再解码得到重构语音信息,接着,根据该重构语音信息与第一样本语音信息之间的偏差,对语音重构模型进行训练。
[0098]
其中,自动编码器所实现的编码函数可以表示为:
[0099]
z
i
=f(x
i
);
[0100]
其中,x
i
表示为第i个待检测语音信息,f()表示编码器。
[0101]
则,重建损失可以表示为:
[0102][0103]
其中,g()表示编码器f()对应的解码器,l()表示第i个待检测语音信息对应的重构语音信息与第i个待检测语音信息之间的距离函数。
[0104]
自动编码器可以包括:多层堆叠的深度自编码器(stacked autoencoder,sae)、变分自编码器(variational autoencoder,vae),降噪自编码器(denoising autoencoder),阶梯网络(ladder network)等。
[0105]
另外,在对语音异常识别模型进行训练时,平台首先获取第二样本语音信息,而后,将第二样本语音信息输入到语音异常识别模型中,得到第二样本语音信息对应的异常分值,最后,以最小化该第二样本语音信息对应的异常分值与该第二样本语音信息对应的标注信息为优化目标,对语音异常识别模型进行训练。
[0106]
其中,语音异常识别模型训练时所用的第一样本语音信息和语音重构模型训练时所使用的第二样本语音信息可以是相同的,也可以是不同的。
[0107]
本说明书中,由于样本语音信息的标签信息获取成本较大,导致平台获取到的样本语音信息中存在大量没有标签信息的样本语音信息。这样,平台因为难以获取到足够的拥有标签信息的样本语音信息,而无法通过有标签的全监督学习对模型进行训练。针对这一情况,本说明书中提供了一套与上述语音异常检测方案相匹配的模型训练方法。
[0108]
具体实施中,平台在进行模型训练前,首先需要对获取到的样本语音数据进行预处理。如,平台获取到样本语音数据后,对原始数据进行清洗,剔除重复数据以及除无效数据(如,数据缺失过多的样本语音数据)。而后,平台即可根据预处理后的样本语音信息进行模型训练。
[0109]
在模型训练时,平台先根据有标签信息的样本语音信息,以最小化损失函数为优化目标,对模型进行首轮训练,得到训练后的识别模型(包括语音重构模型和语音异常识别模型)。而后,平台从没有标签信息的样本语音信息中选取出部分样本语音信息,输入到训练后的识别模型中,得到对应的分类结果,且将得到的分类结果作为这部分样本语音信息
对应的标签信息。
[0110]
接着,平台将样本语音信息中所有的具有标签信息的样本语音信息,重新输入到训练后的识别模型中,以最小化损失函数为优化目标,对识别模型进行第二轮次训练,得到二次训练后的识别模型,并且,再次从没有标签信息的样本语音信息中选取出部分样本语音信息,输入到二次训练后的识别模型中,得到对应的分类结果,且将得到的分类结果作为这部分样本语音信息对应的标签信息。
[0111]
接着,平台再次将样本语音信息中所有的具有标签信息的样本语音信息,重新输入到训练后的识别模型中,以最小化损失函数为优化目标,对识别模型进行第三轮次训练,得到三次训练后的识别模型;并再次从没有标签信息的样本语音信息中选取出部分样本语音信息,输入到二次训练后的识别模型中,得到对应的分类结果,且将得到的分类结果作为这部分样本语音信息对应的标签信息。
[0112]
如此循环往复,直至确定满足预设训练条件后,确定模型训练完成。
[0113]
本说明书中,预设训练条件可以有多种形式,例如,模型训练的轮次到达设定轮次时,可以确定满足预设训练条件;再例如,在每轮训练后使用验证样本对模型进行验证,并在确定验证通过后,确定满足预设训练条件等。其他方式在此就不详细举例说明了。
[0114]
实际业务场景中,异常语音信息的数目远远小于正常语音信息的数目,因此,平台对模型进行训练时,所获得的训练样本集中,异常样本语音信息的数目也远远小于正常样本语音信息的数目。本说明书中,为了避免训练出的模型过多拟和正常语音信息,导致训练出的识别模型出现识别准确性差的情况出现,在模型训练过程中,引进了焦点损失函数,该焦点损失函数可以表示为:
[0115]
pl(p
t
)=

(1

p
t
)
γ
log(p
t
);
[0116]
其中,p
t
表示样本语音信息t为异常语音信息的概率;
[0117]
pl(p
t
)表示样本语音信息t对应的焦点损失函数;
[0118]
γ为焦点损失函数的超参数。
[0119]
如此,在样本语音信息中异常语音信息的数目远远小于正常语音信息时,即正负样本语音信息分布极度不平衡时,可以降低占比大的(即正常语音信息)对模型训练时的影响。
[0120]
进一步地,参见图2,本说明书中,可以对语音重构模型和语音异常识别模型进行联合训练。
[0121]
在模型训练时,平台从样本语音信息x
i
中提取出语音信息特征y
i
,再将语音信息特征y
i
输入到语音重构模型中,由该语音重构模型对该语音信息特征y
i
进行编码,再解码得到重构语音信息x

i
,接着,根据该重构语音信息x

i
与样本语音信息x
i
之间的偏差,确定该样本语音信息x
i
对应的重构损失。
[0122]
同时,平台将该样本语音信息x
i
的语音信息特征y
i
,输入到语音异常识别模型中,得到该样本语音信息x
i
对应分类结果,以及该样本语音信息x
i
对应分类结果对应的置信度(confidence)。接着,平台根据该样本语音信息x
i
对应分类结果与该样本语音信息x
i
对应标签信息之间的偏差,确定该样本语音信息x
i
对应的分类损失,并且,根据该样本语音信息x
i
对应分类结果对应的置信度,以及该分类结果对应的置信度,以及该样本语音信息x
i
对应分类结果对应的置信度的标签信息,确定该样本语音信息x
i
对应的置信度损失。并,进一步
地根据该样本语音信息x
i
对应的分类损失和该样本语音信息x
i
对应的置信度损失,确定该样本语音信息x
i
对应的补偿后分类损失。
[0123]
接着,平台根据该样本语音信息x
i
对应的重构损失和该样本语音信息x
i
对应的补偿后分类损失,构建模型训练的损失函数,构建出的损失函数可以通过下面的公式表示:
[0124]
l=μl
rec
+l
cls

[0125]
其中,l
rec
表示样本语音信息对应的重构损失,l
cls
表示样本语音信息对应的补偿后分类损失,μ是调节重建损失和分类损失权重的超参数,μ越大,重构损失对模型的影响越大。
[0126]
最后,平台以最小化该损失函数l,对语音重构模型和语音异常识别模型进行联合训练,得到训练后的语音重构模型和训练后的语音异常识别模型。
[0127]
其中,若该样本语音信息x
i
是平台获取的训练样本中具备标签信息的样本语音信息,则该样本语音信息对应的分类结果的置信度可以置为1。若该样本语音信息x
i
是平台获取的训练样本中没有标签信息的样本语音信息,则在通过训练后的识别模型确定出该样本语音信息x
i
的分类结果,并将该分类结果作为该样本语音信息x
i
的标签信息后,通过人工核查的方式为该分类结果赋予一个置信度。
[0128]
需要说明的是,本说明书中提供的语音异常检测的方案可以应用到多种业务智能语音应答业务中,如,语音催收,智能客服,信息搜索等,本说明书不对具体的使用场景进行限定。
[0129]
以上为本说明书的一个或多个实施例提供的语音异常检测的方法,基于同样的思路,本说明书还提供了相应的语音异常检测的装置,如图3所示。
[0130]
图3为本说明书提供的一种语音异常检测的装置示意图,包括:
[0131]
获取模块300,用于获取待检测语音信息;
[0132]
确定模块301,用于确定所述待检测语音信息对应的语音信息特征,所述语音信息特征包括:声纹特征、数据传输特征以及语音会话请求特征中的至少一种,所述数据传输特征用于表征所述待检测语音信息在数据传输量上的特征,所述语音会话请求特征用于表征所述待检测语音信息对应的语音会话请求的会话窗口特征;
[0133]
输入模块302,用于将所述语音信息特征输入到预先训练的识别模型中,得到针对所述待检测语音信息的识别结果;
[0134]
检测模块303,用于根据所述识别结果,对所述待检测语音信息进行语音异常检测;
[0135]
异常处理模块304,用于若确定所述待检测语音信息为异常语音信息,并且在启动备用服务设备的条件下,从所述待检测语音信息对应的语音源处重新获取到的语音信息依然为异常语音信息,确定所述语音源存在网络语音攻击行为,并通过预设的异常处理策略,对所述语音源进行处理。
[0136]
可选地,所述声纹特征包括:所述待检测语音信息对应的语速特征、所述待检测语音信息对应的音量特征中的至少一种;
[0137]
所述数据传输特征包括:所述待检测语音信息对应的数据传输包的数据量大小、所述待检测语音信息在传输过程中的每秒字节数、所述待检测语音信息对应的数据传输包的数量中的至少一种;
[0138]
所述语音会话请求特征包括:所述待检测语音信息对应的语音会话请求的会话窗口大小、所述待检测语音信息的会话窗口对应的报头大小中的至少一种。
[0139]
可选地,所述识别模型包括语音重构模型以及语音异常识别模型;所述输入模块302,具体用于将所述语音信息特征输入到预先训练的语音重构模型以及语音异常识别模型中,以通过所述语音重构模型,确定所述待检测语音信息对应的重构分值,以及通过所述语音异常识别模型,确定针对所述待检测语音信息的异常分值;根据所述识别结果,对所述待检测语音信息进行语音异常检测,具体包括:根据所述异常分值以及所述重构分值,对所述待检测语音信息进行语音异常检测。
[0140]
可选地,所述输入模块302,具体用于确定所述异常分值对应的置信度;根据所述置信度、所述异常分值以及所述重构分值,对所述待检测语音信息进行语音异常检测。
[0141]
可选地,所述输入模块302,具体用于根据所述置信度的大小,确定所述置信度对应的惩罚权重,其中,若所述置信度越低,所述惩罚权重越高;根据所述置信度、所述惩罚权重以及所述异常分值,确定补偿后异常分值;根据所述补偿后异常分值以及所述重构分值,对所述待检测语音信息进行语音异常检测。
[0142]
可选地,所述装置还包括:
[0143]
语音重构模型训练模块305,用于获取第一样本语音信息;将所述第一样本语音信息输入到所述语音重构模型中,以对所述第一样本语音信息进行重构,得到重构语音信息;根据所述重构语音信息与所述第一样本语音信息之间的偏差,对所述语音重构模型进行训练。
[0144]
可选地,所述装置还包括:
[0145]
语音异常识别模型训练模块306,用于获取第二样本语音信息;将所述第二样本语音信息输入到所述语音异常识别模型中,得到所述第二样本语音信息对应的异常分值;以最小化所述第二样本语音信息对应的异常分值与所述第二样本语音信息对应的标注信息为优化目标,对所述语音异常识别模型进行训练。
[0146]
本说明书还提供了一种计算机可读存储介质,该存储介质存储有计算机程序,计算机程序可用于执行上述图1提供的一种语音异常检测的方法。
[0147]
本说明书还提供了图4所示的一种对应于图1的电子设备的示意结构图。如图4所述,在硬件层面,该电子设备包括处理器、内部总线、网络接口、内存以及非易失性存储器,当然还可能包括其他业务所需要的硬件。处理器从非易失性存储器中读取对应的计算机程序到内存中然后运行,以实现上述图1所述的语音异常检测的方法。当然,除了软件实现方式之外,本说明书并不排除其他实现方式,比如逻辑器件抑或软硬件结合的方式等等,也就是说以下处理流程的执行主体并不限定于各个逻辑单元,也可以是硬件或逻辑器件。
[0148]
在20世纪90年代,对于一个技术的改进可以很明显地区分是硬件上的改进(例如,对二极管、晶体管、开关等电路结构的改进)还是软件上的改进(对于方法流程的改进)。然而,随着技术的发展,当今的很多方法流程的改进已经可以视为硬件电路结构的直接改进。设计人员几乎都通过将改进的方法流程编程到硬件电路中来得到相应的硬件电路结构。因此,不能说一个方法流程的改进就不能用硬件实体模块来实现。例如,可编程逻辑器件(programmable logic device,pld)(例如现场可编程门阵列(field programmable gate array,fpga))就是这样一种集成电路,其逻辑功能由用户对器件编程来确定。由设计人员
自行编程来把一个数字系统“集成”在一片pld上,而不需要请芯片制造厂商来设计和制作专用的集成电路芯片。而且,如今,取代手工地制作集成电路芯片,这种编程也多半改用“逻辑编译器(logic compiler)”软件来实现,它与程序开发撰写时所用的软件编译器相类似,而要编译之前的原始代码也得用特定的编程语言来撰写,此称之为硬件描述语言(hardware description language,hdl),而hdl也并非仅有一种,而是有许多种,如abel(advanced boolean expression language)、ahdl(altera hardware description language)、confluence、cupl(cornell university programming language)、hdcal、jhdl(java hardware description language)、lava、lola、myhdl、palasm、rhdl(ruby hardware description language)等,目前最普遍使用的是vhdl(very

high

speed integrated circuit hardware description language)与verilog。本领域技术人员也应该清楚,只需要将方法流程用上述几种硬件描述语言稍作逻辑编程并编程到集成电路中,就可以很容易得到实现该逻辑方法流程的硬件电路。
[0149]
控制器可以按任何适当的方式实现,例如,控制器可以采取例如微处理器或处理器以及存储可由该(微)处理器执行的计算机可读程序代码(例如软件或固件)的计算机可读介质、逻辑门、开关、专用集成电路(application specific integrated circuit,asic)、可编程逻辑控制器和嵌入微控制器的形式,控制器的例子包括但不限于以下微控制器:arc 625d、atmel at91sam、microchip pic18f26k20以及silicone labs c8051f320,存储器控制器还可以被实现为存储器的控制逻辑的一部分。本领域技术人员也知道,除了以纯计算机可读程序代码方式实现控制器以外,完全可以通过将方法步骤进行逻辑编程来使得控制器以逻辑门、开关、专用集成电路、可编程逻辑控制器和嵌入微控制器等的形式来实现相同功能。因此这种控制器可以被认为是一种硬件部件,而对其内包括的用于实现各种功能的装置也可以视为硬件部件内的结构。或者甚至,可以将用于实现各种功能的装置视为既可以是实现方法的软件模块又可以是硬件部件内的结构。
[0150]
上述实施例阐明的系统、装置、模块或单元,具体可以由计算机芯片或实体实现,或者由具有某种功能的产品来实现。一种典型的实现设备为计算机。具体的,计算机例如可以为个人计算机、膝上型计算机、蜂窝电话、相机电话、智能电话、个人数字助理、媒体播放器、导航设备、电子邮件设备、游戏控制台、平板计算机、可穿戴设备或者这些设备中的任何设备的组合。
[0151]
为了描述的方便,描述以上装置时以功能分为各种单元分别描述。当然,在实施本说明书时可以把各单元的功能在同一个或多个软件和/或硬件中实现。
[0152]
本领域内的技术人员应明白,本说明书的实施例可提供为方法、系统、或计算机程序产品。因此,本说明书可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本说明书可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、cd

rom、光学存储器等)上实施的计算机程序产品的形式。
[0153]
本说明书是参照根据本说明书实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器
以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
[0154]
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
[0155]
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
[0156]
在一个典型的配置中,计算设备包括一个或多个处理器(cpu)、输入/输出接口、网络接口和内存。
[0157]
内存可能包括计算机可读介质中的非永久性存储器,随机存取存储器(ram)和/或非易失性内存等形式,如只读存储器(rom)或闪存(flash ram)。内存是计算机可读介质的示例。
[0158]
计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(pram)、静态随机存取存储器(sram)、动态随机存取存储器(dram)、其他类型的随机存取存储器(ram)、只读存储器(rom)、电可擦除可编程只读存储器(eeprom)、快闪记忆体或其他内存技术、只读光盘只读存储器(cd

rom)、数字多功能光盘(dvd)或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括暂存电脑可读媒体(transitory media),如调制的数据信号和载波。
[0159]
还需要说明的是,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、商品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、商品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个
……”
限定的要素,并不排除在包括所述要素的过程、方法、商品或者设备中还存在另外的相同要素。
[0160]
本领域技术人员应明白,本说明书的实施例可提供为方法、系统或计算机程序产品。因此,本说明书可采用完全硬件实施例、完全软件实施例或结合软件和硬件方面的实施例的形式。而且,本说明书可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、cd

rom、光学存储器等)上实施的计算机程序产品的形式。
[0161]
本说明书可以在由计算机执行的计算机可执行指令的一般上下文中描述,例如程序模块。一般地,程序模块包括执行特定任务或实现特定抽象数据类型的例程、程序、对象、组件、数据结构等等。也可以在分布式计算环境中实践本说明书,在这些分布式计算环境中,由通过通信网络而被连接的远程处理设备来执行任务。在分布式计算环境中,程序模块可以位于包括存储设备在内的本地和远程计算机存储介质中。
[0162]
本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于系统实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
[0163]
以上所述仅为本说明书的实施例而已,并不用于限制本说明书。对于本领域技术人员来说,本说明书可以有各种更改和变化。凡在本说明书的精神和原理之内所作的任何修改、等同替换、改进等,均应包含在本说明书的权利要求范围之内。