关键词:语音增强、迁移学习、模型鲁棒性、U-Net模型
随着人工智能技术的快速发展,基于深度学习的语音转换(Voice Conversion, VC)和文本到语音(Text-to-Speech, TTS)技术取得了显著的进步。这些语音合成技术能够产生高质量、自然、富有表现力且几乎与真实人类声音无法区分的类人语音。这些创新在各个领域提供了巨大的好处,但它们的滥用对自动说话人验证(Automatic Speaker Verification, ASV)系统构成了严重的威胁,可能危害社会安全、政治稳定和经济诚信。因此,大量研究集中在开发合成语音反欺骗对策(Countermeasures, CM)系统以应对这些风险。
现有的 CM 系统研究主要集中在提高对无噪声语音伪造方法的检测精度。为了应对噪声和混响等更具挑战性的场景,本文探索了数据增强、语音增强和预训练模型等技术,提出了一种基于迁移学习的语音增强前端联合优化 (TL-SEJ) 方法。
1 概述
1.1 CM系统
图形1 典型的CM系统流程
一个典型的CM系统流程,如上图所示,包括一个预处理模块、特征提取器和后端分类器。如果特征提取操作和后端分类器被集成在一起,以波形作为输入,它可以被视为一个端到端模型。
- 图形1(a)展示了基于干净数据的欺骗检测系统主要在这一部分实现。
- 图形1(b)展示了基于噪声数据的欺骗检测系统主要在这一部分实现。
在图1(a)中,我们可以看到,在基于干净数据的欺骗检测系统中,主要关注以下几个部分:
- 预处理模块:对输入的语音信号进行初步处理,比如去噪、标准化等。
- 特征提取器:从预处理后的语音信号中提取有助于区分真假语音的特征。
- 后端分类器:使用提取的特征来训练模型,以区分真实语音和合成语音。
在图1(b)中,基于噪声数据的欺骗检测系统则侧重于:
- 数据增强:通过添加噪声或混响来模拟真实环境中的语音信号,以提高模型对复杂信号的处理能力。
- 特征提取和分类:在噪声或混响条件下,研究者们探索了不同的特征提取方法和分类器,以提高系统在这些条件下的性能。
1.2 CM系统三个关键方向
图形2改善模型鲁棒性的几种方法
图形2(a) 展示了数据增强的典型应用。数据增强通过在训练数据中添加噪声或混响来增加模型面对复杂信号的能力。这通常通过在线噪声模拟方法实现,使用如MUSAN数据集作为噪声源,以增强模型对不同信噪比(SNR)条件下噪声的鲁棒性。
图形2(b) 展示了将语音增强前端引入到反欺骗任务中。这种方法通过在特征提取之前先对信号进行清理,以减少噪声和混响对模型性能的负面影响,从而提高系统的鲁棒性。
图形2(c) 展示了使用在大型数据集上预训练的模型来增强下游任务的鲁棒性。预训练模型由于在多样化的数据上训练,能够学习到更广泛的特征表示,这有助于提高模型在面对未知攻击或环境变化时的性能。
图形2(d) 展示了如何将预训练模型与特定的反欺骗任务相结合。这涉及到将预训练模型的参数作为起点,然后针对特定的反欺骗任务进行微调,以此来利用预训练模型学习到的知识。
图形2(e) 展示了本文提出的TL-SEJ方法的架构,该方法结合了数据增强、语音增强前端和迁移学习技术。在这个架构中,使用了基于迁移学习的后端模型(如Conformer),并且与前端的语音增强网络(如DUMENet)进行联合优化,以提高模型在噪声和混响条件下的性能。
1.2.1 数据增强
通过向语音数据中添加噪声或混响,增加训练数据的多样性,从而提高模型对复杂信号的处理能力。
1.2.1.1 方法
- 添加噪声: 将环境噪声、音乐或 babble 噪声添加到干净语音中,模拟实际应用场景。
- 添加混响: 使用房间脉冲响应 (RIR) 与干净语音进行卷积,模拟不同房间大小的混响效果。
1.2.1.2 局限
数据增强主要针对训练阶段,无法保证模型在未见过的噪声类型或混响条件下仍然具有鲁棒性。
1.2.2 预训练模型和迁移学习
利用在大规模数据集上预训练的模型,将学到的先验知识迁移到下游任务,提高模型的泛化能力和鲁棒性。
1.2.2.1 方法
- 无监督预训练模型: 如 Wav2vec2.0 XLS-R,通过自监督学习从大量语音数据中学习特征表示。
- 监督预训练模型: 如 Conformer 模型,在自动语音识别 (ASR) 任务上进行预训练,学习语音信号的局部和全局依赖关系。
1.2.2.2 局限
无监督预训练模型需要完整的语音信号作为输入,与语音增强网络难以直接连接。监督预训练模型参数量较大,进行微调需要更多的时间和计算资源。
1.2.3 语音增强
从混合语音信号中去除噪声和混响,提取干净语音或提高语音信号与背景噪声的比率。
1.2.3.1 方法
- 传统语音增强: 使用 STFT 将语音信号分解为幅度谱和相位谱,只对幅度谱进行增强,然后与相位谱结合重建语音信号。
- 联合训练语音增强和反欺骗模型: 将语音增强模块与反欺骗模型作为整体进行训练,提高模型的鲁棒性。
1.2.3.2 局限
传统语音增强网络难以处理非加性噪声,如混响。联合训练需要考虑输入域和输出域的一致性,避免引入新的失真。
2 TL-SEJ方法
TL-SEJ 方法结合了预训练模型、语音增强和联合优化三个关键技术,具体方法如下:
2.1 预处理阶段的数据增强
为了使模型能够更好地适应噪声和混响环境,使用在线数据增强技术,在训练过程中实时向纯净语音中添加噪声或混响,从而生成更具有多样性的训练数据。
2.2 基于Unet的语音增强前端模型
图形3Unet模型架构
使用 DUMENet (Dual-input Unet-based Masked feature Enhancement Network) 作为语音增强前端模块。DUMENet 接受纯净语音和带噪语音作为输入,并输出一个与输入相同形状的软掩码。该掩码与输入信号进行逐元素相乘,从而得到增强后的语音特征。
与传统的语音增强方法相比,DUMENet 不直接重建时域波形,而是输出掩码,从而有效地处理非加性噪声(如混响)。
2.3 反欺骗网络阶段的迁移学习后端模型
使用Conformer 模型作为反语音伪造后端模型,该模型在自动语音识别 (ASR) 任务上进行了预训练。
预训练模型带来了大量的领域外正样本数据信息,从而提高了模型的泛化能力。通过多尺度特征聚合 (MFA) 方法,Conformer 模型能够学习到更具区分度的特征,从而更好地识别伪造语音。
2.4 语音增强前端和反欺骗后端模型的联合训练
最后将语音增强前端和预训练模型后端进行联合训练,从而实现端到端的语音伪造检测。联合训练可以减少由于独立训练语音增强和语音伪造任务而引入的未知额外伪影,使整个反语音伪造系统更适合语音伪造检测任务。
3 实验
3.1 数据集
本文使用ASVspoof数据库系列中的多个数据集。特别是,ASVspoof 2019 LA(简称19LA)数据集被用作主要的实验数据集。基于此数据集,生成了带有噪声和混响的测试数据集。19LA数据集主要由来自VCTK数据库的107名说话人(46名男性,61名女性)的干净语音组成。这些说话人被分为三个不相交的集合,分别用于训练、开发和评估。在训练和开发集中,使用了四种TTS和两种VC算法生成欺骗性语音,而在评估集中使用了13种TTS/VC算法,其中7种在训练和开发中是未知的。
3.1.1 在线数据增强
在训练过程中,采用了两种不同的在线数据增强策略来增加训练样本的多样性,并防止数据泄露:
- 加性噪声增强:选择了MUSAN数据库作为噪声源,它包含了大约60小时的英语真实语音、42小时31分钟的各种音乐风格和约6小时的各种机械和环境噪声。在训练中,从每个噪声类别中仅选择了几百个样本作为噪声源。在噪声添加过程中,每次只使用一种类型的噪声,每种噪声类型在数据增强中有1/3的等概率。信噪比(SNR)随机选择在0到20 dB的范围内。
- 卷积混响噪声增强:可以通过将干净语音 s(t)s(t) 与房间脉冲响应(RIR) h(t)h(t) 卷积来获得混响语音。
3.1.2 测试数据集的准备
为了区分噪声和混响数据对音频反欺骗检测的影响,通过在19LA评估集上添加噪声和混响,创建了两个测试数据集:
噪声测试数据集:为了创建噪声条件评估集,人工采样了MUSAN噪声信号的最后M个样本,并在5个不同的信噪比(0dB、5dB、10dB、15dB和20dB)下将它们添加到干净音频中,总共有15个噪声测试数据集。
混响测试数据集:为了在不同混响条件下进行比较,我们使用RT60作为混响强度的指标。在创建混响测试数据集时,我们使用pyroomacoustics工具包离线生成RIR。在模拟过程中,随机设置房间尺寸为10m×8m×2.8m到15m×10m×4m,并使用4个不同的RT60:0.25s、0.5s、0.75s和1s,总共有4个混响测试数据集。
3.2 实验设置
3.2.1 基线模型
- AASIST: 由Jung 等人2022 年提出的端到端解决方案,在 ASVspoof19-LA 挑战中取得了最佳性能。
- SSL-AASIST: 使用大规模预训练模型 wav2vec 2.0 XLS-R 作为前端,并替换了 AASIST 中的 sinc 层前端。
- Conformer-CTC-small-ls: 使用 ASR 任务预训练的 Conformer 模型,用于评估预训练模型对语音伪造检测的影响。
- 无预训练 Conformer 模型: 与预训练 Conformer 模型结构相同,但未进行预训练,用于比较预训练模型和普通模型的性能差异。
3.2.2 训练条件
设置不同的训练条件,包括:
- 干净训练: 使用 19LA 数据集进行训练,不进行数据增强或联合优化。
- 数据增强: 使用在线噪声模拟和在线混响模拟进行数据增强,提高模型的鲁棒性。
- 联合优化: 将 DUMENet 语音增强前端与音频伪造检测后端模型联合优化,进一步提高模型的鲁棒性。
3.2.3 实验内容
- 预训练模型与干净训练比较: 评估预训练模型和干净训练模型的性能差异,验证预训练模型对模型鲁棒性的影响。
- 不同模型在噪声和混响条件下的比较: 比较 LCNN、ResNet 和预训练 Conformer 模型在干净训练、数据增强和联合优化条件下的性能,验证联合优化对模型鲁棒性的提升效果。
- 消融实验: 研究预训练和联合优化对模型性能的影响,分析不同组件对模型鲁棒性的贡献。
- 跨数据集测试: 使用 ASVspoof 2021 LA 数据集和 FAD 噪声未见过测试数据集评估模型的泛化能力,验证模型在面对非加性噪声和未知噪声类型时的性能。
3.3 结论
3.3.1 预训练模型与干净训练数据的比较
- 实验对比了使用预训练模型(Conformer)和使用大型预训练模型(XLSR)作为前端特征提取器的系统,与没有预训练的干净训练模型在噪声和混响环境下的表现。
- 结果显示,预训练模型在噪声环境下表现略好,但在混响环境下,预训练模型仅在低混响强度(RT60 = 0.25s)下表现优于大型预训练模型,随着混响强度增加,预训练模型的优势逐渐消失。
3.3.2 提出的预训练联合优化方法与其他方法的比较
- 实验对比了三种模型(ResNet18、LCNN 和 Conformer)在三种训练条件下的表现:干净训练数据、数据增强和与语音增强前端联合优化。
- 结果显示,对于没有预训练的 ResNet18 和 LCNN 模型,数据增强和联合优化都能显著提升模型鲁棒性。然而,对于 Conformer 模型,联合优化在某些情况下带来的鲁棒性提升不如简单的数据增强,尤其是在混响环境下,联合优化模型表现不稳定。
3.3.3 消融实验
- 实验通过冻结预训练的 Unet 语音增强前端参数,验证了联合优化的有效性。
- 结果显示,冻结 Unet 参数会导致模型在复杂场景下的性能下降,而联合优化的模型在噪声和混响环境下表现显著优于冻结模型。
- 另外,实验还验证了使用预训练的 Unet 模型进行联合优化的效果优于使用未训练的 Unet 模型。
3.3.4 跨数据集比较
- 实验测试了模型在 ASVspoof 2021 LA 测试集和 FAD 测试集上的泛化能力。
- 结果显示,使用语音增强的基线模型具有更好的泛化能力,而提出的预训练联合优化系统在 ASVspoof 2021 LA 测试集上取得了最低的 EER 值。
预训练模型可以有效提升合成语音检测系统的鲁棒性,但单独使用预训练模型并不能解决所有问题。联合优化语音增强前端和预训练模型可以有效提升模型在噪声和混响环境下的表现,并增强模型的泛化能力。使用预训练的 Unet 模型进行联合优化可以获得更好的效果。