NOISE ROBUST TTS FOR LOW RESOURCE SPEAKERS USING PRE-TRAINED MODEL AND SPEECH ENHANCEMENT论文阅读

在这里插入图片描述

摘要

目前鲁棒性较强的模型依赖于大量高质量的,定制的数据收集。因此如何从互联网收集并充分利用低资源和低质量的声音数据来合成个性化的声音是非常值得探究的。在这篇文章中,提出了端到端的语音合成模型,使用了speaker embedding和noise representation作为条件输入来对说话人和噪声信息进行建模。 首先, 语音合成模型使用多说话人的干净的和包含噪声数据进行预训练; 然后用预训练好的模型来自适应低资源的带有噪声的新说话人的数据。最后,通过设置干净的语音条件该模型能够合成新说话人清晰的语音。实验结果表明,该方法生成的语音效果良好与直接使用去噪后的新说话人数据对预训练多说话人语音合成模型进行微调的方法相比,具有更好的主观评价效果。

关键词

Noise robust TTS; mel-spectrogram denoise masks, low resourse personalized TTS

简介

Noise robust TTS——在包含噪声,低资源的数据上训练一个稳定的TTS模型。为了利用低质量的众包数据来训练能为所有说话人合成干净语音的多说话人TTS模型,基于Tacotron2,[11]引入了条件生成参考编码器和对抗训练来学习分离表示,从而独立控制说话人身份和背景噪声信号。该方法使用speaker encoder来抽取和说话人相关的变量 z s z_s zs, 残差编码器来抽取和噪声信息相关的变量 z r z_r zr。但是,噪声信号并不是总保持稳定的,它会随着时间的改变而改变。因此一个固定长度的向量无法对噪声信息进行建模,特别是带有低信噪比的语音数据

[11] Wei-Ning Hsu, Yu Zhang, Ron J Weiss, Yu-An Chung, Yuxuan
Wang, Yonghui Wu, and James Glass, “Disentangling correlated speaker and noise for speech synthesis via data augmentation and adversarial factorization,” in ICASSP 2019-2019
IEEE International Conference on Acoustics, Speech and Signal Processing (ICASSP). IEEE, 2019, pp. 5901–5905.

最近使用masks在语音增强和语音分离任务中达到不错的成果,受此启发,我们使用变长的Mel谱 denoise masks 来替代固定长度的noise vector。 我们假设噪声音频是由噪声信号添加到干净的音频所产生的。 用 E s E_s Es表示干净音频的能量, E n E_n En表示噪声音频的能量, 整个音频的能量E为 E = E s + E n E=E_s+E_n E=Es+En。因此mel-speactrogram denoise mask 的值等于相应位置的 E s / E E_s / E Es/E。 这篇文章以voice cloning框架为基础模型,引入Mel-spectrogram denoise masks作为噪声的表示。 文章的主要贡献在三个方面:

  1. 文章提出的方法使用了speaker embedding 和 noise representation作为作为模型的条件输入,实现了对有噪声和不同说话人的合成语音的独立控制。在对多说话人增强数据进行预训练后,对低质量的新说话人数据进行自适应处理,为新说话人合成干净的语音。
  2. 提出的模型使用Mel-spectrogram denoise masks 来表示噪声数据。 和定长向量相比, mel-spectrogram denoise mask能够更好地表示噪声数据的特征。模型在带有噪声的和干净的多说话人数据上进行预训练。 噪声表示包含noisy masks(从噪声音频中提取)和clean masks。 模型将noisy mask 作为条件输入来生成音频中相应的噪声, 同样适用clean masks来生成干净的音频。当噪声表示从带噪掩模到干净掩模变化时,生成的语音从带噪到干净。
  3. 使用语音识别中提取的说话人特征作为speaker embedding。

模型

在这里插入图片描述
系统包含三个阶段:

  1. 预训练阶段: TTS模型在同时包含干净的含噪声的多说话人数据下进行预训练。 模型将speaker embedding和noise representation作为条件输入。 speaker embedding从说话人识别模型中获取, noise representation是从mel-spectrogram denosie masks中获取,包含noise masks 和 clean masks。 noise masks表示mel-spectrogram denoise mask是从包含噪声的音频中提取出来的,而clean masks表示mel-spectrogram denoise mask是从干净的音频中提取出来的。
  2. 自适应阶段: 预训练好的模型自适应到新的低资源、低质量的说话人数据中。新说话人的数据只包含含噪声的数据,所以noise representation 只使用noisy masks
  3. 推理阶段:自适应模型使用clean masks作为条件输入来控制合成新说话人的音频。

speaker embedding extraction

说话人识别模型:包含一个修正后的ResNet[15]来抽取frame-level的特征+ GhostVLAD[16]用于时间轴的特征聚合。为了获取speaker embedding更多判别特征,额外使用了margin softmax[17]。 此外所有的speaker embedding被归一化到单位球空间。在实践中,我们选择同一说话人的speaker embedding的中心点,进行归一化, 即:
u i = ∑ x i j / ∣ ∣ ∑ x i j ∣ ∣ u_i = \sum{x_{ij}}/||\sum{x_{ij}}|| ui=xij/xij
u指的是speaker-level 的speaker embedding

[15] Weidi Xie, Arsha Nagrani, Joon Son Chung, and Andrew Zisserman, “Utterance-level aggregation for speaker recognition in the wild,” in ICASSP 2019-2019 IEEE International Conference on Acoustics, Speech and Signal Processing (ICASSP). IEEE, 2019, pp. 5791–5795.
[16] Yujie Zhong, Relja Arandjelovic, and Andrew Zisserman, “Ghostvlad for set-based face recognition,” in Asian Conference on Computer Vision. Springer, 2018, pp. 35–50.
[17] Feng Wang, Jian Cheng, Weiyang Liu, and Haijun Liu, “Additive margin softmax for face verification,” IEEE Signal Processing Letters, vol. 25, no. 7, pp. 926–930, 2018

Noise representation Extraction

受到语音增强领域的启发,我们将mel-spectrogram denoise masks作为noise representation来对噪声信息进行建模。 mel-spectrogram denoise masks 是从语音增强模型中提取出来的, 语音增强模型输入为mel谱, 模型结构为CNN-RNN-FC的变体,和[18]中的模型十分相似, 主要有以下三个不同之处:

  1. 模型的输入为mel-spectrogram 而不是 线性谱
  2. LSTM层被DFSMN(deep feedforward sequential memory networks)代替,减少模型大小(从26M的参数减少到4.76M)。同时, 推理的速度可以提升到9倍左右(Nvidia T1080)。
  3. 输出层的激活函数是sigmoid函数, 损失函数使用的MSE。 S n o i s e S_{noise} Snoise表示含噪声音频的mel谱, S c l e a n S_{clean} Sclean表示干净音频的mel谱, S n o i s e ⊙ M S_{noise}\odot M SnoiseM表示denoised mel谱,n表示mel谱的TF bins.
    L m s e = ∑ ∣ ∣ S n o i s e ⊙ M − S c l e a n ∣ ∣ 2 n L_{mse} = \frac{\sum ||S_{noise}\odot M - S_{clean}||^2}{n} Lmse=nSnoiseMSclean2

Noise robust personalized TTS model

Basic TTS model

Tacotron的变体: 使用基于GMM的attention

speaker embedding condition

在这里插入图片描述
speaker embedding 除了和encoder 的输出进行拼接, 还分别通过两个全连接层, 作为格外的两个条件输入到Highway network中, 并且映射后的speaker embedding将作为GRU的初始值。

Noise representation condition

为了对噪声信息进行建模, 我们使用了noise representation作为decoder的条件输入。如下图所示, decoder 部分是个自回归的结构, 由prenet , attentionRNN , decoder RNN, linear projection 还有 stop token projection和post net 组成。
在这里插入图片描述
在我们的模型中, postnet用于对noise 信息进行建模。 为了不把噪声信息引入到decoder 中, 我们使用降噪后的mel-spectrogram 或干净音频的spectrogram 作为线性映射层的target来计算before loss。 post-net接收预处理过的noise representation和线性映射层的输出作为输入信息, postnet 的输出添加到线性映射层的输出来预测原始的mel谱,并计算after loss。【noise representation首先压缩到0.1~1之间,然后经log函数, 最后归一化到-4 ~4之间】

模型是在多说话人的干净和包含噪声的数据上进行预训练的,噪声数据是用噪声信号和干净的音频进行混合得到的,因此每条音频有对应的干净音频和噪声音频。因此在预训练阶段, 模型使用干净音频的 mel谱作为target来计算before loss。 在自适应阶段, before loss是根据降噪后的mel谱【降噪的mel谱从语音增强模型中获取】来计算的。

实验

数据准备:
噪声信号获取: Audio Set[21]

Jort F. Gemmeke, Daniel P. W. Ellis, Dylan Freedman, Aren Jansen, Wade Lawrence, R. Channing Moore, Manoj Plakal, and Marvin Ritter, “Audio set: An ontology and human-labeled dataset for audio events,” in Proc. IEEE ICASSP 2017, New Orleans, LA, 2017.

将噪声信号添加到干净的多说话人语料中来生成噪声多说话人语料。
预训练阶段:1100个说话人,每个说话人包含30min的数据。
自适应阶段:4个新的说话人, 每人200-300条数据。

baseline: 这里的模型和提出的模型是一致的,除了post net的输入只有线性映射层的输出。 并且baseline只在干净的数据上进行训练,用降噪后的新的说话人数据进行自适应。

结果和分析
  1. 分析语音增强模型的结果: 在不同的SNR等级下进行测试, 分别是-5dB,0dB,5dB。每个SNR设置下, 61个噪声音频。 SI-SDR(scale-invariant signal-to-distortion ratio)用于计算生成的mel谱的质量
    在这里插入图片描述
    在这里插入图片描述
    从上面的mel谱图可以看出,原始mel谱图中的一些声音信息经过语音增强模型后被削弱了,因此TTS模型在自适应阶段直接使用denoised data 会造成不稳定的现象。
    在这里插入图片描述
鲁棒的GSC波束形成方法是一种用于语音增强的方法,它使用线性麦克风阵列。GSC(Generalized Sidelobe Canceller)是一种常见的用于语音增强的方法,它能够优化麦克风阵列的波束形成性能。 在这种方法中,首先使用线性麦克风阵列采集到的原始语音信号。然后,通过对麦克风信号进行预处理和声学模型建立,可以建立起麦克风阵列的声学特性。 在预处理阶段,可以使用一些降噪算法来去除噪声对语音信号的影响。例如,常用的算法包括谱减法、短时时域幅度估计(STSA)等。这些算法可以通过对麦克风阵列中的信号进行频谱分析和幅度估计来实现噪声的去除。 在声学模型建立阶段,通常会使用一些机器学习算法,例如统计模型(如高斯混合模型)或神经网络模型,来建立麦克风阵列的声学特性模型。这些模型可以通过对语音信号进行建模和预测来优化麦克风阵列的波束形成性能。 最后,在语音增强阶段,通过对预处理后的信号应用波束形成算法,可以将麦克风阵列的指向性增强到语音源的方向,从而增强语音信号的清晰度和质量。这样,用户在接收到语音信号时,可以更清晰地听到对方的声音,减小噪声对语音信号的干扰。 总之,通过采用线性麦克风阵列和GSC波束形成方法,我们可以实现对语音信号的鲁棒增强,提高语音清晰度和质量。同时,该方法还可以有效抑制噪声对语音信号的干扰,提高语音通信的可靠性和质量。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值