面向语音识别系统的对抗样本攻击及防御综述

2022-03-03 13:46陈佳豪白炳松王冬华严迪群王让定
小型微型计算机系统 2022年3期
关键词:鲁棒性扰动样本

陈佳豪,白炳松,王冬华,严迪群,王让定

(宁波大学 信息科学与工程学院,浙江 宁波 315211)

1 引 言

深度学习的发展极大地改善了ASR的性能,使得端到端ASR操作性得到了提高.ASR系统接收语音,并将其翻译成相应的命令,使人们可以远程控制这些设备.由于该方法的便捷性和易操作性,ASR系统已被广泛应用于各种智能手机和家用设备.ASR系统正在影响和改变着人类与智能设备的交互方式.例如,人们能够通过语音远程控制智能家居设备.正因其与日俱增的影响力,ASR系统的安全问题也引起了广泛的关注.

尽管ASR系统已经有了一定的发展基础,但也存在潜在的安全问题.基于深度学习的识别方法近期已被证明易受对抗样本的攻击.在正常语音中加入特定的噪声,能够使ASR系统产生恶意命令.尽管对抗样本攻击在图像分类、图像分割、目标检测等领域早已得到了广泛研究,但语音领域的对抗样本在近年才开始引起人们的关注.

攻击者的目标是产生既能够使人类无法察觉,或仅被视为背景噪声的对抗样本,同时使得ASR系统识别错误.图1展示了原始语音输入及其对抗样本的输出.Vaidya[1]最早提出了针对ASR系统的对抗攻击方法.之后Carlini[2]对这种方法进行了改进,使其能够产生更强的攻击效果.然而,他们是利用ASR系统的脆弱性来合成新的不可识别语音,而不是通过对原始语音的修改来达到攻击效果.本文将讨论面向ASR系统的对抗样本攻击及其防御策略,并给出当前的对抗样本所带来的挑战.

本文讨论并总结了语音对抗样本的生成方法及相应的防御策略.与已有的综述[3]相比,本文提出了更详细的分类方法,并介绍了语音对抗样本方向的最新工作.本文的主要贡献:1)根据对抗样本的攻击模式、扰动模式和基准,提出了相应的分类方法.2)通过对现有工作简要回顾,介绍了对抗样本在ASR系统中的发展.3)讨论语音对抗样本领域中的挑战,并提出了几个有价值的研究方向.

图1 语音对抗样本示意Fig.1 Illustration of speech adversarial sample attack

2 自动语音识别系统ASR

在本节中,本文首先对ASR根据识别模型进行了简单分类,之后回顾目前较为先进的语音识别系统的工作原理,给出了语音对抗样本的生成过程.

2.1 ASR及其分类

自动语音识别(ASR):即给定一段语音,输出对应的语言文字序列.该技术发展已久,从早期的混合模型到后来如Attention等各类深度模型在语音识别领域的应用.按照发展阶段来看,可以分为传统模型,基于时序分类(CTC)的模型,Transducer模型,基于Attention的模型.传统模型即基于传统机器学习算法如早期的GMM/HMM,随着深度学习的发展可以用深度神经网络替换GMM即DNN-HMM模型随之产生.而CTC则进一步取代HMM来处理该问题.Transducer则解决了单个发音对多个输出的问题,此后基于Attention的模型由于全局处理能力较强取代了之前的大部分模型,成为当前的研究主流方向.

2.2 受害者模型

考虑到ASR系统的普及性,这里主要介绍了两种目前较为先进的基于深度学习技术的ASR系统:Kaldi和DeepSpeech.这两种系统广泛应用于商业应用,因此也更适合作为研究的受害者模型.

2.2.1 Kaldi

Kaldi[6]是一个非常普及的开源语音识别工具包.它是基于DNN-HMM的模型,能够为ASR系统提供各类先进的算法,在GitHub[注]https://github.com/kaldi-asr/kaldi有8600多颗星.该工具包用C++编写,并在GitHub保持更新.多项研究表明Kaldi在商业场景中应用广泛,如Amazon Echo[7]、IBM[4]、Microsoft[5]等.系统实现主要包括3个步骤:特性提取、深度神经网络(DNN)训练和解码.第1步是从原始语音中提取梅尔倒谱系数(MFCC,Mel Frequency Cepstral Coefficients)或感知线性预测系数(Perceptual Linear Predictive)等声学特征.然后将这些特征输入到训练好的DNN中,计算后验概率矩阵.最后利用静态解码图对后验概率矩阵进行解码,并找到出现可能性最大的词序列.

2.2.2 DeepSpeech

DeepSpeech[8]是一个开源的能够实现语音到文本的引擎.它使用了基于Mozilla[注]https://github.com/mozilla/DeepSpeech的训练模型,这个工作在GitHub已经有超过13600颗星.DeepSpeech的开发者声称,百度将把DeepSpeech与自动驾驶、CoolBox以及可穿戴设备相结合[9].图2展示了系统实现的主要过程,包括特征提取和模型推断.DeepSpeech的输入是从原始语音中提取的声学特征如MFCC.将声学特征输入到一个使用连接时序分类(CTC,Connectionist Temporal Classification)损失的多层双向模型中[10],

图2 DeepSpeech系统示意Fig.2 Illustration of DeepSpeech system

为声学特征的每一帧生成一个字符水平的概率.最后将模型输出解码并得到词序列.

3 对抗样本及其分类

为了系统地分析现有的对抗样本,本文将从攻击模式、扰动模式和评估基准3个方面来讨论语音对抗样本的分类方法.分类结果见表1.

表1 语音对抗样本分类Table 1 Taxonomy of the speech adversarial examples

3.1 攻击模式

对抗样本的攻击模式有很多种分类,按攻击者是否知晓目标网络的结构参数,可以将对抗攻击分为白盒攻击和黑盒攻击.其中白盒攻击场景下,假设攻击者可以获得目标网络,它允许攻击方使用目标模型的信息,包括训练数据,模型架构,超参数和模型权重等.而黑盒攻击时,则假设攻击者不能访问目标网络.攻击方和普通用户一样,只知道目标模型输出.

另一方面,按照目标网络最终得到的分类结果是否是攻击者预先设计的,可以将对抗攻击分为非目标攻击和目标攻击.其中非目标攻击对输出没有特定要求,可以是除正确结果以外的任意值.它有更多的选择和空间来使系统识别错误.这种攻击通常会最大化生成的样本与原始样本之间识别结果距离.而目标攻击则能够使识别系统输出攻击者指定目标,因而更具有现实意义和挑战性,尤其是对ASR的攻击,因为它需要改变识别结果.这种攻击通常会最小化生成样本与原始样本之间识别结果的距离.

ASR系统任务的对抗样本可描述如下:使用一个训练好的ASR系统,用户输入一段语音来获得识别结果.在原始语音中加入微小的扰动就会导致ASR系统识别错误.给定一个训练好的ASR系统f和一个原始语音样本x,生成对抗样本xadv.因此,该问题可以描述为一个优化问题.

min‖δ‖
s.t.f(x+δ)=t′
f(x)=t
t≠t′

(1)

其中δ表示扰动,t和t′分别表示x和xadv的识别结果,‖·‖表示原始语音其对抗样本之间的距离.这个优化模型能够使系统识别错误的同时最小化扰动.

3.2 扰动模式

刻意生成的扰动能够确保对抗样本可以欺骗目标模型,但人类却无法察觉.针对不同的扰动产生方法,本文将从扰动产生、扰动作用范围等方面进行分析.

基于梯度符号的扰动生成方法,最早在图像对抗样本中提出[11-15].随后被证明在语音对抗样本中也是有效的.这类攻击利用梯度信息来生成对抗样本,将梯度损失视为扰动并作为原始输入.而基于目标优化的生成方法将生成扰动作为一个优化问题,通过最小化目标函数来获得最佳扰动.基于进化算法的生成方法利用了自由梯度的优势,使得ASR系统攻击更加可操作.

就扰动攻击范围而言,单一扰动攻击会对每个输入产生一个单独的扰动,而通用扰动攻击则是对整个数据集生成一个通用的扰动,可以添加到任意良性语音输入中.现有的攻击大多为单一扰动攻击.然而,通用对抗扰动适用于任意语音输入.在更改输入时也无需更改扰动,因此它们在现实场景中更容易部署.

最后,从扰动攻击的目标来看,声学特征扰动是将声学特征作为目标.这类方法需要考虑重构声学特征对语音波形的重构损失.原始语音扰动则是把原始语音信号的时域采样值作为扰动目标.目的是最小化扰动,使得人毫无察觉的同时欺骗ASR系统.

3.3 基 准

对于模型的评估有助于统一模型的优劣.一般对抗样本的效果评估可以从多个方向进行,包括识别结果的统计测量、扰动感知测量和播放方式等.统计测量可以分为攻击性能测量和语音失真测量.攻击性能包括编辑距离、字符错误率(CER)、单词错误率(WER)、攻击成功率(Success rate).失真测量包括信噪比(SNR)和语音质量感知评估(PESQ).物理感知测量语音的感知质量,即真人测试,包括AMT(Advanced Manufacturing Technology),ABX(Automatic Branch Exchange)测试等.另外,Over-the-Air则是测量当样本在由播放器或录制设备播放时,对抗样本是否能保持攻击效果.这是对攻击的鲁棒性和实用性的重要评估.

攻击者对其方法在不同数据集和目标模型上的有效性进行评估,这使得难以评估这些方法的有效性和声学模型的鲁棒性.前沿ASR系统和语音数据集使攻击难以得到较好的效果.因此,有必要对现有攻击中使用的受害者模型和数据集进行一些讨论.

1)受害者模型:通常选择已有的主流声学模型作为目标模型.声学模型可以分为分类模型和识别模型.分类模型一般为基于CNN(Convolutional Neural Networks)的模型.识别模型包括DeepSpeech、Kaldi、Lingvo[27]等.

2)数据集:根据不同的目标模型,选择公开的主流数据集来评估攻击性能.包括但不限于:MCVD[注]https://voice.mozilla.org/en,Speech Command Dataset(SCD)[注]http://download. tensorflow. org/data/speech,Librispeech[16],IEMOCAP[17]等.

4 对抗样本生成方法

在本节中,本文将针对单一对抗扰动和通用对抗扰动分析现有的方法.其中单一扰动包括基于目标优化的方法、基于进化算法的方法和基于梯度符号的方法.

4.1 单一对抗扰动

单一对抗扰动是目前研究的主要方向,它对每一个输入语音都单独产生对抗扰动.当前基于目标优化、梯度符号和基于进化算法的对抗样本方法基本上都属于这一类.

4.1.1 基于目标优化的对抗样本生成方法

该优化方法的目标是最小化扰动,使得识别错误的同时人却不能察觉.因此,这种方法通常有两个优化目标:较小的扰动量和较高的攻击成功率.通过最小化以上两个目标损失来获得扰动.

Vaidya[1]等人提出第一个生成语音对抗样本的方法.他们对MFCC提取的参数进行微调,直到能够被ASR系统错误识别,然后将MFCC特征重构回语音.2016年,Carlini[2]等人对Vaidya的工作进行了改进,提出了Hidden Voice Command.通过考虑更实际的场景和背景噪声,提高了攻击的效率和实用性.同时,生成的语音对抗样本中的扰动被人们看作是随机噪声.

为了解决Hidden Voice Command中语音感知质量差的问题,2017年,Zhang等人提出DolphinAttack[18],利用麦克风的漏洞对超声波语音命令进行调制.他们通过在真实场景中对几个ASR系统进行攻击(如Siri和Google Now)来评估该方法.结果表明,该方法生成的对抗样本能够成功攻击ASR系统,但人却无法听到语音.他们只关注硬件的特性,而不直接修改原始语音,这使得他们的方法难以复现.

与上一种方法不同,2018年,Yuan[19]将恶意命令注入音乐中.为了实现效果,他们提出了新的目标优化方法CommanderSong.与现有的直接修改原始语音的方法相比,由于音乐的普遍性,它们选择了歌曲片段作为命令语音的载体,使得生成的对抗样本难以被人识别.此外,他们通过硬件设备噪声实现噪声模型产生的对抗样本,使得他们的方法可以实现Over-the-Air攻击.实验表明,该方法对Kaldi的攻击成功率达到100%,验证了噪声模型的有效性.然而,该方法中使用的噪声模型仅适用于特定设备,而且攻击必须近距离操作.

Cisse等人[20]提出了Houdini方法,能够攻击一系列不同的应用,如语音识别、姿态估计和语义分割.为了使用Houdini攻击端到端ASR模型,他们首先得到目标值和当前预测值之间的损失,然后使用前向-后向算法找到对抗样本.他们的方法成功地使DeepSpeech2[21]在Librispeech数据集上达到了12%的单词错误率和1.5%的字符错误率.他们还评估了用DeepSpeech2生成的对抗样本对Google Voice模型的黑盒攻击效果.遗憾的是,该方法生成的扰动并没有被深入地研究.

Iter等人[22]利用训练好的WaveNet模型来修改MFCC特征,从而生成对抗样本.他们将快速梯度法(FGSM)和欺骗梯度法相结合,迭代生成MFCC的对抗扰动,并将扰动后的MFCC反变换为语音.他们证明,尽管MFCC重构是有损耗的,但产生的语音对抗样本与原始语音具有一致性.

Abdullah[23]提出了一种利用信号处理算法的新型攻击方法.他们设计了一个扰动引擎,可以产生4类扰动,并且可以根据选定的参数来产生对抗样本,包括语音、高频强度和窗口大小.他们分别评估了他们对12种识别模型的攻击效果,包括在线语音识别模型和离线语音识别模型(如Google Speech Ai,DeepSpeech等).但是,他们没有给出生成对抗样本的参数选择策略.尽管他们的方法能够成功地攻击目标模型,但是生成的对抗样本的语音感知质量并不好.

Carlini等人[24]提出了一种基于迭代优化的方法,通过对原始语音波形进行优化并修改来生成对抗样本.他们提出的新方法能够确保整个ASR系统实现快速收敛,同时改进的损失函数能够确保更低的扰动幅度.实验结果表明,该方法对DeepSpeech的攻击成功率达到了100%,而原始语音与对抗样本的相似度达到了99%.他们证明了目标攻击的确存在于语音领域.然而,攻击者能够访问目标模型的假设在实际场景种往往是不合理的,另外该方法也没有对Over-the-Air攻击进行研究.

为了实现Over-The-Air攻击,Yakura等人[25]提出了一种新的攻击方法.他们将真实场景中的语音回放整合到生成过程中,以获得一个更健壮的对抗样本,并提出了3种技术:带通滤波器、脉冲响应和高斯白噪声.实验表明,该方法在Over-the-Air攻击中达到100%的攻击成功率.然而,构造单个对抗样本的计算效率相对较低.此外,该方法的有效性还需要在不同的语音数据集和其他目标文本上进行验证.

为了实现Over-The-Air攻击,Schonherr等人[7,28]引入了一种基于心理声学的新方法来生成针对Kaldi的对抗样本.在文献[8]中,他们将对抗扰动限制在原始语音的听觉掩蔽阈值以下,并利用反向传播算法寻找最小扰动,以确保生成对抗样本的噪声最小.为了生成对抗样本,不同的语音载体(例如对话和音乐)都进行了研究.结果表明,原始语音的选择对对抗样本的质量有很大的影响.在后来的工作[28]中,他们将心理声学和空间脉冲响应(RIR)模拟器结合起来,生成了具有鲁棒性的对抗样本.与现有Over-the-Air攻击相关的研究[2,7,24,26]仅在一个特定的静态房间设置下有效,或者在不同环境下就无法攻击物理ASR系统不同的是,作者使用了RIR发生器来保证在不同的空间中攻击都能保持有效性.然而,作者并没有对扰动的大小进行研究.而且,在真实场景下得到关于目标网络的信息也是不现实的.

受文献[8]的启发,Carlini的团队[26]利用听觉掩蔽原理生成了对抗样本.选取听觉掩蔽阈值以下的部分进行扰动,使扰动对人不敏感.他们将优化分为两个阶段:1)寻找一个扰动来欺骗目标网络;2)优化扰动以确保人类难以察觉.他们还引入环境噪声,使他们的方法在Over-the-Air攻击中也同样有效.生成的对抗样本在Lingvo[27]分类器上对任意长度的目标文本实现了100%的攻击成功率.然而,他们能够访问目标网络的假设同样是不现实的.

受文献[7,26]的启发,Szurley等人[29]提出了一种基于心理声学的优化方法.他们通过设计基于心理声学特性的损失函数和自动生成空间脉冲响应,生成鲁棒对抗样本.然后采用投影梯度下降法(PGD)求解优化问题.实验结果表明,该方法达到了100%的攻击成功率.然而,他们并没有研究对抗攻击的可转移性.

在最新的对ASR攻击的研究中,Liu等人[30]中提出了一种改进的对抗攻击方法,包括采样扰动技术(SPT)和加权扰动技术(WPT).SPT减少了语音信号中的扰动数,减少了样本生成过程中的计算资源和时间开销.该方法分为两步:1)通过增加语音序列定位模型中关键点的权重来降低时间开销;2)利用梯度法求精确的扰动.此外,他们还研究了哪些度量可以使生成的对抗样本有更强的鲁棒性.实验表明,该方法在较少的扰动和计算资源的情况下,达到了100%的攻击成功率.然而,他们没有对Over-the-Air攻击的影响进行研究.

考虑到现实的场景,例如,在军事环境中使用对抗样本来欺骗敌人的窃听装置,同时被己方的窃听装置正确地识别.Kwon等人[31]提出了一个选择性语音对抗样本,被攻击的ASR系统会将其解释为目标文本,但被保护的分类器正确地将其解释为原始文本.他们利用分贝水平损失来衡量原始语音样本和生成对抗样本之间的失真.该问题可以利用受害者模型当前预测和目标值之间的识别距离以及保护模型的原始值和当前预测之间的识别损失来解决.所生成的语音对抗样本在DeepSpeech上的攻击成功率为91.67%,保护正确率为85.67%.需要注意的是,受害者模型和被保护模型应该满足相同的结构,参数不同.评估中使用的受害者模型和受保护模型的体系结构是相同的.但他们的方法在受害者模型和受保护模型之间的不同体系结构上的性能可能还需要进一步研究.

4.1.2 基于梯度符号的对抗样本生成方法

基于符号梯度方法主要是利用了模型的梯度信息来生成扰动,通过梯度符号的反向来迭代,使得识别准确率降低.

在快速梯度符号法(FGSM)中,可以获取并利用目标模型的信息来生成对抗样本.对于一段语音,FGSM利用输入语音的损失梯度,并通过目标模型和目标标签的预测计算使得损失最小来获得一个新语音.该方法最大的优点是生成对抗样本的时间成本很低,因为它仅需要几次迭代即可生成目标要求的扰动.Gong等人[36]首次提出了基于梯度符号的方法,通过直接修改原始语音波形生成语音对抗样本.他们使用卷积层代替循环层来解决消失梯度问题.对3种不同语音识别模型的评价结果表明,在扰动因子为0.032的情况下,识别错误率提高了约30%.然而,知道目标模型在实际场景中是不现实的,并且对抗样本的可转移性也是未知的.

与语音识别系统相比,Kreuk等人[37]提出一种攻击方法来欺骗说话人验证系统.他们利用梯度符号来干扰声学特征(如MFCC),然后将声学特征重构为语音波形,生成对抗样本.将假阳性率提高到近90%.然而,对目标网络有充分的了解是不现实的,同时也没有研究扰动的大小.

4.1.3 基于进化算法的对抗样本生成方法

与前两类方法相比,基于进化算法的方法是一种无梯度的方法.它不需要目标模型的信息,因此使对ASR进行黑盒攻击成为可能,这也是这类方法的优点.Alzantot等人[38]提出了第一种基于遗传算法生成语音对抗样本的方法.首先,他们通过只向给定的语音片段的最低有效位添加噪声,来初始化候选对抗样本的总体;然后,通过选择、交叉和变异等方法,获取候选样本中适应度得分较高的个体,使之成为下一代.他们的攻击在目标模型达到87%的成功率,并且能使89%的测试者对添加的噪声无察觉.然而,他们的方法只在单个词的语音和基于CNN的语音分类网络上有效,对于攻击ASR系统是否有效还有待进一步研究.

和在单词数据集[38]上的攻击语音分类相比,Taori等人[39]将Alzantot等人[38]的方法扩展到更长的短语和语句数据集.他们将遗传算法和梯度估计相结合,提出了一种改进的黑盒对抗样本生成方法.他们使用遗传算法在候选群体中探索合适的样本,并当对抗的样本接近它的目标时,使用梯度估计来发现更多的特殊噪声.动量变异具有收敛性好、可提高变异速率等优点,可以替代传统变异方法.原始样本与生成样本之间的声学相似度可达到89.25%,并且迭代次数越多,相似度越高.然而,他们的方法在攻击DeepSpeech模型时攻击成功率只能达到35%.

Khare等人[40]提出了一种基于多目标进化算法的对抗样本生成方法.他们的目的是在增加ASR系统误差的同时,产生声学相似度更高的样本.首先,他们将最小化原始样本与生成样本之间的MFCC欧氏距离,减小原始样本与生成样本识别文本之间的编辑距离作为目标.其次,在原始语音信号中加入随机的均匀噪声来初始化种群,然后计算每个种群候选的两个目标的适应度分数.在得分较高的样本中,优先选择利用各种选择方案进行交配选择,其次是交叉和变异.结果显示,在保持输入对抗样本和原始样本与生成样本的声学相似度良好的情况下,DeepSpeech和Kaldi的单词错误率(WER)有所增加(分别为0.98、0.97).然而,生成的对抗样本能否成功地识别为目标文本,有待进一步研究.

与此同时,Du等人[9]提出了一种基于粒子群优化(PSO)的新方法,称为SirenAttack.在白盒攻击时,他们利用粒子群算法搜索粗粒度噪声,并利用欺骗梯度法,通过对粗粒度噪声的轻微修正找到精确的对抗噪声;而在黑盒攻击场景中,只使用粒子群算法来寻找精确的对抗噪声.使用最先进的基于深度学习的ASR系统进行方法评估,结果表明,他们的方法在IEMOCAP数据集上对ResNet18[41]模型的攻击成功率达到99.45%.此外,生成的对抗样本也能欺骗在线ASR系统(如Google Cloud Speech).然而,他们只评估了黑盒攻击场景下,由单个单词语音组成的语音命令数据集的有效性,并没有研究在长句语音数据集上对ASR系统的有效性.

4.2 通用对抗扰动

相较于针对单一样本生成的扰动,通用对抗扰动则对大部分样本都有效,因此危害性比单一对抗扰动危害性更大:基于通用对抗扰动的攻击在测试阶段不需要目标模型的任何信息;实施对抗攻击的门槛极大降低,可能会在攻击者之间迅速流传;只需要一个扰动就能产生极大的危害作用.

通用对抗扰动在近年来开始受到语音领域研究者的关注.然而,这方面的研究目前还仍然十分有限.Abdoli等人[32]首次提出了声学系统的通用对抗扰动法.他们提出了两种产生全局对抗扰动的方法:1)受图像全局对抗样本的启发,利用迭代贪心算法生成通用对抗扰动向量;2)他们设计了一种新的惩罚公式,该公式找到了有针对性和无针对性的通用对抗扰动.他们利用分贝(dB)损失来约束扰动的大小,以保持语音的质量,并使用铰链损失作为惩罚函数,以确保他们的扰动能够欺骗目标模型.针对一维CNN结构声学模型,他们能够实现85.4%和83.1%的攻击成功率.然而,他们的攻击只能在分类模型中进行评估,全局语音扰动在Over-the-Air播放时攻击效果不佳.

与Abdoli[32]不同,Vadillo等人[33]利用图像对抗扰动生成方法[13,34]生成针对语音命令分类的通用对抗扰动.他们在文献[13]中重新设计了算法,并利用DeepFool[34]通过积累扰动来产生满足生成样例的扰动.此外,他们提出了一个实验框架,以深入评估产生的例子中的失真.他们对SCD(Speech Command Dataset)数据集训练的分类网络进行了评估.结果表明,它们的普遍扰动能使受扰动的语音误分类为原始语音以外的其他类别.然而,他们的扰动方法是否能实现目标攻击则没有研究.

相比于对基于语音分类的模型产生通用对抗扰动[32,33],Neekhara[35]提出了一种通用对抗扰动来攻击识别系统.他们通过最小化目标函数来解决这个问题.他们的目标是找到一个小的通用对抗扰动向量,能够添加到任意语音中同时可以使ASR识别错误.通过最大化原识别和预测识别之间的字符错误率(CER)来实现,对DeepSpeech的攻击成功率为89.06%.然而,假设攻击成功时的CER小于0.5而不是0,则意味着他们的攻击无法实现目标攻击.

5 语音对抗样本的防御对策

本节将从被动式和主动式两个方面讨论现有对抗样本的防御策略,如表2所示.二者的区别在于被动式是对输入的样本被动进行检测,而主动式则可以在主动通过对抗训练等方式来增加模型的鲁棒性.其中具体包含了对抗检测、网络验证、对抗训练、模型鲁棒性强化等防御对策.

表2 语音对抗样本防御策略总结Table 2 Speech adversarial sample defense strategy

1)被动式:在ASR系统建立后,检测生成的对抗样本.已有研究工作可以进一步划分为对抗检测、网络验证.

2)主动式:使ASR系统对潜在对抗攻击具有更强的鲁棒性.根据不同的策略,主动对抗可以分为对抗(再)训练和声学模型鲁棒性增强.

5.1 被动防御

被动对抗的重点是在ASR系统建立后发现对抗样本.根据防御策略不同特点,将被动式对抗分为对抗检测和网络验证两类.

5.1.1 对抗检测

对抗检测可以看作是一种二分类任务,其目的是将对抗样本和正常样本进行二分类.该类型的防御方法通常设计一个分类器,对声学特征或语音波形进行分类.这些策略的优点是检测精度比较高.但缺点是需要训练一种新的分类方法.针对Alzantot等人[38]提出的对抗攻击,Rajaratnam等人[45]提出了一种基于检测的防御方法.他们分别利用多种语音预处理方法(压缩、语音编码、滤波等)检测对抗样本.此外,考虑到可能的预处理防御,他们采用不同的集成策略来集成这些方法.结果表明,该方法的正确率为93.5%,查全率为91.2%.然而,他们的防御是否能对更复杂的对抗样本产生作用有待研究.

Samizade等人[47]将对抗检测任务视为分类问题.他们设计了一个基于CNN的二维倒谱特征输入分类神经网络.对Carlini等人[24]和Alzantot等人[38]和常规样本生成的对抗样本构建的数据集进行评价,检测正确率可以达到近100%.此外,他们的方法可以检测未知的攻击.

5.1.2 网络验证

网络验证即利用不同网络的特有信息来检测当前的样本是否为对抗样本,对于单一扰动而言,在不同的网络上产生的效果可能会有很大差异,可以据此进行对抗样本检测.为了防御对抗攻击,原始样本与对抗样本之间的差异受到广泛探究.网络验证利用该差异来防御对抗样本,如在不同ASR上的识别结果差异,在网络中加入微小噪声而产生的输出差异等.该防御方法可以检测到新的不可见攻击,是对抗样本防御的一种有研究潜力的解决方案.受多版本编程原理的启发,Zeng等人[43]提出了一种检测语音对抗样本的新方法.基于不同ASR系统对正常语音的识别结果应该相同的事实,他们并行计算了几个ASR系统中每两个ASR系统输出的相似度分数,低于阈值的样本的相似度得分被归类为对抗样本.对由[2,39]和正常样本生成的对抗样本组成的数据集进行评估,结果表明该方法的检测正确率可以达到98.6%以上.

受语音分类器对自然噪声具有相对鲁棒性这一事实的启发,Rajaratnam等人[46]提出了一种新的对抗攻击防御方法.与利用语音预处理检测对抗样本不同,他们在特定频带中加入随机噪声,然后通过计算训练数据集中对抗样本和良性样本的泛洪分数来寻找阈值.泛洪值小于阈值的测试样本被视为对抗样本.此外,为了使防御方法更具鲁棒性,他们采用集成方法对不同配置下的泛洪评分进行综合.评价结果表明,该方法检测正确率为91.8%,查全率为93.5%.

Kwon等人[49]根据在原始样本和对抗样本之间加入使用语音修改的低水平失真后识别结果前后的差异,检测对抗样本.不同的识别结果被视为对抗样本.Carlini等人[24]生成的对抗样本和普通样本构建的数据集的评价结果表明,该方法能够消除对抗样本中的扰动.然而,他们的检测方法需要原始样本和对应的对抗样本,这显然不现实.因为通常情况下防御者很难同时获得上述两类样本.

与Yang等人[48]类似,Ma等人[50]提出了一种基于音视频时间相关性的新型对抗样本检测方法.根据对抗样本中音频与视频之间的相关性低于正常样本的特点,他们利用同步置信度作为音频与视频相关性的阈值,将低于该阈值的样本视为对抗样本.对Carlini等人[24]生成的对抗样本和良性样本组成的数据集进行评估,实验结果表明,他们的检测方法对此类攻击的检测是有效的.

5.2 主动防御

主动式防御方法的重点是使ASR系统对潜在的对抗攻击具有更强的鲁棒性.根据主动式防御技术的不同,本文将从对抗训练和模型强化两个方面对主动防御进行展开.

5.2.1 对抗训练

对抗训练即生成对抗样本来训练网络使对特定攻击具有鲁棒性.对抗训练是对抗样本的常用防御方法.这些方法的原理是通过对抗样本重新训练网络,使网络对攻击具有鲁棒性.尽管它能抵抗现有的对抗样本,但是再训练的网络可能无法抵御更先进的攻击.Sun等人[42]提出了一种动态对抗训练方法,使ASR更具鲁棒性.该算法将FGSM生成的对抗样本动态集成到训练集中,替换原始输入,对语音识别模型进行再训练.此外,他们利用教师-学生训练模型,使方法更可靠.他们的对抗式训练方法使相对错误率降低了23%,但是他们没有评估ASR系统中现有的攻击方法.

5.2.2 模型鲁棒性强化

模型鲁棒性强化即通过降噪去噪等方法对样本进行处理.近年来,以消除对抗扰动为核心的防御方法得到了广泛关注.由于对抗扰动小,所以该方法通常是有效的.Latif[44]提出了一种基于生成对抗网络(GAN)[52]的防御方法.他们利用生成器消除对抗样本中的对抗扰动.对将多种环境噪声添加到良性样本中生成的对抗样本和良性样本组成的对抗样本数据集进行评估,实验结果表明,该方法能够去除对抗样本中的一些扰动.

Esmaeilpour等人[51]提出了一种新型防御方法.它结合了卷积去噪深度学习的优点和支持向量机的分类性能,然后利用神经网络对谱图进行平滑处理,以减少对抗扰动带来的影响.对平滑后的谱图进行动态分区和网格移动处理,然后提取加速鲁棒特征,最后作为SVM的输入.对BackDoor[53]和DolphineAttack[18]生成的对抗样本数据集和合法样本数据集进行评估,实验结果表明,该方法能够较好地平衡深度学习模型和支持向量机的准确性和鲁棒性.

Yang[48]通过分析语音特性,提出了一种基于时间相关性的检测方法.他们首先对语音对抗样本使用了几种基本的输入转换,包括量化、局部平滑、降采样和自动编码.然后,根据语音序列具有显式的时间依赖性,计算整个序列的前k部分识别结果与整个序列的前k部分识别结果的一致性.一般来说,在原始样本中k部分的识别结果相同,而在对抗样本中k部分的识别结果不同.对Alzantot等人[38]、Yuan等人[19]、Carlini等人[24]构建的数据集进行评估,实验结果表明,他们的防御方法可以达到相对较高的检测精度.他们的方法为研究对抗样本和防御对策提供了一种新的思路.

类似于Zeng等人[43],Tamura等人[54]比较不同ASR输入的识别结果,提出了一种基于沙箱的防御方法来保护ASR系统.他们首先利用扰动消除技术(即动态降采样和去噪)来消除对抗样本中的扰动,然后比较原始输入和修改输出的DeepSpeech识别结果的CER,将CER大于阈值的样本作为对抗样本.对构建的数据集进行评估,实验结果表明,该方法能够成功防御对抗攻击.然而,他们没有指定评估中使用的具体攻击,因此不能评估他们对现有攻击防御的有效性.

Yang等人[55]提出了一种基于U-Net(语义分割网络)的注意模型U,使ASR系统对对抗攻击具有鲁棒性.受U-Net语音增强的启发,他们将注意力门集成到上采样块中,从输入中提取高级特征,从而保持语音特性.最后,U-Net输出增强的语音和对抗噪声.Khare等人[40]和Yakura等人[25]对由对抗样本组成的数据集进行评估,实验结果表明,该方法可以消除增强对抗样本中的扰动,提高样本的质量.

6 研究热点和存在的挑战

本节将讨论当前ASR系统中所面临的对抗样本挑战和可能的解决方案.虽然近年来已经提出了许多对抗样本攻击和防御的方法,但如何构建更严格、更符合实际的攻击方法和防御更先进的攻击仍是亟待解决的问题.另外,ASR系统中存在对抗样本的内在原因也有待研究.研究语音特性有助于构建更稳健的对抗策略.接下来的部分,首先讨论对抗样本的挑战和研究方向.

6.1 有关对抗样本的讨论

尽管已经提出许多对抗攻击,但仍然存在几个问题需要解决.下文将从构建严格攻击和可移植性两个方面探讨当前研究热点和存在的问题.

6.1.1 严格攻击的构建

在白盒攻击场景中,Liu等人[30]提出的方法可以将任意长句作为目标,生成高质量语音的对抗样本.尽管该方法可以达到先进的性能,但完全了解目标模型在实践中是不现实的.为了克服这一局限性,Alzantot等人[38]提出了无梯度生成对抗样本的方法,但该方法只对语音分类网络有效.因此Taori等人[39]扩展到攻击ASR系统.但他们只将短语层面作为攻击目标,而没有将句子层面作为攻击目标;此外,他们需要目标模型的逻辑输出,这在Over-The-Air攻击中是不现实的.因此,可以通过定义一个更严格的黑盒设置,提出了一种更切合实际的攻击.该攻击假设中,对手只能从目标ASR系统获取识别结果.在此定义下,如何设计出满足任意设置长句子作为目标、实现Over-The-Air攻击的严格黑盒攻击,是值得进一步研究的

6.1.2 对抗样本的可移植性

所谓对抗样本的可移植性,是指模型A生成的对抗样本不仅可以攻击模型A,还可以攻击未知模型B,其中模型A和模型B具有不同的架构.在图像领域,研究人员利用集成方法使对抗样本具有一定的可移植性.然而,关于语音对抗样本的相关研究还很少.Cisse等人[20]的方法表明,由DeepSpeech2系统生成的对抗样本对Google Voice是有效的.Kruek等人[37]的方法表明,对抗样本可以保持在同一架构下的不同数据集上训练的两个模型之间的可移转性.Vadillo等人[33]证明了用于分类网络的泛对抗样本在大量类的情况下具有较好的可移植性,但相应的结论不适用于ASR系统.因此,构建更多可移植的对抗样本可从以下两个方面考虑:一方面,深入挖掘ASR系统的通用对抗扰动;另一方面,研究ASR系统中现有的对抗样本理论也有助于发现通用对抗扰动.

6.2 防御对策的强化

对抗样本存在的原因目前仍是一个悬而未决的问题,如何保证ASR的安全性也是一个挑战.本节将从被动式防御和主动式防御两方面探讨一些可行的防御对策.

6.2.1 被动式防御

虽然近年来提出了几种对抗防御方法,但由于语音检测方法具有多样性,因此被动防御研究仍具有前景.对于分类网络,可以利用语音预处理来检测对抗样本的方法较少.此外,声学特征及其高阶版本在语音检测任务中应用和利用多样性集成方法检测对抗样本有待研究.在识别系统方面,Zeng等人[43]利用ASR的多样性差异识别结果来检测对抗样本;Kwon等人[49]利用ASR的扰动样本和正常样本的不同识别结果来检测对抗样本.此外,一些攻击[7,39]选择人类的不敏感区域作为扰动区域.今后,探索扰动特征将有助于检测对抗样本.

6.2.2 主动式防御

该对策的目标是使ASR系统具有更高的鲁棒性.下面将从以下两点来讨论这个问题,即对抗(再)训练和消除对抗扰动.在图像领域,对抗(再)训练已被证明可以有效提高网络模型的鲁棒性.在语音对抗样本中,Sun等人[42]提出了动态对抗训练来提高语音分类网络的鲁棒性.然而,尚无研究证明对抗训练可以使ASR系统具有鲁棒性.因此,利用最新的对抗样本进行对抗(再)训练是提高反卷积神经网络系统鲁棒性的一种有前景的方法.此外,利用语音增强去噪,对ASR系统的输入进行预处理,也是一种有前景的防御对抗样本的方法.如Latif等人[44]使用生成对抗网络(GAN)消除对抗扰动,Yang等人[55]使用基于U-Net的模型去消除对抗扰动.此外,挖掘语音特征也是一种很有前景的防御对抗样本的方法,有利于深入研究对抗样本.

7 结 语

近期研究表明,基于DNN的ASR系统易受到对抗样本的影响.本文回顾了ASR系统中已有的对抗样本,提出分类方法,对存在的语音对抗攻击进行分类.通过对现有对抗攻击及其防御的介绍,讨论了语音领域对抗样本的研究.最后,本文介绍了语音对抗样本的研究热点与存在的问题,对于日后的研究工作有着积极的引领作用.面向语音识别系统的对抗样本研究还有很多可拓展的空间,如对大多数对抗攻击的检测与防御仍有待进一步深入研究.

猜你喜欢
鲁棒性扰动样本
一类五次哈密顿系统在四次扰动下的极限环分支(英文)
基于扰动观察法的光通信接收端优化策略
武汉轨道交通重点车站识别及网络鲁棒性研究
直击高考中的用样本估计总体
随机微分方程的样本Lyapunov二次型估计
一种基于三维小波变换的鲁棒视频水印方案
电子节气门非线性控制策略
基于鲁棒性改进理论的大面积航班延误治理分析
基于支持向量机的测厚仪CS值电压漂移故障判定及处理
天津大神堂海洋特别保护区生境修复初步评价