1.本发明涉及一种基于多版本预处理序列融合的对抗样本还原方法,属于计算机语音识别技术领域。
背景技术:
2.随着深度学习技术的发展,研究者们开始将深度学习应用于语音识别中。深度学习技术可以自动学习语音信号的特征,显著提高了语音识别的准确率和鲁棒性。因此,自动语音识别技术开始融入不同的领域,如智能家居、智能汽车、智能机器人等等,使人们的生产和生活更加高效、便捷。然而,近期的研究表明,通过向良性样本上添加黑客精心制作的对抗扰动就可以生成使asr系统做出错误判决的对抗样本,并且在人类感知上二者几乎没有任何差别。这些语音对抗样本不仅可以使受害模型做出错误分类,甚至使受害模型将其转录成攻击者所期望的目标结果,从而对相关应用(如语音助手、语音验证码等)造成安全隐患。
3.当前对语音对抗样本的防御研究主要停留在检测防御上,只有少数研究针对对抗样本进行还原,而一个鲁棒的asr系统的目标应该是对任意样本都能正确转录,而不仅仅是检测对抗样本并拒绝服务。并且现有的还原防御对对抗样本的还原性能较低且对良性样本的影响较大,还需要对目标模型进行更改,同时现有的防御研究所提出的防御模块简单的讨论单个预处理算法的还原或具有新的对抗性缺陷的防御方法,导致防御模块鲁棒性较低且还原性较差。
4.本发明针对现有问题,提出了多版本预处理序列融合算法,实现了对对抗样本的还原防御。该方法基于多版本编程思想对对抗样本进行还原,通过随机平滑模块有效打破了对抗扰动的整体性;设计了多版本预处理模块降低了引入的高斯噪声的影响并进一步破坏了对抗扰动的攻击性;引入了rover投票机制对生成了多版本转录进行良性转录的提取,并提出了众数权重分配法对预处理转录进行动态权重计算。本发明所提出的方法无需预训练且融合了多个预处理算法的优势,有效提高了算法的还原性和鲁棒性。
技术实现要素:
5.本发明的目的在于提供一种基于多版本预处理序列融合的对抗样本还原方法,即多版本预处理序列融合算法(multi-version preprocessing sequence fusion,mvpsf),用于将对抗样本的转录恢复成良性转录。用于将语音对抗样本的语音识别内容恢复成良性样本的转录。通过本发明能够实现将有攻击性的对抗样本还原成良性样本,并且本方法融合了多个语音预处理算法的优势。
6.本发明为解决上述问题采用以下技术方案:
7.本发明提供一种基于多版本预处理序列融合的对抗样本还原方法,该方法可以在对良性样本的转录结果影响较小的前提下,对对抗样本实现高精度还原。
8.一种基于多版本预处理序列融合的对抗样本还原方法,其特征在于,所述方法具
体步骤如下:
9.步骤1,将良性样本或者对抗样本输入到mvpsf算法中,旨在对良性样本处理后不会影响其转录,而对抗样本的转录会恢复为良性转录。即使用高斯噪声算法(如numpy.random.normal函数)生成n个长度与输入长度相同的、均值为0方差为σ的高斯噪声序列,然后将n个噪声分别加到输入上,首先使用高斯噪声算法对输入的语音进行平滑处理,即随机生成n个长度与输入音频相同的均值为0、方差为σ的高斯噪声,然后分别将这n个高斯噪声与输入音频相加,从而获得n个具有细微不同的平滑语音序列,并实现了初步对输入的对抗样本的对抗扰动进行一定程度的破坏;
10.步骤2,将得到的平滑处理语音序列输入到多版本预处理算法模块中进行处理,该模块由n个不同实现的压缩算法和增强算法共同构成;将获得的n个具有细微不同的平滑序列输入进该模块,每个平滑音频对应于一个预处理算法(压缩或增强)进行处理并输出,最终可通过该模块获得多版本预处理语音序列;
11.步骤3,将原始输入语音以及多版本语音序列同时输入到目标语音识别系统中,语音识别系统分别将每个音频转换为转录文本,从而获得了原始转录p以及多版本语音转录序列pi(i=1,
…
,n);
12.步骤4,将原始转录p以及多版本语音转录序列pi(i=1,
…
,n)输入到众数投票权重分配模块进行权重的计算;
13.步骤5,将多版本语音转录序列pi(i=1,
…
,n)和各转录的权重序列输入到rover模块中投票进行良性样本转录的提取并输出,即为给定的对抗样本的良性转录估计。
14.作为本发明的一种改进,该方法分别在语音识别系统的预处理阶段以及后处理阶段进行防御,在预处理阶段中,输入的样本首先通过高斯平滑进行处理,然后通过多版本预处理算法进行处理,从而每个处理都将不同程度的进行对抗扰动的去除;在后处理阶段,语音识别系统从输出的多版本预处理转录序列中进行良性转录的估计,根据输入的样本为对抗样本的概率与否进行权重的动态分配,并根据权重来进行投票,最终获得样本的转录估计。
15.作为本发明的一种改进,步骤4中,在众数投票权重分配模块中,其输入有两个变量以及一个常量,输入的变量为原始音频的转录p以及多版本语音转录序列pi(i=1,
…
,n);输入的常量为多版本预处理算法模块中各个预处理算法对应的对抗样本二分类的字符错误率阈值数组,在众数权重分配模块中,首先根据原始音频的转录p以及多版本语音转录序列pi(i=1,
…
,n)计算多版本语音预处理算法处理后的文本的字符错误率;然后根据阈值以及计算得到的字符错误率进行对抗样本的分类;最后根据样本被分类为对抗样本的预处理算法的个数来进行样本分类,具体而言,当样本被分类为对抗样本的预处理算法个数不低于预处理算法总数的一半时,则认为该样本为对抗样本的概率更大,反之为良性样本的概率更大;最后根据样本的分类情况进行权重的计算,权重的计算公式为:
[0016][0017]
式中,num表示将输入样本分类为对抗样本的预处理算法数量,thresholdi表示第
i(i=1,
…
,n)个预处理算法设置的字符错误率分类阈值,由于ceri可能为0,为避免程序错误,0.1被加到了分母ceri上。
[0018]
作为本发明的一种改进,步骤3中的多版本预处理算法模块在本方法中被设置为8个预处理算法的并联,包括可变比特率的自适应多速率语音编码(amr-v)算法、固定比特率的自适应多速率语音编码(amr-c)、杜比ac-3算法、可变比特率实现的speex算法(speex-v)、基于soft决策具有语音不确定性的对数均方误差增强算法(logmmse_spu-soft)、基于hard决策下具有语音不确定性的对数均方误差增强算法(logmmse_spu-hard)、基于malah决策下具有语音不确定性的对数均方误差增强算法(logmmse_spu-malah)和基于cohen决策下具有语音不确定性的对数均方误差增强算法(logmmse_spu-cohen)
[0019]
相对于现有技术,本发明利用不同实现的预处理算法对对抗扰动的滤除程度与范围不同的特性,提出了利用多版本预处理算法对对抗样本进行处理,然后利用rover算法和众数权重分配方法从多版本转录中提取良性转录,实现了对对抗样本的高还原性、高鲁棒性的还原防御。
[0020]
与现有技术相比,本发明具有的有益效果是:
[0021]
1.本发明方法首先将多版本编程思想引入到语音对抗样本的还原防御中,该方法无需训练,并且有效融合了多个预处理的优势,有效的提高了还原模块的鲁棒性。
[0022]
2.本发明方法是一种基于多版本预处理序列融合的对抗样本还原方法。该方法无需对目标模型进行更改,可以独立作为语音识别系统的处理模块,可即插即用于任意asr系统上。
[0023]
3.本发明方法设计了众数权重分配方法,通过对多版本预处理算法的结果对输入进行分类,然后按分类的不同给予每个预处理转录不同的权重计算方式,实现了对预处理转录的动态权重分配,实现了对抗样本良性转录的有效估计。
[0024]
4.本发明方法在设置初始值后,无需调整其它参数,是一种端到端的、即插即用的语音对抗样本还原算法。
附图说明
[0025]
图1为本发明的整个流程示意图。
[0026]
图2为本发明的构成示意图,其中目标系统以deepspeech模型为例。
具体实施方式
[0027]
下面结合具体实施例,进一步阐明本发明,应理解这些实施例仅用于说明本发明而不用于限制本发明的范围,在阅读了本发明之后,本领域技术人员对本发明的各种等价形式的修改均落于本技术所附权利要求所限定的范围。
[0028]
实施例1:参见图1、图2,一种基于多版本预处理序列融合的对抗样本还原方法,具体步骤如下:以对抗样本为例,具体步骤如下:
[0029]
步骤1,随机读取一个对抗样本,将该样本首先通过随机平滑模块将单个输入语音增广为n个具有细微不同的平滑语音序列,同时在一定程度上破坏了对抗扰动的攻击性;
[0030]
步骤2,将得到的n个具有细微不同的平滑语音序列输入到具有n个不同实现的多版本语音预处理模块中,在消除平滑模块引入的高斯噪声的影响的同时,进一步滤除了对
抗扰动的干扰,输出含有n个语音的多版本语音序列;
[0031]
步骤3,将得到的多版本语音序列和原始音频输入到目标语音识别系统中,获得多版本语音转录pi(i=1,
…
,n)和原始转录p;
[0032]
步骤4,将得到的多版本语音转录pi和原始转录p输入到众数权重分配模块进行各预处理转录的权重分配;
[0033]
具体的,在众数投票权重分配模块中,其输入有两个变量以及一个常量,输入的变量为原始音频的转录p以及多版本语音转录序列pi(i=1,
…
,n);输入的常量为多版本预处理算法模块中各个预处理算法对应的对抗样本二分类的字符错误率阈值数组。在众数权重分配模块中,首先根据原始音频的转录p以及多版本语音转录序列pi(i=1,
…
,n)计算多版本语音预处理算法处理后的文本的字符错误率;然后根据阈值以及计算得到的字符错误率进行对抗样本的分类;最后根据样本被分类为对抗样本的预处理算法的个数来进行样本分类,具体而言,当样本被分类为对抗样本的预处理算法个数不低于预处理算法总数的一半时,则认为该样本为对抗样本的概率更大,反之为良性样本的概率更大;最后根据样本的分类情况进行权重的计算,权重的计算公式为:
[0034][0035]
式中,num表示将输入样本分类为对抗样本的预处理算法数量。thresholdi表示第i(i=1,
…
,n)个预处理算法设置的字符错误率分类阈值。由于ceri可能为0,为避免程序错误,0.1被加到了分母ceri上。
[0036]
步骤5,将多版本语音转录序列pi(i=1,
…
,n)和各转录的权重序列输入到rover模块中投票进行良性样本转录的提取并输出,即为给定的对抗样本的良性转录估计。
[0037]
效果评估:
[0038]
本发明发明了一种基于深度语音波形先验的对抗样本还原方法,实现了对对抗样本的动态防御。与现有方法相比,本发明对对抗样本的恢复性能显著高于其它的现有算法,而对良性样本的影响低于其它算法。
[0039]
表1.本发明在基于speechcommand数据生成的cw对抗样本数据集上的防御效果
[0040][0041]
需要说明的是上述实施例仅仅是本发明的较佳实施例,并没有用来限定本发明的保护范围,在上述技术方案的基础上做出的等同替换或者替代均属于本发明的保护范围。