生成语音检测任务简介
绪论
语音是人类交流的基本方式之一,它不仅传递信息,还蕴含着丰富的情感和身份特征。由于每个人生理结构与发声习惯存在细微差别,人们声色各不相同,这使得说话人的声音特征具有唯一性并在长时间内保持稳定,人们可以根据声音来判别说话人的身份。语音信号具有独特的声学特性,如频率、振幅和时序等,这些特性使得语音成为身份识别的有效工具。基于此的声纹识别和说话人认证技术在身份识别、权限验证等领域的有着广泛的应用。
随着深度学习在语音生成领域的兴起促进了语音生成往质量高、速度快的方向发展,现有的技术已经能够生成出人耳难以分辨的生成语音。随着语音处理技术的不断发展与优化,生成语音在现代社会中的应用日渐广泛。一方面,自动化的语音播报技术为人们的生活带来了极大便利,满足了公众追求更加舒适生活方式的需求。另一方面,生成语音技术的不当使用甚至滥用也给人们的正常生活带来了一定影响,在某些极端情况下更可能对社会和国家造成不利后果,因而成为一种亟需关注的潜在安全隐患。就身份认知方面而言,结合深度视觉伪造技术,不法分子可能伪造他人或企业关键人物的形象,从而破坏相关个人或机构的声誉。更有甚者,针对国家重要人士的语音伪造行为甚至可能引发政治动荡和社会动乱。而在权限验证系统方面,罪犯可通过非法收集手机用户语音数据的方式,伪造语音并冒充真实用户,获取相应的访问控制权限,破解移动支付密码并窃取财物,从而严重降低系统的安全可靠性,现实世界中亦有此类案例发生。此外在听感上难以分辨的生成语音技术也提高了电信诈骗,敲诈勒索的防范难度,并为司法取证带来了新的挑战。在此背景下,如何实现生成语音的有效识别成为语音技术广泛应用不得不面临的重要问题。
发展
最传统的生成语音评估手段依赖于听者的直接评价,通过计算平均意见得分(Mean Opinion Score, MOS)来对音频的自然性和相似性进行量化。虽然这一方式直观且广泛应用于科研环境下对算法的性能进行评估提,但其对大量人力的依赖和主观性偏差的存在使其不适合应用于实际的生成语音检测工作中。随着近些年深度学习技术在语音仿冒领域的突破,生成语音的质量和效率得到了显著提升。面对这些新的挑战和变化,生成语音鉴别的研究亟需发展出更客观、精确且高效的评估方法。
生成语音检查领域的发展
2013年,在语音领域国际顶级学术会议INTERSPEECH上,研究者们正式提出了针对自动说话人验证系统(Automatic speaker verification, ASV)的生成式语音欺诈攻击问题。随着现实场景下基于生成语音的案例的产生,生成语音的危害逐渐引起社会的广泛关注。 为解决生成语音的检测问题,学术界与政府机构等组织联合举办了众多相关赛事,在国际上积极推动生成语音鉴别技术的研究和发展。ASVspoof (Automatic Speaker Verification Spoofing And Countermeasures Challenge) 是一系列由INTERSPEECH组委会主导的挑战赛,旨在促进自动说话人验证系统(ASV)免受欺骗威胁的研究。该竞赛自2015年起每两年举行一届,ASVspoof 2015 为该项赛事的第一届,其专注于对语音合成和语音转换系统生成的语音进行检测,ASVspoof 2017 则添加了对录音重放等攻击的考量。ASVspoof 2019 与 ASVspoof 2021 在考虑逻辑访问(Logical Access, LA)和物理访问(Physical, PA)情景以及三种主要形式欺骗攻击,即合成、转换和复制攻击方面取得了进展。ASVspoof 2019 是系列中的第一个将所有三种欺骗攻击类型放在单一挑战中的版本,其形成了一个大型公共数据集,为生成语音检测技术的研究与发展起到了推进作用。在国内,中国科学院自动化研究所、清华大学联合新加坡国立大学举办了语音深度合成检测挑战赛(Audio Deep Synthesis Detection Challenge, ADD),其中包括含噪声低音质音频、部分生成音频拼接的检测任务。该项挑战赛自2022年起每年举办一届,其形成的中文生成语音数据集为中文合成语音检测技术的发展起到了推进作用。
前沿
当前需要检测的生成语音主要包括两大类别:录音与语音合成,录音即利用目标说话人的音频片段进行剪辑、重放等方法生成目标说话人特定内容的话语的生成方式。相较于录音方案,语音合成则是通过参数或机器学习等技术利用计算机将文本转换为语音的生成方式,该种方案所生成的语音相较于录音方法具有所需语料少、内容自由度高、合成效果好的特点。
随着语音处理技术的发展,已有许多研究致力于解决生成语音的鉴别问题。生成语音鉴别的主要方法是利用生成语音与真实语音之间的分布差异来对输入的待检测语音进行分类。当前针对生成语音鉴别的手段主要分为基于声学特征的检测与端到端的鉴别两种。基于声学特征的检测方法通常会通过分析语音的频谱、相位谱、共振峰等声学特性并由分类器来判断其真实性。而端到端的检测方法则是直接从原始语音数据中学习生成语音与真实语音的差异,这种方法通常需要大量的标注数据进行训练,经过大量语料训练的检测模型能够很好的捕获生成语音与真实语音的差异,进一步提高检测的准确率。
一般检测管线
从本质上讲,生成语音的检测是一种分类任务,随着语音技术的不断进步,生成语音也在不断变化,在模型训练中未见过的生成语音样本在测试阶段同样也很难检测出。如果希望检测系统可以实现对新技术的应对,最简单直接的办法就是将最新的生成语音样本与之前的数据混合重新进行训练,这就导致了生成与检测成了一对攻防博弈,总会有新的生成方法被提出用以躲避既有鉴别方法的检测,而现有的鉴别模型又不得不不断地在训练集中纳入新方法所生成的语音样本。此外,这要求生成技术已知或模型公开易于获取,然而现实场景下生成语音通常种类多、样本少且生成技术未知,样本难以获取使得该方案在实际操作中可行性较低。在安全方面,面对新出现的攻击类型,在声纹密码等应用场景下,有着对新型攻击方式快速应对的需求,而这种传统的检测方法对算力与存储的开销会随着数据的扩充而线性增长,这使得训练时间久,参数更新不及时,难以快速部署上线应对新出现的攻击类型。
目前,生成语音检测的主要方法主要包括基于特征的语音检测和基于波形的语音检测两种类型。基于特征的生成语音检测方法主要考虑经过傅立叶变换后的生成语音频谱经过手工或自动处理所提取的特征信息,基于波形的生成语音检测方法则是直接将原始波形作为输入进行端到端的检测。
特征
早期基于特征的检测方法主要考虑生成语音与真实语音频谱之间的差异,通过人类专家的先验知识手工设计特征,例如:在HMM基础的语音合成系统中,合成语音的参数序列是为了最大化输出概率而生成的,这导致合成语音的参数随时间的变化倾向于比自然语音小,进而导致合成语音的时间帧间差异(Inter-Frame Difference)变化小于真实语音样本。此外该类方案通常还会考虑语音生成系统固有的缺陷,例如:基于卷积神经网络(Convolutional Neural Networks, CNN)的语音合成系统的卷积核沿时域递推进行互相关运算,其会在频谱上产生棋盘状的伪影并导致合成语音频谱过于平滑;另外,语音合成系统通常应用刻画人耳听觉系统频率响应的梅尔滤波器组(Mel Filter Bin)以产生符合人类听觉的语音,由于,人耳对高频信息相对不敏感,大多数合成语音算法对对高频信息缺乏建模,这使得高频频谱信息存在瑕疵。此外,由于人耳听觉系统对相位相对不敏感,所以生成算法的声码器通常基于最小相位声道模型,通常不会重建语音的相位信息,由此导致合成语音与真实语音在相位信息上存在差异。
当前,深度学习技术已经广泛应用于基于特征的生成语音鉴别的特征处理与神经网络分类器建模当中,接下来将详细介绍此类方法。早期基于深度学习的生成语音鉴别系统通常以频谱特征作为模型的输入。频谱特征可分为功率谱特征与相位谱特征,功率谱特征描述的是语音信号在频域的能量分布,通常包括平均功率谱、过零率、频率倒谱特性等。相位谱特征则描述的是语音信号在频域的相位信息,它体现了语音信号的波形包络,对于语音的感知有着重要的作用。语谱特征主要通过倒谱系数的形式描述,常用特征包括梅尔频率倒谱系数(Mel Frequency Cepstral Coefficients, MFCC),线性频率倒谱系数 (Linear Frequency Cepstral Coefficients,LFCC),常数 Q 倒谱系数(Constant-Q Cepstral Coefficients,CQCC)和逆梅尔频率倒谱系数(Inverted Mel-Frequency Cepstral Coefficients,IMFCC)。MFCC 是一种对语音信号进行频谱分析后的特征提取方法,MFCC 可以很好地模拟人耳的听觉特性,因此在语音领域得到了广泛的应用。LFCC则在滤波器组的选取上选择了线性滤波器组,它不聚焦于人耳的听觉特性而是对高频特征与低频特征提供了相同的分辨率。CQCC 是常数 Q 变换(Constant Q Transform, CQT)提取出的倒谱系数,这种倒谱系数是通过施加一个指定的常数 Q 来将信号的幅度进行压缩以使其更加适合于倒谱分析而获得的,这种压缩可以看作是一种非线性缩放。Patel等人提出基于耳蜗滤波器倒谱系数和瞬时频率变化构造帧级特征, 再借助高斯混合模型进行判别, 以此捕获跨帧的特征变化,实验表明该特征对于噪声及不同类型的生成语音更鲁棒。IMFCC则是MFCC的一种变体,它通过对梅尔频率进行逆变换来获取频谱特征,这种方法试图更加贴近原始频率的分布,从而在某些应用场景下提供了更加准确的音频分析结果。与MFCC相比,IMFCC在处理具有复杂高频信息的音频信号时,能够提供更加细腻和精确的特征描述。通过使用这些不同的声学特征提取方法,可以更好地捕获和表示语音信号中的关键特征,从而提高生成语音鉴别的准确性。在上述频谱特征中,LFCC与CQCC特征在目前的生成式语音检测方法中最为常用。
LFCC特征提取流程
下图简要描述了LFCC特征提取的过。首先对语音信号进行预加重处理,然后将语音信号分帧,每帧进行加窗处理,然后进行快速傅里叶变换(FFT)得到频谱图,最后对频谱图进行DCT变换得到LFCC特征。预加重是将语音信号通过一个高通滤波器,以提升高频部分,使整个频带中信号信噪比均匀,突出高频的共振峰。语音是连续的一维时间序列信号,为了提取语音的频谱特征,需要将语音信号分帧,每帧进行加窗处理,通常语音信号每帧长度取为 25 毫秒,相邻帧之间有 10 毫秒的重合以避免频谱泄露。然后进行FFT得到频谱图。之后对频谱取模平方得到功率谱,然后计算功率谱在线性频率滤波器组中的能量并取对数。线性频率滤波器组的滤波器组频率为线性频率分布。最后DCT变换是对频谱图进行离散余弦变换,并通过动态差分计算提取一阶差分和二阶差分系数,以更好地描述动态特性进而得到LFCC特征。
LFCC特征提取流程
数据驱动的自动特征表示
随着自监督预训练模型技术的发展,由深度神经网络进行自动特征提取的方法被提出,该类特征无需依靠人类专家知识,通过在大尺度的数据集上进行训练,模型提取的特征往往包含更多高级信息,能够有效提升下游任务的性能。在语音领域被广泛应用的预训练模型包括Wav2Vec、HuBert、Whisper。Whisper是由OpenAI提出的自监督预训练模型,通过在68万小时的人类语音数据上训练,其在自动语音识别,语音翻译等多项任务上皆达到了领先水平。Wang等人探索了多种自监督预训练特征在生成式语音鉴别任务上的性能,实验展现出这些在大尺度音频数据集上由模型自主学习出的特征表示在下游任务的性能与泛化性上皆有显著提升。特别是在跨数据集的测试上其表现出了远超传统手工特征的泛化性。
分类
对于神经网络分类器模块,通常以时域卷积神经网络架构为基础,如轻量卷积神经网络(Light Convolutional Neural Network, LCNN)、挤压激励神经网络(Squeeze-and-Excitation Network,SENet)、残差神经网络(Residual Network,ResNet)等。LCNN网络在2017年与2019年的ASVspoof挑战赛上均取得了优异的表现,此外LCNN网络结构简单,参数较少,在保持较高准确率的同时,具有较快的推断速度,适合于实时性要求较高的场景。2020年,Li等人提出了基于Res2Net网络的检测方案,Res2Net通过将输入特征分成多个通道组,分别进行不同尺度的变换,并在不同组之间进行残差连接,用于学习多尺度的特征表示,以提升系统面对未知类型攻击的泛化能力。
此外还存在一些直接基于波形对生成语音进行分类的神经网络,这些网络同样不依赖于专家知识,模型在原始波形数据上端到端学习高效且准确的特征表示。其中RawNet2是借鉴于ASV任务的端到端网络,它利用sinc函数作为滤波器,有效地在时频域内分离和提取音频信号的关键特征。这种多尺度的卷积操作使得模型能够在不同的频率和时间分辨率下捕捉信号的细微变化,从而获得丰富的音频表示。Jung等人于2021年提出了一种基于RawNet2的音频反欺骗系统,名为AASIST。该系统基于图神经网络(GNNs),特别关注于集成频谱和时间域的特征,以提高对欺骗攻击的检测能力。AASIST的核心贡献在于引入了异构堆叠图注意力层(HS-GAL),这是一种新颖的图注意力机制,能够同时处理来自不同域的异构图。通过这种机制,AASIST能够有效地捕捉和整合频谱和时间域中的关键特征,这些特征对于区分真实的和欺骗的语音至关重要。此外,该系统还包括最大图操作(MGO)和扩展的读出方案,进一步提升了模型的性能。在实验中,AASIST在ASVspoof 2019逻辑访问(LA)数据集上的表现显著优于现有的最先进的技术。值得注意的是,AASIST的轻量级版本(AASIST-L),尽管参数数量大幅减少至85K,仍然在所有竞争系统中保持领先性能。这一成果不仅展示了图神经网络在音频反欺骗领域的潜力,也为轻量级模型的设计提供了新的思路。
损失函数同样对模型的性能有着显著影响。研究者们通过优化不同类型的损失函数,进一步提高了音频反欺骗系统的准确性和鲁棒性。生成语音鉴别任务可以被视作一种分类任务,虽然鉴别的结果存在真实与伪造两类,但区别于传统的二分类任务,合成语音的生成技术种类繁多,不同生成语音类型间的分布并不相似,Zhang等人提出单分类损失函数OC-Softmax(One-Class Softmax)。这一损失函数通过压缩真实语音分类边界并扩张生成语音边界有效地提升了系统对真实和合成语音的分类性能,使得系统在面对各种类型的生成语音时表现更为准确和稳健。三元组损失(triplet loss),已被证明在提取具有区分性的嵌入向量方面具有显著效果,Li等人将三元组损失引入生成语音鉴别任务中,通过最小化来自相同说话人的语音样本之间的距离,同时最大化来自不同说话人或欺骗样本之间的距离,模型能够学习到更具辨别力的特征表示,从而有效地区分真实语音和合成语音。
数据
ASVspoof 2019是一个为研究反欺骗而设计的数据集。LA 子集包含真实样本以及不同类型的语音合成(TTS)和语音转换(VC) 方法的逻辑访问攻击,其具体数据情况参见下表。
ASVspoof 2019 LA 数据集详细信息
其中,训练集和开发集共享相同的 6 种攻击类型(A01-A06),包括 4 种 TTS 算法和 2 种 VC 算法。测试集包括 11 种新的未知攻击类型(A07-A15、A17、A18),其中包括不同的 TTS 和 VC 攻击组合。此外,测试集还包括 2 种攻击(A16、A19),与训练集中的 2 种攻击(A04、A06)使用相同的算法,但训练数据不同。
ASVspoof 2019 LA 数据集可视化
上图是由ASVspoof组委会官方提供的数据集可视化,展示了全部数据在训练好的神经网络模型中的特征向量的分布,其中bona fide 为真实语音,圈外为生成语音。
问题
当前,生成语音鉴别方法的研究尚不成熟,现有系统面临的最大问题是泛化性不足。
具体而言,传统的监督学习假设训练和测试数据具有相同的分布,当面对域迁移时,即当训练数据和测试数据具有非常不同的统计量时,模型表现不佳。现有的大多数研究从特征表示方向与损失函数设计方向进行改进以提高生成语音鉴别方法的泛化性。在特征表示方面,进行谱增广,时频域融合,利用自监督预训练特征等方案被提出。在损失函数设计方面,一些研究认为,生成语音检测并非传统的二分类问题,不同生成技术所生成的音频的分布假设不同,不应当归于一类,单分类损失,三元损失函数等方案被提出。此外,一些研究使用连续学习技术以实现鉴别系统在不同语音生成方案上的持续集成。