1.本发明实施例涉及人工智能技术领域,具体涉及一种语音对抗样本的检测方法、语音对抗样本检测模型的训练方法、装置、设备及计算机可读存储介质。
背景技术:2.语音识别系统的目标是将某段语音翻译成文字,即一个语音转文字(speech
‑
to
‑
text)的转译过程。近年来,基于深度学习的端对端语音识别系统在市场上逐渐普及。然而,对抗样本技术的出现使得端对端asr出现了安全问题。目前的对抗机器学习技术可以生成语音的对抗样本,通过对音频加入精心制作的扰动,有意识地使得asr发生“转译错误”,但人耳却无法察觉。然而,本技术的发明人在实施本发明的过程中发现,现有对抗样本技术,可随便按篡改者的思路,几乎无限制地对识别系统的识别结果进行更改。在对一段正常语音添加细微的“对抗扰动噪音”之后,原来的转译结果从“我今天出去玩”变成了“我今天待在家”。这种转译错误可以让某些关键词在转译时变成”特定的文字”,对于别有用心的人,他们可让转译结果随心所欲地变成他们想要的结果。除了可以让关键词在转译中发生错误,还可在转译中,把整句话的意思完全换成另一个意思。更重要的是,这种被篡改的语音样本在听感上难以察觉。如果被带有目的性的篡改者使用,可能造成各种严重后果,譬如,利用对抗样本可以对微信的“语音锁”进行解锁从而获得他人的微信使用权。因此,对语音对抗样本进行检测,成为了一个亟待解决的重要问题。
技术实现要素:3.鉴于上述问题,本发明实施例提供了一种语音对抗样本检测方法、语音对抗样本检测模型的训练方法、装置、设备及计算机可读存储介质,用于解决现有技术中存在的对抗语音数据难以识别的技术问题。
4.根据本发明实施例的一个方面,提供了一种语音对抗样本检测模型的训练方法,所述方法包括:
5.获取语音训练样本,所述语音训练样本包括多个正常语音样本及多个对抗语音样本;所述对抗语音样本为篡改语义的负样本;
6.将所述语音训练样本进行语谱图特征提取,分别得到正样本语谱图及负样本语谱图;
7.将所述正样本语谱图和负样本语谱图分别输入预设神经网络进行训练,得到语音对抗样本检测模型。
8.在一种可选的方式中,所述获取语音训练样本,所述语音训练样本包括正常语音样本及对抗语音样本,包括:获取原始正常语音样本;根据所述原始正常语音样本,通过目标函数生成对抗语音样本;
9.所述目标函数为:min‖δ‖2+l(x
′
+δ,t) s.t.db(δ)≤t
10.其中,δ表示对抗性扰动,x
′
为原始正常语音样本,t为目标句子,l为ctc损失,通过
分贝db(
·
)表示失真度,失真度表示对数尺度上音频的相对响度,t表示对抗性扰动的能量大小的阈值。
11.在一种可选的方式中,所述将所述语音训练样本进行语谱图特征提取,分别得到正样本语谱图及负样本语谱图,包括:将每个所述语音训练样本切分成多个语音小片段;将所述多个语音小片段加载截断窗函数,得到多个加窗语音小片段;分别对所述多个加窗语音小片段进行短时傅里叶变换,得到每个所述语音训练样本对应的多个语谱图。
12.在一种可选的方式中,所述截断窗函数为汉宁窗函数;所述将所述多个语音小片段加载截断窗函数,得到多个加窗语音小片段,包括:所述将所述多个语音小片段加载汉宁窗函数,得到多个加窗语音小片段。
13.在一种可选的方式中,所述将所述正样本语谱图和负样本语谱图分别输入所述预设神经网络进行训练,得到所述语音对抗样本检测模型,包括:将所述正样本语谱图和负样本语谱图分别输入所述预设神经网络进行训练,出预测结果;根据所述正样本语谱图的标签、所述负样本语谱图的标签以及所述预测结果计算能量损失函数;根据所述能量损失函数调整所述预设神经网络的参数,并重新将所述正样本语谱图和负样本语谱图分别输入所述预设神经网络,计算能量损失函数,调整所述预设神经网络的参数,直至所述能量损失函数收敛或达到预设阈值时,得到语音对抗样本检测模型。
14.在一种可选的方式中,所述能量损失函数为:
[0015][0016]
其中,e
θ
(y,x)=
‑
y
·
f
θ
(x);θ为所述预设神经网络的参数,y为所述语音训练样本的标签;x为所述语音训练样本;β为正常数。
[0017]
根据本发明实施例的另一方面,提供了一种语音对抗样本检测方法,包括:
[0018]
获取待检测语音数据;
[0019]
将所述待检测语音数据转换为待检测语谱图;
[0020]
将所述待检测语谱图输入语音对抗样本检测模型;所述语音对抗样本检测模型根据所述的训练方法训练得到;
[0021]
输出所述待检测语音数据的检测结果。
[0022]
根据本发明实施例的另一方面,提供了一种语音对抗样本检测模型的训练装置,包括:
[0023]
第一获取模块,用于获取语音训练样本,所述语音训练样本包括正常语音样本及对抗语音样本;所述对抗语音样本为篡改语义的负样本;
[0024]
提取模块,用于将所述语音训练样本进行语谱图特征提取,分别得到正样本语谱图及负样本语谱图;
[0025]
训练模块,用于将所述正样本语谱图和负样本语谱图分别输入预设神经网络进行训练,得到语音对抗样本检测模型。
[0026]
根据本发明实施例的另一方面,提供了一种语音对抗样本的检测装置,包括:
[0027]
第二获取模块,用于获取待检测语音数据;
[0028]
转换模块,用于将所述待检测语音数据转换为待检测语谱图;
[0029]
检测模块,用于将所述待检测语谱图输入语音对抗样本检测模型;所述语音对抗样本检测模型根据所述语音对抗样本检测模型的训练方法或所述的语音对抗样本检测模型的训练装置训练得到;
[0030]
输出模块,用于输出所述待检测语音数据的检测结果。
[0031]
根据本发明实施例的另一方面,提供了一种计算设备,包括:处理器、存储器、通信接口和通信总线,所述处理器、所述存储器和所述通信接口通过所述通信总线完成相互间的通信;所述存储器用于存放至少一可执行指令,所述可执行指令使所述处理器执行所述的语音对抗样本检测模型的训练方法或所述的语音对抗样本的检测方法的操作。
[0032]
根据本发明实施例的又一方面,提供了一种计算机可读存储介质,所述存储介质中存储有至少一可执行指令,所述可执行指令在计算设备上运行时,使得计算设备执行所述的语音对抗样本检测模型的训练方法或所述的语音对抗样本的检测方法的操作。
[0033]
本发明实施例通过获取语音训练样本,将所述语音训练样本进行语谱图特征提取,分别得到正样本语谱图及负样本语谱图,将所述正样本语谱图和负样本语谱图分别输入所述预设神经网络进行训练,得到所述语音对抗样本检测模型,从而能够形成自动化语音对抗样本检测工具,在保证较高判断准确性的前提下提升虚构语音的鉴定效率,为asr的安全性提供前端保障,预防因故意制造篡改语义的对抗样本产生的不良影响。
[0034]
上述说明仅是本发明实施例技术方案的概述,为了能够更清楚了解本发明实施例的技术手段,而可依照说明书的内容予以实施,并且为了让本发明实施例的上述和其它目的、特征和优点能够更明显易懂,以下特举本发明的具体实施方式。
附图说明
[0035]
附图仅用于示出实施方式,而并不认为是对本发明的限制。而且在整个附图中,用相同的参考符号表示相同的部件。在附图中:
[0036]
图1示出了本发明实施例提供的添加“对抗噪音扰动”导致语音识别错误的示意图;
[0037]
图2示出了本发明实施例提供的语音对抗样本检测模型的训练方法的流程示意图;
[0038]
图3本发明实施例提供的语音对抗样本检测方法的流程示意图;
[0039]
图4示出了本发明实施例提供的语音对抗样本检测模型的训练装置的结构示意图;
[0040]
图5示出了本发明实施例提供的语音对抗样本检测装置的结构示意图;
[0041]
图6示出了本发明实施例提供的计算设备的结构示意图。
具体实施方式
[0042]
下面将参照附图更详细地描述本发明的示例性实施例。虽然附图中显示了本发明的示例性实施例,然而应当理解,可以以各种形式实现本发明而不应被这里阐述的实施例所限制。
[0043]
下面对本发明实施例中出现的技术术语进行相关解释:
[0044]
asr:automatic speech recognition,自动语音识别系统。
[0045]
波形信号:语音的时域波形信号。
[0046]
对抗扰动(adversarial perturbation):对抗扰动是添加到干净语音中的噪声,使其成为一个语音对抗样本。
[0047]
对抗样本:通过对样本加入人类难以察觉的扰动从而欺骗神经网络的样本。
[0048]
短时傅立叶变换(stft):选择一个时频局部化的窗函数,通过窗函数在时间轴上的移动,对信号进行逐段分析得到信号的一组局部“频谱”。
[0049]
语谱图:spectrogram,语音频谱分析视图。
[0050]
多谱图:语音信号的多个stft语谱图。
[0051]
cnn:卷积神经网络。
[0052]
ebm:energy
‑
based model,基于能量函数的模型。
[0053]
首先,对本发明实施例的主要思想进行阐述。如图1所示,左边的频谱为正常语音,其识别结果为“我今天出去玩”;中间的频谱为对抗噪音扰动;右边的频谱图为叠加了左图正常语音频谱及中间对抗噪音扰动的频谱图,即篡改语义的语音对抗样本,其右图的频谱图语音识别结果为“我今天待在家”。从频谱图上可以看出,左图和右图的频谱十分相近,而语义则完全不同。篡改语义的语音对抗样本的生成方法大致分为白盒攻击和黑盒攻击。白盒攻击假定可以访问模型参数,针对性地施加梯度相关的数据修正,来达到修改原始数据的目的;在黑盒攻击中,攻击方无法访问模型内部信息,通常使用试探的方式加入噪音,并不断调整所加入的噪音,以达到修改原始数据的目的。本技术的发明人通过分析发现:相较于正常语音,语义被篡改的语音所获得的stft语谱图,在不同频带上的一致性估计(coherence estimate)以及交叉谱相位(cross
‑
spectrum phase)呈现出以下规律:越高频段的部分,一致性越低,并且其交叉谱相位变化更大。因此,本发明实施例依据正常语音样本与语音对抗样本在stft语谱图的特性差异,使用stft语谱图作为特征输入到卷积神经网络,并使用基于能量的模型进行分类,从而可以准确的识别对抗样本。
[0054]
图2示出了本发明实施例提供的语音对抗样本检测模型的训练方法的流程图,该方法由计算设备执行。该计算设备可以是计算机设备,如个人计算机、台式计算机、平板电脑等;还可以是其它人工智能设备或终端,如机器人、手机等,本发明实施例不做具体限定。如图2所示,该方法包括以下步骤:
[0055]
步骤110:获取语音训练样本,所述语音训练样本包括多个正常语音样本及多个对抗语音样本;所述对抗语音样本为篡改语义的负样本。
[0056]
其中,对抗语音样本为篡改语义的负样本,指的是添加了对抗噪音扰动从而篡改了语义的语音。本发明实施例中,篡改语义的语音对抗样本可通过白盒攻击或黑盒攻击的方式生成。白盒攻击(如taori attack,taori等人于2019提出的一种对抗样本攻击算法)假定可以访问模型参数,针对性地施加梯度相关的数据修正,来达到修改原始数据的目的。在黑盒攻击(例如c&wattack,c&w attack为carlini和wagner提出的对抗样本攻击算法)中,攻击方无法访问模型内部信息,使用试探的方式加入噪音,并不断调整所加入的噪音,以达到修改原始数据的目的。
[0057]
本发明实施例中,通过c&w attack的方法生成语音对抗样本的具体过程可以是:获取原始正常语音样本;根据所述原始正常语音样本,通过目标函数生成对抗语音样本;
[0058]
所述目标函数为:
[0059]
min‖δ‖2+l(x
′
+δ,t)
[0060]
s.t.db(δ)≤t
[0061]
其中,δ表示对抗性扰动,x
′
为原始正常语音样本,表示语音对抗样本,t为目标句子,l为ctc损失,通过分贝db(
·
)表示失真度,失真度表示对数尺度上音频的相对响度,‖
·
‖2表示二范数;s.t.表示约束条件;t表示对抗性扰动的能量大小的阈值,本发明实施例中该阈值可以依据具体场景进行相应设置。本发明实施例中,目标句子指的是与语音对抗样本对应的被篡改语义的句子。
[0062]
其中,可以根据上述设定的目标函数,通过梯度下降法得到语音对抗样本。
[0063]
步骤120:将所述语音训练样本进行语谱图特征提取,分别得到正样本语谱图及负样本语谱图。
[0064]
其中,由于基于b
‑
rnn网络梯度产生的对抗性扰动是以语音时间序列数据分布的,因此,本发明实施例将所述语音训练样本分割成多个短时帧,该短时帧的长度可以是几百毫秒。具体地,将每个所述语音训练样本切分成多个语音小片段;将所述多个语音小片段加载截断窗函数,得到多个加窗语音小片段;分别对所述多个加窗语音小片段进行短时傅里叶变换,得到每个所述语音训练样本对应的多个语谱图,从而将语音训练样本转换为频域。
[0065]
其中,该转换过程为:
[0066][0067]
其中,p
t
(w,m)为每一个语音小片段对应的语谱图,w[m]是长度为l的窗口序列,m=0、1、...、l,n是变换中使用的dft点数。本发明实施例中,截断窗函数为汉宁窗函数。其中,汉宁窗函数的汉宁窗口可以设置为l=512,语音样本信号x
t
划过窗口,从而通过stft将一个变量的x
t
映射为两个变量的函数,即时域中的w和频域中的m。
[0068]
步骤130:将所述正样本语谱图和负样本语谱图分别输入预设神经网络进行训练,得到语音对抗样本检测模型。
[0069]
其中,在得到正样本语谱图及负样本语谱图后,为每一个正样本语谱图及负样本语谱图添加标签,其中正样本语谱图的标签可设置为1,负样本语谱图的标签为
‑
1。将该带标签的正样本语谱图及负样本语谱图分别输入预设神经网络进行迭代训练,从而得到语音对抗样本检测模型。
[0070]
本发明实施例中,预设神经网络为卷积神经网络,该卷积神经网络包括卷积层、下采样层、全连接层及输出层。本发明的一个实施例中,具体可以是:3个卷积层与2个下采样层交替组合,再连接3个全连接层,最后的输出层为一个结点,该输出层的结点值表示模型的输出值。在设定好该卷积神经网络后,将该带标签的正样本语谱图及负样本语谱图分别输入该卷积神经网络进行迭代训练,从而得到语音对抗样本检测模型。
[0071]
本发明实施例中,可通过能量损失函数对该卷积神经网络进行迭代训练,具体为:
[0072]
将带标签的所述正样本语谱图和带标签的负样本语谱图分别输入所述预设神经网络进行训练,出预测结果。对于每一个模型的语音训练样本x,设其标签为y∈(1,
‑
1)。首先将其输入模型,得到模型输出值,记作f
θ
(x)。其中,该语音对抗样本检测模型的输出f
θ
(x)大于0时,判断为正样本语谱图,f
θ
(x)小于0时,判断为负样本语谱图。
[0073]
根据所述正样本语谱图的标签、所述负样本语谱图的标签以及所述预测结果计算能量损失函数。
[0074]
其中,计算能量损失函数的过程为:
[0075]
首先,根据所述正样本语谱图的标签、所述负样本语谱图的标签以及所述预测结果计算能量值:
[0076]
e
θ
(y,x)=
‑
y
·
f
θ
(x);
[0077]
再计算能量损失函数:
[0078][0079]
其中,θ为所述预设神经网络的参数,y为所述语音训练样本的标签;x为所述语音训练样本;β为正常数,本发明实施例中,β=0.5。
[0080]
根据得到的能量损失函数调整所述预设神经网络的参数,并重新将所述正样本语谱图和负样本语谱图分别输入所述预设神经网络,计算能量损失函数,调整所述预设神经网络的参数,进行迭代训练,直至所述能量损失函数收敛或达到预设阈值时,得到最优参数,从而得到最终的语音对抗样本检测模型。本发明实施例中,在根据得到的能量损失函数调整所述预设神经网络的参数时,可通过梯度下降法对参数θ进行调整。
[0081]
本发明实施例中,由于一个语音训练样本被切分为了多个语音小片段,每个语音训练样本对应多个语谱图,在得到最终的语音对抗样本检测模型后,计算每一个语音训练样本为正样本或负样本的概率,从而确定该语音训练样本为正常语音还是语音对抗样本。具体地,可通过softmax函数来计算概率:通过语音对抗样本检测模型输出每个小片段的语谱图为正样本还是负样本的输出结果,并通过softmax函数统计语谱图为正样本和负样本的总数量,如果语音训练样本的n个语音小片段中,更多的小片段被判断为正样本,则认为语音样本为正常语音样本;反之,则认为语音片段为语音对抗样本。
[0082]
本发明实施例通过获取语音训练样本,将所述语音训练样本进行语谱图特征提取,分别得到正样本语谱图及负样本语谱图,将所述正样本语谱图和负样本语谱图分别输入所述预设神经网络进行训练,得到所述语音对抗样本检测模型,从而能够形成自动化语音对抗样本检测工具,在保证较高判断准确性的前提下提升虚构语音的鉴定效率,为asr的安全性提供前端保障,预防因故意制造篡改语义的对抗样本产生的不良影响。
[0083]
图3示出了本发明另一实施例提供的语音对抗样本的检测方法的流程图,该方法由计算设备执行。该计算设备可以是计算机设备,如个人计算机、台式计算机、平板电脑等;还可以是其它人工智能设备或终端,如机器人、手机等,本发明实施例不做具体限定。如图3所示,该方法包括以下步骤:
[0084]
步骤210:获取待检测语音数据。
[0085]
步骤220:将所述待检测语音数据转换为待检测语谱图。
[0086]
本发明实施例中,在得到待检测语音后,需要按照预设的规则将待检测语音数据切分成多个待检测语音小片段;将所述待检测多个语音小片段加载截断窗函数,得到多个待检测加窗语音小片段;分别对所述多个待检测加窗语音小片段进行短时傅里叶变换,得到待检测语音数据对应的多个待检测语谱图。该过程与语音对抗样本检测模型的训练过程
中转换为语谱图的过程大体一致,此处不再赘述。
[0087]
步骤230:将所述待检测语谱图输入语音对抗样本检测模型;所述语音对抗样本检测模型根据所述的训练方法训练得到。
[0088]
本发明实施例中,将多个待检测语谱图输入对抗检测模型中之后,得到各个待检测语谱图的输出结果,通过softmax函数进行计算,得到该待检测语音数据的检测结果。
[0089]
步骤240:输出所述待检测语音数据的检测结果。
[0090]
其中,该检测结果为表征该待检测语音数据是正常语音还是篡改语义的对抗语音,将该检测结果输出给用户,以使得用户可以根据检测结果进行相应的操作。
[0091]
本发明实施例通过获取语音训练样本,将所述语音训练样本进行语谱图特征提取,分别得到正样本语谱图及负样本语谱图,将所述正样本语谱图和负样本语谱图分别输入所述预设神经网络进行训练,得到所述语音对抗样本检测模型,从而能够形成自动化语音对抗样本检测工具,在保证较高判断准确性的前提下提升虚构语音的鉴定效率,为asr的安全性提供前端保障,预防因故意制造篡改语义的对抗样本产生的不良影响。
[0092]
图4示出了本发明实施例提供的语音对抗样本检测模型的训练装置的结构示意图。如图4所示,该装置300包括:第一获取模块310、提取模块320和训练模块330。
[0093]
第一获取模块310,用于获取语音训练样本,所述语音训练样本包括正常语音样本及对抗语音样本;所述对抗语音样本为篡改语义的负样本。
[0094]
提取模块320,用于将所述语音训练样本进行语谱图特征提取,分别得到正样本语谱图及负样本语谱图。
[0095]
训练模块330,用于将所述正样本语谱图和负样本语谱图分别输入所述预设神经网络进行训练,得到所述语音对抗样本检测模型。
[0096]
本发明实施例的语音对抗样本检测模型的训练装置的具体工作过程与上述语音对抗样本检测模型的训练方法实施例的方法步骤大体一致,此处不再赘述。
[0097]
本发明实施例通过获取语音训练样本,将所述语音训练样本进行语谱图特征提取,分别得到正样本语谱图及负样本语谱图,将所述正样本语谱图和负样本语谱图分别输入所述预设神经网络进行训练,得到所述语音对抗样本检测模型,从而能够形成自动化语音对抗样本检测工具,在保证较高判断准确性的前提下提升虚构语音的鉴定效率,为asr的安全性提供前端保障,预防因故意制造篡改语义的对抗样本产生的不良影响。
[0098]
图5示出了本发明实施例提供的语音对抗样本的检测装置的结构示意图。如图5所示,该装置400包括:
[0099]
第二获取模块410,用于获取待检测语音数据。
[0100]
转换模块420,用于将所述待检测语音数据转换为待检测语谱图。
[0101]
检测模块430,用于将所述待检测语谱图输入语音对抗样本检测模型。所述语音对抗样本检测模型根据如上述语音对抗样本检测模型的训练方法或如上述的语音对抗样本检测模型的训练装置训练得到。
[0102]
输出模块440,用于输出所述待检测语音数据的检测结果。
[0103]
本发明实施例的语音对抗样本的检测装置的具体工作过程与上述方法实施例的语音对抗样本的检测方法步骤大体一致,此处不再赘述。
[0104]
本发明实施例通过获取语音训练样本,将所述语音训练样本进行语谱图特征提
取,分别得到正样本语谱图及负样本语谱图,将所述正样本语谱图和负样本语谱图分别输入所述预设神经网络进行训练,得到所述语音对抗样本检测模型,从而能够形成自动化语音对抗样本检测工具,在保证较高判断准确性的前提下提升虚构语音的鉴定效率,为asr的安全性提供前端保障,预防因故意制造篡改语义的对抗样本产生的不良影响。
[0105]
图6示出了本发明实施例提供的计算设备的结构示意图,本发明具体实施例并不对计算设备的具体实现做限定。如图6所示,该计算设备可以包括:处理器(processor)502、通信接口(communications interface)504、存储器(memory)506、以及通信总线508。
[0106]
其中:处理器502、通信接口504、以及存储器506通过通信总线508完成相互间的通信。通信接口504,用于与其它设备比如客户端或其它服务器等的网元通信。处理器502,用于执行程序510,具体可以执行上述用于语音对抗样本检测模型的训练方法或语音对抗样本的检测方法实施例中的相关步骤。
[0107]
具体地,程序510可以包括程序代码,该程序代码包括计算机可执行指令。处理器502可能是中央处理器cpu,或者是特定集成电路asic(application specific integrated circuit),或者是被配置成实施本发明实施例的一个或多个集成电路。计算设备包括的一个或多个处理器,可以是同一类型的处理器,如一个或多个cpu;也可以是不同类型的处理器,如一个或多个cpu以及一个或多个asic。存储器506,用于存放程序510。存储器506可能包含高速ram存储器,也可能还包括非易失性存储器(non
‑
volatile memory),例如至少一个磁盘存储器。
[0108]
程序510具体可以被处理器502调用使计算设备执行以下操作:
[0109]
获取语音训练样本,所述语音训练样本包括多个正常语音样本及多个对抗语音样本;所述对抗语音样本为篡改语义的负样本;
[0110]
将所述语音训练样本进行语谱图特征提取,分别得到正样本语谱图及负样本语谱图;
[0111]
将所述正样本语谱图和负样本语谱图分别输入预设神经网络进行训练,得到语音对抗样本检测模型;或者
[0112]
程序510具体可以被处理器502调用使计算设备执行以下操作:
[0113]
获取待检测语音数据;
[0114]
将所述待检测语音数据转换为待检测语谱图;
[0115]
将所述待检测语谱图输入语音对抗样本检测模型;所述语音对抗样本检测模型根据上述的训练方法训练得到;
[0116]
输出所述待检测语音数据的检测结果。
[0117]
在一种可选的方式中,所述获取语音训练样本,所述语音训练样本包括正常语音样本及对抗语音样本,包括:获取原始正常语音样本;根据所述原始正常语音样本,通过目标函数生成对抗语音样本;
[0118]
所述目标函数为:min‖δ‖2+l(x
′
+δ,t) s.t.db(δ)≤t
[0119]
其中,δ表示对抗性扰动,x
′
为原始正常语音样本,t为目标句子,l为ctc损失,通过分贝db(
·
)表示失真度,失真度表示对数尺度上音频的相对响度,t表示对抗性扰动的能量大小的阈值。
[0120]
在一种可选的方式中,所述将所述语音训练样本进行语谱图特征提取,分别得到
正样本语谱图及负样本语谱图,包括:将每个所述语音训练样本切分成多个语音小片段;将所述多个语音小片段加载截断窗函数,得到多个加窗语音小片段;分别对所述多个加窗语音小片段进行短时傅里叶变换,得到每个所述语音训练样本对应的多个语谱图。
[0121]
在一种可选的方式中,所述截断窗函数为汉宁窗函数;所述将所述多个语音小片段加载截断窗函数,得到多个加窗语音小片段,包括:所述将所述多个语音小片段加载汉宁窗函数,得到多个加窗语音小片段。
[0122]
在一种可选的方式中,所述将所述正样本语谱图和负样本语谱图分别输入所述预设神经网络进行训练,得到所述语音对抗样本检测模型,包括:将所述正样本语谱图和负样本语谱图分别输入所述预设神经网络进行训练,出预测结果;根据所述正样本语谱图的标签、所述负样本语谱图的标签以及所述预测结果计算能量损失函数;根据所述能量损失函数调整所述预设神经网络的参数,并重新将所述正样本语谱图和负样本语谱图分别输入所述预设神经网络,计算能量损失函数,调整所述预设神经网络的参数,直至所述能量损失函数收敛或达到预设阈值时,得到语音对抗样本检测模型。
[0123]
在一种可选的方式中,所述能量损失函数为:
[0124][0125]
其中,e
θ
(y,x)=
‑
y
·
f
θ
(x);θ为所述预设神经网络的参数,y为所述语音训练样本的标签;x为所述语音训练样本;β为正常数。
[0126]
本发明实施例的计算设备的具体工作过程与上述方法实施例的方法步骤大体一致,此处不再赘述。
[0127]
本发明实施例通过获取语音训练样本,将所述语音训练样本进行语谱图特征提取,分别得到正样本语谱图及负样本语谱图,将所述正样本语谱图和负样本语谱图分别输入所述预设神经网络进行训练,得到所述语音对抗样本检测模型,从而能够形成自动化语音对抗样本检测工具,在保证较高判断准确性的前提下提升虚构语音的鉴定效率,为asr的安全性提供前端保障,预防因故意制造篡改语义的对抗样本产生的不良影响。
[0128]
本发明实施例提供了一种计算机可读存储介质,所述存储介质存储有至少一可执行指令,该可执行指令在计算设备上运行时,使得所述计算设备执行上述任意方法实施例中的语音对抗样本检测模型的训练方法或语音对抗样本的检测方法。
[0129]
可执行指令具体可以用于使得计算设备执行以下操作:
[0130]
获取语音训练样本,所述语音训练样本包括多个正常语音样本及多个对抗语音样本;所述对抗语音样本为篡改语义的负样本;
[0131]
将所述语音训练样本进行语谱图特征提取,分别得到正样本语谱图及负样本语谱图;
[0132]
将所述正样本语谱图和负样本语谱图分别输入预设神经网络进行训练,得到语音对抗样本检测模型;或者
[0133]
可执行指令具体还可以用于使得计算设备执行以下操作:
[0134]
获取待检测语音数据;
[0135]
将所述待检测语音数据转换为待检测语谱图;
[0136]
将所述待检测语谱图输入语音对抗样本检测模型;所述语音对抗样本检测模型根据上述的训练方法训练得到;
[0137]
输出所述待检测语音数据的检测结果。
[0138]
在一种可选的方式中,所述获取语音训练样本,所述语音训练样本包括正常语音样本及对抗语音样本,包括:获取原始正常语音样本;根据所述原始正常语音样本,通过目标函数生成对抗语音样本;
[0139]
所述目标函数为:min‖δ‖2+l(x
′
+δ,t) s.t.db(δ)≤t
[0140]
其中,δ表示对抗性扰动,x
′
为原始正常语音样本,t为目标句子,l为ctc损失,通过分贝db(
·
)表示失真度,失真度表示对数尺度上音频的相对响度,t表示对抗性扰动的能量大小的阈值。
[0141]
在一种可选的方式中,所述将所述语音训练样本进行语谱图特征提取,分别得到正样本语谱图及负样本语谱图,包括:将每个所述语音训练样本切分成多个语音小片段;将所述多个语音小片段加载截断窗函数,得到多个加窗语音小片段;分别对所述多个加窗语音小片段进行短时傅里叶变换,得到每个所述语音训练样本对应的多个语谱图。
[0142]
在一种可选的方式中,所述截断窗函数为汉宁窗函数;所述将所述多个语音小片段加载截断窗函数,得到多个加窗语音小片段,包括:所述将所述多个语音小片段加载汉宁窗函数,得到多个加窗语音小片段。
[0143]
在一种可选的方式中,所述将所述正样本语谱图和负样本语谱图分别输入所述预设神经网络进行训练,得到所述语音对抗样本检测模型,包括:将所述正样本语谱图和负样本语谱图分别输入所述预设神经网络进行训练,出预测结果;根据所述正样本语谱图的标签、所述负样本语谱图的标签以及所述预测结果计算能量损失函数;根据所述能量损失函数调整所述预设神经网络的参数,并重新将所述正样本语谱图和负样本语谱图分别输入所述预设神经网络,计算能量损失函数,调整所述预设神经网络的参数,直至所述能量损失函数收敛或达到预设阈值时,得到语音对抗样本检测模型。
[0144]
在一种可选的方式中,所述能量损失函数为:
[0145][0146]
其中,e
θ
(y,x)=
‑
y
·
f
θ
(x);θ为所述预设神经网络的参数,y为所述语音训练样本的标签;x为所述语音训练样本;β为正常数。
[0147]
本发明实施例通过获取语音训练样本,将所述语音训练样本进行语谱图特征提取,分别得到正样本语谱图及负样本语谱图,将所述正样本语谱图和负样本语谱图分别输入所述预设神经网络进行训练,得到所述语音对抗样本检测模型,从而能够形成自动化语音对抗样本检测工具,在保证较高判断准确性的前提下提升虚构语音的鉴定效率,为asr的安全性提供前端保障,预防因故意制造篡改语义的对抗样本产生的不良影响。
[0148]
本发明实施例提供一种语音对抗样本检测模型的训练装置,用于执行上述语音对抗样本检测模型的训练方法。
[0149]
本发明实施例提供一种语音对抗样本的检测装置,用于执行上述语音对抗样本的检测方法
[0150]
本发明实施例提供了一种计算机程序,所述计算机程序可被处理器调用使计算设备执行上述任意方法实施例中的语音对抗样本检测模型的训练方法。
[0151]
本发明实施例提供了一种计算机程序,所述计算机程序可被处理器调用使计算设备执行上述任意方法实施例中的语音对抗样本的检测方法。
[0152]
本发明实施例提供了一种计算机程序产品,计算机程序产品包括存储在计算机可读存储介质上的计算机程序,计算机程序包括程序指令,当程序指令在计算机上运行时,使得所述计算机执行上述任意方法实施例中的语音对抗样本检测模型的训练方法。
[0153]
本发明实施例提供了一种计算机程序产品,计算机程序产品包括存储在计算机可读存储介质上的计算机程序,计算机程序包括程序指令,当程序指令在计算机上运行时,使得所述计算机执行上述任意方法实施例中的语音对抗样本的检测方法。
[0154]
在此提供的算法或显示不与任何特定计算机、虚拟系统或者其它设备固有相关。各种通用系统也可以与基于在此的示教一起使用。根据上面的描述,构造这类系统所要求的结构是显而易见的。此外,本发明实施例也不针对任何特定编程语言。应当明白,可以利用各种编程语言实现在此描述的本发明的内容,并且上面对特定语言所做的描述是为了披露本发明的最佳实施方式。
[0155]
在此处所提供的说明书中,说明了大量具体细节。然而,能够理解,本发明的实施例可以在没有这些具体细节的情况下实践。在一些实例中,并未详细示出公知的方法、结构和技术,以便不模糊对本说明书的理解。
[0156]
类似地,应当理解,为了精简本发明并帮助理解各个发明方面中的一个或多个,在上面对本发明的示例性实施例的描述中,本发明实施例的各个特征有时被一起分组到单个实施例、图、或者对其的描述中。然而,并不应将该公开的方法解释成反映如下意图:即所要求保护的本发明要求比在每个权利要求中所明确记载的特征更多的特征。
[0157]
本领域技术人员可以理解,可以对实施例中的设备中的模块进行自适应性地改变并且把它们设置在与该实施例不同的一个或多个设备中。可以把实施例中的模块或单元或组件组合成一个模块或单元或组件,以及可以把它们分成多个子模块或子单元或子组件。除了这样的特征和/或过程或者单元中的至少一些是相互排斥之外,可以采用任何组合对本说明书(包括伴随的权利要求、摘要和附图)中公开的所有特征以及如此公开的任何方法或者设备的所有过程或单元进行组合。除非另外明确陈述,本说明书(包括伴随的权利要求、摘要和附图)中公开的每个特征可以由提供相同、等同或相似目的的替代特征来代替。
[0158]
应该注意的是上述实施例对本发明进行说明而不是对本发明进行限制,并且本领域技术人员在不脱离所附权利要求的范围的情况下可设计出替换实施例。在权利要求中,不应将位于括号之间的任何参考符号构造成对权利要求的限制。单词“包含”不排除存在未列在权利要求中的元件或步骤。位于元件之前的单词“一”或“一个”不排除存在多个这样的元件。本发明可以借助于包括有若干不同元件的硬件以及借助于适当编程的计算机来实现。在列举了若干装置的单元权利要求中,这些装置中的若干个可以是通过同一个硬件项来具体体现。单词第一、第二、以及第三等的使用不表示任何顺序。可将这些单词解释为名称。上述实施例中的步骤,除有特殊说明外,不应理解为对执行顺序的限定。