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
发表论文截图
扫码直接看论文
背景动机
在数据资源不足的情况下,数据增广策略通常被广泛使用,包括各种语音变换(例如添加噪声、混响、速度扰动和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简介
B. 表征选择模块
C. 多层聚合模块
为了将Whisper的多层表征整合为单一、聚合的表征用于说话人验证(SV),我们引入了一个多层聚合模块,将Whisper top-k层的表征融合在一起。如图1(c)所示,多层聚合模块包括缩放层、基于一维卷积的多级聚合层,以及一个注意力聚合层,用于融合说话人特定线索并抑制来自top-k层表征中与说话人无关的信息。
在注意力聚合层中,我们使用挤压-激励(SE)注意力和自注意力来聚合Whisper编码器不同层的表征,以便进行说话人验证(SV)任务。然而,结果显示SE注意力的表现更好,可能是因为SE注意力重新校准了特征通道,加强了重要特征的学习同时抑制了不重要的特征。不同通道可能包含不同的语义信息,SE注意力能有效区分说话人相关特征的重要性。SE注意力的公式表达如下:
D. 说话人分类模块
实验结果
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上实验结果
与直接使用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上实验结果
此外,我们进行了 Whisper-SV 和领域适应方法(普通微调、WTR 微调和 Wasserterin DA)之间的对比实验,这些方法使用 VoxCeleb2 [3] 和 FFSVC 数据集进行训练。结果表明,使用仅
D. IMSV上实验结果
IMSV 数据集包含 50 个说话人,总时长约 100 小时,是一个带说话人标签的低数据资源语音数据集。类似地,我们在 IMSV 数据集上使用不同比例的训练集(例如 1/8、1/4、2/1、1/1)来验证 Whisper-SV 的效果。Whisper-SV在IMSV上的实验结果如表4所示,IMSV 的结果也显示仅使用
E. 消融实验
训练和验证损失如图 4所示。图4 表明,在 FFSVC 训练过程中,使用全部和一半数据进行训练在第 7 和第 8 轮时开始出现过拟合迹象,验证损失增加。相反,使用
图3 ECAPA-TDNN和WhisperSV用不同比例的训练数据训练的实验结果对比
图4 FFSVC上训练过程中的训练和验证集合的损失趋势
图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任务中与其他竞争方法相比的卓越性能。
参考文献
欢迎关注ASLP实验室微信公众号,获取更多语音研究相关资讯!
“打造最开放、最前沿、最落地的人工智能实验室”