[论文笔记] Phonetic posteriorgrams for many-to-one voice conversion without parallel data training

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/zongza/article/details/85766746

基于PHONETIC POSTERIORGRAMS和非并行数据的多对一语音转换

摘要

本文提出了一种利用非并行训练数据进行语音转换的新方法。该想法是通过从与说话者无关的自动语音识别(SI-ASR)系统获得的语音后验语音(PPG)来在扬声器之间建立桥接。我们假设这些PPG可以表示说话者标准化空间中的语音清晰度并且独立地对应于该段语音的source speaker。所提出的方法首先获得目标语音的PPG。然后,使用基于深度双向长短时间记忆的循环神经网络(DBLSTM)结构来学习目标语音的声学特征之间和PPG的关系。要转换任意的一段源语音,需要从相同的SI-ASR获得其PPG并将它们馈送到训练好的DBLSTM中以生成转换语音。我们的方法有两个主要优点:1)不需要并行的训练数据; 2)训练好的模型可以将任意一个人的语音转换成目标说话人的语音。实验表明,我们的方法与最先进的系统有相同或更好的语音质量及说话人相似度。

1 导论

语音转换(VC)旨在修改一个人的语音,使其听起来好像是另一个人所说的。 VC可以广泛应用于许多领域,包括计算机辅助语音矫正系统的定制反馈,为语音障碍项目开发个性化助听器,用各种人的声音进行电影配音等。

典型的VC训练如下工作:首先对齐源音频和目的音频中具有相同内容的语音段(例如,帧)。然后,找到从源声学特征到目标声学特征的映射。许多以前关于VC的模型的输入依赖于并行训练数据,也即:输入数据由源说话者音频和说出相同句子的目标说话者音频成对出现。 Stylianou等人。 [1]提出了一种基于高斯混合模型(GMM)的连续概率变换方法。 Toda等人. [2]通过使用全局方差来缓解过度平滑效应,改善了基于GMM的方法的性能。吴等人. [3]提出了一种基于非负矩阵分解的方法,使用语音范例直接合成转换后的语音. Nakashika等. [4]使用深度神经网络(DNN)来映射高阶空间中的源和目标。孙等人。 [5]提出了一种基于深度双向长短时记忆的循环神经网络(DBLSTM)方法,通过使用声谱特征及其上下文信息来模拟源语音和目标语音之间的关系。

所有上述方法都提供了相当好的结果。 但是,实际上,并行数据并不容易获得。 因此,一些研究人员提出了使用非并行数据的VC方法,这是一个更具挑战性的问题。 大多数这些方法都专注于寻找更好的帧对齐方法。 Erro等. [6]提出了一种迭代对齐方法,用于配对来自非平行音频的等效声学矢量。 陶等人. [7]提出了一种有监督数据对齐方法,其中语音信息被用作对齐期间的限制。 Silen等人. [8]通过将非并行数据与迭代对齐算法相结合,扩展了基于动态核的部分'最大二乘回归方法. Benisty等. [9]使用时间上下文信息来提高非并行数据的迭代对齐精度。

不幸的是,实验结果[6-9]表明,使用非并行数据的VC的性能不如使用并行数据的VC的性能好。 这种结果是合理的,因为很难使非平行对齐与平行对齐一样准确。 Aryal等. [10]提出了一种完全不同的方法,利用electromagnetic articulography (EMA)来估计发音行为。 由于认为不同的发言者在说出相同的口语内容时具有相同的发音行为(如果他们的发音区域被标准化),作者将标准化的EMA特征作为源和目标发言者之间的桥梁。 在对EMA特征与目标说话人的声学特征之间的映射建模之后,可以通过使用源说话人的EMA特征驱动训练模型来实现VC。

我们的方法受到[10]的启发。然而,我们使用Phonetic PosteriorGrams(PPG)来代替很难得到的EMA特征来在说话人之间架起桥梁。 PPG是一个time-versus-class矩阵,表示每个语音类别在一段音频的每个特定时间帧的后验概率[11,12]。我们提出的方法通过采用独立于说话者的自动语音识别(SI-ASR)系统来产生PPG,以均衡说话者差异。然后,我们使用DBLSTM结构来模拟所获得的PPG与目标讲话者的相应声学特征之间的映射,以用于语音参数生成。最后,我们通过使用源说话人的PPG(从相同的SI-ASR获得)驱动训练好的DBLSTM模型来执行VC。请注意,我们没有在VC中使用来自SI-ASR的PPG背后的任何潜在语言信息。我们提出的方法具有以下优点:1)不需要并行训练数据; 2)不需要对齐过程(例如,DTW),这避免了可能的对齐误差的影响; 3)只要目标讲话者被固定(如多对一转换),训练好的模型就可以应用于任何其他源说话者。但对于具有并行训练数据的最先进方法,训练有素的模型仅适用于特定的源扬声器(如一对一转换)。

本文的其余部分安排如下:第2节介绍了一个先进的VC系统,它依赖于并行训练数据作为我们的基线。 第3节描述了我们提出的使用PPG的VC方法。 第4节介绍了我们提出的方法与基线方法的实验和比较。 第5节总结了本文。

2 baseline:基于DBLSTM和并行数据的语音转换

基线方法基于DBLSTM框架,该框架使用并行数据进行训练[5]

2.1 DBLSTM的基本框架

如图1所示,DBLSTM是序列到序列映射模型。 中间部分,左部分和右部分(用“t”,“t-1”和“t + 1”标记)分别代表当前帧,前一帧和后一帧。 图1中的每个方块表示一个memory block,其包含自连接的存储单元和三个可以分别提供写,读和复位操作的门单元(即输入,输出和忘记门)。 此外,每层的双向连接可以在前向和后向两个方向上充分利用上下文信息。

DBLSTM网络架构包括内存块和循环连接,可以在更长的时间内存储信息,并学习最佳的上下文信息量[5,13]。

2.2 训练阶段和转换阶段

baseline方法分为训练阶段和转换阶段,如图2所示。

在训练阶段,通过STRAIGHT分析[14]提取谱包络。 提取Mel-cepstral系数(MCEP)[15]以表示频谱包络,然后通过动态时间规整(DTW)对齐来自源语音和目标语音的相同句子的MCEP特征。 然后,源和目标语音的成对MCEP特征被视为训练数据, 被反向传播算法(BPTT)用来训练DBLSTM模型。

在转换阶段,首先为一个源语音提取基频(F0),MCEP和非周期分量(AP)。 然后,按照如下步骤生成转换后的语音的参数:通过DBLSTM模型完成源MCEP-->目的MCEP的映射。 通过源语音和目标语音的均值和标准差来转换Log F0。 AP被直接复制。 最后,STRAIGHT声码器用于合成语音波形。

2.3 局限

尽管其性能良好,但基于DBLSTM的方法具有以下局限性:1)它依赖于并行的训练数据,获取成本高昂; 2)DTW误差对VC输出质量的影响是不可避免的。

3 基于PPGs的语音转换

为了解决baseline的局限性,我们提出了一种基于PPG的方法,前提是我们认为从SI-ASR系统获得的PPG与特定speaker相互独立,而是代表着全局的特征。

3.1 概述

如图3所示,所提出的方法分为三个阶段:训练阶段1,训练阶段2和转换阶段。 SI-ASR模型的作用是获得输入语音的PPG。 训练阶段2学习目标说话者的PPG和MCEP特征之间的关系,然后生成语音参数。 转换阶段利用训练好的DBLSTM模型将利用VC的源语音PPG(从相同的SI-ASR获得)获得最终的转换语音输出。 PPG的计算和三个阶段将在以下小节中介绍。

3.2 Phonetic PosteriorGrams (PPGs)

PPG是一个时间x-类别y矩阵,表示每个发音类别在每段音频中的每个特定时间帧的后验概率[11,12]。 发音类别可以指单词,音素或senone。 在本文中,我们将senones视为发音类别。 图4示出了口头短语“particular case”的PPG表示的示例。

我们相信从SI-ASR获得的PPG可以表示在说话者标准化空间中的语音清晰度并且独立地对应于语音内容的说话者。 因此,我们将这些PPG视为源和目标发言者之间的联系桥梁。

3.3 训练阶段1 和 2

在训练阶段1中,使用多说话人ASR语料库训练SI-ASR系统以生成PPG。 下面通过一句例子来说明训练过程。 输入是第t帧的MFCC特征向量,表示为Xt。 输出是后验概率的向量Pt =(p(s | Xt)| s = 1; 2;···; C),其中p(s | Xt)是每个发音类别s的后验概率。

如图5所示,阶段2训练DBLSTM模型(语音参数生成模型)以获得PPG和MCEP序列之间的映射关系。 对于来自目标讲话者的给定音频序列,t表示该序列的帧的下标索引。 输入是PPG(P1;···; Pt;···; PN),由训练的SI-ASR模型计算得到。 输出层的理想值是从目标语音中提取的MCEP序列(Y1T;···; YtT;···; YNT)。 输出层的实际值是(Y1R;···; YtR;···; YNR)。 训练阶段2的成本函数是

通过第2节中提到的BPTT技术训练该模型以最小化成本函数。注意,DBLSTM模型仅使用目标说话者的MCEP特征和与说话者无关的PPG进行训练,而不使用任何其他语言学信息。

3.4 转换阶段

在转换阶段,log F0和AP的转换与baseline模型的转换方法相同。 首先,为了获得转换后的MCEP,提取源语音的MFCC特征。 然后,将MFCC特征输入训练好的SI-ASR模型中获得PPG。 之后,再用训练好的DBLSTM模型将PPG转换为MCEP。 最后,声码器使用转换后的MCEP和转换后的日志F0和AP来合成输出语音。

4 实验

4.1 实验设置

我们用于VC的数据是CMU ARCTIC语料库[16]。 用它进行性别内转换实验(男性对男性:BDL至RMS)和跨性别转换实验(男性对女性:BDL至SLT)。baseline方法使用源和目标说话者的并行语音,而我们提出的方法仅使用目标说话者的语音进行模型训练。

信号采用单通道,采样率为16kHZ,窗口为25 ms,每5 ms移位一次。 声学特征,包括谱包络,F0(1维)和AP(513维)由STRAIGHT分析[14]提取。 39阶MCEP会加上对数能量以表示谱包络。

我们分别实现了两个系统进行比较:

在基于PPG的方法中,SI-ASR系统使用Kaldi语音识别工具包[17]和TIMIT语料库[18]实现。 该模型使用DNN架构,具有4个隐藏层,每个隐藏层包含1024个单元。 Senones被视为PPG的发音类。 Senone的数量是131,这是通过在训练阶段1中的聚类获得的.SI-ASR的硬件配置是双Intel Xeon E5-2640,8核,2.6GHZ。 训练时间约为11小时。

然后,采用DBLSTM模型来映射PPG序列和MCEP序列的关系以用于语音参数生成。 该实现基于机器学习库CURRENNT [19]。 每层中的单元数分别为[131 64 64 64 64 39],其中每个隐藏层包含一个前向LSTM层和一个后向LSTM层。 BPTT用于训练该模型,学习率为1.0×10-6,动量为0.9。 使用NVIDIA Tesla K40 GPU加速了DBLSTM模型的训练过程,100个句子训练集需要大约4个小时。

基于DBLSTM的baseline方法具有相同的模型配置,但其输入仅具有39个维度(而不是131个)。 100个句子训练集需要大约3个小时。

4.2 客观评测

Mel-cepstral失真度(MCD)用于测量转换到目标语音的接近程度。 MCD是转换后的语音的MCEP与目标语音MCEP之间的欧几里德距离,表示为

其中N是MCEP的维度(不包括能量特征)。 c_d和c^converted_d分别是目标和转换后的MCEP的第d个系数。

为了探索训练数据大小的影响,使用不同数量的训练数据5,20,60,100和200句训练所有系统。 对于baseline model,训练数据由来自源和目标发言者的平行句子对组成。 对于本文提出的方法,训练数据仅包括来自目标说话者的句子。 测试数据集是来自源说话者的80个句子。

图6和图7分别显示了男 -> 男和男 -> 女实验的结果。 如图所示,当训练大小为5,20和60个句子时,MCD值随着数据大小的增加而变小。 当训练大小大于60个句子时,MCD值趋于收敛。 结果表明,基线方法和提出的方法在客观评估中具有相似的性能。

4.3 主观评估

我们进行了平均意见得分(MOS)测试和ABX偏好测试作为主观评估,用于测量转换语音的自然度和说话人相似度。 100个句子用于训练每个系统,随机选择10个句子(不在训练集中)进行测试.21个参与者被要求进行MOS测试和ABX测试。这两个测试的问卷和一些样本可以访问https://sites.google.com/site/2016icme/

在MOS测试中,要求听众以5分制评分转换语音的自然性和清晰度。 MOS测试的结果显示在图8中。基线和基于PPG的方法的平均得分分别为3.20和3.87。

对于ABX偏好测试,要求听众选择转换的语音A和B(由两种方法生成)哪种听起来更像是目标讲话者的录音X(或者选择no preference)。 每对A和B都被shuffle以避免喜好偏见。 如图9所示,基于PPG的方法通常优于基线方法。

MOS测试和ABX测试的结果表明,我们提出的基于PPG的方法在语音质量和说话人相似性方面都比基线方法表现更好。 可能的原因包括:1)基于PPG的方法不需要对齐(例如,DTW),这避免了可能的对齐误差造成的影响; 2)仅使用说话者标准化的PPG和目标说话者的声学特征来训练所提出的方法的DBLSTM模型。 这最大限度地减少了源说话者特有信号的干扰。

猜你喜欢

转载自blog.csdn.net/zongza/article/details/85766746