SLT2021: LEARN2SING: TARGET SPEAKER SINGING VOICE SYNTHESIS BY LEARNING FROM A SINGING TEACHER

0. 题目

LEARN2SING: TARGET SPEAKER SINGING VOICE SYNTHESIS BY LEARNING FROM A SINGING TEACHER

学会唱歌: 目标说话人从一个歌唱老师那里学会唱歌(歌声合成)

1. 摘要

唱歌声合成已受到越来越多的关注 语音合成领域发展迅速。通常,为了从歌词和与音乐相关的录音, 乐谱等中产生自然的演唱声音,通常需要录音棚级的演唱语料库。但是,这样的语料库很难收集,因为我们很多人都很难像专业歌手一样唱歌。在本文中,我们提出了一种方法– Learn2Sing,该方法只需要唱歌老师即可生成目标演讲者的歌声,而无需他们(目标者, 学生)的歌声数据。在我们的方法中,使用自回归合成框架, 老师的歌唱语料库和多说话者语料共同训练,共享speaker embedding结构和空间, 共享韵律标签embedding向量。同时,由于目标说话人没有与音乐相关的转录,因此我们使用对数刻度基频(LF0)作为辅助功能,作为声学模型的输入,以建立统一的输入表示。为了使目标说话者在推理阶段无需参考歌声音频就可以歌声合成,还训练了持续时间模型和LF0预测模型。特别是,我们在声学模型中采用领域对抗训练(DAT),其目的是通过将风格与歌唱和说话数据的声学特征区分开来提高目标说话者的歌唱性能。我们的实验表明,仅给出正常说话的样本,该方法能够为目标说话者合成歌声

关键词: text-to-singing, singing voice synthesis, auto-regressive model

文本转歌声,歌声合成,自回归模型

2. 简介

歌声合成(SVS)主要致力于从歌词和乐谱中产生歌声,其中文字歌词提供语言信息,乐谱传达音高和节奏信息

为了获得目标说话人满意的歌声,需要大量的带有相关歌词和乐谱的歌唱录音[9]。 然而,与语音语料库相比,收集和标记这种歌唱语料库更加困难和昂贵。 一种直接的解决方案是使用目标说话人的少量唱歌数据[10]来适应多说话人唱歌模型。 然而,许多讲话者不擅长唱歌,这给为任意目标讲话者建立唱歌声音合成系统带来了进一步的困难

歌声语音转换(SVC)来实现也可以得到演讲者的歌声,该功能旨在将源歌声转换为目标演讲者的音色,同时保持语言内容不变:

  • 作为达到此目的的最新SVC方法,DurIAN-SC [11]利用了基于较早提出的Durian TTS体系结构的统一语音和唱歌合成框架[12]。她仅使用他/她的正常语音数据就能生成高质量的目标演讲者的歌声。但是,DurIAN-SC依赖于源说话者的参考演唱音频来生成目标说话者的演唱声音
  • Mellotron [13]是基于Tacotron2-GST [14]的多扬声器语音合成模型,通过明确地调节节奏和连续音高轮廓,可以使目标扬声器在没有其训练数据的情况下唱歌。类似于DurIAN-SC,音高轮廓是从参考音频中提取的。这意味着Mellotron在没有参考演唱音频的情况下无法获得目标发言人的演唱声音

在本文中,我们提出了Learn2Sing,一个完整的歌声目标演讲者的综合系统,无需他/她的演唱数据即可进行系统构建。 所提出的模型可以从歌词和音符中生成目标说话者的体面好听的歌唱,而无需参考歌唱音频。 受以上方法(特别是DurIAN-SC)的启发,我们在歌唱老师的帮助下为目标说话者学习了SVS系统。 在这里,演唱老师是专业歌手的演唱语料,而目标演讲者只有一组不太大的的语音和相关的文字记录。 为了让目标说话者从歌唱老师那里学习歌唱模式,我们将说话和歌唱数据作为一个整体进行处理,以训练统一的帧级自回归声学模型. 我们也特别的设计了模型中的编码器, 解码器和其他结构

但是,目标说话者没有这样的音乐符号, 比如乐谱, 比如基频的描述.语音和歌唱数据的文本表示形式也存在很大差异,因此难以建立上述统一模型。 为了获得口语和歌唱数据的统一输入表示,我们仅保留两种类型数据的共同方面。 但是,乐谱中的音高对于唱歌至关重要。 因此,我们进一步使用对数刻度F0(LF0)作为辅助功能,以统一目标说话者和歌唱老师的输入表示

此外,发音上也有很大差异 在说话和唱歌之间,显然会影响目标说话者的唱歌性能。 为了消除两个域之间的差异,我们在自回归解码器中进行域对抗训练(DAT)[15,16],以获得与样式风格无关的潜在特征,其中梯度反向层(GRL)后跟样式风格分类器网络。 为了控制所生成音频(说话或唱歌)的样式风格域,我们在编码器中使用了了一个二进制样式标签,以便在训练和推理过程中提供样式风格信息。 DAT也会用于解耦多说话人的信息, 在歌声合成中也会用到[17]

提出的Learn2Sing模型需要F0和时长。 因此,我们建立了一个时长模型以及一个LF0预测模型。 最后,用Multi-band WaveRNN vocoder

贡献点:

  • 我们提出了一种唱歌语音合成系统– Learn2Sing,该系统可以生成目标说话者的唱歌声音而无需他/她的唱歌数据来进行系统训练
  • 与以前的方法不同,能够在没有任何参考音频的情况下生成目标说话者的歌声
  • 所提出的领域对抗训练策略可以通过学习与样式风格无关的潜在特征来提高唱歌的自然性和表达力,这些潜在特征缩小了说话和唱歌之间的差异,并且使用样式风格标签可以控制目标说话者的歌声合成

3. 其他-容易懂

PhonemeID和FramePos属性可以从语音语料库和唱歌语料库中轻松获得。 FramePos是[0,1]中的值,表示当前帧在音素中的相对位置。音高是乐谱中的一种特殊属性,用于指示演唱声音的音高,而Slur代表乐谱中联络的概念。与典型的SVS系统[9,7]相同,我们的持续时间模型(DM)将[PhonemeID,Slur,NoteDur]作为输入来预测音素持续时间(PhonemeDur),因为每个音素的持续时间仅取决于乐谱,其中NoteDur代表根据BPM计算的音符持续时间。每分钟节拍数(BPM)是指乐谱中每个音符的持续时间信息。但是对于声学模型(AM),与以[PhonemeID,Pitch,FramePos]为输入的典型系统[9,7]不同,我们将Pitch属性替换为从LF0模型预测的连续LF0,因为我们建立了统一的AM对于口语和唱歌,也需要统一的输入。此外,我们在AM中包含两个额外的标签-SpeakerID和StyleTag,以便我们可以在训练期间明确区分唱歌和说话。但是推断,我们只是将StyleTag设置为为目标说话者唱歌,以便可以为目标说话者生成唱歌声音。 LF0预测模型采用[PhonemeID,Pitch,Slur,FramePos]作为输入来估计帧级LF0值,其中这些特征来自乐谱和音程

4. 其他-不容易懂

具体文字和loss公式没看~

猜你喜欢

转载自blog.csdn.net/u013625492/article/details/112985016
今日推荐