Hidden Voice Attack | Adversarial Attack on Audio

Adversarial Attack on Audio

前言
之前自己学习的方向主要是针对图像的对抗攻击,今天学习了一个关于于###音频的attack。

Attacks on ASRHidden Voice Attack | Adversarial Attack on Audio

ASR(Auto speech Recognition)即自动语音识别,将你说的话放到model里会识别出话对应的文字。如何攻击这个model?可以将这一段音频想象成一个一维的图片,对这一维做fgsm攻击算出perturbations,然后加在原始的音频上,会导致识别音频识别错误。

Attacks on ASV

Hidden Voice Attack | Adversarial Attack on Audio
ASR(Auto speaker verification),做的是可以根据你input的音频判别出是哪一个speaker所讲的话,我们可以用类似上边的方法去产生perturbations去加在你的音频上,去误导model的识别结果。

Hidden Voice Attack

Hidden Voice Attack | Adversarial Attack on Audio
这个工作很厉害,他做的就是将正常的音频变成噪声音频之后model仍然可以识别,就像上图的例子,原本的“Hey Sir!”变成一个段混乱的带有噪声的音频,人耳是无法听清的,但依然可以被model识别成“Hey Sir!”。这个东西有多恐怖,假如你在公众场合播放这段杂音,所有使用iphone的人的手机都会被唤醒。
Hidden Voice Attack | Adversarial Attack on Audio
这张图展示了在做hidden voice attack的时候原本的音频和被攻击之后的音频的差别。可以看出这段音频和你的原始音频已经大不相同的,但仍可以让你的model识别成原始音频一样的结果。

Hidden vocie 是如何实现的呢?

信号预处理

Hidden Voice Attack | Adversarial Attack on Audio
和之前看到的工作不一样,之前的工作攻击的都是model,使你的model产生一些判断错误的行为,当然model都是提前train好的。而这个反而是让你的model在inference的时候能被正确辨识,实现的是一段音讯加上perturbations,你人听不懂,而model照样可以识别。

1.Audio Sample
2.Preprocessing
         A.Low-Pass Filter 允许低频的讯号通过,会滤掉一些频率太高的讯号
         B.Noise Removal 进行噪声移除
3. Signal Processing
         C. FFT(快速傅里叶变换) 利用fft对语音信号进行快速傅里叶变换,得到信号的频谱特性
         D.Magnitude
         E.Mel Filtering 符合人耳设计,在低频段滤波器比较密集,在高频段滤波器比较少
         F.Log of Powers
         G.DCT 得到feature 作为model的input
4.Model Inference

如何attack给音频加Perturbation?

Hidden Voice Attack | Adversarial Attack on Audio
是图中显示的这四种方式进行添加perturbation,上边是原始的音频,下边是使用四种方法加完音讯之后的噪声音频。

Time Domain Inversion
Hidden Voice Attack | Adversarial Attack on Audio
利用了mFFT多对一的性质,input可能是两个不一样的波,但最后得到做出来的magnitude fft是一样的。也就是说一段音讯进行修改,但是可以让他们的magnitude fft结果是一样的。我们对这段波一直做反转,这样已经听不出来原始的音讯了,原先的音讯就变成锯齿状了,但最后的magnitude fft结果是一样的。

Random Phase Generation
Hidden Voice Attack | Adversarial Attack on Audio
调整a和b,使得magnitude仍然相同,phase会跟原本不同。
High Frequency Addition
Hidden Voice Attack | Adversarial Attack on Audio
利用low-pass filter的会过滤高频的波的特点,所以在原始音频上加入很多高音频,对最后model的input也不会产生太大的影响。

Time Scaling
Hidden Voice Attack | Adversarial Attack on Audio
在时间轴上做一些跟动,将音讯快转的同时保证音讯的sample rate是一样的,将音讯快转到model能正确识别,但人听不清。

以上部分图片来自李宏毅Youtube视频。

如果想要获取更多资源以及技术请加入我们(qq群、微信群以及公众号二维码):
Hidden Voice Attack | Adversarial Attack on Audio