DCCRN模型利用频谱复数特征实现了出色的语音增强性能。然而,该模型的参数量和计算复杂度高,难以直接在端侧设备部署。因此需要对模型进行优化,在不影响模型表现的同时,降低模型的参数量和计算复杂度。 最近,西北工业大学音频语音与语言处理研究组(ASLP@NPU)的论文“Distil-DCCRN: A Small-footprint DCCRN Leveraging Feature-based Knowledge Distillation in Speech Enhancement”被IEEE Signal Processing Letters接收。该论文采用知识蒸馏 (KD) 方法,使用较大的教师模型Uformer来帮助异构蒸馏训练较小的学生模型Distil-DCCRN。与之前主要关注模型输出的 KD 方法不同,该论文提出结合Attention Transfer和kullback-Leibler 散度 (AT-KL) 的知识蒸馏方法,有效利用了两个异构模型维度(通道维和时间维)不匹配的中间特征进行知识蒸馏。使用提出的AT-KL KD方法在DNS数据集上进行实验,作为DCCRN模型的缩小版,相较于DCCRN,Distil-DCCRN模型在参数量减少70%,计算复杂度减少50%的情况下,测试集上的PESQ和SI-SNR均优于DCCRN和其他模型,DNSMOS分数也与DCCRN模型相当。现对该论文进行简要的解读。
论文题目:Distil-DCCRN: A Small-footprint DCCRN Leveraging Feature-based Knowledge Distillation in Speech Enhancement
作者列表:韩润铎,许伟铭,张子晗,刘铭帅,谢磊
发表期刊:IEEE Signal Processing Letters
论文原文:https://ieeexplore.ieee.org/document/10632589
论文预印版:https://arxiv.org/abs/2408.04267
扫码直接看论文
背景动机
语音增强 (speech enhancement, SE) 旨在消除干扰并从嘈杂的语音噪声混合中保留语音。随着数据驱动的深度学习方法的出现,SE 模型可以直接从大量成对的干净-嘈杂语音数据集中学习语音和噪声之间的关系,并获得强大的噪声抑制能力。最近的方法更倾向于使用时频 (TF) 域模型 [1, 2],这些模型通过增强语音复数频谱取得了出色的性能。DCCRN [1]是实验室提出的一种典型的TF 域语音增强模型,在首届DNS竞赛上获得了实时赛道冠军和非实时赛道亚军,许多后续工作都专注于扩展该模型。
DCCRN:实验室在INTERSPEECH深度噪声抑制挑战赛中夺冠
虽然包括DCCRN在内的语音增强模型性能优越,但它们依赖于复杂的模块设计来提高模型的特征提取能力。然而较大参数量使这些模型不适合资源受限的小型应用。
本论文旨在设计一个参数量比 DCCRN 少得多但性能相当的模型。知识蒸馏 (KD) 方法将知识从较大的教师模型(Teacher)传递到较小的学生模型(Student),被广泛用于减小模型的同时保持相当的性能 [3]。最近,KD已经从仅仅关注模型输出发展到同时利用中间特征,即模型中间层的输出,它们比模型输出包含更丰富的信息 [4]。使用更复杂、表现更好的Teacher通常会产生更好的结果。然而,这也会造成Teacher和Student之间的中间特征维度的显著差异。为了充分蒸馏维度不一致的中间特征,之前提出的方案主要解决通道维度的不匹配。然而对于音频信号,时间维度的信息也至关重要。
包括 DCCRN在内的TF 域语音增强模型需要使用短时傅里叶变换 (STFT) 将音频从时域转换到 TF 域。由于应用中对延迟时间的要求不同,Teacher和Student具有不同的 STFT 配置,特别是在窗移方面,这会导致中间特征的时间维度不匹配。当通道和时间维度都被压缩时,以前的 KD 方法 Attention Transfer [5] 效果较差。这种压缩使得中间特征过于复杂,Student无法直接学习。为了克服这个问题,本论文设计了一种新的 KD 方法 —— AT-KL,它将 AT 与 Kullback-Leibler (KL)散度相结合。结合 KL 散度的优点,可以将Student的中间特征分布与Teacher对齐,从而改进学习过程。这种 AT-KL 方法使Student能够更有效地学习Teacher压缩后的中间特征的概率分布,从而显著提高其表现。
基于 AT-KL KD 方法,本文提出了一个小模型 Distil-DCCRN 作为Student,它可以有效地从更大、更复杂的Teacher模型 Uformer [2]中学习知识。在 DNS 数据集上进行的实验表明,Distil-DCCRN 实现了与 DCCRN 相当的语音增强性能,而参数仅为 DCCRN 的 30%,计算复杂度仅为DCCRN的50%。
提出的方案
总体概述
为了更好地验证提出的KD方法AT-KL的有效性,我们选择了Uformer [2] 作为Teacher,卷积层通道维度减小的DCCRN [1]模型作为Student,并命名为Distil-DCCRN。它们的模型结构以及中间特征的通道大小和时间维度均有所不同。如图图1所示,Uformer是一个设计精良的模型,成功地将U-Net结构与attention结合起来,在语音增强方面表现优异。Student模型Distil-DCCRN的整体结构与原始的DCCRN类似,采用了U-Net结构,并在编码器和解码器之间插入了长短期记忆(LSTM)层。Distil-DCCRN 中,编码器-解码器部分卷积层和反卷积层的通道数以及 LSTM 层隐藏神经元的数量相较于原始 DCCRN 有所减少,这是减少模型参数量和复杂度的常用方法。
图1 AT-KL KD方法的总体框架
AT-KL 方法在Teacher和Student的编码器和解码器之间逐层进行 KD,并在两个模型的输出之间进行标准KD [3]。
注意力转移(Attention Transfer)
如 [5]中所述,隐藏神经元激活的绝对值可以表示神经元对于特定输入的重要性。因此,通过考虑张量
在本研究中,Teacher和Student在时间和渠道维度上存在不一致。为了充分利用Teacher在时间和通道维度上的特点,我们为每个维度设计了不同的AT机制。
时间维度
在 TF 域模型中,音频信号必须先经过 STFT 从时域转换到 TF 域。然而,在模型的训练阶段,不同场景的应用需要不同模型使用不同的 STFT 窗移长度。这导致模型间中间特征的时间维度不一致。为了解决这个问题,我们提出了一种时间维度 AT 方法,在保留有用信息的同时对齐Teacher和Student的时间维度,从而促进KD。
其中
类似的,我们定义Student中中间特征的激活图为
通道维度
有效的 U-Net 结构 SE 模型通常在其编码器-解码器模块中的卷积层和反卷积层中具有更多通道 [DCCRN, Uformer]。这是因为通道数量的增加使模型能够提取更丰富的特征,这有助于捕获输入信号中的复杂信息。编码器的每一层都可以看作是一个特征提取器,随着深度的增加,可以提取更高级的特征。然而,这不可避免地会导致更多的模型参数。减少模型参数数量的常用方法是减少编码器和解码器中的通道数。基于此,我们提出了一个通道维度 AT,它使Teacher和Student的通道维度对齐,同时确保保留Teacher中间特征的通道维度中的有价值信息。
其中
类似地,我们定义Student中间特征的时间维度压缩激活图为
其中表示具有不同时间维度的中间特征的激活图,表示时间和通道维度都不匹配的中间特征的激活图。设置为 2,如在 [6]中所做的那样。
AT-KL
n表示频率轴的维度,和分别表示Student和Teacher在第个频率的中间特征的概率分布。
知识蒸馏方法
在蒸馏中间特征时,Student和Teacher的编码器-解码器的每一层都需要进行蒸馏。对于具有相同通道维度的层,只需使用时间维度 AT 压缩时间维度。对于具有不同通道维度的层,必须同时使用时间和通道维度 AT 来依次压缩两个维度。随后,我们计算Teacher和Student的中间特征激活图之间的 KL 散度,使Student进一步学习Teacher的特征分布。
其中和是这些损失函数的权重。当设置为 0.5 时,模型表现最佳。
其中,和代表各个损失函数的权重。为了平衡三个损失函数之间的数值关系,经过多次实验,我们设定
在模型训练阶段,我们首先对Teacher进行预训练。然后冻结其参数,并蒸馏中间特征和输出结果。Student不需要预训练。
实验结果
相比于结构相似的 DCCRN,Student模型Distil-DCCRN 在 AT-KL KD 的辅助下获得了更高的 PESQ 和 SI-SNR,DNSMOS 得分也与 DCCRN 基本持平。而且 Distil-DCCRN 的参数数量比 DCCRN 减少了 70%,FLOPs 从 15.7G 降低到 7.4G,只有 DCCRN 的一半。此外,DCCRN 已经成为一种过时的设计,而如今的众多设计可以使模型在减少参数数量的情况下获得与 DCCRN 相当甚至更好的性能。不过,在 AT-KL 的帮助下,Distil-DCCRN 的性能可以匹敌 SOTA 轻量级模型,包括 SubbandModel、FullSubnet、GRU-512 和 ES-Gabor,唯一的例外是在 WB-PESQ 指标上与 ES-Gabor 相比略有差距 0.03。这展现了我们提出的 AT-KL KD 方法的有效性,该方法使简单结构的Student能够显著学习Teacher提取语音特征的能力。
结论
本文提出了一种 AT-KL KD 方法,该方法利用Teacher和Student在时间和通道维度上不一致的中间特征进行知识蒸馏。相较于原版DCCRN模型,AT-KL 方法不仅将Student模型Distil-DCCRN参数数量减少了 70% 以上,而且实现了与 之相当的 DNSMOS。此外,Distil-DCCRN 的 PESQ 和 SI-SNR 不仅达到甚至超过了 DCCRN 和其他几个 SOTA 模型。在 DNS 数据集上的实验表明,AT-KL KD 方法使参数量较少、结构更简单的Student能够与最新的、设计精良的 SOTA 模型的性能相媲美。基于通用U-Net架构的AT-KL KD方法展示了其广泛的适用性。
样例展示
第二组
更多demo请访问:https://rdhan3.github.io/Distil_DCCRN_demo
参考文献
[1] Y. Hu, Y. Liu, and et al., “DCCRN: deep complex convolution recur rent network for phase-aware speech enhancement,” in 21st Annual Conference of the International Speech Communication Association, Interspeech 2020, Virtual Event, Shanghai, China, October 25-29, 2020. ISCA, 2020, pp. 2472–2476.
[2] Y. Fu, Y. Liu, and et al., “Uformer: A unet based dilated complex & real dual-path conformer network for simultaneous speech enhancement and dereverberation,” in IEEE International Conference on Acoustics, Speech and Signal Processing, ICASSP 2022, Virtual and Singapore, 23-27 May 2022. IEEE, 2022, pp. 7417–7421.
[3] G. E. Hinton, O. Vinyals, and J. Dean, “Distilling the knowledge in a neural network,” CoRR, vol. abs/1503.02531, 2015.
[4] B. Heo, J. Kim, and et al., “A comprehensive overhaul of feature distillation,” in 2019 IEEE/CVF International Conference on Computer Vision, ICCV 2019, Seoul, Korea (South), October 27- November 2, 2019. IEEE, 2019, pp. 1921–1930.
[5] S. Zagoruyko and N. Komodakis, “Paying more attention to attention: Improving the performance of convolutional neural networks via atten tion transfer,” in 5th International Conference on Learning Representa tions, ICLR 2017, Toulon, France, April 24-26, 2017, Conference Track Proceedings. OpenReview.net, 2017.
[6] W. Shin, H. J. Park, and et al., “Multi-view attention transfer for efficient speech enhancement,” in 23rd Annual Conference of the International Speech Communication Association, Interspeech 2022, Incheon, Korea, September 18-22, 2022. ISCA, 2022, pp. 1198–1202.
欢迎关注ASLP实验室微信公众号,获取更多语音研究相关资讯!
“打造最开放、最前沿、最落地的人工智能实验室”