Speech Com | Whisper-SV:将Whisper自适应于低数据资源的说话人验证

文摘   科技   2024-07-22 09:30   陕西  
Whisper[1] 是一种在海量语音数据上训练的多任务、多语言语音基座模型,已在语音识别、翻译和语种识别等任务上表现出卓越性能。然而,其在说话人验证(SV)任务中的适用性尚未被探索,特别是在带说话人标签的语音数据有限的低数据资源场景。

近期,西北工业大学音频语音与语言处理研究组(ASLP@NPU)在语音旗舰期刊《Speech Communication》上发表了一篇题为“Whisper-SV: Adapting Whisper for Low-data-resource Speaker Verification”的论文。论文研究了如何将语音领域的多任务大模型Whisper迁移到数据资源有限的说话人验证任务中。该论文提出了一个适配器框架Whisper-SV,以提升Whisper在数据资源有限的说话人验证任务中的效果。由于原生Whisper并未针对SV任务进行特定优化,论文引入了一个表征选择模块,量化并选择Whisper各层中的说话人特征。然后,通过多层聚合模块整合这些特征,将多层表征整合成一个紧凑的单一表征。该模块使用卷积层和注意力聚合层来增强说话人特定信息,最终通过简单的分类模块进行说话人分类。实验结果表明,Whisper-SV在VoxCeleb1[2]、FFSVC[3]和IMSV[4]数据集上表现出色。

论文题目:Whisper-SV: Adapting Whisper for Low-data-resource Speaker Verification

作者列表:Li Zhang, Ning Jiang,  Qing Wang, Yue Li, Quan Lu, and Lei Xie

发表期刊:Speech Communication

预印版本: https://arxiv.org/pdf/2407.10048

发表论文截图

扫码直接看论文

背景动机

说话人验证(SV)指的是根据语音确认说话人身份的过程。近年来,深度学习在SV任务中取得巨大成功。然而,当前方法通常依赖于大量标注的训练语音,并且在挑战场景中,如远场和多语种SV任务中,性能显著下降。这种下降主要是由于这些低数据资源场景中缺乏大规模带有说话人标签的语音数据集,以及在传统的梅尔频率倒谱系数(MFCC)和滤波器组(Fbank)特征上训练的说话人模型缺乏鲁棒性。

在数据资源不足的情况下,数据增广策略通常被广泛使用,包括各种语音变换(例如添加噪声、混响、速度扰动和SpecAug),以及引入可能导致域不匹配问题的非域数据集。除了上述数据增广方法外,利用预训练的语音基座模型来处理下游低数据资源任务,最近变得越来越流行。这得益于语音基座模型的训练接触过大量数据,增强了其对各种任务的泛化能力。使用预训练的大型基座模型在下游低数据资源任务中,有助于有效利用大量非目标域数据,增强模型的鲁棒性,缓解引入非目标域数据通常带来的域不匹配问题。此外,由于这些大型基座模型在广泛的非域数据上进行训练,它们通常在下游任务中表现良好,而无需大量的可训练参数。

Whisper是当下一种流行的多任务多语种语音基座模型,该模型采用编解码器变换器架构,在包含680,000小时语音数据的大规模数据集上进行训练,展示出在包括多语言语音识别(ASR)、语音翻译(ST)和语种识别(LID)等多种任务中的卓越性能。尽管Whisper经过大数据的训练在低数据资源场景下的变现出巨大潜力,但它主要为ASR、ST和LID任务优化,忽略了专门用于提取和分析个人语音特性的说话人验证(SV)任务。因此,我们旨在探索其在SV中的效果,特别是聚焦于目标领域中标记说话人数据有限的低数据资源SV场景。

提出的方案

整体框架

Whisper-SV的示意图如图1所示,包括四个模块:(a) 预训练的Whisper模块,(b) 表征选择模块,(c) 多层聚合模块,以及 (d) 说话人分类模块。预训练的Whisper模块用于提供来自Whisper的鲁棒和泛化性高的瓶颈表征。鉴于Whisper的主要训练目标与ASR、ST和LID,而非说话人验证SV任务,因此Whisper解码器生成的表征涵盖了更多与这些任务紧密相关的特征。本文重点利用Whisper编码器产生的表征来服务于SV任务。此外,引入了一个表征选择模块,用于量化Whisper每一层表征中的说话人特定信息,并选择具有显著说话人相关区分特征的top-k层用于SV。多层聚合模块旨在为SV整合Whisper不同层的特征。最后使用一个简单的分类模块进行说话人分类。

图1  Whisper-SV 的架构包括四个模块:(a) 一个预训练的 Whisper 模块,用于提供鲁棒且广泛的表征,(b) 一个表征选择模块,用于选择包含显著说话人特征的前 k 层,(c) 一个多层聚合模块,用于聚合来自 Whisper 多层的表征,(d) 一个说话人分类模块,用于进行说话人分类。

A. Whisper简介

Whisper基于经典的编解码器Transformer架构,编码器由两个具有3大小的卷积核的卷积层组成,后接正弦位置编码和一组堆叠的Transformer块。解码器使用学习到的位置embedding和与编码器相同数量的Transformer块。Whisper特别为ASR、ST和LID任务进行了优化。尽管如此,许多研究仍致力于将Whisper的泛化和鲁棒性转移到其他下游任务(例如,声音强度分类、构音障碍严重程度分类、说话人活动检测等)。本文着重于使用轻量级适配框架将Whisper适配到SV任务中。在Whisper-SV中,我们使用预训练的Whisper的编码器作为SV的瓶颈特征提取器。如图1(a)所示,Whisper的编码器将输入的音频信号转换为一系列高层特征表征。
假设我们有一组输入音频,表示为X。X的相应说话人标签是Y。Whisper编码器的编码块为  ,其中L是Whisper编码器的层数。将所有输入音频重采样到16,000Hz后,我们从预训练的Whisper中提取多层瓶颈表征,如下所示:
  
其中   是 Whisper 编码器所有层的表征集合。

B. 表征选择模块

考虑到Whisper并未专门为说话人验证(SV)任务优化,表征选择模块旨在评估Whisper每一层中表征的说话人特定特征,以识别具有最显著区分性说话人信息的top-k层。表征选择模块包括一个时间池化层,评估模型  ,以及一个用于为SV选择top-k贡献层的策略,如图1(b)所示。时间池化层用于将从Whisper提取的瓶颈表征在时间维度上池化到音频的时长。评估模型 Fs,在从Whisper编码器的每一层提取的表征上单独训练,并在验证数据集上进行评估,用于定量评估每一层表征中封装的说话人相关特征。假设评估模型的评估错误率  ,  为Whisper编码器的层数。从Whisper的每一层表征中单独训练的说话人模型的错误率集合表述为:
  
含有说话人身份信息最多的top-k选择为:

top-k 层的表征表示为:
  

C. 多层聚合模块

为了将Whisper的多层表征整合为单一、聚合的表征用于说话人验证(SV),我们引入了一个多层聚合模块,将Whisper top-k层的表征融合在一起。如图1(c)所示,多层聚合模块包括缩放层、基于一维卷积的多级聚合层,以及一个注意力聚合层,用于融合说话人特定线索并抑制来自top-k层表征中与说话人无关的信息。

缩放层   用于调整从Whisper编码器提取的表征的维度。缩放层本质上是一维卷积层,旨在调节通道维度至减小的规模。这些缩放层的主要功能是减弱关于非说话人的外部信息,同时提取对SV任务具有显著区分性的特征。这一过程不仅增强了模型的特异性,还有助于减少SV模型的整体参数占用。缩放层的输出为:
  
随后,引入基于一维卷积的多级聚合层,用于在Whisper编码器top-k层的表征中聚合说话人特定线索。除了top-1表征  外,其他缩放后的表征分别输入到各自的卷积块中,每个卷积块包括一个卷积层、一个ReLU层和一个批量归一化层。有  个卷积块,表示为  。为了更好地聚合多层信息,卷积块之间使用了shot-cut链接,其中第 i 层卷积块的输入是第(i-1)层卷积块的输出与第i层缩放层的输出之和。第 i 层卷积的输入:
  
k-1 个卷积模块的输出和 top-1 层的缩放层一起构成了注意力聚合层的输入:
  

在注意力聚合层中,我们使用挤压-激励(SE)注意力和自注意力来聚合Whisper编码器不同层的表征,以便进行说话人验证(SV)任务。然而,结果显示SE注意力的表现更好,可能是因为SE注意力重新校准了特征通道,加强了重要特征的学习同时抑制了不重要的特征。不同通道可能包含不同的语义信息,SE注意力能有效区分说话人相关特征的重要性。SE注意力的公式表达如下:

  
多层聚合层的输出为:
  

D. 说话人分类模块

如图1(d)所示,说话人分类模块包括一个卷积层、一个注意力统计池化(ASP)层、一个线性分类层,以及AAMsoftmax作为损失函数。假设说话人分类模块的参数为F_c,损失函数表达如下:

  


实验结果

A. 分析Whisper表征

鉴于Whisper是专为多语言ASR、ST和LID设计,为了有效地将Whisper定制化适用于说话人验证(SV)任务,关键在于量化Whisper每一层表征中固有的说话人特定线索。为了分析每个独特层中封装的说话人相关的区分信息,我们独立使用从Whisper的每一层提取的表征训练SV模型,并评估每一层表征在SV中的性能。实验结果显示在图2中。我们使用一个综合评估指标((EER+10*\min DCF)/2)来识别错误率最低的top-k层,以确定最佳的表征提取层,用于在Whisper中训练SV模型。这种方法通过共同考虑EER和minDCF指标,提供了全面的评估,如图2中的绿线所示。

图2  使用从 Whisper 的每一层提取的表征训练 ECAPA-TDNN 的实验结果。红点表示综合 EER 和 minDCF 最低的前四个结果  

图2展示了来自三个数据集(VoxCeleb1、FFSVC和IMSV)的实验结果,显示Whisper在第20层左右的表征展示出了最佳的说话人区分特征,适用于说话人验证(SV)任务。此外,三个子图中观察到的趋势表明,Whisper表征在第15层之前的说话人特定信息逐渐减少。因此,我们的实验彻底分析了Whisper第32层到第11层的表征在SV任务中的性能。在图2(a)、(b)和(c)中,四个红点代表对应数据集中具有显著说话人区分特征的top-4层。所选top-4层的结果在表1中展示。从表1中可以看出,Whisper框架中包含最关键的说话人区分信息的层主要集中在第20层左右,位于Whisper编码器的中后部。基于这些实验发现,我们将识别并利用展示最佳性能影响的top-k层来优化SV模型。这些选定的层将被整合到一个专门为增强SV任务设计的多层聚合模块中。

表1  使用 Whisper 的top-4 层表征进行训练的 ECAPATDNN 的 EER (%) 和 minDCF (p=0.01)。

B. VoxCeleb1上实验结果

VoxCeleb1 数据集包含 1211 个说话人,其中每个说话人的平均语音时长不足半个小时。Whisper-SV在VoxCeleb 1上的实验结果如表2所示。表2中第三行结果表明,直接使用从Whisper提取的原始表征(原始Whisper表征)进行说话人验证(SV)是不可行的,产生了44.37%的EER和0.999的minDCF。这一挑战主要源于Whisper并未专门为SV任务进行优化。因此,通过开发Whisper-SV来适应Whisper用于SV是至关重要的。

与直接使用Whisper top-1的最优表征训练ECAPA-TDNN(ECAPA-TDNN(Whisper))相比,Whisper-SV在EER/minDCF上显示出23.9%/21.4%的相对改进。同时,ECAPA-TDNN(Whisper)的结果超过了使用Fbank训练的ECAPA-TDNN(ECAPA-TDNN(Fbank))。这一观察强调了从Whisper提取的表征包含了更丰富的、特定于说话人的区分性特征,适用于SV任务。此外,与对自监督模型(如wav2vec2.0和Hubert)进行微调进行SV相比,Whisper-SV在EER和minDCF上都实现了更低的指标,同时具有更少的可训练参数和更高的计算效率。此外,Whisper-SV在SV任务中还优于Siamense Capsule网络后端处理方法和binary网络。

表2: VoxCeleb1上的实验结果EER(%)/minDCF(p=0.01)

C. FFSVC上实验结果

FFSVC 数据集包含 120 个说话人,总时长约为 288 小时,属于低数据资源的远场说话人识别数据集。为了进一步验证 Whisper-SV 在低数据资源情境下的效果,我们分别在不同训练集比例(1/8、1/4、2/1、1/1)上测试了 Whisper-SV 的表现。Whisper-SV在FFSVC上实验结果如表3所示。值得注意的是,Whisper-SV 的实验结果优于 ECAPA-TDNN (Fbank) 和 ECAPA-TDNN (Whisper)。此外,我们发现,仅使用 FFSVC 训练数据集的    比使用整个数据集取得了更优异的结果。这可以归因于 Whisper 强大的去噪和判别特征提取能力,使得 Whisper-SV 需要更少的单个说话者语音样本。过多的每个说话者的数据可能会导致过拟合。因此,Whisper-SV 非常适合于数据资源匮乏的说话者验证场景。

此外,我们进行了 Whisper-SV 和领域适应方法(普通微调、WTR 微调和 Wasserterin DA)之间的对比实验,这些方法使用 VoxCeleb2 [3] 和 FFSVC 数据集进行训练。结果表明,使用仅    FFSVC 数据训练的 Whisper-SV 优于普通微调和 Wasserterin DA 方法。使用在 VoxCeleb1 上预训练的普通微调 Whisper-SV 模型,我们观察到 minDCF 相对于 WTR 方法实现的 minDCF 有显著下降 5.9 %,尽管 WTR 方法表现出较低的 EER。同时,Whisper-SV 保持了相对较低的可训练参数和 FLOPs。这些发现表明 Whisper-SV 在数据需求较低和可训练参数较少的情况下可以表现更好。

表3  FFSVC 的实验结果(EER(%)/minDCF (p=0.01))

D. IMSV上实验结果

IMSV 数据集包含 50 个说话人,总时长约 100 小时,是一个带说话人标签的低数据资源语音数据集。类似地,我们在 IMSV 数据集上使用不同比例的训练集(例如 1/8、1/4、2/1、1/1)来验证 Whisper-SV 的效果。Whisper-SV在IMSV上的实验结果如表4所示,IMSV 的结果也显示仅使用   的训练数据会比使用整个数据集获得更低的 EER 结果。与 ECAPA-TDNN(Whisper)相比,Whisper-SV 表现出相对减少11.7的 EER。

表4  IMSV 的实验结果(EER(%)/minDCF (p=0.01))

E. 消融实验

数据减少消融实验 为了进一步探讨 Whisper-SV 是否在低资源场景下表现优于 Fbank,我们研究了数据减少与说话者验证 (SV) 性能之间的关系。实验结果如图3 所示。在将训练数据划分为不同的部分后,包括整个数据集、一半、四分之一和八分之一,进行了此分析。图3 中的结果显示,VoxCeleb1 数据集在使用整个数据集时表现最佳。然而,随着数据量的减少,使用 Fbank 特征训练的 ECAPA-TDNN 性能下降比 Whisper-SV 的结果更为显著。同时,FFSVC 和 IMSV 数据集的实验结果表明,当仅使用四分之一的数据量时,Whisper-SV 获得了最低的 EER 和 minDCF。相比之下,使用 Fbank 训练的 ECAPA-TDNN 在使用整个数据集时取得了最佳结果。这些结果表明,Whisper 表征包含更高密度的说话者特异性特征,同时有效地过滤掉了多余的噪声元素。而且,单个说话者的过多语音数据可能导致过拟合,使得 Whisper 表征在低资源数据场景下的 SV 任务中更具优势。

训练和验证损失如图 4所示。图4 表明,在 FFSVC 训练过程中,使用全部和一半数据进行训练在第 7 和第 8 轮时开始出现过拟合迹象,验证损失增加。相反,使用   和   数据进行训练表现出欠拟合,而使用   数据进行训练则在缓解过拟合的同时不会导致欠拟合。

图3  ECAPA-TDNN和WhisperSV用不同比例的训练数据训练的实验结果对比

图4  FFSVC上训练过程中的训练和验证集合的损失趋势

缩放层通道消融实验 接下来探究了在缩放层中不同尺度的 Whisper 表征对 Whisper-SV 效果的影响。表 V 中的实验结果显示,当 Whisper 表征缩放到 128 维时,Whisper-SV 在三个不同的数据集上均达到了最佳性能。同时,缩放层中具有 128 通道的 Whisper-SV 显示出更少的可学习参数和更好的性能。这表明 Whisper-SV 具有低计算复杂度和最少的可训练参数的特点。
表5  缩放层中不同通道的实验结果EER(%)/minDCF(p = 0.01)

多层聚合模块的通道消融实验 多层聚合模块由 1D 卷积块组成,用于聚合从 Whisper 提取的多层表征。表 VI 中展示了不同通道数在多层聚合模块中的实验结果。表 X 的实验结果表明,当多层聚合模块的通道数设置为 512 时,Whisper-SV 表现出最佳性能。
表6  多层聚合模块中不同通道上的实验结果比较EER(%)/minDCF(p=0.01)

不同的 Top-k 消融 图5显示了在不同 top- k 值下进行消融研究的结果。具体来说,k 取自  {1,2,3,4,5,6,7,8} 。实验结果表明,当    时,Whisper-SV 达到了最佳性能,这意味着从前四层中选择最具判别力的表征能获得最佳结果。此外,聚合过多层次的 Whisper 表征并不会降低 EER 和 minDCF。这种缺乏改进可能是由于过多的 Whisper 表征层引入了与说话者无关的特征。此外,过度聚合表征可能导致模型过拟合。

图5  VoxCeleb1 / FFSVC / IMSV上不同top-k的实验结果

F. Embedding可视化

为了进一步阐明从不同 SV 模型中提取的说话者embedding的判别性,我们使用 T-SNE 来展示原始 Whisper 表征、ECAPA-TDNN (Fbank) 生成的embedding、ECAPA-TDNN (Whisper) 生成的embedding以及 Whisper-SV 模型生成的embedding。这些embedding的分布如图6 所示。在图6 中,我们可以看到,无论测试数据集如何,使用原始 Whisper 表征进行说话者识别都是不可行的。说话者embedding的纠缠表明我们需要一个适配器将 Whisper 转移到 SV 任务上。观察 VoxCeleb1 上的embedding分布,可以明显看出,ECAPA-TDNN (Whisper) 比 ECAPA-TDNN (Fbank) 展示了更强的类内凝聚力。此外,Whisper-SV 在其embedding分布中表现出更好的凝聚力和更大的类间分离。在分析 FFSVC 的结果时,这些观察结果仍然成立,进一步证实了 Whisper-SV 的说话者embedding更具判别性和鲁棒性。Whisper-SV 在 IMSV 上的可视化结果显示,与 ECAPA-TDNN (Fbank) 和 ECAPA-TDNN (Whisper) 相比,其在困难样本上的分类性能有所提高。

图6  不同 SV 模型的表征T-SNE可视化

结论

本文提出了一个名为Whisper-SV的适配器框架,旨在将Whisper适应于说话人验证(SV)任务,特别是在数据资源有限的SV场景中。Whisper-SV由四个独立的模块组成:一个预训练的Whisper模块、一个表征选择模块、一个多层聚合模块以及一个说话人分类模块。具体来说,预训练的Whisper模块是一个健壮且通用的表征提取器。由于Whisper并非专门为SV任务定制,引入表征选择模块来评估Whisper每一层中的说话人身份特征,并选择具有突出的说话人相关特征的top-k层。随后,多层聚合模块被设计用来将选定的top-k层的表征融合为一个包含丰富的说话人特定区分特征的紧凑表征。最后,使用分类模块进行说话人分类。由于Whisper在大量多样化的数据集上进行了预训练,Whisper-SV在训练参数数量有限和训练语音量有限的情况下,实现了显著的性能,这证明了Whisper-SV适用于数据资源有限的SV任务。此外,实验结果和分析展示了Whisper-SV在数据资源有限的SV任务中与其他竞争方法相比的卓越性能。

参考文献

[1] Alec Radford, Jong Wook Kim, Tao Xu, Greg Brockman, Christine McLeavey, and Ilya Sutskever, “Robust speech recognition via large-scale weak supervision,” in International Conference on Machine Learning. PMLR, 2023, pp. 28492–28518
[2] Arsha Nagrani, Joon Son Chung, Weidi Xie, and Andrew Zisserman, “Voxceleb: Large-scale speaker verification in the wild,” Computer Speech & Language, vol. 60, pp. 101027, 2020.
[3] Xiaoyi Qin, Ming Li, Hui Bu, Rohan Kumar Das, Wei Rao, Shrikanth Narayanan, and Haizhou Li, “The FFSVC 2020 evaluation plan,” in Conference of the International Speech Communication Association (INTERSPEECH), 2020.
[4] Jagabandhu Mishra, Mrinmoy Bhattacharjee, and SR Mahadeva Prasanna, “I-MSV 2022: Indic-multilingual and multi-sensor speaker verification challenge,” in International Conference on Speech and Computer. Springer, 2023, pp. 437–445.


欢迎关注ASLP实验室微信公众号,获取更多语音研究相关资讯!

“打造最开放、最前沿、最落地的人工智能实验室”


音频语音与语言处理研究组
发布关于音频语音与语言处理研究组的最新研究成果、技术分享、新闻动态和活动等。
 最新文章