Teacher-Student Learning For Low-latency Online Speech Enhancement Using Wave-U-Net


在这里插入图片描述

ICASSP 2021

0. 摘要

本文提出了一种用于单通道语音语音增强的Wave-U-Net的低延迟扩展,其利用师生学习来减少系统延迟,同时保持较高的增强性能。考虑到低延迟的需求,本文使用teacher-student学习防止由于输入片段长度减少导致的性能下降,从而使CPU中的系统延迟小于10毫秒。实验结果表明,本文模型可以实时执行,具有低延迟和高性能,可实现约8.73dB的信噪比提升。

1. 简介

已有方法存在的问题:

  • 对噪声相位谱的使用问题
  • 频域中的有效源分离需要高频率分辨率,通常需要长分析窗口。 这导致实时应用程序中的系统延迟相对较高,因为窗口长度限制了最小延迟。

本文提出使用时域信号作为输入的方法来解决上面的问题,因为这种方法不需要进行STFT,无需考虑STFT一致性和高分辨率的问题。(这个表述应该不太准确,DPRNN方法同样是使用了时域信号,但是在窗长设置为2个samples时才能达到论文中的最佳性能,这应该也是一种提高分辨率的方法。)
本文意在将Wave-U-Net网络模型应用到实时场景中(延迟小于10ms),作者认为,虽然可以通过在Wave-UNet中应用块处理的方式应对网络的全连接卷积网络架构,但是这种方法减少了可用于推理的输入片段的信息,会造成增强效果的降低。为了解决以上问题,本文引入知识蒸馏(teacher-student)方法来训练模型。

2. Wave-U-Net for Speech Enhancement

信号模型定义:
在这里插入图片描述
分别表示带噪信号,纯净语音信号和噪声信号,使用Wave-Unet的目标是从带噪语音中获取纯净信号:
在这里插入图片描述
损失函数为噪声和纯净信号的MSE(mean square error):
在这里插入图片描述
网络架构如图1所示:
在这里插入图片描述
包含下采样块(Downsampling, DS)和上采样块(Upsampling, US)。上采样块包含一个上采样层和一个一维卷积层,上采样层采样差值的方式实现。最后一层使用Tanh激活,其余部分使用Leaky ReLU激活函数。

3. Proposed Online Low-latency Model

3.1 Online Wave-U-Net

实现实时处理的一个简单方法是对每个输入片段 m i ( τ ) = m ( i K + τ ) m_i(\tau)=m(iK + \tau) mi(τ)=m(iK+τ)进行增强,其中 τ = [ 1 , . . . , K ] \tau=[1, ..., K] τ=[1,...,K]表示第i个片段中的时间索引,K表示片段长度。系统延迟的下限是输入片段的长度,而长度过短会影响语音增强的性能,需要在性能和片段长短间进行权衡。
使用因果卷积,因为仅在一侧执行零填充,预计该因果卷积将在分段边界上产生更少的伪影。

3.2 Teacher-Student Learning for Knowledge Transfer

知识蒸馏方法,是通过已训练好的teacher网络指导student网络进行同样的推理预测。该方法通常用于域适应以及在不同的网络架构之间传输信息。student网络利用teacher网络输出的预测信号计算损失函数:
在这里插入图片描述
其中L为用于评估纯净信号预测准确度的损失函数, L d i f f L_{diff} Ldiff为评估teacher和student网络输出信号差异的损失函数。

为了降低系统延迟,只能减少输入片段的长度,因此,本文在student网络中使用小的输入片段 m i ( τ ) m_i(\tau) mi(τ)预测目标信号。这里使用offline wave-U-Net作为teacher 模型。
在这里插入图片描述
其中, n ~ i \tilde{n}_i n~i通过下式的方式获得:
在这里插入图片描述

4. 实验阶段

评价指标:
SDRs:signals-to-distortion ratios
SIRs:signals-to-interferences ratios
SARs: sources-to-artifacts ratios
PESQ和STOI

4.1 Datasets

clean speech: 从CMU Arctic database提取10名说话人的数据,每名说话人包含100条语音。训练集包含6名说话人(4男2女),测试集包含4名说话人(2男2女)
noise signal:JEIDA-NOISE 数据集,包含两种类型的高速汽车噪声,每种噪声时长1小时。其中一种噪声用于训练集,另一种用于测试集。

训练时:噪声与语音进行随机混合,功率通过随机乘以[0.2, 0.9]的数据得到。
测试时:混合信号的信噪比为[-3, 0, 3]dB,每一种信噪比包含50个测试样本。
信号的采样率为16kHz

4.2 Networks architectures and training settings

离线网络模型包含8个上采样块和下采样块,即L=8。下采样快,上采样快,bottleneck layer和输出层的卷积核大小分别为15, 5, 15和1。第l个DS块和US块的通道数为10l。bottleneck和输出层的通道数为20(L + 1)和1。通过零扩展的方式,将左右数据的采样点数修改为64000个。学习率为0.0001,batch_size大小为32。

对于student模型的设置:
在这里插入图片描述

4.3 实验结果

比较常规CNN和因果CNN模型,K设置为1024,不使用知识蒸馏方法,实验结果如表2所示:
在这里插入图片描述
作者发现常规CNN的效果要更好,与前面的分析不符,因此后面的实验全部采用常规CNN。。。。。。。。。。。
在这里插入图片描述
比较未使用知识蒸馏的online模型和offline模型,结果如表3所示,语义增强的性能随着片段长度的减少而降低,对于K=64的情况, SDR降低了9dB,加入知识蒸馏后( β = 0.01 \beta=0.01 β=0.01),信噪比提升了4dB,虽然与offline仍然有5dB的差距,但是能够证明知识蒸馏方法的有效性。

在这里插入图片描述
表4显示了不同片段长度情况下,模型处理一段语音的处理时间和系统延迟情况。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Aidanmomo

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值