IEEE T-ASLP | 利用ASR预训练的Conformer模型通过迁移学习和知识蒸馏进行说话人验证

本文主要是介绍IEEE T-ASLP | 利用ASR预训练的Conformer模型通过迁移学习和知识蒸馏进行说话人验证,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

近期,昆山杜克大学在语音旗舰期刊 IEEE/ACM Transactions on Audio, Speech and Language Processing (TASLP)上发表了一篇题为“Leveraging ASR Pretrained Conformers for Speaker Verification Through Transfer Learning and Knowledge Distillation”的论文。论文研究了如何利用语音识别(ASR)预训练的Conformer模型进行说话人验证(SV)。

该论文共提出了三种方法:

  1. 迁移学习。通过ASR预训练的Conformer模型对说话人嵌入网络进行初始化,从而增强模型泛化能力并降低过拟合风险。

  2. 知识蒸馏。通过教师-学生模型将ASR预训练的Conformer模型的复杂能力提炼到SV模型中,并将帧级别的ASR蒸馏损失作为辅助任务来增强模型SV性能。

  3. 自适应机制。将ASR特征通过一种轻量级的说话人自适应模块转换为特定于说话人的嵌入,实现在单一模型中统一ASR和SV任务。

实验在VoxCeleb[1,2]数据集上进行,结果表明我们提出的三种方法成功地将丰富的ASR知识转移到说话人建模中,有效的提升了模型的SV性能。

论文题目:Leveraging ASR Pretrained Conformers for Speaker Verification Through Transfer Learning and Knowledge Distillation

作者列表:Danwei Cai and Ming Li

论文原文:https://ieeexplore.ieee.org/document/10572375

预印版本:https://sites.duke.edu/dkusmiip/files/2024/06/main_minor_revision.pdf

背景动机

说话人验证(SV)指的是根据语音确认说话人身份的过程。近年来,深度学习在SV任务中取得巨大成功。在SV系统中,常用的神经网络结构有卷积神经网络(CNN)和时延神经网络(TDNN),它们的关键优势在于能够有效模拟局部特征模式,但在网络深度不够的情况下提取全局特征存在局限性。Transformer通过多头注意力机制展示了更强的捕获全局上下文的能力,但缺乏精细的局部模式。Conformer通过结合卷积模块和Transformer弥补了这一差距,有效捕捉局部和全局上下文信息,在ASR中取得了不错的效果[3]。在SV任务中,张等人设计了一种多尺度特征聚合Conformer(MFA-Conformer)通过连接所有Conformer块的帧级输出来增强说话人特征提取[4];廖等人则在Conformer编码器中加入了长度缩放注意机制和锐化感知最小化训练用于SV[5]。

Conformer模型捕获局部和全局上下文的能力在ASR和SV任务中得到利用。ASR专注于识别语音的语言内容,更强调帧级细节。与此相反,说话人确认的目标是识别来自语音的特定说话人特征,以话语级上下文为中心。尽管存在这些差异,但先前的研究表明这两项任务可以相辅相成,帧级音素建模可以改善说话人嵌入网络。此外,虽然Conformer模型具有优势,但在数据有限或模型参数较大时,容易出现过拟合问题,这在SV中尤其明显。因此,我们旨在探索如何有效利用ASR预训练的Comformer模型进行SV。

提出的方案

方案一:迁移学习

首先,使用ASR预训练的Conformer模型,利用其参数初始化MFA-Conformer说话人嵌入网络中Conformer编码器的参数。在训练的早期阶段,冻结Conformer编码器的参数,仅更新池化层和后续的线性层。在训练的后期阶段,解冻整个MFA-Conformer模型的参数,进行微调,使其更好地适应SV任务的需求。这种分阶段训练的方法通过限制初始阶段的更新,使ASR预训练的Conformer模型能够平滑过渡到SV任务上,避免了随机初始化层带来的显著扰动,从而减小过拟合风险,提升模型的泛化能力和收敛速度。

方案二:知识蒸馏

知识蒸馏涉及训练一个学生模型来再现一个更复杂的教师模型的行为。在本文中,ASR预训练的Conformer模型充当教师模型来指导一个基于MFA-Conformer的SV学生模型,整体框架如图1所示。

图1:从ASR预训练的 Conformer模型到基于MFA-Conformer的SV模型的知识蒸馏。

损失函数由说话人分类损失和ASR蒸馏损失组成。

其中,表示MFA-Conformer模型对输入频谱序列的说话人预测, 表示真实说话人标签,表示带ASR解码器的MFA-Conformer模型,表示ASR预训练模型。

该方案的优势在于,在多任务框架中,利用ASR模型的输出作为辅助目标,通过知识蒸馏使得SV模型能利用ASR预训练模型的特征表示,从而在无需额外的ASR数据的情况下提高模型泛化性。此外,该方案提供了更大的架构灵活性,能够优化设计以满足ASR和SV任务的特定需求。

方案三:自适应机制

为了弥补ASR和SV之间的差距,统一Conformer编码器,我们引入了一种可集成到大规模预训练模型中的轻量级可训练说话人自适应模块。如图2所示,该模块由三部分组成:L个层适配器,K个可训练的Conformer层以及用于生成说话人嵌入的池化层和全连接层组合。

 图2:在一个Conformer模型中统一ASR和SV的说话人自适应模块。

其中层适配器由两个线性层和一个激活函数组成,用于微调ASR预训练Conformer模型的每层输出,使其更适配SV目标。K个可训练的Conformer层用于增强说话人特征提取。经过层适配器和可训练Conformer层变换后得到的帧级特征最终合并在一起,经过一个具有话语级的池化层和线性层的组合来提取说话人嵌入。

实验结果

 方案一实验结果:

利用ASR预训练Conformer模型初始化说话人嵌入网络的迁移学习结果如表1所示。实验结果显示在未使用迁移学习策略时,由于Conformer模型在数据有限或模型参数较大时,容易出现过拟合问题,因而当模型参数增加时SV性能反而呈现下降趋势。当使用ASR预训练模型初始化后,可以看到所有模型的SV性能均有所提高,模型的泛化性及防过拟合能力都得到了大幅提升,且对于较大的模型性能提升更为显著(例如在NEMO Large模型上,EER从原来的0.96%下降至0.48%,提升了50%)。另外可以看到该方法与一些大型自监督语音模型相比也极具竞争力,在VoxCeleb-O测试中,基于ASR预训练NEMO Large(参数约为1.31亿)取得了0.48%的EER,相比之下,参数更多的UniSpeech-SAT Large(约3.17亿)仅取得了0.63%的EER。此外我们还通过截取了NEMO Large前 4、6、8层探索了在Conformer浅层上的SV性能,可以看到当不应用ASR预训练时,这些截断的模型比完整的模型表现的更好,这也再次印证了Conformer随参数增加过拟合的倾向。当应用ASR预训练后,这些截断的模型要优于未使用ASR预训练的模型,也再次强调了ASR预训练的优势。

表1:基于ASR预训练的MFA-Conformer在VoxCeleb 1上的SV性能

 

方案二实验结果:

该实验中,我们使用NEMO Large ASR-CTC模型作为知识蒸馏中的教师模型,实验结果如表2所示。可以看到在不同的模型大小和采样率下,ASR知识蒸馏技术都能显著提升模型SV性能,且在大多数情况下模型表现要优于或接近ASR预训练对应的模型。这可归因于两个方面:一方面学生模型受益于在大规模ASR数据集上训练的参数更大的ASR教师模型的鲁棒性;另一方面帧级别建模的辅助ASR任务增强了学生模型在捕获细粒度、特定于说话人特征的能力。此外我们还探讨了模型大小和采样率的影响,将NEMO Small、NEMO Medium、NEMO Large三种模型的Conformer层数减半的同时将卷积采样率翻倍从1/4提升至1/2。实验结果表明,虽然模型参数少了接近一半,但不管是采用基线训练还是知识蒸馏方法,都能获得与原先模型相当甚至更好的SV性能。

表2:基于ASR知识蒸馏技术的MFA-Conformer在VoxCeleb 1上的SV性能

图片

方案三实验结果:

在该实验中,我们设置了三种不同配置的说话人自适应模块以进行比较:

  • V1:直接使用ASR Conformer前L层的输出,无需层适配器的干预。

  • V2:按照图2(a)的设置,集成了层适配器微调来自ASR Conformer前L层的输出。K个轻量级Conformer层处理第L个ASR Conformer层输出的帧级特征。

  • V3:与图2(b)一致,集成了层适配器微调来自ASR Conformer前L层的输出。K个轻量级的Conformer层处理ASR Conformer的前L个Conformer层的串联输出,其中辅助的线性层确保了连接的特征维度的对齐。

我们在Small、Medium、Large三种不同大小的ASR Conformer编码器上对这三种配置的说话人自适应模块进行了SV性能评估,实验结果分别如表3、表4、表5所示。

 表3:不同配置的说话人自适应模块在NEMO Small ASR-CTC模型上的SV性能

 表4:不同配置的说话人自适应模块在NEMO Medium ASR-CTC模型上的SV性能

 

 表5:不同配置的说话人自适应模块在NEMO Large ASR-CTC模型上的SV性能

 表5:不同配置的说话人自适应模块在NEMO Large ASR-CTC模型上的SV性能

 

 

实验结果表明,与V1相比,集成了层适配器的V2在SV上的性能得到了显著提升。例如,NEMO Small ASR-CTC(L=12,K=0)模型的EER降至1.10%,相较于同等模型下V1的1.73%减少了36%,Medium和Large模型上也显示了类似的性能提升,这证明了层适配器的有效性。

此外,我们进一步研究了加入可训练轻量级Conformer层的影响,结果显示增加额外的可训练Conformer层能带来一定的性能提升,但存在收益递减现象。可以看到在K=2时,SV性能得到了明显改善,但增加到4层时,相较2层的SV性能提升不明显甚至会略微下降。这可能是因为这些轻量级可训练Conformer层的输入来自ASR模型的高度抽象信号,因而增加过多可能导致过拟合。

另外,我们对比了V2和V3中可训练Conformer层的输入。在V2中,可训练Conformer层的输入直接来自第L个ASR Conformer层的帧级输出。而在V3配置中,可训练Conformer层的输入来自ASR模型前L个Conformer层的串联输出。结果表明,V3在所有不同模型大小、L值和K值的模型中均优于V2。这表明,ASR Conformer模型的早期层能够有效捕捉说话人特征,V3的多层串联输出捕捉了更多样化且高质量的信息,有助于提高说话人适应模块的性能。

虽然该说话人自适应方法略微落后于前两种方案,但它在仅增加极少量参数下独特地提供了在单个Conformer模型中统一ASR和SV的能力。

结 论

本文提出了三种有效利用ASR预训练Conformer模型来提升SV性能的方法,并在VoxCeleb数据集上进行实验验证了这些方法的有效性。首先,我们使用迁移学习方法,通过ASR预训练Conformer初始化说话人嵌入网络使得模能够提取更为鲁棒的说话人表示,从而避免了对有限说话人数据的过拟合。其次,通过从ASR Conformer教师模型向SV学生模型进行知识蒸馏来高效转移ASR知识,作为辅助的音素建模任务,这种蒸馏方法增强了说话人建模,且与直接的ASR预训练初始化相比,知识蒸馏方法在学生模型设计上提供了更大的灵活性。在最后一种方案上,我们通过引入轻量级说话人自适应模块,为SV任务优化ASR学习到的特征高效地弥合了两者之间的差距,在仅添加极少额外参数下将ASR和SV任务统一于一个Conformer模型中。

参考文献

[1] Arsha Nagrani, Joon Son Chung, and Andrew Zisserman, “Voxceleb: a large-scale speaker identification dataset,” in Proc. of Interspeech, 2017, pp. 2616–2620.

[2] Joon Son Chung, Arsha Nagrani, and Andrew Zisserman, “VoxCeleb2: Deep Speaker Recognition,” in Proc. of Interspeech, 2018, pp. 1086–1090.

[3] Anmol Gulati, James Qin, Chung-Cheng Chiu, Niki Parmar, Yu Zhang, Jiahui Yu, Wei Han, Shibo Wang, Zheng dong Zhang, Yonghui Wu, et al., “Conformer: Convolution augmented transformer for speech recognition,” in Proc. Interspeech, 2020, pp. 5036–5040.

[4] Yang Zhang, Zhiqiang Lv, Haibin Wu, Shanshan Zhang, Pengfei Hu, Zhiyong Wu, Hung-yi Lee, and Helen Meng, “Mfa-conformer: Multi-scale feature aggregation conformer for automatic speaker verification,” in Proc. Interspeech, 2022, pp. 306–310.

[5] Dexin Liao, Tao Jiang, Feng Wang, Lin Li, and Qingyang Hong, “Towards a unified conformer structure: from asr to asv task,” in Proc. of ICASSP, 2023, pp. 1–5.

这篇关于IEEE T-ASLP | 利用ASR预训练的Conformer模型通过迁移学习和知识蒸馏进行说话人验证的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1099740

相关文章

HarmonyOS学习(七)——UI(五)常用布局总结

自适应布局 1.1、线性布局(LinearLayout) 通过线性容器Row和Column实现线性布局。Column容器内的子组件按照垂直方向排列,Row组件中的子组件按照水平方向排列。 属性说明space通过space参数设置主轴上子组件的间距,达到各子组件在排列上的等间距效果alignItems设置子组件在交叉轴上的对齐方式,且在各类尺寸屏幕上表现一致,其中交叉轴为垂直时,取值为Vert

Ilya-AI分享的他在OpenAI学习到的15个提示工程技巧

Ilya(不是本人,claude AI)在社交媒体上分享了他在OpenAI学习到的15个Prompt撰写技巧。 以下是详细的内容: 提示精确化:在编写提示时,力求表达清晰准确。清楚地阐述任务需求和概念定义至关重要。例:不用"分析文本",而用"判断这段话的情感倾向:积极、消极还是中性"。 快速迭代:善于快速连续调整提示。熟练的提示工程师能够灵活地进行多轮优化。例:从"总结文章"到"用

Spring Security基于数据库验证流程详解

Spring Security 校验流程图 相关解释说明(认真看哦) AbstractAuthenticationProcessingFilter 抽象类 /*** 调用 #requiresAuthentication(HttpServletRequest, HttpServletResponse) 决定是否需要进行验证操作。* 如果需要验证,则会调用 #attemptAuthentica

Java架构师知识体认识

源码分析 常用设计模式 Proxy代理模式Factory工厂模式Singleton单例模式Delegate委派模式Strategy策略模式Prototype原型模式Template模板模式 Spring5 beans 接口实例化代理Bean操作 Context Ioc容器设计原理及高级特性Aop设计原理Factorybean与Beanfactory Transaction 声明式事物

大模型研发全揭秘:客服工单数据标注的完整攻略

在人工智能(AI)领域,数据标注是模型训练过程中至关重要的一步。无论你是新手还是有经验的从业者,掌握数据标注的技术细节和常见问题的解决方案都能为你的AI项目增添不少价值。在电信运营商的客服系统中,工单数据是客户问题和解决方案的重要记录。通过对这些工单数据进行有效标注,不仅能够帮助提升客服自动化系统的智能化水平,还能优化客户服务流程,提高客户满意度。本文将详细介绍如何在电信运营商客服工单的背景下进行

【前端学习】AntV G6-08 深入图形与图形分组、自定义节点、节点动画(下)

【课程链接】 AntV G6:深入图形与图形分组、自定义节点、节点动画(下)_哔哩哔哩_bilibili 本章十吾老师讲解了一个复杂的自定义节点中,应该怎样去计算和绘制图形,如何给一个图形制作不间断的动画,以及在鼠标事件之后产生动画。(有点难,需要好好理解) <!DOCTYPE html><html><head><meta charset="UTF-8"><title>06

学习hash总结

2014/1/29/   最近刚开始学hash,名字很陌生,但是hash的思想却很熟悉,以前早就做过此类的题,但是不知道这就是hash思想而已,说白了hash就是一个映射,往往灵活利用数组的下标来实现算法,hash的作用:1、判重;2、统计次数;

Andrej Karpathy最新采访:认知核心模型10亿参数就够了,AI会打破教育不公的僵局

夕小瑶科技说 原创  作者 | 海野 AI圈子的红人,AI大神Andrej Karpathy,曾是OpenAI联合创始人之一,特斯拉AI总监。上一次的动态是官宣创办一家名为 Eureka Labs 的人工智能+教育公司 ,宣布将长期致力于AI原生教育。 近日,Andrej Karpathy接受了No Priors(投资博客)的采访,与硅谷知名投资人 Sara Guo 和 Elad G

sqlite3 相关知识

WAL 模式 VS 回滚模式 特性WAL 模式回滚模式(Rollback Journal)定义使用写前日志来记录变更。使用回滚日志来记录事务的所有修改。特点更高的并发性和性能;支持多读者和单写者。支持安全的事务回滚,但并发性较低。性能写入性能更好,尤其是读多写少的场景。写操作会造成较大的性能开销,尤其是在事务开始时。写入流程数据首先写入 WAL 文件,然后才从 WAL 刷新到主数据库。数据在开始

【Prometheus】PromQL向量匹配实现不同标签的向量数据进行运算

✨✨ 欢迎大家来到景天科技苑✨✨ 🎈🎈 养成好习惯,先赞后看哦~🎈🎈 🏆 作者简介:景天科技苑 🏆《头衔》:大厂架构师,华为云开发者社区专家博主,阿里云开发者社区专家博主,CSDN全栈领域优质创作者,掘金优秀博主,51CTO博客专家等。 🏆《博客》:Python全栈,前后端开发,小程序开发,人工智能,js逆向,App逆向,网络系统安全,数据分析,Django,fastapi