基于CNN的歌声合成算法论文解读

2021-01-21 11:41:38 浏览数 (1)

TOC

资料

  • https://n3utrino.work/前沿
  • Title:Singing voice synthesis based on convolutional neural networks
  • 核心思路:midi 输入到CNN,预测声学特征(acoustic feature),声学特征输入到声码器得到音频。
    • 一句话:运用CNN模型将乐谱序列映射到声学特征
  • 深度神经网络是人工神经网络,其包含很多隐含层。给语音合成和歌声合成带来机遇。其次在DNN的歌声合成方法中,DNN作为声学模型,就是实验从乐谱特征到声学特征的映射。
  • 神经网络还可以对波形直接建模,例如wavenet、SampleRNN、WaveRNN、FFTnet、WaveGlow。神经王座作为声码器改变了语音合成的质量。神经网络声码器以声学特征作为输入。歌声合成最关键的是利用乐谱信息来预测声学特征。
  • 前馈神经网络的局限是无法考虑到语音的序列特性。语音的每帧之间有相关性,但是前馈网络是认为各个帧是相互独立的。由此RNN和LSTM是一个很好解决办法。此外,可以通过使用语音参数生成算法对预测的声学特征进行平滑处理来缓解此问题,该算法利用动态特征作为约束来生成平滑的语音参数轨迹。

基于DNN的歌声合成

  • 歌声合成系统与语音合成系统很像。但是又有本质的不同。结构如下图:
    • 主要包括训练部分和合成部分,训练部分:从数据集中提取光谱,激发和颤音参数作为声学特征,乐谱特征和声学特征依据训练好HMM模型来对齐。
  • 输入参数:节奏和速度是乐谱中重要的特征,颤音是一个重要的演唱技巧必须被建模。本文假定颤音是F0的周期波动。颤音用正弦函数建模。 - 颤音函数为: - LQ3YCVHJXTWUpvALQ3YCVHJXTWUpvA - ma(t)(颤音的F0振幅), mf (t)(颤音的F0频率), 和 fs移码 - 基于统计学的参数合成方法是依赖于语料库的。音高应该正确的覆盖全,生成的F0轨迹会极大地影响合成歌声的质量。基于DNN的歌声合成系统提出了音符级音高或分解技术。对从波形提取的log F0序列与音符音高之间的差异进行建模。 - 乐谱中的所有清音帧和音乐休息都被线性插值并建模为浊音帧。基于CNN的歌声合成
  • 声称深度双向LSTM-RNN可以生成平滑的语音参数轨迹,相对较长的乐谱功能序列(相当于几秒到几十秒)被视为一个片段,并由CNN同时转换为声学特征序列。结构如下图所示: - - 如图所示,第一部分是一个1x1的卷积层,将乐谱特征转化为一帧帧的序列。辍学方法用于保持针对未知乐谱的鲁棒性。第二部分是1xN的卷积层,在第一部分的中间输出特征序列中,以片段为单位将其转换为声学特征序列。声学特征的维度就是输出特征的频道数。段的大小就是1xT,T就是每段的帧数。T的大小可以调整。 - 乐谱特征序列 - Zp3vYPy1rh28BzqZp3vYPy1rh28Bzq - 声学特征序列: - h2UNYGR6srQyoAah2UNYGR6srQyoAa - 两者之间的关系: - QilhcykDrpBgmGwQilhcykDrpBgmGw - F()为帧的映射函数,G()为段的映射函数 - 音高对歌声合成的质量影响比较大。我们把乐谱的音高与第一部分的输出拼接起来作为第二部分的输入。通过样本数据对齐音符并拼接logF0参数。初步的主观实验证实了使用从插值乐谱中提取的logF0参数的有效性。损失函数
  • 歌声合成的参数特征ot包括静态特征向量和动态特征向量
  • 歌声参数向量和静态特征向量为
    • CwbUzrx5fMptFTZCwbUzrx5fMptFTZ
    • T为帧数,o与c的关系o=Wc,W为窗口矩阵。
    • GxF5ywIMuShUJVrGxF5ywIMuShUJVr

样本

  • 采样率 48KHZ
  • Windowed with a 5ms shift
  • 量化位数是16bit

结论

基于卷积的神经网络歌声合成器能很好地合成歌声,以段落为单元转化乐谱特征序列为声学特征序列。无需参数合成算法就可以训练自然语音参数轨迹。并且能实现并行计算加快训练速度。

0 人点赞