CN113223515B - 一种对抗攻击免疫的自动语音识别方法 - Google Patents
一种对抗攻击免疫的自动语音识别方法 Download PDFInfo
- Publication number
- CN113223515B CN113223515B CN202110357849.4A CN202110357849A CN113223515B CN 113223515 B CN113223515 B CN 113223515B CN 202110357849 A CN202110357849 A CN 202110357849A CN 113223515 B CN113223515 B CN 113223515B
- Authority
- CN
- China
- Prior art keywords
- model
- voice
- audio
- generated
- training
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 93
- 230000036039 immunity Effects 0.000 title claims abstract description 9
- 238000012549 training Methods 0.000 claims abstract description 104
- 238000005070 sampling Methods 0.000 claims abstract description 72
- 230000006870 function Effects 0.000 claims abstract description 61
- 230000007123 defense Effects 0.000 claims abstract description 37
- 238000013256 Gubra-Amylin NASH model Methods 0.000 claims abstract description 12
- 238000012545 processing Methods 0.000 claims abstract description 10
- 239000013598 vector Substances 0.000 claims description 51
- 230000008569 process Effects 0.000 claims description 42
- 210000002569 neuron Anatomy 0.000 claims description 18
- 230000008485 antagonism Effects 0.000 claims description 16
- 230000003042 antagnostic effect Effects 0.000 claims description 15
- 230000004913 activation Effects 0.000 claims description 14
- 238000010276 construction Methods 0.000 claims description 6
- 238000000605 extraction Methods 0.000 claims description 4
- 238000012360 testing method Methods 0.000 claims description 3
- OAICVXFJPJFONN-UHFFFAOYSA-N Phosphorus Chemical compound [P] OAICVXFJPJFONN-UHFFFAOYSA-N 0.000 claims description 2
- 239000000126 substance Substances 0.000 claims description 2
- 230000003053 immunization Effects 0.000 claims 3
- 238000002649 immunization Methods 0.000 claims 3
- 238000005516 engineering process Methods 0.000 description 8
- 230000008859 change Effects 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 241000238558 Eucarida Species 0.000 description 1
- 230000008901 benefit Effects 0.000 description 1
- 235000000332 black box Nutrition 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 238000007796 conventional method Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 238000003058 natural language processing Methods 0.000 description 1
- 238000011160 research Methods 0.000 description 1
- 230000005236 sound signal Effects 0.000 description 1
- 230000008685 targeting Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L15/00—Speech recognition
- G10L15/22—Procedures used during a speech recognition process, e.g. man-machine dialogue
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L15/00—Speech recognition
- G10L15/06—Creation of reference templates; Training of speech recognition systems, e.g. adaptation to the characteristics of the speaker's voice
- G10L15/063—Training
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L15/00—Speech recognition
- G10L15/26—Speech to text systems
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L25/00—Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00
- G10L25/03—Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00 characterised by the type of extracted parameters
- G10L25/24—Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00 characterised by the type of extracted parameters the extracted parameters being the cepstrum
Landscapes
- Engineering & Computer Science (AREA)
- Computational Linguistics (AREA)
- Health & Medical Sciences (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Human Computer Interaction (AREA)
- Physics & Mathematics (AREA)
- Acoustics & Sound (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Artificial Intelligence (AREA)
- Compression, Expansion, Code Conversion, And Decoders (AREA)
Abstract
本发明公开了一种对抗攻击免疫的自动语音识别方法,包括以下步骤:A:选取语音数据集,得到语音采样数据;B:根据语音采样数据生成语音对抗样本;C:对语音数据集中的音频以及语音对抗样本根据设定的采样率进行采样,得到防御模型的输入;D:构建基于GAN模型的DD‑GAN防御模型;E:分别确定G模型与D模型的损失函数,并根据损失函数对防御模型DD‑GAN进行训练;F:将待识别语音利用防御模型DD‑GAN处理后,再通过语音识别模型进行识别。本发明能够提高语音识别模型抵抗恶意攻击的能力。
Description
技术领域
本发明涉及语音识别领域,尤其涉及一种对抗攻击免疫的自动语音识别方法。
背景技术
近年来,随着互联网技术的发展,自动语音识别技术的运用越来越广泛。语音识别作为一种自然语言处理技术,可以将输入的音频信号转为文字。目前,语音识别在生活中的应用主要包含苹果siri、智能音箱等产品,随着技术的完善,语音识别在物联网方面的应用会越来越普及。自动语音识别技术需要对输入的音频进行预处理,进行语音特征提取,因此,语音对抗样本的研究极为重要。
语音识别技术的普及一定程度上会导致安全领域的隐患,因此,自动语音识别技术的对抗性攻击和防御开始被人们关注。对抗性攻击是指针对原始样本添加细微的扰动,在人类难以查别的情况下让模型识别错误。根据模型内部结构是否可知,对抗性攻击可以分为白盒攻击和黑盒攻击。对抗样本的防御就是通过一定的方法,增强模型的鲁棒性或者降低对抗样本的攻击性,进而减少或者完全消除对抗样本对于模型的负面影响。
近几年来出现的语音对抗攻击攻击性越来越强,种类越来越多,但相应的防御模型出现的却很少,这使得语音识别领域安全问题开始凸显,也为语音识别技术的大规模商业化埋下了一定的隐患。
发明内容
本发明的目的是提供一种对抗攻击免疫的自动语音识别方法,利用防御模型对待识别语音进行处理后再进行语音识别,从而有效地防御对抗样本的攻击,极大地提高了语音识别模型抵抗恶意攻击的能力。
本发明采用下述技术方案:
一种对抗攻击免疫的自动语音识别方法,依次包括以下步骤:
A:选取语音数据集,并将语音数据集中的音频根据设定的采样频率进行采样,选取最长音频的采样结果作为长度标准,然后对低于长度标准的所有采样结果分别进行数据补零对齐,最终得到语音采样数据;
B:根据步骤A中得到的语音采样数据生成语音对抗样本;
C:对步骤A中选取的语音数据集中的音频以及步骤B中的语音对抗样本根据设定的采样率进行采样,然后选取语音数据集和语音对抗样本中的最长的采样结果作为长度标准,对低于长度标准的语音数据集和语音对抗样本中的每一个采样结果分别进行补零对齐,得到防御模型的输入;将语音数据集中的音频对应的数据称为原音频,语音对抗样本对应的数据称为对抗音频;
D:构建基于GAN模型的DD-GAN防御模型;DD-GAN模型包括生成模型和判别模型,生成模型G模型用于将对抗音频进行去对抗性处理,生成无对抗性的音频;判别模型D模型用于判断G模型生成的音频是否具有对抗性;
E:分别确定G模型与D模型的损失函数,并根据损失函数对防御模型DD-GAN进行训练;
F:将待识别语音利用步骤E中训练好的防御模型DD-GAN处理后,再通过语音识别模型进行识别。
所述的步骤A中,选取Mozilla Common Voice database语音数据集作为数据集,使用16KHZ的采样频率进行采样得到语音采样数据。
所述的步骤B中,利用步骤A中得到的语音采样数据生成两种类型的语音对抗样本。
所述的步骤B包括具体步骤:
B1:根据C&W方法生成第一种语音对抗样本;
根据C&W方法生成语音对抗样本的具体方法如下:
B11:将步骤A中得到的语音采样数据加上一个随机的噪声δ,随机的噪声δ符合高斯分布;
B12:首先将混入随机的噪声δ的语音采样数据通过梅尔频率倒谱系数进行特征提取,得到语音特征;然后将语音特征输入到语音识别模型中,得到以文本形式输出的识别结果;
B13:利用损失函数对加入语音采样数据中的随机的噪声δ进行反向传播训练,最终得到训练后的噪声δ;
损失函数为:
其中,minimize表示最小化,δ为添加的随机的噪声;||δ||2表示δ的L2范式,c为权值,x表示语音采样数据,x+δ表示添加噪声δ后的语音采样数据;T(x+δ)表示步骤B12中得到的添加噪声δ的语音数据经过处理后输入语音识别模型中输出的识别结果文本,t表示目标语音对应的文本;l(T(x+δ),t)表示添加噪声δ后的语音采样向量经过MFCC处理后放入DeepSpeech中的识别结果与目标语音对应的文本经过CTC编码对齐后得到损失值,l(T(x+δ),t)的逻辑意义表示添加噪声的语音特征的识别结果与目标语音差异最小,dBx(δ)≤τ为该损失函数的约束条件,dBx(δ)=dB(δ)-dB(x),表示添加的噪声与原语音采样数据的差异,τ为常数;
B14:将步骤B13迭代生成的训练后的噪声δ与步骤A中生成的语音采样数据相加,写入wav格式的文件,得到第一种语音对抗样本;
B2:根据有目标的PGD攻击方法生成第二种语音对抗样本:
根据有目标的PGD攻击方法生成第二种语音对抗样本的具体方法如下:
B21:定义参数取值,参数包括学习率、每一次迭代的步幅大小及迭代次数。
B22:根据下述公式进行梯度下降,迭代生成对抗语音数据。
其中,表示第i次迭代生成的对抗语音数据,clip表示每次迭代的步幅,α表示学习率,x表示步骤A中获得语音采样数据,t表示目标语音对应的文本,表示第i次迭代产生的对抗语音数据输入到语音识别模型DeepSpeech中的识别结果文本与目标语音对应的文本t经过CTC编码对齐后得到损失值,表示模型的梯度值经过符号函数sign处理的结果;
B23:将最后一次迭代生成的对抗语音数据写入wav格式的文件,得到第二种语音对抗样本。
所述的步骤C中,防御模型的输入为一维特征向量,采样率为16KHz。
所述的步骤D中,
G模型的构建过程如下:
D11:构造G模型的编码部分;
G模型包含12个编码器,每一个编码器均为一个卷积的过程,编码器结构包括卷积类型、步长、激活函数和卷积核大小;
D12:构建隐变量;
D13:构造G模型的解码部分;
G模型包含12个解码器,每一个解码器均为一个反卷积的过程,解码器的结构包括反卷积类型、步长、激活函数和卷积核大小;
其中,12个解码器依次为第一解码器,第二解码器,……,第十二解码器;12个编码器依次为第一编码器,第二编码器,……,第十二编码器;
G模型的生成过程如下:
D21:将步骤C中获得的原音频作为输入,依次使用每一个编码器进行编码操作;将最后一次编码操作后得到的特征向量与隐变量进行拼接;
D22:将特征向量与隐变量进行拼接后的特征向量,依次使用每一个解码器进行解码操作,在第一解码器至第十一解码器每次解码完成后,分别将解码得到的特征向量,与对应的编码器编码得到的特征向量进行拼接作为下一次解码的输入;其中,第一解码器与第十一编码器对应,第二解码器与第十编码器对应,……,第十一解码器与第一编码器对应;
D23:第十二解码器解码后得到的特征向量,与步骤D21中作为输入的原音频为大小相等的特征向量;最终得到G模型生成的语音数据,记为生成音频。
D模型的结构构建过程如下:
D31:构造与G模型编码部分相同的编码器;
D32:构造一个一维全卷积,使得编码得到的特征向量的通道数变为1,卷积核的大小为1,步长为1;
D33:构造一个全连接层,全连接层的输入为上一步的输出向量,全连接层的输出为一个表示概率值的神经元,若神经元为1则表示输入的音频不具有对抗性,若神经元为0则表示输入的音频具有对抗性;
D模型的前向传播过程为:
D41:D模型的输入为变量组,变量组有两种情况:
第一种情况,输入的变量组为对抗音频与原音频组合,D模型中全连接层输出的神经元为1,表示原音频不具有对抗性;第二种情况为生成音频与对抗音频的组合,D模型中全连接层输出的神经元为0,表示生成音频具有对抗性;
D42:将输入进行编码得到的编码向量经过一维卷积得到通道数为1的特征向量。
D43:将步骤D42中生成的特征向量进行全连接,得到D模型中全连接层输出的神经元。
所述的步骤D中:
G模型的构建过程中,
在步骤D11中:编码器的卷积类型为一维卷积,步长为2,卷积核大小为31;激活函数为LeakyRelu;
其中,a的取值为0.01;
在步骤D12中:隐变量的大小为经过12个编码器编码后形成的特征向量的大小;
在步骤D13中:解码器的卷积类型为一维反卷积,步长为2,激活函数为LeakyRelu,卷积核的大小为31;
G模型的生成过程中,
在步骤D21中:将步骤C中获得的原音频作为输入并依次使用每一个编码器进行编码操作后,得到大小为4×1024的特征向量,其中1024为通道的数量;原音频为一维特征向量,大小为16384;将最后一次编码操作后得到的特征向量与隐变量进行拼接后,得到大小为4×2048的特征向量;
在步骤D22中:将大小为4×2048的特征向量依次使用每一个解码器进行解码操作;
D模型的前向传播过程中,
在步骤D41中:输入的变量组为对抗音频大小为16384,原音频大小为16384,抗音频与原音频组合后大小为16384×2;生成音频大小为16384,生成音频与对抗音频的组合后大小为16384×2;
在步骤D42中:将大小为16384×2的输入进行编码,得到大小为4×1024的编码向量;大小为4×1024的编码向量经过一维卷积得到通道数为1且大小为4×1的特征向量;
在步骤D43中:将步骤D42中生成的大小为4×1的特征向量进行全连接。
所述的步骤E中:
G模型的损失函数为:
其中,n为原音频的训练集的音频个数,为第i个原音频对应的对抗音频,x(i)为第i个原音频,为G模型产生的生成音频,表示D模型判断G模型产生的生成音频是否具有对抗性的概率,λ为调节参数,表示L2范式,z为隐变量;
D模型的损失函数为:
所述的步骤E中:
将原音频以及对抗音频分别划分为训练集和测试集,训练过程分为两步:
E1:先利用原音频的训练集与C&W生成的对抗音频的训练集进行训练;
E2:在保持步骤E1中的模型参数的基础上,利用原音频训练集与有目标的PGD生成的对抗音频的训练集进行训练;训练方法采用反向传播方法。
所述的步骤E中:
采用原音频的训练集与C&W生成的对抗音频的训练集进行训练的过程如下:
E11:初始化G模型和D模型;
E12:训练D模型,将原音频的训练集与C&W生成的对抗音频的训练集组合进行训练,根据D模型的损失函数进行梯度下降更新D模型的参数;
E13:训练D模型,将G模型的生成音频与C&W生成的对抗音频的训练集组合进行训练,根据D模型的损失函数进行梯度下降更新D模型的参数;
E14:固定D模型的参数,将D模型与G模型拼接,即将G模型的输出直接作为D模型的输入,根据G模型的损失函数进行梯度下降更新G模型的参数;
E15:返回步骤E13进行迭代,直至达到指定的迭代次数,停止训练过程,最终得到优化后的防御模型;
采用原音频训练集与有目标的PGD生成的对抗音频的训练集进行训练的过程如下:
E21:选择第一步中训练好的G模型与D模型作为初始状态。
E22:训练D模型,将原音频的训练集与有目标的PGD生成的对抗音频的训练集组合进行训练,根据D模型的损失函数进行梯度下降更新D模型的参数。
E23:训练D模型,将G模型的生成音频与有目标的PGD生成的对抗音频的训练集组合进行训练,根据D模型的损失函数进行梯度下降更新D模型的参数。
E24:固定D模型的参数,将D模型与G模型拼接,即将G模型的输出直接作为D模型的输入,根据G模型的损失函数进行梯度下降更新G模型的参数。
E25:返回步骤E23进行迭代,直至达到指定的迭代次数,停止训练过程,最终得到优化后的防御模型DD-GAN。
本发明中的防御模型DD-GAN能够对对抗音频的攻击进行有效地防御,在利用防御模型对待识别语音进行处理后再进行语音识别,极大地提高了语音识别模型抵抗恶意攻击的能力,能够有效提升语音识别的识别准确率,对语音安全及语音识别领域有着很好的应用前景。
附图说明
图1为本发明的流程示意图。
具体实施方式
以下结合附图和实施例对本发明作以详细的描述:
如图1所示,本发明所述的语音对抗攻击免疫的自动语音识别方法,包括以下步骤:
A:选取语音数据集,并将语音数据集中的音频根据设定的采样频率进行采样,选取最长音频的采样结果作为长度标准,然后对低于长度标准的所有采样结果分别进行数据补零对齐,最终得到语音采样数据。
本实施中,可选取Mozilla Common Voice database语音数据集中的100条音频作为数据集,使用16KHZ的采样频率进行采样得到语音采样数据。补零对齐为本领域常规技术,在此不再赘述,补零对齐用于将语音数据集中的各个音频的采样结果统一为等长的语音采样数据。
B:根据步骤A中得到的语音采样数据生成语音对抗样本。
语音对抗样本是通过设计一种特别的输入使语音识别模型输出错误的结果,该输入即为语音对抗样本。考虑到单一类型的语音对抗样本存在偶然性的风险,而多种类型的语音对抗样本可以从不同角度来检测模型的鲁棒性,使得数据集更加多样化,保证后期的实验结果更为准确。因此,本发明中,利用步骤A中得到的语音采样数据生成两种类型的语音对抗样本。
所述的步骤B包括以下具体步骤:
B1:根据C&W方法生成第一种语音对抗样本。
C&W(Carlini and Wagner Attacks)方法是现有的典型的有目标的语音对抗样本生成方法。有目标意味着我们可以定向指定当前输入到语音识别模型中的音频的识别结果,从而实现定向攻击。
根据C&W方法生成语音对抗样本的具体方法如下:
B11:将步骤A中得到的语音采样数据加上一个随机的噪声δ,随机的噪声δ符合高斯分布。
B12:首先,将混入随机的噪声δ的语音采样数据通过梅尔频率倒谱系数(MFCC)进行特征提取,得到语音特征,然后将语音特征输入到语音识别模型中,得到以文本形式输出的识别结果。本发明中,语音识别模型采用DeepSpeech模型;
B13:利用损失函数对加入语音采样数据中的随机的噪声δ进行反向传播训练,最终得到训练后的噪声δ;加入训练后的噪声δ能够使语音采样数据被识别成目标文本,同时能够保证加入训练后的噪声δ的语音采样数据与原语音采样数据的差异最小。
损失函数为:
定义损失函数(1)为针对C&W方法所使用的损失函数;其中minimize表示最小化,即目标为最小化该损失函数;δ为步骤B11中添加的随机的噪声;表达式的第一项||δ||2表示δ的L2范式,即δ中各元素的平方和再求根,其逻辑意义表示最小化添加的噪声值,即保证未加入随机噪声的语音采样数据与加入噪声的语音采样数据的差异最小;c为权值,决定两个约束的所占比重;x表示语音采样数据,x+δ表示添加噪声δ后的语音采样数据;T(x+δ)表示步骤B12中得到的添加噪声δ的语音数据经过处理后输入语音识别模型中输出的识别结果文本,t表示目标语音对应的文本;l(T(x+δ),t)整个表达式表示添加噪声δ后的语音采样向量经过MFCC处理后放入DeepSpeech中的识别结果与目标语音对应的文本经过CTC编码对齐后得到损失值,为本领域常规技术;l(T(x+δ),t)的逻辑意义表示添加噪声的语音特征的识别结果与目标语音差异最小,dBx(δ)≤τ为该损失函数的约束条件,dBx(δ)=dB(δ)-dB(x),表示添加的噪声与原语音采样数据的差异,τ为一个常数,这个方式是该领域的常规评价手段。
B14:将步骤B13迭代生成的训练后的噪声δ与步骤A中生成的语音采样数据相加,写入wav格式的文件,得到第一种语音对抗样本。
B2:根据有目标的PGD攻击方法生成第二种语音对抗样本。
PGD(Project Gradient Descent)攻击是一种迭代攻击,PGD是FGSM(FastGradient Sign Method(快速梯度下降法))的升级版,由于复杂的非线性模型具有在极小的范围内剧烈变化的概率,所以梯度跨度大可能就无法攻击成功,所以PGD考虑把FGSM的一大步替换为多小步。本发明采用的为有目标的PGD攻击,具体实施方法如下:
B21:定义参数取值,参数包括学习率、每一次迭代的步幅大小及迭代次数。
B22:根据下述公式进行梯度下降,迭代生成对抗语音数据。
其中表示第i次迭代生成的对抗语音数据;clip表示每次迭代的步幅,即约束每一次的跨度;α表示学习率;x表示步骤A中获得语音采样数据;t表示目标语音对应的文本,表示第i次迭代产生的对抗语音数据输入到语音识别模型DeepSpeech中的识别结果文本与目标语音对应的文本t经过CTC编码对齐后得到损失值,为本领域常规技术;表示模型的梯度值经过符号函数sign处理的结果;公式(2)是一个标准的反向传播过程。
B23:将最后一次迭代生成的对抗语音数据写入wav格式的文件,得到第二种语音对抗样本。
通过上述步骤,能够根据步骤A中得到的语音采样数据生成两种类型的语音对抗样本。
C:对步骤A中选取的语音数据集中的音频以及步骤B中的语音对抗样本根据设定的采样率进行采样,然后选取语音数据集和语音对抗样本中的最长的采样结果作为长度标准,对低于长度标准的语音数据集和语音对抗样本中的每一个采样结果分别进行补零对齐,最终得到防御模型的输入,防御模型的输入为一维特征向量。
本发明中,采取16KHz的采样率采样,补零对齐用于将语音数据集中的各个音频的采样结果和语音对抗样本的采样结果统一为等长的数据,最终对齐得到的数据均为一维特征向量,大小为16384。其中,将语音数据集中的音频对应的数据称为原音频,语音对抗样本对应的数据称为对抗音频。将原音频以及对抗音频分别划分为训练集和测试集。
D:构建防御模型;
本发明中,防御模型基于GAN模型构建而成,将基于GAN模型构建而成的防御模型定义为Deep Defense GAN模型,简称为DD-GAN模型。
DD-GAN模型包括两部分,第一部分为生成模型,本发明中简称为G模型,生成模型的作用是将对抗音频进行去对抗性处理,即生成无对抗性的音频;第二部分为判别模型,本发明中简称为D模型,判别模型的作用是判断G模型生成的音频是否具有对抗性。
本发明中,G模型的构建过程如下:
D11:构造G模型的编码部分;
本发明,G模型包含12个编码器,每一个编码器均为一个卷积的过程,编码器结构包括卷积类型、步长、激活函数和卷积核大小。
本实施例中,编码器的卷积类型为一维卷积,步长为2,卷积核大小为31。此种卷积结构可以达到特征向量大小每次减半的效果。激活函数为LeakyRelu,其表达式为
其中,α的取值为0.01,表示x<0时的梯度值;激活函数LeakyRelu的好处在于在反向传播过程中,对于激活函数LeakyReLU中x<0的部分,也可以计算得到梯度。
D12:构建隐变量,隐变量大小为经过12个编码器编码后形成的特征向量的大小。该隐变量可以改变学习的概率分布,从而使最终生成的音频更为准确。
D13:构造G模型的解码部分,
本发明中,G模型包含12个解码器,每一个解码器均为一个反卷积的过程,解码器的结构包括反卷积类型、步长、激活函数和卷积核大小。
本实施例中,解码器的卷积类型为一维反卷积,步长为2,激活函数为LeakyRelu,卷积核的大小为31。
本发明中,12个解码器依次为第一解码器,第二解码器,……,第十二解码器;12个编码器依次为第一编码器,第二编码器,……,第十二编码器;
本发明中,G模型的生成过程如下:
D21:将步骤C中获得的原音频作为输入,依次使用每一个编码器进行编码操作(12个编码器共进行12次编码操作),得到大小为4×1024的特征向量,其中1024为通道的数量;原音频为一维特征向量,大小为16384;
将最后一次编码操作后(即第十二编码器编码操作后)得到的特征向量与隐变量进行拼接,得到大小为4×2048的特征向量;
D22:将大小为4×2048的特征向量,依次使用每一个解码器进行解码操作(12个解码器共进行12次解码操作),在第一解码器至第十一解码器每次解码完成后,分别将解码得到的特征向量,与对应的编码器编码得到的特征向量进行拼接作为下一次解码的输入;其中,第一解码器与第十一编码器对应,第二解码器与第十编码器对应,……,第十一解码器与第一编码器对应;
D23:第十二解码器解码后得到的特征向量,与步骤D21中作为输入的原音频为大小相等的特征向量;最终得到G模型生成的语音数据,记为生成音频。
本发明中,D模型的结构构建过程如下:
D31:构造与G模型编码部分相同的编码器。
D32:构造一个一维全卷积,使得编码得到的特征向量的通道数变为1;卷积核的大小为1,步长为1;
D33:构造一个全连接层,全连接层的输入为上一步的输出向量,全连接层的输出为一个表示概率值的神经元,若神经元为1则表示输入的音频不具有对抗性,若神经元为0则表示输入的音频具有对抗性。
本发明中,D模型的前向传播过程(即判别过程)为:
D41:D模型的输入为变量组,变量组有两种情况:
第一种情况,输入的变量组为对抗音频(大小为16384)与原音频(大小为16384)组合,即大小为16384×2,D模型中全连接层输出的神经元为1,表示原音频不具有对抗性;
第二种情况为生成音频(大小为16384)与对抗音频(大小为16384)的组合,即大小为16384×2,D模型中全连接层输出的神经元为0,表示生成音频具有对抗性。
D42:将输入(大小为16384×2)进行编码得到编码向量(大小为4×1024)。编码向量(大小为4×1024)经过一维卷积得到通道数为1的特征向量(大小为4×1)。
D43:将步骤D42中生成的大小为4×1的特征向量进行全连接,得到D模型中全连接层输出的神经元。
E:分别确定G模型与D模型的损失函数,并根据损失函数对防御模型DD-GAN进行训练;
训练过程分为两步,
E1:先利用原音频的训练集与C&W生成的对抗音频的训练集进行训练;
E2:在保持第一步训练即步骤E1中的模型参数的基础上,利用原音频训练集与有目标的PGD生成的对抗音频的训练集进行训练;训练方法采用反向传播方法。
其中,G模型的损失函数为:
其中,n为原音频的训练集的音频个数,为第i个原音频对应的对抗音频,x(i)为第i个原音频,为G模型产生的生成音频。表示D模型判断G模型产生的生成音频是否具有对抗性的概率,λ为调节参数,用于控制在两个不同的目标中的平衡关系,表示L2范式,即G模型生成的音频与原音频的差值的平方开根;整个表达式的逻辑意义分为两个方面;第一方面对应第一个表达式,表示希望G生成的音频对抗性最小;另一方面对应第二个表达式,表示G模型产生的生成音频与原音频的差异最小化;z为隐变量;
D模型的损失函数为:
D模型的目的很明确,一方面保证能够将原音频判断为真(概率值为1),另一方面保证将G模型生成的音频判断为假(概率值为0)。
防御模型DD-GAN的训练过程,采用原音频的训练集与C&W生成的对抗音频的训练集进行训练的过程如下:
E11:初始化G模型和D模型;
E12:训练D模型,将原音频的训练集与C&W生成的对抗音频的训练集组合进行训练,根据D模型的损失函数进行梯度下降更新D模型的参数;
E13:训练D模型,将G模型的生成音频与C&W生成的对抗音频的训练集组合进行训练,根据D模型的损失函数进行梯度下降更新D模型的参数;
E14:固定D模型的参数,将D模型与G模型拼接,即将G模型的输出直接作为D模型的输入,根据G模型的损失函数进行梯度下降更新G模型的参数;
E15:返回步骤E13进行迭代,直至达到指定的迭代次数,停止训练过程,最终得到优化后的防御模型DD-GAN;
采用原音频训练集与有目标的PGD生成的对抗音频的训练集进行训练的过程如下:
E21:选择第一步中训练好的G模型与D模型作为初始状态。
E22:训练D模型,将原音频的训练集与有目标的PGD生成的对抗音频的训练集组合进行训练,根据D模型的损失函数进行梯度下降以更新D模型的参数。
E23:训练D模型,将G模型的生成音频与有目标的PGD生成的对抗音频的训练集组合进行训练,根据D模型的损失函数进行梯度下降以更新D模型的参数。
E24:固定D模型的参数,将D模型与G模型拼接,即将G模型的输出直接作为D模型的输入,根据G模型的损失函数进行梯度下降更新G模型的参数。
E25:返回步骤E23进行迭代,直至达到指定的迭代次数,停止训练过程,最终得到优化后的防御模型DD-GAN。
F:将待识别语音利用步骤E中训练好的防御模型DD-GAN处理后,再通过语音识别模型进行识别。
本发明中,防御模型DD-GAN能够对对抗音频的攻击进行防御;从而达到优化自动语音识别的目的,能够有效提升语音识别的识别准确率,对语音安全及语音识别领域有着很好的应用前景。
Claims (5)
1.一种对抗攻击免疫的自动语音识别方法,其特征在于:依次包括以下步骤:
A:选取语音数据集,并将语音数据集中的音频根据设定的采样频率进行采样,选取最长音频的采样结果作为长度标准,然后对低于长度标准的所有采样结果分别进行数据补零对齐,最终得到语音采样数据;
B:根据步骤A中得到的语音采样数据生成语音对抗样本;
步骤B中,利用步骤A中得到的语音采样数据生成两种类型的语音对抗样本;
步骤B包括具体步骤:
B1:根据C&W方法生成第一种语音对抗样本;C&W方法指Carlini and Wagner Attacks方法;
根据C&W方法生成语音对抗样本的具体方法如下:
B11:将步骤A中得到的语音采样数据加上一个随机的噪声δ,随机的噪声δ符合高斯分布;
B12:首先将混入随机的噪声δ的语音采样数据通过梅尔频率倒谱系数进行特征提取,得到语音特征;然后将语音特征输入到语音识别模型中,得到以文本形式输出的识别结果;
B13:利用损失函数对加入语音采样数据中的随机的噪声δ进行反向传播训练,最终得到训练后的噪声δ;
损失函数为:
其中,minimize表示最小化,δ为添加的随机的噪声;||δ||2表示δ的L2范式,c为权值,x表示语音采样数据,x+δ表示添加噪声δ后的语音采样数据;T(x+δ)表示步骤B12中得到的添加噪声δ的语音数据经过处理后输入语音识别模型中输出的识别结果文本,t表示目标语音对应的文本;l(T(x+δ),t)表示添加噪声δ后的语音采样向量经过MFCC处理后放入DeepSpeech中的识别结果与目标语音对应的文本经过CTC编码对齐后得到损失值,l(T(x+δ),t)的逻辑意义表示添加噪声的语音特征的识别结果与目标语音差异最小,dBx(δ)≤τ为该损失函数的约束条件,dBx(δ)=dB(δ)-dB(x),表示添加的噪声与原语音采样数据的差异,τ为常数;
B14:将步骤B13迭代生成的训练后的噪声δ与步骤A中生成的语音采样数据相加,写入wav格式的文件,得到第一种语音对抗样本;
B2:根据有目标的PGD攻击方法生成第二种语音对抗样本:PGD攻击方法指ProjectGradient Descent攻击方法;
根据有目标的PGD攻击方法生成第二种语音对抗样本的具体方法如下:
B21:定义参数取值,参数包括学习率、每一次迭代的步幅大小及迭代次数;
B22:根据下述公式进行梯度下降,迭代生成对抗语音数据;
其中,表示第i次迭代生成的对抗语音数据,clip表示每次迭代的步幅,α表示学习率,x表示步骤A中获得语音采样数据,t表示目标语音对应的文本,表示第i次迭代产生的对抗语音数据输入到语音识别模型DeepSpeech中的识别结果文本与目标语音对应的文本t经过CTC编码对齐后得到损失值,表示模型的梯度值经过符号函数sign处理的结果;
B23:将最后一次迭代生成的对抗语音数据写入wav格式的文件,得到第二种语音对抗样本;
C:对步骤A中选取的语音数据集中的音频以及步骤B中的语音对抗样本根据设定的采样率进行采样,然后选取语音数据集和语音对抗样本中的最长的采样结果作为长度标准,对低于长度标准的语音数据集和语音对抗样本中的每一个采样结果分别进行补零对齐,得到防御模型的输入;将语音数据集中的音频对应的数据称为原音频,语音对抗样本对应的数据称为对抗音频;
D:构建基于GAN模型的DD-GAN防御模型;DD-GAN模型包括生成模型和判别模型,生成模型G模型用于将对抗音频进行去对抗性处理,生成无对抗性的音频;判别模型D模型用于判断G模型生成的音频是否具有对抗性;DD-GAN模型指Deep Defense GAN模型;
步骤D中,G模型的构建过程如下:
D11:构造G模型的编码部分;
G模型包含12个编码器,每一个编码器均为一个卷积的过程,编码器结构包括卷积类型、步长、激活函数和卷积核大小;
D12:构建隐变量;
D13:构造G模型的解码部分;
G模型包含12个解码器,每一个解码器均为一个反卷积的过程,解码器的结构包括反卷积类型、步长、激活函数和卷积核大小;
其中,12个解码器依次为第一解码器,第二解码器,……,第十二解码器;12个编码器依次为第一编码器,第二编码器,……,第十二编码器;
G模型的生成过程如下:
D21:将步骤C中获得的原音频作为输入,依次使用每一个编码器进行编码操作;将最后一次编码操作后得到的特征向量与隐变量进行拼接;
D22:将特征向量与隐变量进行拼接后的特征向量,依次使用每一个解码器进行解码操作,在第一解码器至第十一解码器每次解码完成后,分别将解码得到的特征向量,与对应的编码器编码得到的特征向量进行拼接作为下一次解码的输入;其中,第一解码器与第十一编码器对应,第二解码器与第十编码器对应,……,第十一解码器与第一编码器对应;
D23:第十二解码器解码后得到的特征向量,与步骤D21中作为输入的原音频为大小相等的特征向量;最终得到G模型生成的语音数据,记为生成音频;
D模型的结构构建过程如下:
D31:构造与G模型编码部分相同的编码器;
D32:构造一个一维全卷积,使得编码得到的特征向量的通道数变为1,卷积核的大小为1,步长为1;
D33:构造一个全连接层,全连接层的输入为上一步的输出向量,全连接层的输出为一个表示概率值的神经元,若神经元为1则表示输入的音频不具有对抗性,若神经元为0则表示输入的音频具有对抗性;
D模型的前向传播过程为:
D41:D模型的输入为变量组,变量组有两种情况:
第一种情况,输入的变量组为对抗音频与原音频组合,D模型中全连接层输出的神经元为1,表示原音频不具有对抗性;第二种情况为生成音频与对抗音频的组合,D模型中全连接层输出的神经元为0,表示生成音频具有对抗性;
D42:将输入进行编码得到的编码向量经过一维卷积得到通道数为1的特征向量;
D43:将步骤D42中生成的特征向量进行全连接,得到D模型中全连接层输出的神经元;
步骤D中:
G模型的构建过程中,
在步骤D11中:编码器的卷积类型为一维卷积,步长为2,卷积核大小为31;激活函数为LeakyRelu;
其中,a的取值为0.01;
在步骤D12中:隐变量的大小为经过12个编码器编码后形成的特征向量的大小;
在步骤D13中:解码器的卷积类型为一维反卷积,步长为2,激活函数为LeakyRelu,卷积核的大小为31;
G模型的生成过程中,
在步骤D21中:将步骤C中获得的原音频作为输入并依次使用每一个编码器进行编码操作后,得到大小为4×1024的特征向量,其中1024为通道的数量;原音频为一维特征向量,大小为16384;将最后一次编码操作后得到的特征向量与隐变量进行拼接后,得到大小为4×2048的特征向量;
在步骤D22中:将大小为4×2048的特征向量依次使用每一个解码器进行解码操作;
D模型的前向传播过程中,
在步骤D41中:输入的变量组为对抗音频大小为16384,原音频大小为16384,抗音频与原音频组合后大小为16384×2;生成音频大小为16384,生成音频与对抗音频的组合后大小为16384×2;
在步骤D42中:将大小为16384×2的输入进行编码,得到大小为4×1024的编码向量;大小为4×1024的编码向量经过一维卷积得到通道数为1且大小为4×1的特征向量;
在步骤D43中:将步骤D42中生成的大小为4×1的特征向量进行全连接;
E:分别确定G模型与D模型的损失函数,并根据损失函数对防御模型DD-GAN进行训练;
步骤E中:
G模型的损失函数为:
其中,n为原音频的训练集的音频个数,为第i个原音频对应的对抗音频,x(i)为第i个原音频,为G模型产生的生成音频,表示D模型判断G模型产生的生成音频是否具有对抗性的概率,λ为调节参数, 表示L2范式,z为隐变量;
D模型的损失函数为:
F:将待识别语音利用步骤E中训练好的防御模型DD-GAN处理后,再通过语音识别模型进行识别。
2.根据权利要求1所述的对抗攻击免疫的自动语音识别方法,其特征在于:所述的步骤A中,选取Mozilla Common Voice database语音数据集作为数据集,使用16KHZ的采样频率进行采样得到语音采样数据。
3.根据权利要求1所述的对抗攻击免疫的自动语音识别方法,其特征在于:所述的步骤C中,防御模型的输入为一维特征向量,采样率为16KHz。
4.根据权利要求1所述的对抗攻击免疫的自动语音识别方法,其特征在于,所述的步骤E中:
将原音频以及对抗音频分别划分为训练集和测试集,训练过程分为两步:
E1:先利用原音频的训练集与C&W生成的对抗音频的训练集进行训练;
E2:在保持步骤E1中的模型参数的基础上,利用原音频训练集与有目标的PGD生成的对抗音频的训练集进行训练;训练方法采用反向传播方法。
5.根据权利要求4所述的对抗攻击免疫的自动语音识别方法,其特征在于:所述的步骤E中:
采用原音频的训练集与C&W生成的对抗音频的训练集进行训练的过程如下:
E11:初始化G模型和D模型;
E12:训练D模型,将原音频的训练集与C&W生成的对抗音频的训练集组合进行训练,根据D模型的损失函数进行梯度下降更新D模型的参数;
E13:训练D模型,将G模型的生成音频与C&W生成的对抗音频的训练集组合进行训练,根据D模型的损失函数进行梯度下降更新D模型的参数;
E14:固定D模型的参数,将D模型与G模型拼接,即将G模型的输出直接作为D模型的输入,根据G模型的损失函数进行梯度下降更新G模型的参数;
E15:返回步骤E13进行迭代,直至达到指定的迭代次数,停止训练过程,最终得到优化后的防御模型;
采用原音频训练集与有目标的PGD生成的对抗音频的训练集进行训练的过程如下:
E21:选择第一步中训练好的G模型与D模型作为初始状态;
E22:训练D模型,将原音频的训练集与有目标的PGD生成的对抗音频的训练集组合进行训练,根据D模型的损失函数进行梯度下降更新D模型的参数;
E23:训练D模型,将G模型的生成音频与有目标的PGD生成的对抗音频的训练集组合进行训练,根据D模型的损失函数进行梯度下降更新D模型的参数;
E24:固定D模型的参数,将D模型与G模型拼接,即将G模型的输出直接作为D模型的输入,根据G模型的损失函数进行梯度下降更新G模型的参数;
E25:返回步骤E23进行迭代,直至达到指定的迭代次数,停止训练过程,最终得到优化后的防御模型DD-GAN。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110357849.4A CN113223515B (zh) | 2021-04-01 | 2021-04-01 | 一种对抗攻击免疫的自动语音识别方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110357849.4A CN113223515B (zh) | 2021-04-01 | 2021-04-01 | 一种对抗攻击免疫的自动语音识别方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113223515A CN113223515A (zh) | 2021-08-06 |
CN113223515B true CN113223515B (zh) | 2022-05-31 |
Family
ID=77086360
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110357849.4A Active CN113223515B (zh) | 2021-04-01 | 2021-04-01 | 一种对抗攻击免疫的自动语音识别方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113223515B (zh) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113948067B (zh) * | 2021-10-08 | 2022-05-27 | 北京计算机技术及应用研究所 | 一种具有听觉高保真度特点的语音对抗样本修复方法 |
CN114627876B (zh) * | 2022-05-09 | 2022-08-26 | 杭州海康威视数字技术股份有限公司 | 基于音频动态调节的智能语音识别安全防御方法及装置 |
CN117877506B (zh) * | 2024-03-11 | 2024-05-10 | 北京建筑大学 | 一种对语音内容进行增强的对抗性攻击方法、装置和系统 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20190130903A1 (en) * | 2017-10-27 | 2019-05-02 | Baidu Usa Llc | Systems and methods for robust speech recognition using generative adversarial networks |
CN111627429A (zh) * | 2020-05-20 | 2020-09-04 | 浙江工业大学 | 一种基于CycleGAN的语音识别模型的防御方法及装置 |
-
2021
- 2021-04-01 CN CN202110357849.4A patent/CN113223515B/zh active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20190130903A1 (en) * | 2017-10-27 | 2019-05-02 | Baidu Usa Llc | Systems and methods for robust speech recognition using generative adversarial networks |
CN111627429A (zh) * | 2020-05-20 | 2020-09-04 | 浙江工业大学 | 一种基于CycleGAN的语音识别模型的防御方法及装置 |
Non-Patent Citations (2)
Title |
---|
《Adversarial Attacks and Defenses in Deep Learning》;Kui Ren et al.;《Engineering》;20200331;第6卷(第3期);第346-360页 * |
《生成对抗网络下小样本语音情感识别方法》;高英宁等;《计算机工程与设计》;20201231;第41卷(第12期);第3550-3556页 * |
Also Published As
Publication number | Publication date |
---|---|
CN113223515A (zh) | 2021-08-06 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN113223515B (zh) | 一种对抗攻击免疫的自动语音识别方法 | |
CN110390955B (zh) | 一种基于深度域适应性卷积神经网络的跨库语音情感识别方法 | |
CN110706692B (zh) | 儿童语音识别模型的训练方法及系统 | |
CN111243602B (zh) | 基于性别、国籍和情感信息的声纹识别方法 | |
CN111477247B (zh) | 基于gan的语音对抗样本生成方法 | |
CN107564513A (zh) | 语音识别方法及装置 | |
CN110349597B (zh) | 一种语音检测方法及装置 | |
WO2008001486A1 (fr) | Dispositif et programme de traitement vocal, et procédé de traitement vocal | |
CN110210032A (zh) | 文本处理方法及装置 | |
CN111179917B (zh) | 语音识别模型训练方法、系统、移动终端及存储介质 | |
CN109378014A (zh) | 一种基于卷积神经网络的移动设备源识别方法及系统 | |
CN114783418B (zh) | 基于稀疏自注意力机制的端到端语音识别方法及系统 | |
CN111882042B (zh) | 用于液体状态机的神经网络架构自动搜索方法、系统及介质 | |
US20080126094A1 (en) | Data Modelling of Class Independent Recognition Models | |
KR102406512B1 (ko) | 음성인식 방법 및 그 장치 | |
Wataraka Gamage et al. | Speech-based continuous emotion prediction by learning perception responses related to salient events: A study based on vocal affect bursts and cross-cultural affect in AVEC 2018 | |
Chen et al. | Recent improvements to IBM's speech recognition system for automatic transcription of broadcast news | |
CN111429929B (zh) | 一种语音去噪方法、语音识别方法及计算机可读存储介质 | |
CN102237082B (zh) | 语音识别系统的自适应方法 | |
Cui et al. | Improving deep neural network acoustic modeling for audio corpus indexing under the iarpa babel program | |
Han et al. | Agglomerative hierarchical speaker clustering using incremental Gaussian mixture cluster modeling. | |
CN113948067B (zh) | 一种具有听觉高保真度特点的语音对抗样本修复方法 | |
JP5738216B2 (ja) | 特徴量補正パラメータ推定装置、音声認識システム、特徴量補正パラメータ推定方法、音声認識方法及びプログラム | |
Uplenchwar | Modern Speech Identification Model using Acoustic Neural approach | |
CN108563639B (zh) | 一种基于循环神经网络的蒙古语语言模型 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |