个性化语音合成ADASPEECH 系列之ADASPEECH1

ADASPEECH: ADAPTIVE TEXT TO SPEECH FOR CUSTOM VOICE

论文地址:https://arxiv.org/abs/2103.00993

合成样例:https://speechresearch.github.io/adaspeech/

1、简介

    背景:个性化语音合成,通常指使用少量并且可能低质量的目标说话人语音,使用迁移学习等方法,训练一个能够合成目标说话人语音的语音合成模型。目前的个性化语音合成通常有两种做法,一种是将声纹信息作为一种embedding,嵌入到端到端语音合成模型中;另外一种是基于大量不同发音人训练一个通用语音合成模型,然后使用少量目标说话人语音进行fine-tune;第一种方案的优点是理论上用一个模型就能实现生成任意人的语音,但是其往往合成的质量相对较差。第二种方案的优点是合成的语音质量相对较好,但是需要一人一个模型,不适合大量部署;

    作者想要解决的问题:用少量的适配参数去适配各种各样的目标发音特征的语音。

    作者提出的解决方案:主要包含两个创新点,(1)声学信息表征综合使用了音素级别和句子级别的特征;

(2)在解码器端设计了conditional layer normalization;

    实现的效果:(1)20句话的个性化语音合成;(2)个性化参数仅为5K;

2、模型方法


图1 模型整体架构

        模型主干网络采用的是FastSpeech2,FastSpeech模型是基于Transformer的端到端语音合成模型,它是目前(2021年)最流行的非自回归的语音合成模型(自回归的最热门的模型是基于Tacotron的)。FastSpeech2模型主要包含3个模块,分别是:phoneme encoder模块,用于处理输入的音素信息;mel-spectrogram decoder模块,用于将隐含状态转换成对应的声谱图;最后就是一个variance adaptor模块,它用于预测音素的时长、每帧的基频以及能量;另外,作者设计了两个新模块(图中红色部分)(1)为了模型的泛化性(音色自适应)而设计的声学条件建模;(2)为解决大规模音色部署(少参数)而设计的conditional layer normalization;

2.1 声学条件建模    

    通常,个性化语音合成都是以声学条件作为一种引导信息用于目标发音的合成,因为单纯的文本通常是缺乏必要的发音特征信息的。但是往往需要构建的目标发音在发音的韵律、风格、口音等方面千差万别,录音环境也是各种各样。这就导数实际需要拟合的发音和训练集的发音在声学条件上可能存在很大差异。通过拟合训练集的发音条件进行个性化TTS训练的方法会导致模型泛化性存在问题,所以,自然而然的想法就是让模型学会怎么去融合各种声学条件的方法,而不是记住某些特定的声学条件。


图2 多粒度声学条件建模

    如图2所示,作者从音素、句子和说话人三个级别进行声学特征建模并融入到模型中,模型具体结构如图2所示。需要注意的是,做音素级的建模时,输出的是和文本特征序列对齐的序列特征(长度一致),所以需要预先将声学特征与文本音素进行对齐,然后将音素对应的声学特征进行取均值,达到长度一致的目的,而在推理时,则需要进行预测。

2.2 Conditional Layer Normalization

图3 Conditional Layer Normalization

        已有的目标发音自适应方法通常是fine-tune声学条件建模单元,也就是2.1所述内容。但是只是对那块的参数进行fine-tune往往最后的效果不佳。于是作者想在decoder中也加入一些与自适应相关的信息,达到提高语音质量的目的。由于adaspeech用的基础网络框架是fastspeech,而fastspeech是Transformer架构的,网络层参数量都比较大,于是作者考虑在Layer Normalization层进行自适应,这样参数量就会少很多,并且在该层进行变动能够很容易的影响网络的输出。具体的,作者把speaker embedding作为输入,用两个线性层分别学习LN层的两个参数,如公式1所述。


公式1 LN层的自适应参数学习

2.3 AdaSpeech 训练及推理流程

    AdaSpeech的流程分为Pre-training、Fine-tuning和Inference三个阶段,具体如图4所示。

图4 AdaSpeech 流程

3 实验

    实验设置具体参考论文,不再赘述。实验结果如表1所示。其中,MOS评分代表主观音质评分,SMOS代表主观相似度评分,满分都是5分,通常情况下,超过4分,就表示效果很不错了。具体效果可以看作者给出的结果样例,链接:https://speechresearch.github.io/adaspeech。

表1 实验结果

你可能感兴趣的:(个性化语音合成ADASPEECH 系列之ADASPEECH1)