CN117546237A - 解码器 - Google Patents

解码器 Download PDF

Info

Publication number
CN117546237A
CN117546237A CN202180098890.2A CN202180098890A CN117546237A CN 117546237 A CN117546237 A CN 117546237A CN 202180098890 A CN202180098890 A CN 202180098890A CN 117546237 A CN117546237 A CN 117546237A
Authority
CN
China
Prior art keywords
data
audio decoder
target data
audio signal
layer
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN202180098890.2A
Other languages
English (en)
Inventor
艾哈迈德·穆斯塔法·马哈茂德·艾哈迈德
尼古拉·皮亚
扬·比特
斯里坎特·科斯
基山·古普塔
马库斯·马特拉斯
屈扬姆·富克斯
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Fraunhofer Gesellschaft zur Forderung der Angewandten Forschung eV
Original Assignee
Fraunhofer Gesellschaft zur Forderung der Angewandten Forschung eV
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Fraunhofer Gesellschaft zur Forderung der Angewandten Forschung eV filed Critical Fraunhofer Gesellschaft zur Forderung der Angewandten Forschung eV
Publication of CN117546237A publication Critical patent/CN117546237A/zh
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L19/00Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis
    • G10L19/008Multichannel audio signal coding or decoding using interchannel correlation to reduce redundancy, e.g. joint-stereo, intensity-coding or matrixing
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L19/00Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/045Combinations of networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/0464Convolutional networks [CNN, ConvNet]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/0475Generative networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/048Activation functions
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • G06N3/094Adversarial learning
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L25/00Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00
    • G10L25/27Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00 characterised by the analysis technique
    • G10L25/30Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00 characterised by the analysis technique using neural networks

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Computational Linguistics (AREA)
  • Health & Medical Sciences (AREA)
  • Artificial Intelligence (AREA)
  • Mathematical Physics (AREA)
  • Evolutionary Computation (AREA)
  • Biophysics (AREA)
  • Computing Systems (AREA)
  • Software Systems (AREA)
  • Biomedical Technology (AREA)
  • General Physics & Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • General Engineering & Computer Science (AREA)
  • General Health & Medical Sciences (AREA)
  • Molecular Biology (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Human Computer Interaction (AREA)
  • Acoustics & Sound (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)
  • Stereophonic System (AREA)

Abstract

公开了用于解码和/或生成音频信号以及训练音频解码器和/或生成器的技术。一种音频解码器(10),其被配置成从比特流(3)生成音频信号(16),比特流(3)表示音频信号(16),音频信号被细分为帧序列。音频解码器(10)包括:第一数据供应器(702),用于提供第一数据(15),第一数据(15)具有多个通道;第一处理块(40、50、50a‑50h),用于输出具有多个通道(47)的第一输出数据(69),以及第二处理块(45)。第一处理块(50)包括:可学习层(710),用于接收比特流(3),并且对于给定帧,利用针对给定帧的多个通道和多个样本输出表示给定帧中的音频信号(16)的目标数据(12);调节可学习层(71、72、73),用于处理目标数据(12)以获得给定帧的调节特征参数(74、75);以及样式元素(77),其将调节特征参数(74、75)应用于第一数据(15、59a)。第二处理块(45)组合第二数据(69)的多个通道(47)以获得音频信号(16)。

Description

解码器
技术领域
本发明属于音频解码和生成的技术领域。例如,公开了一种流式生成对抗网络(GAN)声码器,例如可用于非常低比特率的实时宽带语音编码。
本发明的实施例涉及一种音频解码器或生成器,其被配置成从输入信号和比特流中解码或生成音频信号,比特流表示音频信号。另外的实施例涉及用于解码或生成音频信号的方法,以及用于训练音频解码器或生成器的方法。另外的实施例涉及一种计算机程序产品。
背景技术
在许多应用中,诸如文本到语音转换、语音编码和语音增强,神经声码器在合成自然高质量语音方面已经证明优于经典方法。第一种用于合成高质量语音的开创性生成神经网络是WaveNet[1],不久之后,许多其他方法被开发出来[2,3]。这些模型提供了最先进的质量,但通常计算成本非常高,并且合成速度非常慢。近年来,出现了大量计算成本较低的语音生成模型。其中一些是现有模型的优化版本,而另一些则利用了与经典方法的集成[4]。此外,还引入了许多全新的方法,这通常依赖于GAN。
结合语音编码和神经声码器的现有解决方案是:
·LPCNet(Mozilla,JM Valin)[2]:
ο比特率:1.6kbps
ο语音特征:MFCC、音高滞后和归一化相关性(和谐性)
ο延迟:~60毫秒
ο神经声码器:自回归生成网络,基于WaveRNN生成LPC分析的激励
ο复杂度:几个GFLOP,不适合在GPU上推断。
ο质量:对于清晰的语音是可以的,但很难推广到其他类别的信号(嘈杂、混响的语音)
ο优点:CPU的复杂度相对较低
ο缺点:模型不灵活,难以扩展和生成
οLyra(谷歌)[3]:
ο比特率:3kbps
ο应用:弱/旧网络上的VoIP
ο语音特征:对数梅尔频谱的叠加
ο延迟:~60毫秒
ο神经声码器:自回归生成网络,多频带WaveRNN
ο复杂度:适合在CPU上推断,不适合在GPU上。
ο质量:对于清晰的语音是可以的,但是对于小鸟,嘈杂的语音需要在预处理步骤中去噪。
·现有技术的缺点:
ο来自语音特征的编码/提取的延迟很高
ο在生成期间无法利用GPU
ο由于自回归生成网络,质量有限。GAN现在做得更好。
GAN不能直接用于语音编码应用。本发明旨在解决这一挑战。
发明内容
公开了一种音频解码器,被配置成从比特流生成音频信号,该比特流表示音频信号,该音频信号被细分为帧序列,该音频解码器包括:
第一数据供应器,其被配置成对于给定帧,提供从来自外部或内部源的输入信号或从比特流中导出的第一数据,其中第一数据具有多个通道;
第一处理块,其被配置成对于给定帧,接收第一数据并且输出给定帧中的第一输出数据,其中第一输出数据包括多个通道,以及
第二处理块,,被配置成对于给定帧,接收第一输出数据或从第一输出数据导出的数据作为第二数据,
其中第一处理块包括:
至少一个预调节可学习层,其被配置成接收比特流,并且对于给定帧,利于给定帧的多个通道和多个样本输出表示给定帧中的音频信号的目标数据;
至少一个调节可学习层,其被配置成对于给定帧,处理目标数据以获得给定帧的调节特征参数;以及
样式元素,其被配置成将调节特征参数应用于第一数据或归一化的第一数据;并且
其中第二处理块被配置成组合第二数据的多个通道以获得音频信号。
还公开了一种用于从比特流解码音频信号的方法,该比特流表示该音频信号,该方法使用输入信号,该音频信号被细分成多个帧,该方法包括:
由第一处理块的至少一个预调节(可学习的或确定性的)层从比特流中获得给定帧的目标数据,该目标数据表示音频信号并且具有两个维度;
由第一处理块对于给定帧的每个样本接收从输入信号导出的第一数据;
由第一处理块的一组调节可学习层处理目标数据以获得调节特征参数;以及
由第一处理块的样式元素将调节特征参数应用于第一数据或归一化的第一数据;
由第一处理块输出包括多个通道的第一输出数据;
由第二处理块接收第一输出数据或从第一输出数据导出的数据作为第二数据;以及
由第二处理块组合第二数据的多个通道以获得音频信号。
还提供了一种存储指令的非暂时性存储单元,当该指令由处理器执行时,使得处理器执行本文档的方法中的一种。
根据一个方面,提供了一种音频解码器,其被配置成从比特流生成音频信号,该比特流表示音频信号,该音频信号被细分为帧序列,该音频解码器包括:
第一数据供应器,其被配置成对于给定帧,提供从来自外部或内部源的输入信号或从比特流中导出的第一数据,其中第一数据具有多个通道;
第一处理块,其被配置成对于给定帧,接收第一数据并且输出给定帧中的第一输出数据,其中第一输出数据包括多个通道,以及
第二处理块,其被配置成对于给定帧,接收第一输出数据或从第一输出数据导出的数据作为第二数据
其中第一处理块包括:
至少一个预调节可学习层,其被配置成接收比特流,并且对于给定帧,利于给定帧的多个通道和多个样本输出表示给定帧中的音频信号的目标数据;
至少一个调节可学习层,其被配置成对于给定帧,处理目标数据以获得给定帧的调节特征参数;以及
样式元素,其被配置成将调节特征参数应用于第一数据或归一化的第一数据;并且
其中第二处理块被配置成组合第二数据的多个通道以获得音频信号。
解码器可以使得第一处理块被配置成将第一数据从给定帧的样本数量上采样到给定帧的大于第一样本数量的第二样本数量。
解码器可以使得第二处理块被配置成将从第一处理块获得的第二数据从给定帧的第二样本数量上采样到给定帧的大于第二样本数量的第三样本数量。
解码器可以被配置成将第一数据的通道数量从第一通道数量减少到第一输出数据的第二通道数量,第二通道数量低于第一通道数量。
解码器可以使得第二处理块被配置成将从第一处理块获得的第一输出数据的通道数量从第二通道数量减少到音频信号的第三通道数量,其中第三通道数量低于第二通道数量。
解码器可以使得音频信号是单声道音频信号。
音频解码器可以被配置成从比特流获得输入信号。
音频解码器可以被配置成从与给定帧相关联的比特流的至少一个参数中获得输入信号。
音频解码器可以被配置成从指示给定帧中的音频信号的音高滞后的至少一个参数或其它音高数据获得输入信号。
音频解码器可以被配置成通过将音高滞后与音高相关性相乘来获得输入信号。
音频解码器可以被配置成从噪声中获得输入信号。
音频解码器可以使得至少一个预调节可学习层被配置成提供目标数据作为频谱图。
音频解码器可以使得至少一个预调节可学习层被配置成提供目标数据作为梅尔频谱图。
音频解码器可以使得至少一个预调节可学习层被配置成从编码在比特流中的倒谱数据中导出目标数据。
音频解码器可以使得至少一个预调节可学习层被配置成至少从编码在与给定帧相关联的比特流中的滤波数据中导出目标数据。
音频解码器可以使得滤波数据包括编码在与给定帧相关联的比特流中的频谱包络数据。
音频解码器可以使得至少一个预调节可学习层被配置成从编码在比特流中的激励数据、和谐性数据、周期性数据、长期预测数据中的至少一个导出目标数据。
音频解码器可以使得至少一个预调节可学习层被配置成至少从编码在比特流中的音高数据中导出目标数据。
音频解码器可以使得至少一个预调节可学习层被配置成至少通过将音高滞后与音高相关性相乘来导出目标数据。
音频解码器可以使得至少一个预调节可学习层被配置成至少通过对音高滞后与音高相关性和频谱包络数据的乘积进行卷积来导出目标数据。
音频解码器可以使得至少一个预调节可学习层被配置成通过至少对音高滞后、音高相关性和频谱包络数据进行卷积来导出目标数据。
音频解码器可以使得至少一个预调节可学习层被配置成从从比特流获得的LPC系数、基于频谱的系数和/或基于倒谱的系数中导出目标数据。
音频解码器可以使得目标数据是卷积映射,并且至少一个预调节可学习层被配置成对卷积映射执行卷积。
音频解码器可以使得目标数据包括给定帧中的音频信号的倒谱数据。
音频解码器可以使得至少从给定帧中的音频信号的相关性数据中获得输入信号。
音频解码器可以使得从给定帧中的音频信号的音高数据中获得目标数据。
音频解码器可以使得目标数据包括通过将给定帧中的音频信号的音高数据与给定帧中的音频信号的相关性数据相乘而获得的相乘值。
音频解码器可以使得至少一个预调节可学习层被配置成对通过并置从比特流或其处理版本中获得的至少一个倒谱数据而获得的比特流模型执行至少一次卷积。
音频解码器可以使得至少一个预调节可学习层被配置成对通过并置从比特流获得的至少一个参数而获得的比特流模型执行至少一次卷积。
音频解码器可以使得至少一个预调节可学习层被配置成对从比特流或其处理版本获得的卷积映射执行至少一次卷积。
音频解码器可以使得通过并置与后续帧相关联的参数来获得卷积映射。
音频解码器可以使得由至少一个预调节可学习层执行的卷积中的至少一个由预调节激活函数激活。
解码器可以使得预调节激活函数是整流线性单元ReLu函数。
解码器可以使得预调节激活函数是泄漏整流线性单元(泄漏ReLu)函数。
音频解码器可以使得至少一次卷积是非条件卷积。
音频解码器可以使得至少一次卷积是神经网络的一部分。
音频解码器可以包括队列,用于在第一处理块和/或第二处理块处理前一帧时,存储随后将由第一处理块和/或第二处理块处理的帧。
音频解码器可以使得第一数据供应器被配置成对通过并置一组编码参数而获得的比特流模型执行卷积,所述一组编码参数是从与比特流的前一帧紧邻的比特流的给定帧获得的。
音频解码器可以使得所述一组可学习层包括一个或至少两个卷积层。
音频解码器可以使得第一卷积层被配置成使用第一激活函数对目标数据或上采样的目标数据进行卷积,以获得第一卷积数据。
音频解码器可以使得所述一组可学习层和样式元素是神经网络的残差块中的权重层的一部分,该神经网络包括一个或多个残差块。
音频解码器可以使得音频解码器还包括被配置成归一化第一数据的归一化元件。
音频解码器可以使得音频解码器还包括被配置成在通道维度上归一化第一数据的归一化元件。
音频解码器可以使得音频信号是语音音频信号。
音频解码器可以使得以因子2的幂对目标数据进行上采样。
音频解码器可以使得通过非线性插值对目标数据进行上采样。
音频解码器可以使得第一处理块还包括:
另一组可学习层,其被配置成使用第二激活函数处理从第一数据导出的数据,
其中第二激活函数是门控激活函数。
音频解码器可以使得另一组可学习层包括一个或两个或更多个卷积层。
音频解码器可以使得第二激活函数是softmax门控双曲正切TanH函数。
音频可以使得第一激活函数是泄漏整流线性单元(泄漏ReLu)函数。
音频解码器可以使得卷积运算以最大膨胀因子2运行。
音频解码器可以包括八个第一处理块和一个第二处理块。
音频解码器可以使得第一数据具有低于音频信号的自身维度。
音频解码器可以使得目标数据是频谱图。
音频解码器可以使得目标数据是梅尔频谱图。
用于从表示音频信号的比特流中对音频信号进行解码的方法可以包括使用输入信号的方法,该音频信号被细分成多个帧,该方法包括:
由第一处理块的至少一个预调节层从比特流中获得给定帧的目标数据,该目标数据表示音频信号并且具有两个维度;
由第一处理块对于给定帧的每个样本接收从输入信号导出的第一数据;
由第一处理块的一组调节可学习层处理目标数据,以获得调节特征参数;以及
由第一处理块的样式元素将调节特征参数应用于第一数据或归一化的第一数据;
由第一处理块输出包括多个通道的第一输出数据;
由第二处理块接收第一输出数据或从第一输出数据导出的数据作为第二数据;以及
由第二处理块组合第二数据的多个通道以获得音频信号。
该方法可以包括当第一处理块和/或第二处理块处理前一帧,存储随后将由第一处理块和/或第二处理块处理的帧。
该方法可以包括对通过并置一组编码参数而获得的比特流模型执行卷积,所述一组编码参数是从与比特流的前一帧紧邻的比特流的给定帧获得的。
该方法可以包括:所述一组调节可学习层包括一个或两个卷积层。
该方法可以包括:由一组调节可学习层进行的处理包括由第一卷积层使用第一激活函数对目标数据或上采样的目标数据进行卷积,以获得第一卷积数据。
该方法可以包括:所述一组调节可学习层和样式元素是神经网络的残差块中的权重层的一部分,该神经网络包括一个或多个残差块。
该方法可以包括:还包括由归一化元件归一化第一数据。
该方法可以包括:音频信号是语音音频信号。
该方法可以包括:以因子2或2的幂对目标数据进行上采样。
该方法可以包括:通过非线性插值对目标数据进行上采样。
该方法可以包括:第一激活函数是泄漏整流线性单元(泄漏ReLu)函数。
该方法可以包括:卷积运算以最大膨胀因子2运行。
该方法可以包括:执行八次第一处理块的步骤和一次第二处理块的步骤。
该方法可以包括:目标数据是频谱图。
该方法可以包括:频谱图是梅尔频谱图。
用于训练音频解码器的方法可以包括训练,该训练包括重复前述任一方面的步骤。
该方法可以包括:
由至少一个评估器评估生成的音频信号,以及
根据评估的结果调适音频解码器的权重。
该方法可以包括:至少一个评估器是神经网络。
该方法可以包括:根据评估的结果调适评估器的权重。
该方法可以包括训练,该训练包括优化损失函数。
该方法可以包括:优化损失函数包括计算生成的音频信号与参考音频信号之间的固定度量。
该方法可以包括:计算固定度量包括计算生成的音频信号与参考音频信号之间的一个或若干个频谱失真。
该方法可以包括:计算一个或若干个频谱失真针对以下执行:
生成的音频信号和参考音频信号的频谱表示的幅度或对数幅度。
该方法可以包括针对生成的音频信号和参考音频信号的不同时间或频率分辨率执行一个或多个频谱失真的计算。
该方法可以包括优化损失函数,优化损失函数包括通过随机提供和由一个或多个评估器评估生成的音频信号的表示或参考音频信号的表示来导出一个或多个对抗度量,其中评估包括将提供的音频信号分类为预定数量的类别,这些类别指示音频信号的预训练分类自然度水平。
该方法可以包括优化损失函数,优化损失函数包括由一个或多个评估器计算固定度量并且导出对抗度量。
该方法可以包括:首先使用固定度量来训练音频解码器。
该方法可以包括:四个评估器导出四个对抗度量。
该方法可以包括:评估器在滤波器组分解生成的音频信号的表示或参考音频信号的表示之后进行操作。
该方法可以包括:评估器中的每一个接收生成的音频信号的表示或参考音频信号的表示的一个或若干个部分作为输入。
该方法可以包括:通过使用随机窗口函数从输入信号中采样随机窗口生成信号部分。
该方法可以包括:对于每个评估器,随机窗口的采样重复多次。
该方法可以包括:对应每个评估器,随机窗口被采样的次数与生成的音频信号的表示或参考音频信号的表示的长度成比例。
该方法可以提供至少一个预调节层是可学习的。
该方法可以提供至少一个预调节层是确定性的。
该方法可以提供比特流是从文本导出的。
存储指令的非暂时性存储单元,当该指令由计算机运行时,使计算机执行一种方法。
根据一个方面,提供了一种音频解码器,其被配置成从比特流生成音频信号,该比特流表示从文本导出的音频信号,该音频信号被细分为帧序列,该音频解码器包括:
第一数据供应器,其被配置成对于给定帧,提供从来自外部或内部源的输入信号或从比特流中导出的第一数据,其中第一数据具有多个通道;
第一处理块,其被配置成对于给定帧,接收第一数据并且输出给定帧中的第一输出数据,其中第一输出数据包括多个通道,以及
第二处理块,其被配置成对于给定帧,接收第一输出数据或从第一输出数据导出的数据作为第二数据,
其中第一处理块包括:
至少一个预调节层,其被配置成接收比特流,并且对于给定帧,利用针对给定帧的多个通道和多个样本输出表示给定帧中的音频信号的目标数据;
至少一个调节可学习层,其被配置成对于给定帧,处理目标数据以获得给定帧的调节特征参数;以及
样式元素,其被配置成将调节特征参数应用于第一数据或归一化的第一数据;并且
其中第二处理块被配置成组合第二数据的多个通道以获得音频信号。
音频解码器可以使得至少一个预调节层是确定性的。
音频解码器可以使得至少一个预调节层是可学习的。
音频解码器可以使得至少一个预调节层是可学习的,并且至少一个预调节层是确定性的。
音频解码器可以使得第一处理块被配置成将第一数据从给定帧的样本数量上采样到给定帧的大于第一样本数量的第二样本数量。
音频解码器可以使得第二处理块被配置成将从第一处理块获得的第二数据从给定帧的第二样本数量上采样到大于第二样本数量的给定帧的第三样本数量。
音频解码器可以被配置成将第一数据的通道数量从第一通道数量减少到第一输出数据的第二通道数量,第二通道数量低于第一通道数量。
音频解码器可以使得第二处理块被配置成将从第一处理块获得的第一输出数据的通道数量从第二通道数量减少到音频信号的第三通道数量,其中第三通道数量低于第二通道数量。
音频解码器可以使得音频信号是单声道音频信号。
音频解码器可以被配置成从比特流中获得输入信号。
音频解码器可以使得目标数据包括至少一个声学特征。
音频解码器可以使得预调节层被配置成通过将比特流从文本转换到至少一个声学特征上来获得目标数据。
音频解码器可以使得至少一个声学特征是对数频谱图、MFCC和梅尔频谱图中的一个。
音频解码器可以使得预调节层被配置成通过将至少一个语言特征形式的比特流转换到至少一个声学特征形式的目标数据上来获得目标数据。
音频解码器可以使得目标数据包括至少一个语言特征。
音频解码器可以使得至少一个语言特征是从文本中获得的音素、单词韵律、语调、短语中断和填充停顿中的一个。
音频解码器可以使得预调节层被配置成通过将文本或文本元素形式的比特流转换到至少一个语言特征形式的目标数据上来获得目标数据。
音频解码器可以使得目标数据包括从文本获得的字符和单词中的至少一个。
音频解码器可以使得目标数据包括至少一个潜在特征。
音频解码器可以使得预调节层被配置成使用至少一个统计模型将目标数据从文本形式的比特流导出到目标数据上,该至少一个统计模型被配置成执行文本分析和/或使用声学模型。
音频解码器可以使得预调节层被配置成使用可学习模型将目标数据从文本形式的比特流中导出到目标数据上,该可学习模型执行文本分析和/或使用声学模型。
音频解码器可以使得预调节层被配置成使用执行文本分析和/或声学模型的基于规则的算法,将目标数据从文本形式的比特流导出到目标数据上。
音频解码器可以被配置成至少从自比特流导出的时间包络信息或时域结构中获得输入信号。
音频解码器可以被配置成从噪声中获得输入信号。
音频解码器可以使得至少一个预调节层被配置成提供目标数据作为频谱图。
音频解码器可以使得至少一个预调节层被配置成提供目标数据作为梅尔频谱图。
音频解码器可以使得至少一个预调节层被配置成从编码在比特流中的倒谱数据中导出目标数据。
音频解码器可以使得至少一个预调节层被配置成通过至少对频谱包络数据进行卷积来导出目标数据。
音频解码器可以使得目标数据是卷积映射,并且至少一个预调节层被配置成对卷积映射执行卷积。
音频解码器可以使得目标数据包括给定帧中的音频信号的倒谱数据。
音频解码器可以使得至少从给定帧中的音频信号的相关性数据中获得输入信号。
音频解码器可以使得至少一个预调节层被配置成对通过并置从比特流获得的至少一个参数而获得的比特流模型执行至少一次卷积。
音频解码器可以使得至少一个预调节层被配置成对从比特流或其处理版本获得的卷积映射执行至少一次卷积。
音频解码器可以使得通过并置与后续帧相关联的参数来获得卷积映射。
音频解码器可以使得由至少一个预调节层执行的卷积中的至少一个由预调节激活函数激活。
解码器可以使得预调节激活函数是整流线性单元ReLu函数。
解码器可以使得预调节激活函数是泄漏整流线性单元(泄漏ReLu)函数。
音频解码器可以使得至少一次卷积是非条件卷积。
音频解码器可以使得至少一次卷积是神经网络的一部分。
音频解码器可以包括队列,用于在第一处理块和/或第二处理块处理前一帧时,存储随后将由第一处理块和/或第二处理块处理的帧。
音频解码器可以使得第一数据供应器被配置成对通过并置一组编码参数而获得的比特流模型执行卷积,所述一组编码参数是从与比特流的前一帧紧邻的比特流的给定帧获得的。
音频解码器可以使得所述一组调节可学习层包括一个或至少两个卷积层。
音频解码器可以使得第一卷积层被配置成使用第一激活函数对目标数据或上采样的目标数据进行卷积,以获得第一卷积数据。
音频解码器可以使得所述一组调节可学习层和样式元素是神经网络的残差块中的权重层的一部分,该神经网络包括一个或多个残差块。
音频解码器可以使得音频解码器还包括被配置成归一化第一数据的归一化元件。
音频解码器可以使得音频解码器还包括被配置成在通道维度上归一化第一数据的归一化元件。
音频解码器可以使得音频信号是语音音频信号。
音频解码器可以使得以因子2的幂对目标数据进行上采样。
音频解码器可以使得通过非线性插值对目标数据进行上采样。
音频解码器可以使得第一激活函数是泄漏整流线性单元(泄漏ReLu)函数。
音频解码器可以使得卷积运算以最大膨胀因子2运行。
音频解码器可以包括八个第一处理块和一个第二处理块。
音频解码器可以使得第一数据具有低于音频信号的自身维度。
音频解码器可以使得目标数据是频谱图。音频解码器可以使得目标数据是梅尔频谱图。
根据一个方面,提供了一种用于从比特流解码音频信号的方法,该比特流表示音频信号,该比特流从文本中导出(例如,通过该方法本身、通过先前的步骤、或者部分通过该方法并且部分通过先前的步骤)。该方法可以使用输入信号,音频信号被细分成多个帧。该方法可以包括:
由第一处理块的至少一个预调节层从比特流获得给定帧的目标数据,该目标数据表示音频信号并且具有两个维度;
由第一处理块对于给定帧的每个样本接收从输入信号导出的第一数据;
由第一处理块的一组调节可学习层处理目标数据以获得调节特征参数;以及
由第一处理块的样式元素将调节特征参数应用于第一数据或归一化的第一数据;
由第一处理块输出包括多个通道的第一输出数据;
由第二处理块接收第一输出数据或从第一输出数据导出的数据作为第二数据;以及
由第二处理块组合第二数据的多个通道以获得音频信号。
该方法还可以包括:当第一处理块和/或第二处理块处理前一帧时,存储随后将由第一处理块和/或第二处理块处理的帧。
该方法还可以包括:对通过并置一组编码参数而获得的比特流模型执行卷积,所述一组编码参数是从与比特流的前一帧紧邻的比特流的给定帧获得的。
该方法可以提供:所述一组调节可学习层包括一个或两个卷积层。
该方法可以包括:由所述一组调节可学习层进行的处理包括由第一卷积层使用第一激活函数对目标数据或上采样的目标数据进行卷积,以获得第一卷积数据。
该方法可以提供:所述一组调节可学习层和样式元素是神经网络的残差块中的权重层的一部分,该神经网络包括一个或多个残差块。
该方法可以包括:由归一化元件归一化第一数据。
该方法可以提供是语音音频信号的音频信号。
该方法可以提供:以因子2或2的幂对目标数据进行上采样。
该方法可以包括:通过非线性插值对目标数据进行上采样。
该方法可以包括,还包括:
由第一处理块的另一组可学习层使用第二激活函数处理从第一数据导出的数据,
其中第二激活函数是门控激活函数。
该方法可以使得另一组可学习层包括一个或两个卷积层。
该方法可以使得第二激活函数是softmax门控双曲正切TanH函数。
该方法可以使得第一激活函数是泄漏整流线性单元(泄漏ReLu)函数。
该方法可以使得卷积运算以最大膨胀因子2运行。
该方法可以使得执行八次第一处理块的步骤和一次第二处理块的步骤。
目标数据可以是频谱图或梅尔频谱图。
该方法可以包括训练,该训练包括重复前述方面中任一个的步骤。
该方法可以包括:
由至少一个评估器评估生成的音频信号,以及
根据评估的结果调适音频解码器的权重。
该方法可以使得至少一个评估器是神经网络。
该方法可以包括:根据评估的结果调适评估器的权重。
该方法可以使得训练包括优化损失函数。
该方法可以使得优化损失函数包括计算生成的音频信号与参考音频信号之间的固定度量。
该方法可以包括:计算固定度量包括计算生成的音频信号与参考音频信号之间的一个或若干个频谱失真。
该方法可以包括:计算一个或若干个频谱失真针对以下执行:
生成的音频信号和参考音频信号的频谱表示的幅度或对数幅度。
该方法可以使得针对所生成的音频信号和参考音频信号的不同时间或频率分辨率执行计算一个或若干个频谱失真。
该方法可以使得优化损失函数包括通过随机提供和由一个或多个评估器评估生成的音频信号的表示或参考音频信号的表示来导出一个或多个对抗度量,其中评估包括将提供的音频信号分类为预定数量的类别,这些类别指示音频信号的预训练分类自然度水平。
该方法可以使得优化损失函数包括由一个或多个评估器计算固定度量并且导出对抗度量。
该方法可以使得首先使用固定度量来训练音频解码器。
该方法可以包括:四个评估器导出四个对抗度量。
该方法可以包括:评估器在滤波器组分解生成的音频信号的表示或参考音频信号的表示之后进行操作。
该方法可以使得评估器中的每一个接收生成的音频信号的表示或参考音频信号的表示的一个或若干个部分作为输入。
该方法可以包括:通过使用随机窗口函数从输入信号中采样随机窗口来生成信号部分。
该方法可以使得对于每个评估器,随机窗口的采样重复多次。
该方法可以使得对于每个评估器,随机窗口被采样的次数与生成的音频信号的表示或参考音频信号的表示的长度成比例。
该方法可以使得至少一个预调节层是可学习的。
该方法可以使得至少一个预调节层是确定性的。
该方法可以使得至少一个预调节层包括至少一个确定性预调节层和至少一个可学习预调节层。
该方法可以使得目标数据包括至少一个声学特征。
该方法可以使得预调节层通过将比特流从文本转换到至少一个声学特征上来获得目标数据。
该方法可以包括:至少一个声学特征是对数频谱图、MFCC和梅尔频谱图中的一个。
该方法可以包括:预调节层通过将至少一个语言特征形式的比特流转换到至少一个声学特征形式的目标数据上来获得目标数据。
该方法可以包括:目标数据包括至少一个语言特征。
该方法可以使得至少一个语言特征是从文本中获得的音素、单词韵律、语调、短语中断和填充停顿中的一个。
该方法可以使得预调节层通过将文本或文本元素形式的比特流转换到至少一个语言特征形式的目标数据上来获得目标数据。
该方法可以使得目标数据包括从文本获得的字符和单词中的至少一个。
该方法可以使得预调节层通过使用至少一个统计模型将文本形式的比特流转换到目标数据上来导出目标数据,该至少一个统计模型被配置用于执行文本分析和/或使用声学模型。
音频解码器可以使得预调节层通过使用可学习模型将文本形式的比特流转换到目标数据上来导出目标数据,该可学习模型执行文本分析和/或使用声学模型。
音频解码器可以使得预调节层通过使用执行文本分析和/或声学模型的基于规则的算法将文本形式的比特流转换到目标数据上来导出目标数据。
音频解码器可以被配置成至少从自比特流导出的时间包络信息或时域结构中获得输入信号。
公开了一种存储指令的非暂时性存储单元,当该指令由计算机运行时,使得计算机执行根据前述方面的方法。
在上面和下面的一些方法中,目标数据可以例如通过方法本身或者通过外部步骤从文本中导出。
在上面和下面的一些解码器中,目标数据可以例如通过解码器本身或者通过外部组件从文本中导出。
附图说明
随后将参考附图描述根据本发明的实施例,其中:
图1示出了示例编码系统。
图2(分为图2a和图2b)示出了可以执行的操作。
图3示出了根据示例的解码器的方框。
图4示出了根据示例的解码器(生成器)。
图5a、图5b、图6a和图6b示出了本示例和常规技术之间的比较结果。
图7示出了解码器的一般示例。
图7a示出了解码器的另一个示例。
图7b示出了解码器的另一个示例。
图8a和图8b以及图8c示出了根据示例的解码器的技术的图解。
图9示出了根据示例的处理的示例。
图10示出了根据示例的解码器的判别器的示例。
图11a和图11b示出了解码器的示例。
图12示出了当涉及TTS应用时本发明实施例的概要表。
在附图中,相似的附图标记表示相似的元件和特征。
具体实施方式
图1示出了声码器系统的示例,其中音频信号1被编码,并且输出音频信号16被解码。通常,音频信号在此处被认为是语音(但也可以是其他种类的声音)。音频信号1由编码器2编码以获得比特流3(可以包括数据3a和3b,参见下文)。编码器2可以是LPC(线性预测编码)编码器,或基于频谱的编码器或基于倒谱的编码器。比特流3可以包括与音频信号1(以及将在解码器处生成的音频信号)相关联的若干个参数。比特流3可以相对于音频信号1的原始版本被压缩。比特流3可以由解码器10解码。解码器10也可以被认为是音频生成器,因为它生成音频信号16,该音频信号通常应该是原始音频信号1和比特流3的表示。下面将更详细地讨论解码器10。
此处,编码器2的架构不受限制。编码器2可以执行本质上已知的操作,如特征提取、量化和编码。比特流3包括一些参数。编码器2可以是简单的普通LPC编码器,因此比特流3可以是LPC比特流。在下面的表1中,提供了比特流3的可能的比特分配。LPC编码是一种已知的编码技术,根据该技术提供包括滤波数据(例如共振峰数据)和激励数据(或刺激数据)的参数。
编码器2可以通过使预测误差功率最小化来估计共振峰,并且通过例如利用递归方法Levinson-Durbin优化Yule-Walker方程系统来估计例如基于自相关的自回归(AR)模型,并且获得与共振峰相关联的参数(滤波数据3a)。作为备选方案,频谱包络和格式结构可以通过平滑频谱幅度或频率子带中计算的能量在频域中直接计算。并行地,编码器2可以通过例如AR模型的逆滤波(也称为LPC分析滤波)从音频信号1中减去共振峰,并且还获得残差参数(激励数据3b)。滤波参数或数据3a可以被理解为表示由人类嘴部肌肉采取的位置产生的滤波,其修改由通过声门或被声门阻挡的气流组成的激励(由激励数据3b表示)。基本上,LPC编码器2通过考虑人类语音产生的生理学来编码人类语音。一般而言,LPC解码器10可以从比特流3中获得滤波数据3a和其他数据3b(例如,激励数据、音高数据…),并且使用它们来生成音频信号16。具体地,其他数据(例如,激励数据3b)被解码和重建,并且滤波数据或频谱包络数据3a用于滤波(例如,通过16阶预测系数)。倒谱是语音的另一种表示,它分解成意味着滤波后信号的卷积和。在这样的域中,可以容易地推导出滤波数据或频谱包络数据3a和激励数据(或者更一般地,其他数据3b)。倒谱的第一系数(MFCC)表示频谱包络和共振峰结构,并且在下文中称为倒谱数据。倒谱数据可以看作是用零点和极点表示AR/MA系统的滤波系数。根据倒谱数据,可以获得滤波数据或频谱包络数据3a和/或其他数据3b(例如,激励数据、音高数据等)。此处,编码器2可以是LPC编码器、基于spectrogrum的编码器、基于倒谱的编码器等。
已经理解,可以根据LPC技术、基于频谱的技术、基于倒谱的技术等来解码类似比特流3的比特流,用于适当地生成音频信号16,特别是通过使用可学习的技术(诸如神经网络技术),并且特别是使用生成神经网络。
一般而言,在一些示例中,比特流3(无论是通过LPC、基于spectrogrum的技术、基于倒谱的技术还是另一种技术来编码)可以包括:
-滤波数据(例如频谱包络数据)3a;和/或
-其他数据3b,例如音高数据(例如音高滞后数据)和/或激励数据刺激数据、残差数据、刺激数据、激励数据、和谐性数据、周期性数据、长期预测数据中的至少一个。
滤波数据3a可以包括梅尔频率倒谱或倒谱系数(MFCC)数据,尽管可以采用其他类型的滤波数据(例如,频谱包络数据)。在其他数据3b中,它们可以包括音高数据(例如,音频信号1的音高滞后)。例如,音高数据可以包括音高相关性(例如,以2比特编码)和/或音高相关性(例如,以6比特编码)。例如,参见下面的表1。
在下文中,所提出的用于对表示音频信号(例如1、16)的比特流(例如3)进行解码的音频解码器的技术,音频信号被细分为帧序列,音频解码器(例如10)包括:
第一数据供应器(例如702),其被配置成对于给定帧,提供从来自外部或内部源的输入信号(例如14)或从比特流(例如3)导出的第一数据(例如15),其中第一数据(例如15)具有多个通道;
第一处理块(例如40、50、50a-50h),其被配置成对于给定帧,接收第一数据(例如,15)并且输出给定帧中的第一输出数据(例如,69),其中第一输出数据(例如69)包括多个通道(例如47),以及
第二处理块(例如45),其被配置成对于给定帧,接收第一输出数据(例如69)或从第一输出数据(例如69)导出的数据作为第二数据,
第一处理块(例如50)包括:
至少一个预处理(确定性的或可学习的)层(例如710、710b、710c),其被配置成接收比特流(例如3),并且对于给定帧,利用针对给定帧的多个通道和多个样本输出表示给定帧中的音频信号(例如16)的目标数据(例如12);
至少一个调节可学习层(例如71、72、73),其被配置用于对于给定帧,处理目标数据(例如12)以获得给定帧的调节特征参数(例如74、75);以及
样式元素(例如77),其被配置成将调节特征参数(例如74、75)应用于第一数据(例如15、59a)或归一化的第一数据(例如59、76’);并且
其中第二处理块(例如45)被配置成组合第二数据(例如69)的多个通道(例如47)以获得音频信号(例如16)。
还提出了一种用于从比特流(例如3)解码音频信号(例如1、16)的方法,该比特流表示音频信号(例如16),该方法使用输入信号(例如14),该音频信号(例如1、16)被细分成多个帧,该方法包括:
由第一处理块的至少一个(确定性的或可学习的)预调节层(例如710、710b、710c)从比特流(例如3)获得给定帧的目标数据(例如15),目标数据(例如15)表示音频信号(例如16)并且具有两个维度;
由第一处理块(例如50、50a-50h)对于给定帧的每个样本接收从输入信号(例如14)导出的第一数据(例如12);
由第一处理块(例如50)的一组调节可学习层(例如71、72、73)处理目标数据(例如12)以获得调节特征参数(例如74、75);以及
由第一处理块(例如50)的样式元素(例如77)将调节特征参数(例如74、75)应用于第一数据(例如15、59)或归一化的第一数据(例如76’);
由第一处理块(例如50)输出包括多个通道(例如47)的第一输出数据(例如69);
由第二处理块(例如45)接收第一输出数据(例如69)或从第一输出数据(例如69)导出的数据作为第二数据;以及
由第二处理块(例如45)组合第二数据的多个通道(例如47)以获得音频信号(例如16)。
图7示出了解码器(生成器)10的示例(其他示例在图7a和图7b中提供)。比特流3可以包括滤波数据(例如,频谱包络数据)3a和其他数据3b(例如,音高数据,和/或激励数据刺激数据、残差数据、刺激数据、激励数据、和谐性数据、周期性数据、长期预测数据中的至少一个)。其他数据3b可以在第一处理块40中用于生成第一输出数据69(第二数据)。第一输出数据69可以在多个通道中。第一输出数据69可以被提供给第二处理块45,该第二处理块组合第一输出数据69的多个通道,从而在一个信号通道中提供输出音频信号16。
应注意,一般而言,音频信号16(以及原始音频信号1及其编码版本,比特流3)通常被理解为根据帧序列被细分(在一些示例中,帧彼此不重叠,而在一些其他示例中,它们可能重叠)。每个帧包括一系列样本。例如,每个帧可以被细分成16个样本(但是其他分辨率也是可能的)。帧可以是长的,例如10毫秒(在其他情况下,可以使用5毫秒或20毫秒或其他时间长度),而采样速率可以是例如16kHz(在其他情况下,8kHz、32kHz或48kHz,或任何其他采样速率),比特率例如是1.6kbps(千比特每秒)。还应注意,多个帧可以被分组在一个单个分组中,例如用于传输或存储。虽然一帧的时间长度通常被认为是固定的,但是每帧的样本数量可以变化,并且可以执行上采样操作。
解码器10可以利用:
-逐帧分支10a’,其可以例如使用比特流3的滤波数据3a针对每个帧进行更新;和/或
-逐样本分支10b’。
例如,使用激励数据或音高数据3b或另一输入,例如噪声14或从外部或内部源获取的另一输入,可以以输出采样速率针对每个样本和/或以比最终输出采样速率更低的采样速率针对每个样本更新逐样本分支10b。
还应注意,比特流3在此处被认为是编码单声道信号,并且输出音频信号16和原始音频信号1也被认为是单声道信号。在立体声信号或多声道信号的情况下,例如像扬声器信号或环绕声信号,则此处的所有技术对每个音频通道重复(在立体声情况下,有两个输入音频通道1、两个输出音频通道16等)。
在本文中,当提到“通道”时,必须在卷积神经网络的上下文中理解,根据卷积神经网络,信号被视为至少具有两个维度的激活图:
-多个样本(例如,在横坐标维度上,或者例如时间轴上);以及
-多个通道(例如,在纵坐标方向上,或者例如频率轴上)。
第一处理块40可以像条件网络一样操作,对于该条件网络,来自比特流3的数据(例如滤波数据3a,例如频谱包络数据)被提供用于生成修改输入数据14(输入信号)的条件。输入数据14(在其任何演变中)将经历若干次处理,以达到输出音频信号16,该输出音频信号旨在是原始音频信号1的版本。条件、输入数据14和它们随后的处理版本都可以表示为激活图,这些激活图经过可学习层,例如通过卷积。应注意,在其向语音16的演变过程中,信号经历上采样(例如,在图4中从1个样本到数千个样本),但是其通道数量减少(例如,在图4中从128个通道到1个单通道)。
在逐样本分支10b中,可以例如从编码在比特流3中的数据获得,诸如滤波数据(例如频谱包络数据)3a(“第一选项”),从另一输入(诸如噪声或来自外部信号的信号)(“第二选项”),或者从其他内部或外部源获得第一数据15。第一数据15可以被认为是第一处理块40的输入,并且可以是输入信号14的演变(或者可以是输入信号14)。在条件神经网络的上下文中,第一数据15可以被认为是潜在信号或先验信号。基本上,根据第一处理块40设置的条件修改第一数据15,以获得第一输出数据69。第一数据15可以在多个通道中,但是在一个单个样本中。此外,提供给第一处理块40的第一数据15可以具有一个采样分辨率,但是在多个通道中。多个通道可以形成一组参数,所述一组参数可以与编码在比特流3中的编码参数相关联。然而,一般而言,在第一处理块40中的处理期间,每帧的样本数量从第一数量增加到更高的第二数量(即,比特率从第一比特率增加到更高的第二比特率)。另一方面,通道的数量可以从第一通道数量减少到更少的第二通道数量。在第一处理块中使用的条件(将在下面详细讨论)可以用74和75表示,并且由目标数据15生成,该目标数据又从自比特流(例如,从诸如频谱包络数据之类的滤波数据)3a获得的目标数据15生成。将示出,条件74和75和/或目标数据15也可以经历上采样,以符合(例如,适应)目标数据15的版本的维度。提供第一数据15(来自内部源、外部源、比特流3等)的单元在此处被称为第一数据供应器702。
从图7可以看出,第一处理块40可以包括预调节可学习层710。预调节可学习层710可以为每个帧生成目标数据12。目标数据12可以至少是二维的:对于横坐标方向上的每个帧可以有多个样本,对于纵坐标方向上的每个帧可以有多个通道。目标数据12可以是频谱图的形式,其可以是梅尔频谱图,例如在频率尺度不均匀并且由感知原理激发的情况下。在对应于要馈送的调节可学习层的采样速率不同于帧速率的情况下,目标数据12在层采样速率下对于相同帧的所有样本可以是相同的。也可以应用另一种上采样策略。目标数据12可以被提供给至少一个调节可学习层,该层在此处被表示为具有层71、72、73(也参见图3和下面的讨论)。调节可学习层71、72、73可以生成条件(其中一些可以表示为β和γ或数字74和75),这些条件也被称为要应用于第一数据12和从第一数据导出的任何上采样数据的调节特征参数。调节可学习层71、72、73可以是矩阵的形式,每个帧具有多个通道和多个样本。第一处理块40可以包括非归一化(或样式元素)块77。例如,样式元素77可以将调节特征参数74和75应用于第一数据15。一个示例可以是第一数据的值与条件β(可以作为偏差操作)逐元素相乘,并且与条件γ(可以作为乘数操作)相加。样式元素77可以逐样本地产生第一输出数据69。
解码器10可以包括第二处理块45。第二处理块45可以组合第一输出数据69的多个通道,以获得输出音频信号16。
现在主要参考图9。比特流3被细分成多个帧(此处示出了三个帧)。时间从左向右演变。每个帧在横坐标方向上被细分成多个样本(未示出)。在纵坐标方向上,提供了许多通道,这些通道可以包括LPC参数。LPC参数可以包括激励数据3b(例如,音高数据、相关性数据、残余数据、刺激数据)和滤波数据3a(例如,频谱包络数据),诸如MFCC。预调节可学习层710可以使用滤波数据3a(或者更一般地,来自比特流3的数据)来生成频谱图(例如,梅尔频谱图),或者更一般地,生成目标数据12。目标数据12可以表示一个单个帧,并且在横坐标方向上(从左到右)随着时间而演变。对于每个帧,若干个通道可以在纵坐标方向上。例如,不同的系数将出现在与频带相关联的系数相关联的每一列的不同条目中。存在调节可学习层71、72、73、调节特征参数74、75(β和γ)。β和γ的横坐标与不同的样本相关联,而纵坐标与不同的通道相关联。并行地,第一数据供应器702可以提供第一数据15。可以为每个样本生成第一数据15,并且第一数据15可以具有许多通道。在样式元素77处(并且更一般地,在第一调节块40处),可以将调节特征参数β和γ(74、75)应用于第一数据15。例如,可以在一列样式条件74、75(调节特征参数)与第一数据15或其演变之间执行逐元素相乘。将示出这一过程可以被多次重复。总之,预调节可学习层710可以获得与帧相关联的滤波数据3a,并且输出该帧的频谱图。
如上所述,由第一处理块40生成的第一输出数据69可以作为2维矩阵(或者甚至具有多于2维的矩阵)来获得,其中样本在横坐标,而通道在纵坐标。在第二处理块45处,生成具有一个单个通道和多个样本的音频信号16。更一般地,在第二处理块45处,第一输出数据69的每帧样本数量(比特率)可以从每帧的第二样本数量(第二比特率)演变到高于每帧的第二样本数量(第二比特率)的每帧的第三样本数量(第三比特率)。另一方面,第一输出数据69的通道数量可以从第二通道数量演变到小于第二通道数量的第三通道数量。换句话说,输出音频信号16的比特率(第三比特率)高于第一数据15的比特率(第一比特率)和第一输出数据69的比特率(第二比特率),而输出音频信号16的通道数量低于第一数据15的通道数量(第一通道数量)和第一输出数据69的通道数量(第二通道数量)。
将示出许多现有技术可以利用适用于流式传输技术的卷积神经网络(或其他可学习层)。图2a示出了使用3×3卷积核的卷积运算的示例,该卷积核例如可以根据“滑动卷积”从左向右滑动不同组的编码参数。比特流3的每组编码参数可以与一个单个帧相关联。例如,输入序列可以包括在纵坐标方向上彼此并置的多个参数。因此,卷积核可以从左向右滑动以获得卷积输出。由此,可以获得密集的神经网络层。我们可以想象,在输入序列中,可能有激励数据3b或滤波数据3a,或者两者都有。
图2b示出了针对不同帧(在帧bt之前获得的帧bt-1,帧bt在帧it+1之前获得)在不同时间获得的比特流3的一组编码参数。在时间t+1处,一组新的编码参数it+1(例如,一帧的LPC系数)与包括先前彼此并置的bt-1和bt的一组编码参数并置。可以从所述一组新到达的编码参数和两组在前的编码参数中直接获得卷积,以便在状态2i中获得对最后一组编码参数(例如,最后三帧)有效的卷积值。此后,可以获得密集的卷积层。可以用帧bt-1和bt来更新缓冲器。
通过将当前帧与已经处于该状态的先前帧并置来逐帧处理编码参数的模型也被称为流式或流式传输模型,并且可以用作卷积的卷积映射,用于实时和流式应用,如语音编码。
下面讨论卷积的示例,并且可以理解,它们可以用在任何预调节可学习层710、至少一个条件可学习层71、72、73,以及更一般地,用在第一处理块40(50)中。一般而言,当第一处理块或第二处理块分别处理前一帧时,所述一组到达的条件参数(例如,对于一帧)被存储在队列(未示出)中,以随后由第一处理块或第二处理块处理。
图8a示出了可以用于实现本技术的图解700。可以使用所谓的“频谱图增强”技术(也参见下文4.1节)。预调节可学习层710可以包括至少一个级联步骤712,其中比特流3的LPC参数(或者更一般地,参数)彼此级联。LPC参数可以包括滤波数据3a(诸如mfcc梅尔频率倒谱系数)和其他数据数据3b(例如音高数据,例如归一化的相关性和音高)。例如,可以通过并置与不同帧(例如,连续帧)相关联的若干个参数来使用图2b中所示的操作。级联712的输出714可以被输入到预调节卷积716,预调节卷积716可以提供预调节输出的输出718。预调节输出718可以被输入到特征卷积720,该特征卷积720可以提供预调节输出722。随后,可以提供密集层724,以获得频谱图(例如,梅尔频谱图),该频谱图是目标数据12。可以使用其他策略。
图8a的生成器网络770可以扮演调节可学习层71、72、73和非归一化(样式元素)块77的角色。生成器网络770的输出可以是第一输出数据69,并且可以由多个波形构成。此后,第二处理块45可以执行合成(例如,PQMF合成)110,从中获得输入音频信号16。
图8b示出了另一个图解800(在下面的4.2节中公开了代码)。图解800可以包括至少一个预调节可学习层710,该至少一个预调节可学习层可以包括第一预调节层816,该第一预调节层可以输出预调节输出818。预调节输出818可以被输入到第二预调节层820,该第二预调节层可以输出预调节输出822。预调节密集层824可以与预调节输出822一起输入。预调节密集层824的输出可以是上面讨论的目标数据12(例如,频谱图、梅尔频谱图等)。生成器网络层770可以扮演层71、72、73和77的角色(参见上文和下文)。可以例如以多波形的形式生成第一输出数据69。此后,可以使用第二处理块45。因此生成并且可以播放输出音频信号16(在输出帧中)。
图8c示出了第三图解850,其中从比特流3中获得第一数据15(其可以被认为与输入数据14相同)。此处,滤波数据3a是MFCC,其被输入到预调节卷积层856中。输出858可以是目标数据12。目标数据12(858)可以被输入到生成器网络770,该生成器网络可以由层71、72、73和77来具体实施。目标数据12(858)可以将条件设置到生成器网络770上。生成器网络170还可以由输入数据14(第一数据15)输入,该输入数据在此处被示为pitch_embedding与pitch_core之间的相乘812(缩放层),以获得被用作生成器网络770的第一数据12(潜在的,先验的)的相乘值813。pitch_embedding和pitch_core可以被理解为音高数据3b(其他数据)的一部分。滤波数据3a(MFCC)、pitch_embedding和pitch_core(音高数据3b)都可以从比特流3中获得。通过作为条件网络操作,生成器网络770可以提供第一输出数据69(多频带波形),该第一输出数据可以被输入到第二处理块45中。第二处理块45可以执行例如PQMF合成110。PQMF合成器110的输出out_frame可以是输出音频信号16。图8c的图解850也在下面的4.3节中讨论。
在图8a和图8b以及图8c的示例中,层712、716、720、724、816、820、824、856、770中的至少一个可以是或可以暗示可学习层。层712、716、720、724、816、820、824、856中的至少一个可以是或可以暗示非条件可学习层。层712、716、720、724、816、820、824、856中的至少一个可以是卷积层(例如,使用通过训练学习的核)。至少一层(例如,层724、816、820、856中的至少一个)可以由ReLu激活函数(例如,泄漏ReLu)激活。至少一层(例如,层716、720、770中的至少一个)可以没有激活函数。然而,不同的组合是可能的。
至少一层(特别是层724)可以进行权重归一化。备选地,任何归一化都可以用作批处理、实例或层归一化。权重归一化的特征在于它将权重向量与其方向分开的事实。这与使用方差进行批量归一化具有相似的效果。唯一的区别是变化不在于方向。任何可学习块712、716、720、724、856(或其任意组合)可以是或构成预调节可学习层710。
用于图解700的信号714、718、722、12和用于图解800的信号813、818、822、12或用于图解880的信号858和12中的至少一个可以被理解为目标数据15或取自比特流3的目标数据前趋物,并且可以用于获得要应用于第一数据15或其任何处理版本的条件74、75(调节特征参数)。此处,第一数据15在图8a和图8b中示出为高斯噪声14,但是它们也可以从激励数据3b中获得(例如参见图8c和下面的4.3节)。
在一些示例中,(例如可以通过下面4.3节中的代码来具体实施)噪声(用于“第二选项”)可以由音高数据3b(诸如音高乘以音高的相关性值)或者其他数据来代替:获得了图7的所谓“第一选项”。在图解700和800之间,我们看到图解800没有级联层712,但是我们有缩放层812,其中通过将音高嵌入值与音高相关性相乘来获得音高数据813。在这种情况下,不需要级联,因为两个相关信息已经通过812处的相乘运算进行了组合。应注意,在图8c的图解850中,执行相乘812以获得值813,该值是生成器网络770的第一数据15(或输入数据14),并且被用作潜在的(或先验的);与之相反,在图8b的图解800中,相乘812获得被提供给预调节层710的相乘值。
下面主要讨论在预调节可学习层710下游的块中执行的操作。因此,大多数随后的讨论考虑了已经从预调节可学习层710获得的目标数据,并且这些数据被应用到调节可学习层71-73(调节可学习层71-73又被应用到样式元素77)。需要提醒的是,块71-73和77可以由生成器网络层770来具体实施。生成器网络层可以包括多个可学习层(例如,多个块50a-50h,参见下文)。
图7(及其在图4中的实施例)示出了音频解码器(生成器)10的示例,其可以例如根据本技术(也称为StyleMelGAN)从比特流3解码(例如生成、合成)音频信号(输出信号)16。可以基于输入信号14(也称为潜在信号,并且可以是噪声,例如白噪声(“第一选项”),或者可以从比特流3的参数中获得,诸如滤波数据3a,诸如频谱包络数据)和目标数据12(也称为“输入序列”)生成输出音频信号16,该目标数据可以从比特流3中获得(例如,从编码在比特流中的其他参数3b,至少诸如激励数据或音高数据或和谐性数据或周期性数据或长期预测数据获得)。如上所述,目标数据12可以包括(例如是)频谱图(例如,梅尔频谱图),梅尔频谱图提供例如时间样本序列到梅尔标度上的映射(例如从预调节可学习层710和/或通过层712、716、720、724中的至少一个和/或通过层816、820、824或856中的至少一个获得,如上所述)。目标数据12通常要被处理,以便获得可被人类听众识别为自然的语音。输入信号14可以是或者可以从比特流3中获得(例如,从其他信息3b中获得)(“第一选项”),或者可以是(“第二选项”)噪声(同样不携带有用信息)(其他选项也是可能的)。在解码器10中,从输入获得(从比特流3或从噪声或从外部源获得)的第一数据15被样式化(例如,在块77处)为具有由目标数据12调节的声学特征的向量。最后,输出音频信号16将被人类听众理解为语音。如在图4中,(从比特流3或从噪声或从外部源获得的)输入向量14可以是128×1向量(一个单个样本,例如时域样本或频域样本,以及128个通道)。在其他示例中,可以使用不同长度的输入向量14。输入向量14可以在第一处理块40中被处理(例如,在通过预调节层710从比特流3获得的目标数据12的调节下)。第一处理块40可以包括至少一个,例如多个处理块50(例如50a...50h)。在图4中,示出了八个块50a...50h(它们中的每一个也被标识为“TADEResBlock”),尽管在其他示例中可以选择不同的数量。在许多示例中,处理块50a、50b等提供对从输入信号14演变到最终音频信号16的信号的逐渐上采样(例如,至少一些处理块50a、50b、50c、50d、50e提高了采样速率)。
块50a-50h可以理解为形成一个单个块40(例如图7中所示的块)。在第一处理块40中,一组调节可学习层(例如,71、72、73,但是不同的数量是可能的)可以用于处理目标数据12和输入信号14(例如,第一数据15)。因此,可以在训练期间例如通过卷积获得调节特征参数74、75(也称为伽玛γ和贝塔β)。可学习层71-73因此可以是学习网络的权重层的一部分。如上所述,第一处理块40、50可以包括至少一个样式元素77(归一化块77)。至少一个样式元素77可以输出第一输出数据69(当存在多个处理块50时,多个样式元素77可以生成多个分量,这些分量可以彼此相加以获得第一输出数据69的最终版本)。至少一个样式元素77可以将调节特征参数74、75应用于输入信号14(潜在的)或从输入信号14获得的第一数据15。
第一输出数据69具有多个通道。
音频解码器10可以包括第二处理块45(在图1中被示为包括块42、44、46、110)。第二处理块45可以被配置成组合第一输出数据69(作为第二输入数据或第二数据输入)的多个通道47,以在一个单个通道中但在样本序列中获得输出音频信号16。
“通道”不是在立体声的上下文中理解,而是在神经网络(例如卷积神经网络)的上下文中理解。例如,输入信号(例如潜在噪声)14可以在128个通道中(在时域中的表示中),因为提供了一系列通道。例如,当信号具有40个样本和64个通道时,它可以被理解为40列64行的矩阵,而当信号具有20个样本和64个通道时,它可以被理解为20列64行的矩阵(其他模式也是可能的)。因此,生成的音频信号16可以被理解为单声道信号。在要生成立体声信号的情况下,所公开的技术简单地对每个立体声通道重复,以便获得随后被混合的多个音频信号16。
至少原始输入信号14和/或生成的语音16可以是向量。相反,每个块30和50a-50h、42、44的输出通常可以具有不同的维度。第一数据15可以具有第一维度(例如样本维度)或者比音频信号16的维度低至少一个维度。第一数据15在所有维度上的样本总数可以低于音频信号16。第一数据15可以具有比音频信号16低的一个维度(例如样本维度),但是具有比音频信号16多的通道数量。在块30和50a-50e、42、44中的至少一些中,从输入14(例如噪声或音高)朝向语音16演变的信号(14、15、59、69)可以被上采样。例如,在块50a-50h中的第一块50a处,可以执行2倍上采样。上采样的示例可以包括例如以下序列:1)相同值的重复,2)插入零,3)另一次重复或插入零+线性滤波等。
生成的音频信号16通常可以是单通道信号。在多个音频通道是必要的情况下(例如,对于立体声播放),则所要求的过程原则上应该重复多次。
类似地,目标数据12也具有由预调节可学习层710生成的多个通道(例如,在频谱图中)。在任何情况下,目标数据12可以被上采样(例如,通过因子2、2的幂、2的倍数或大于2的值)以适应沿着后续层(50a-50h、42)演变的信号(59a、15、69)的维度,例如以获得与信号的维度相适应的维度中的调节特征参数74、75。
如果第一处理块40在多个块50a-50h中被实例化,则通道数量可以例如保持多个块中的至少一些(例如,从50e到50h,并且在块42中,通道数量不变)。第一数据15可以具有第一维度或者比音频信号16低至少一个维度。第一数据15在所有维度上的样本总数可以低于音频信号16。第一数据15可以具有比音频信号16低的一个维度,但是具有比音频信号16多的通道数量。
示例可以根据生成性对抗网络(GAN)的范例来执行。GAN包括GAN生成器11(图4)和GAN判别器100(图10)。GAN生成器11试图产生尽可能接近真实音频信号的音频信号16。GAN判别器100将识别生成的音频信号16是真实的还是虚假的。GAN生成器11和GAN判别器100都可以作为神经网络获得(或者通过其他可学习的技术获得)。GAN生成器11将使损失最小化(例如,通过梯度方法或其他方法),并且通过考虑GAN判别器100处的结果来更新调节特征参数74、75。GAN判别器100将减少其自身的判别损失(例如,通过梯度方法或其他方法)并且更新其自身的内部参数。因此,GAN生成器11被训练以生成越来越好的音频信号16,而GAN判别器100被训练以从GAN生成器11生成的假音频信号中识别真实信号16。GAN生成器11可以包括解码器10的功能,而至少没有GAN判别器100的功能。因此,在大多数前述内容中,除了判别器100的特征之外,GAN生成器11和音频解码器10可以具有或多或少相同的特征。音频解码器10可以包括判别器100作为内部组件。因此,GAN生成器11和GAN判别器100可以同时构成音频解码器10。在不存在GAN判别器100的示例中,音频解码器10可以唯一地由GAN生成器11构成。
如用词“一组调节可学习层”所解释的,可以根据条件神经网络(例如条件GAN)的范例来获得音频解码器10,例如基于条件信息。例如,条件信息可以由目标数据(或其上采样版本)12构成,从该目标数据训练所述一组调节层71-73(权重层),并且获得调节特征参数74、75。因此,样式元素77受到可学习层71-73的调节。这同样适用于预调节层710。
这些示例可以基于卷积神经网络。例如,小矩阵(例如,滤波器或核)可以是3×3矩阵(或4×4矩阵等),其沿着更大的矩阵(例如,通道x个样本潜在或输入信号和/或频谱图和/或频谱图或上采样频谱图或更一般的目标数据12)进行卷积,例如意味着滤波器的元素(核)与更大矩阵的元素(激活图,或激活信号)之间的组合(例如,相乘和乘积的求和;点积等)。在训练期间,获得(学习)滤波器(核)的元素,这些元素使损失最小化。在推断期间,使用在训练过程中获得的滤波器(核)的元素。卷积的示例可以用于块71-73、61b、62b(参见下文)、716、720、720、724、816、820、824、856中的至少一个。在卷积是有条件的情况下,卷积不必应用于从输入信号14通过中间信号59a(15)、69等朝向音频信号16演变的信号,而是可以应用于目标信号14(例如,用于生成随后将应用于第一数据15、或潜在数据、或先验数据或从输入信号朝向语音16演变的信号的调节特征参数74和75)。在其他情况下(例如,在块61b、62b处),卷积可以是非条件的,并且可以例如直接应用于从输入信号14朝向音频信号16演变的信号59a(15)、69等。可以执行条件卷积和非条件卷积。
在一些示例中,可能在卷积的下游具有激活函数(ReLu、TanH、softmax等),根据预期效果可能会有所不同。ReLu可以映射0与在卷积中获得的值之间的最大值(实际上,如果是正值,它保持相同的值,如果是负值,则输出0)。如果x>0,则泄漏ReLu可以输出x,并且如果x≤0,则输出0.1*x,x是通过卷积获得的值(在一些示例中,可以使用另一个值来代替0.1,例如0.1±0.05内的预定值)。TanH(例如可以在块63a和/或63b处实现)可以提供在卷积中获得的值的双曲正切,例如
TanH(x)=(ex-e-x)/(ex+e-x),
其中x是在卷积中获得的值(例如在块61b处)。(例如,在块64b处应用的)Softmax可以将指数应用于卷积结果的元素中的每个元素,并且通过除以指数的和来对其进行归一化。Softmax可以为矩阵中由卷积产生的条目提供概率分布(例如,如在62b处提供的)。在应用激活函数之后,在一些示例中可以执行汇集步骤(图中未示出),但是在其他示例中可以避免该步骤。
也可能具有softmax门控双曲正切函数,例如通过将(例如在63b处获得的)双曲正切函数的结果与(例如在64b处获得的)softmax函数的结果相乘(例如在65b处)。
在一些示例中,多层卷积(例如,一组调节可学习层)可以是一个在另一个的下游和/或彼此平行,以便提高效率。如果提供了激活函数和/或汇集的应用,它们也可以在不同的层中重复(或者可以是例如不同的激活函数可以应用于不同的层)。
输入信号14(例如噪声或从比特流中获得的信号,例如激励数据3a,诸如音高信息)在不同的步骤被处理,以变成生成的音频信号16(例如,在由所述一组调节可学习层71-73设置的条件下,并且基于由所述一组调节可学习层71-73学习的参数74、75)。因此,输入信号14(第一数据15)将被理解为在处理方向上(图6中从14到16)朝向成为生成的音频信号16(例如语音)演变。这些条件将基本上基于目标信号12和/或比特流3中的前提条件以及训练来生成(以便达到最优选的一组参数74、75)。
还应注意,输入信号14的多个通道(或其任何演变)可以被认为具有一组可学习层和与之相关联的样式元素77。例如,每一行矩阵74和75可以与输入信号的特定通道(或其演变中的一个)相关联,例如从与特定通道相关联的特定可学习层获得。类似地,样式元素77可以被认为是由多个样式元素形成的(每个样式元素用于每一行输入信号x、c、12、76、76’、59、59a、59b等)。
图4示出了音频解码器(生成器)10的示例(其可以具体实施图6的音频解码器10),并且其还可以包括(例如是)GAN生成器11。应注意,图4现在确实示出了预调节可学习层710(在图7中示出),尽管目标数据12是通过预调节层710从比特流3中获得的(参见上文图7至图9)。目标数据12可以是从预调节可学习层710获得的梅尔频谱图;输入信号14可以是潜在噪声或从来自比特流3的激励数据(例如,音高信息)3b获得的信号,并且输出16可以是语音。输入信号14只有一个样本和多个通道(表示为“x”,因为它们可以变化,例如通道数量可以是80或其他)。输入向量14(噪声或从激励数据3b获得的信号,如音高信息)可以在具有128个通道的向量中获得(但是其他数量也是可能的)。在输入信号14是噪声的情况下(“第一选项”),它可以具有零均值正态分布,并且遵循公式z~N(0,I128);它可以是均值为0的维度128的随机噪声,并且自相关矩阵(平方128×128)等于单位I(可以做出不同的选择)。因此,在噪声被用作输入信号14的示例中,它可以在通道之间完全去相关,并且方差为1(能量)。可以在每22528个生成的样本处实现N(0,I128)(或者对于不同的示例可以选择其他数量);因此,维度在时间轴上可以是1,而在通道轴上可以是128。
将示出输入向量14(无论是噪声还是从比特流3获得的)可以被逐步处理(例如,在块50a-50h、42、44、46等处),以便演变成语音16(演变的信号将例如用不同的信号15、59a、x、c、76’、79、79a、59b、79b、69等来指示)。
在块30处,可以执行通道映射。它可以由简单的卷积层组成或包括简单的卷积层,以改变通道数量,例如在这种情况下从128到64。
可以看出,处理块50a、50b、50c、50d、50e、50f、50g、50h中的至少一些(一起具体实施图6的第一处理块50)可以通过例如对每个帧执行上采样(例如,最大2次上采样)来增加样本的数量。沿着块50a、50b、50c、50d、50e、50f、50g、50h,通道的数量可以保持相同(例如,64个)。样本可以是例如每秒的样本数(或其他时间单位):我们可以在块50h的输出端获得16kHz或更高(例如22Khz)的声音。如上所述,多个样本的序列可以构成一个帧。
块50a-50h(50)中的每一个也可以是TADEResBlock(TADE(时间自适应非归一化)上下文中的残差块)。应注意,每个块50a-50h(50)可以由目标数据(例如,梅尔频谱图)12和/或比特流3(例如,由诸如频谱包络数据的滤波数据3a和/或诸如音高数据的其他数据3b)来调节。
在第二处理块45(图1和图6),可以仅获得一个单通道,并且在一个一维上获得多个样本(也参见图9)。可以看出,可以使用另一个TADEResBlock 42(除了块50a-50h之外)(这将维度减小到四个单通道)。然后,可以执行卷积层44和激活函数(例如,可以是TanH46)。也可以应用(伪正交镜像滤波器)组110,以便获得最终的16(并且可能被存储、渲染等)。
块50a-50h中的至少一个(或者在特定示例中是它们中的每一个)和42可以是例如残差块。残差块仅对从输入信号14演变为输出音频信号16的信号的残差分量(例如,噪声)进行预测。残差信号只是从输入信号14朝向输出信号16演变的主信号的一部分(残差分量)。例如,多个残差信号可以彼此相加,以获得最终的输出音频信号16。
图3示出了块50a-50h(50)中的一个的示例。可以看出,每个块50被输入第一数据59a,该第一数据是第一数据15(或者是其上采样版本,诸如由上采样块30输出的版本),或者是来自先前块的输出。例如,块50b可以输入块50a的输出;块50c可以输入块50b的输出,依此类推。在示例中,不同的块可以彼此并行操作,并且将结果相加在一起。
从图3可以看出,提供给块50(50a-50h)或42的第一数据59a被处理,并且其输出是输出数据69(其将作为输入提供给后续块)。如线59a’所示,第一数据的主要分量59a实际上绕过了第一处理块50a-50h(50)的大部分处理。例如,块60a、900、60b以及902和65b被主分量59a’绕过。第一数据59(15)的残差分量59a将被处理以获得残差部分65b’,该残差部分将在加法器65c(在图3中示出,但未示出)处被加到主分量59a’上。绕过主分量59a’和加法器65c处的加法可以理解为每个块50(50a-50h)对残差信号进行操作,然后将残差信号添加到信号的主部分。因此,块50a-50h中的每一个都可以被认为是残差块。
应注意,加法器65c处的加法不一定需要在残差块50(50a-50h)内执行。可以执行多个残差信号65b’(每个残差信号由每个残差块50a-50h输出)的单个加法(例如,在第二处理块45中的一个单个加法器块处)。因此,不同的残差块50a-50h可以彼此并行操作。
在图3的示例中,每个块50可以重复其卷积层两次。第一非归一化块60a和第二非归一化块60b可以级联使用。第一非归一化块60a可以包括样式元素77的实例,以将调节特征参数74和75应用于第一数据59(15)(或其残差版本59a)。第一非归一化块60a可以包括归一化块76。归一化块76可以沿着第一数据59(15)(或其残差版本59a)的通道执行归一化。因此可以获得第一数据59(15)(或其残差版本59a)的归一化版本c(76’)。因此,可以将样式元素77应用于归一化版本c(76’),以获得第一数据59(15)(或其残差版本59a)的非归一化(条件化)版本。例如,可以通过矩阵γ(具体实施条件74)的元素与信号76’(或输入信号和语音之间的信号的另一版本)的逐元素相乘,和/或通过矩阵β(具体实施条件75)的元素与信号76’(或输入信号和语音之间的信号的另一版本)的逐元素相加,来获得元素77处的非归一化。因此,可以获得第一数据59(15)(或其残差版本59a)的非归一化版本59b(由调节特征参数74和75调节)。
然后,对第一数据59(或其残差版本59a)的非归一化版本59b执行门控激活900。具体地,可以执行两个卷积61b和62b(例如,每个卷积具有3×3核和膨胀因子1)。不同的激活函数63b和64b可以分别应用于卷积61b和62b的结果。激活63b可以是TanH。激活64b可以是softmax。两个激活63b和64b的输出可以彼此相乘,以获得第一数据59(或其残差版本59a)的非归一化版本59b的门控版本59c。
随后,可以对第一数据59(或其残差版本59a)的非归一化版本59b的门控版本59c执行第二非归一化60b。第二非归一化60b可以类似于第一非归一化,因此此处不再描述。
随后,执行第二激活902。此处,核可以是3×3,但是膨胀因子可以是2。在任何情况下,第二门控激活902的膨胀因子可以大于第一门控激活900的膨胀因子。
所述一组调节可学习层71-73(例如,从预调节可学习层获得的)和样式元素77可以(例如,对于每个块50a、50b…两次)被应用到信号59。目标数据12的上采样可以在上采样块70执行,以获得目标数据12的上采样版本12’。上采样可以通过非线性插值获得,并且可以使用例如因子2、2的幂、2的倍数或大于2的另一个值。因此,在一些示例中,可能是频谱图(例如,梅尔频谱图)12’具有与(例如,符合)信号(76、76’、c、59、59a、59b等)相同的维度以受频谱图的调节。
在示例中,分别位于TADE块60a或60b下游的61b和62b处的第一和第二卷积可以在核中相同数量的元素(例如9,例如3×3)处执行。然而,块902中的第二卷积可以具有2的膨胀因子。在示例中,卷积的最大膨胀因子可以是2(二)。
如上所述,目标数据12可以被上采样,例如,以便符合输入信号(或者从其演变的信号,诸如59、59a、76’,也称为潜在信号或激活信号)。此处,可以执行卷积71、72、73(目标数据12的中间值用71’表示),以获得参数γ(伽玛,74)和β(贝塔,75)。71、72、73中任何一个处的卷积也可能需要整流线性单元ReLu或泄漏整流线性单元(泄漏ReLu)。参数γ和β可以具有与激活信号相同的维度(被处理的信号从输入信号14演变为生成的音频信号16,当处于归一化形式时,其在此处被表示为x、59、59a或76’。因此,当激活信号(x、59、59a、76’)具有两个维度时,γ和β(74和75)也具有两个维度,并且它们中的每一个都可以叠加到激活信号上(γ和β的长度和宽度可以与激活信号的长度和宽度相同)。在样式元素77处,调节特征参数74和75被应用于激活信号(其可以是由乘法器65a输出的第一数据59a或59b)。然而,应注意,激活信号76’可以是第一数据59、59a、59b(15)的归一化版本(在实例归一化块76处),归一化是在通道维度中。还应注意,在样式元素77(γc+β,在图3中也用γ⊙c+β表示)中示出的公式可以是逐元素乘积,并且在一些示例中不是卷积乘积或点乘积。
卷积72和73在其下游不一定具有激活函数。参数γ(74)可以理解为具有方差值,而β(75)可以理解为具有偏差值。
注意,对于每个块50a-50h、42,可学习层71-73(例如,与样式元素77一起)可以理解为具体实施权重层。
同样,图4的块42可以被实例化为图3的块50。然后,例如,卷积层44将通道数量减少到1,此后,执行TanH 46以获得语音16。块44和46的输出44’可以具有减少的通道数量(例如4个通道而不是64个),和/或可以具有与先前块50或42相同的通道数量(例如40个)。
对信号44’执行PQMF合成(也参见下文)110,以便获得一个通道中的音频信号16。
因此,此处提供了语音16的解码和生成的示例(在一些示例中,以下步骤中的一些可以被省略或由其他步骤来提交):
1)获得比特流3的新帧(例如,VoIP中的数据包、来自无线电通信的接收或者从大容量存储单元读取)。
2)新帧具有滤波数据3a(例如,频谱包络数据)和其他数据3b(例如,音高数据,诸如音高滞后和相关性的值),它们与先前获得的帧并置(例如,像在图2b和图2c中)在一起,从而获得2维比特流模型或卷积映射(不同通道在纵坐标方向上具有相同帧的不同参数,不同帧沿着纵坐标方向排序)。
3)在预调节可学习层710,对二维卷积图进行卷积,以获得目标数据12(例如梅尔频谱图)。
4)在TADEResBlock 50a…50h中每一个的调节可学习层71-73的每一个中,获得调节特征参数74和75。
5)同时,第一数据供应器702从输入信号14提供第一数据15(或其任何演变),其中输入信号14是噪声或从激励数据3b(例如激励)获得。
6)在每个TADEResBlock 50a…50h中,通过将调节特征参数74和75应用于残差59a,处理第一数据15的残差59a。
7)将每个块50a-50h和42的残差加在一起,以便获得第一输出数据69。
8)第一输出数据69具有多个通道(例如,少于输入信号14中的通道)和多个样本(例如,多于输入信号14中的样本),但是第二处理块45(尤其是PQMF合成块110)允许在一个通道(或者更一般而言少于输入信号14中的通道)和多个样本(例如,多于第一输出数据69中的样本)中获得一个输出音频信号16。
GAN判别器
图2的GAN判别器100可以在训练期间用于获得例如要应用于输入信号12(或其处理和/或归一化版本)的参数74和75。训练可以在推断之前执行,并且参数74和75可以例如存储在非暂时性存储器中并随后使用(然而,在一些示例中,也可以在线计算参数74或75)。
GAN判别器100具有学习如何从真实输入信号(例如真实语音)104中识别生成的音频信号(例如如上所述合成的音频信号16)的作用。因此,GAN判别器100的作用主要在训练期间发挥(例如,用于学习参数72和73),并且在GAN生成器11的角色的相反位置被看到(其可以被看作没有GAN判别器100的音频解码器10)。
一般而言,GAN判别器100可以由GAN解码器10合成生成的音频信号16和例如通过麦克风获取的真实音频信号(例如,真实语音)104两者输入,并且处理这些信号以获得要被最小化的度量(例如,损失)。真实音频信号104也可以被认为是参考音频信号。在训练期间,可以重复例如多次类似于上述用于合成语音16的操作,以便获得例如参数74和75。
在示例中,代替分析整个参考音频信号104和/或整个生成的音频信号16,可以仅分析其一部分(例如,一部分、一个片段、一个窗口等)。获得在随机窗口(105a-105d)中生成的信号部分,该随机窗口是从生成的音频信号16和参考音频信号104中采样的。例如,可以使用随机窗口函数,使得将使用哪个窗口105a、105b、105c、105d不是先验预定义的。同样,窗口的数量不一定是四个,而是可以变化的。
在窗口(105a-105d)内,可以应用PQMF(伪正交镜像滤波器)组110。因此,获得子带120。因此,获得生成的音频信号(16)的表示或参考音频信号(104)的表示的分解(110)。
评估块130可以用于执行评估。可以使用多个评估器132a、132b、132c、132d(复杂地用132表示)(可以使用不同的数量)。一般而言,每个窗口105a、105b、105c、105d可以被输入到相应的评估器132a、132b、132c、132d。对于每个评估器(132a-132d),随机窗口(105a-105d)的采样可以重复多次。在示例中,对于每个评估器(132a-132d)采样随机窗口(105a-105d)的次数可以与生成的音频信号的表示或参考音频信号的表示(104)的长度成比例。因此,评估器(132a-132d)中的每一个可以接收生成的音频信号(16)的表示或参考音频信号(104)的表示的一个或若干个部分(105a-105d)作为输入。
每个评估器132a至132d本身可以是神经网络。具体地,每个评估器132a至132d可以遵循卷积神经网络的范例。每个评估器132a至132d可以是残差评估器。每个评估器132a至132d可以具有在训练期间调适的参数(例如,权重)(例如,以类似于上述方式之一的方式)。
如图2中所示,每个评估器132a至132d还执行下采样(例如,4倍或另一个下采样比)。对于每个评估器132a至132d,通道数量可以增加(例如增加4倍,或者在一些示例中增加与下采样比率相同的数量)。
在评估器的上游和/或下游,可以提供卷积层131和/或134。上游卷积层131可以具有例如维度为15(例如,5×3或3×5)的核。下游卷积层134可以具有例如维度为3(例如,3×3)的核。
在训练期间,损失函数(对抗损失)140可以被优化。损失函数140可以包括生成的音频信号(16)与参考音频信号(104)之间的固定度量(例如,在预训练步骤期间获得的)。可以通过计算生成的音频信号(16)与参考音频信号(104)之间的一个或若干个频谱失真来获得固定度量。可以通过考虑以下因素来测量失真:
-生成的音频信号(16)和参考音频信号(104)的频谱表示的幅度或对数幅度,和/或
-不同的时间或频率分辨率。
在示例中,可以通过由一个或多个评估器(132)随机提供和评估生成的音频信号(16)的表示或参考音频信号(104)的表示来获得对抗损失。该评估可以包括将提供的音频信号(16、132)分类成预定数量的类别,这些类别指示音频信号(14、16)的预训练分类自然度水平。例如,预定数量的类别可以是“真实的”对“虚假的”。
损失的示例可以如下获得
其中:
x是真实的语音104,
z是潜在输入14(它可以是噪声或从比特流3获得的另一个输入),
s是x(或者更一般而言是目标信号12)的梅尔频谱图。
D(…)是根据概率分布的评估器的输出(D(…)=0意味着“肯定是虚假的”,D(…)=1意味着“肯定是真实的”)。
频谱重建损失仍然用于正则化,以防止出现不利的伪像。例如,最终损失可以是:
其中每个i是每个评估器132a至132d的贡献(例如,每个评估器132a至132d提供不同的Di)并且是预训练的(固定的)损失。
在训练期间,存在对最小值的搜索,其可以表示为例如
可以执行其他种类的最小化。
一般而言,最小对抗损失140与要应用于样式元素77的最佳参数(例如,74、75)相关联。
讨论
下面提供了对发明实例的讨论。为了更加清楚,讨论分成几个部分。
最近,已经注意到基于生成对抗网络(GAN)的声码器在合成语音质量方面优于自回归和基于流的方法,同时速度快几个数量级。同时,神经声码器也已成功地应用于极低比特率的语音编码。解码器中使用的神经声码器能够从高度压缩的表示中生成自然语音。然而,迄今为止提出的编码方案依赖于利用语音波形的因果性质的自回归模型,但是局限于逐样本的信号生成。这项工作的目的有两个:使基于GAN的神经声码器适用于流式传输和编码应用。从StyleMelGan模型开始,该模型的卷积是因果的,并且条件和先验产生了有限的前瞻。确保了语音能够以受限的延迟生成,并且连续地逐帧生成。发现质量非常接近批量处理的质量。此外,编码参数通过两种方式以有效的方式被馈送到神经声码器。频谱包络信息用于调节smGAN的TADEResBlock,而音高信息用于构建低维先验。实验结果表明,所获得的编码方案在以非常低的比特率编码清晰语音方面优于迄今为止先前发表的解决方案。
参数语音编码和神经声码器的组合产生了新的编码范例,使得语音的压缩因子比常规方法高得多。已经证明,用编码参数调节神经声码器可以产生自然的宽带语音,例如比特率为2kbps或更低。迄今为止,神经声码器语音编码器依赖于自回归生成网络,其自身产生低延迟,但本质上很复杂,因为生成是通过逐样本地设计来进行的。
大多数GAN声码器在GPU上提供非常快速的生成,但代价是牺牲合成语音的质量。基于GAN的神经声码器最近被证明[1]是用于语音合成的自回归方法的有竞争力且可行的备选方案,并且用于文本到语音应用(TTS)。然而,它们在设计上不适合流式传输或实时语音通信,因为它们通过大量并行处理一次产生大量样本。此外,仍然没有证明基于GAN的神经声码器可以用类似梅尔频谱图的语音的相对连续的表示之外的东西来调节。对于使用高度离散语音表示(也称为参数表示)的语音编码应用,仍然需要证明使用GAN方法的可行性。
本发明的目的有两个:
·使基于GAN生成模型流式兼容
·使得GAN方法能够与由离散声学特征(也称为语音参数)组成的非常紧凑的语音表示一起工作。
附图的进一步表征
图1:神经声码器语音编码器的高级框图。
图2:根据以下的卷积模型:a)非流式传输,b)具有内部状态管理的流式传输,c)具有外部状态管理的流式传输。
图3:按流smGan(ssmGAN)的TADE残差块的修改。
图4:具有多频带生成的优化smGan。
图5a和图5b:在smGan之前使用网络中的预调节的MUSHRA收听测试结果。
图6a和MUSHRA收听测试结果。
2.语音编码的生成模型
在本节中,我们描述基于神经声码器的语音编码方案的主要结构。该原理在[6]中首次被揭示和论证,并且在随后的工作[7,8,9]中被采用。如图1中所示,在宽带语音的情况下,编码器以16kHz的采样速率分析输入语音信号。
最后,由于非常低的比特率方案通常是为给定的源设计和训练的,因此输入信号可以预先由例如在[9]中提出的噪声抑制模块或任何种类的源分离或语音增强处理进行预处理,以获得尽可能清晰的语音信号。
编码器首先分析信号以提取一组声学特征,这些特征将被量化、编码,然后被传输。在我们的示例中,并且为了进行比较,我们坚持使用[7]中描述的LPCNet 1.6kbps编码器的特征。表1中总结了编码参数及其各自的比特率。我们找到了参数语音编码中传送的常见声学特征,即频谱包络、音高信息和能量。
编码参数 比特/数据包
音高滞后 6
音高调制 3
音高相关性 2
能量 7
倒谱绝对编码 30
倒谱Δ编码 13
倒谱插值 3
总计 64
表1:40毫秒数据包的LPCNet编码参数及其针对比特分配的分配
解码器主要由受编码参数调节的神经声码器组成。例如,LCPNet 1.6kbps采用基于WaveRNN的递归架构,其依靠线性预测来进一步降低复杂度,在残差线性预测域中生成信号。然后,解码分为两部分:帧速率网络,用于根据编码参数计算每10毫秒帧的条件;以及采样速率网络,用于计算条件采样概率。除了使用先前生成的语音样本,LPCNet还使用16阶预测系数(LPC)和先前生成的激励样本来预测当前激励样本。在最近的工作[9]中也采用了WaveRNN,通过直接编码堆叠梅尔频谱以3kbps压缩语音。
在目前的工作中,我们建议用基于GAN的方法取代自回归神经声码器,以受益于其前馈结构和潜在的质量增益。
3.基于按流样式的GAN声码器
在目前的工作中,我们修改了[10]中引入的StyleMelGAN,这是一种轻型神经声码器,允许以低计算复杂度合成高保真语音。StyleMelGAN采用时间自适应归一化来用目标语音的声学特征来设计低维噪声向量。为了有效的训练,多个随机窗口判别器通过由多尺度谱重建损失提供的正则化,对由滤波器组分析的语音信号进行对抗评估。高度并行的语音生成比CPU和GPU上的实时速度快几倍。
基于GAN的声码器的计算优势主要依赖于语音合成的高度并行化,这允许神经声码器在一次触发中生成相对较大的音频序列。只有当模型不依赖任何反馈回路而是依赖前馈架构时,这才是可能的。然而,在音频编码的情况下,必须限制算法延迟,因此必须以流式传输的方式和有限的帧大小逐帧进行生成。为了确保允许舒适通信的总算法延迟,在生成期间不仅帧大小而且对未来信息的访问都必须被限制。从原始模型中导出流式传输模型是实现更有效推断的相对常见的优化,这涉及到用因果卷积替换非因果卷积[11]。图2示出了在这种情况下卷积及其存储器管理的示例。
因此,对原始smGAN模型进行了若干修改。首先,使卷积成为因果的,并且在调节中去除了合成前瞻。结果证明,该模型对于这种修改是足够稳健的,并且通过非正式评估,发现质量不受这种修改的影响,或者仅受到非常小的影响。与LPCNet功能相结合,按流smGAn生成10毫秒的帧,并且不利用任何额外的合成前瞻,导致55毫秒的总延迟,这是唯一来自LPCNet功能的原始提取和编码数据包的大小。总延迟比LPCNet 1.6kbps原始65毫秒低10毫秒。
此外,如图3中所示,TADE残差块从原始模型稍微修改。据观察,通过使用单个TADE层并且应用相同的β和γ两次,而不是具有两个单独的TADE层,可以降低复杂度。此外,实例归一化有利地被通道归一化所取代。
最后,为了加快生成速度,对整个架构进行了重新设计。具体地,smGAN通过调适多频带合成(如[12,13]中所述)变得更快。生成器以fs/N Hz同时输出N个不同的频带样本,而不是以输出采样速率fs在时域中合成语音信号。通过设计,smGan逐帧生成频带,然后将其馈送到伪QMF合成滤波器组,以获得一帧合成语音。图4示出了用于生成以16kHz采样的宽带语音的10毫秒成帧的维度。
4.调节
下一节将引入用LPCNet编码参数调节按流smGAN的不同方法。为此,我们将引入不同的预调节网络和不同的策略。
4.1.梅尔频谱图实施(图8a)
在本节中,我们将引入一种将编码参数耦合到基于GAN的神经声码器的方法,该方法通过实施同质语音表示来调节按流smGAN。因为引入了预调节网络来将非常适合于有效编码的编码参数映射到非常适合于神经声码器调节的梅尔频谱图表示。梅尔频谱图已经示出能够传达足够的声学特征来生成高保真的语音信号。它的二维表示特别适合于卷积核。改变神经声码器调节或编码参数的性质将分别影响语音合成质量或编码效率。因此,我们提出了一种实用的方法来解决这个问题,即在波形生成之前,首先从编码参数中恢复真实的梅尔频谱图。神经声码器和预调节网络都被联合训练,并且对抗学习可以通过即使在高频下也生成精细结构的信号来使得梅尔频谱图以及因此生成的语音更加自然和真实。
该贡献允许将对语音传输有效的语音的非均匀参数表示映射到均匀表示,如梅尔频谱图,其非常适合于调节神经生成网络。
预调节网络由两个卷积层和两个全连接层组成。所有层都由泄漏RE-LU激活,发现这比在LPCNet帧速率网络中使用的激活更好。使用L1范数作为回归损失来训练预调节网络。
pitch_embedding
=nn.Embedding(354,61)
precond_conv1
=ConvLayer(80,128)
precond_conv2
=ConvLayer(128,128)
precond_dense=Dense(
weigth_norm(Linear(128,128)),
LeakyReLU,
weigth_norm(Linear(128,80)),
LeakyReLU)
precond_input
=concatenate(
mfcc,
norm_corr,pitch_embedding(pitch))
precond_output
=precond_conv1(precond_input)
precond_output
=precond_conv2(precond_output)
mel_spec
=precond_dense(precond_output)
multiband_waveforms
=generator_network(
conditioning=mel.spec,
prior=gaussian_noise(1,64))
out_frame=pqmf.synthesis(multiband_waveforms)
进行Mushra测试,将语音编码器与pre-cond Net和smGan进行比较,并且与LPCNet1.6kbps和常规编码方案进行比较。图5中呈现的结果示出了本方法相对于现有技术的优越性。
尽管先前引入的方法使用完全相同的信息提供了优于原始LPCNet1.6kbps的质量,但是仍然观察到问题,尤其是在某些生成的语音项的韵律方面。音高信息似乎没有很好地保留在生成的梅尔频谱图中。此外,通过设计和顺序优化两个网络,这种两步方法显然不是最佳的。
尽管先前引入的方法提供了比原始1.6kbps LPCNet更高的质量,并且使用了完全相同的信息,但是仍然观察到一些问题,尤其是在一些生成的语音项的韵律方面。音高信息似乎并不总是很好地保存在生成的梅尔频谱图中。此外,通过设计和顺序优化两个分离的网络,这种两步方法显然不是最佳的。
4.2.音高实施(图8b)
在前面的部分中,我们观察到梅尔频谱图作为中间表示的实施是可行的,但是在韵律方面仍然存在一些典型的问题,这被假设为来自音高信息。为了避免粗量化对基音滞后的影响,我们提出了另一种预调节网络,这次强制恢复原始音高信息。为此,预调节网络被训练以使预测的音高和对原始信号执行的估计之间的误差最小化,并且发现该估计接近地面实况。
pitch_embedding
=Embedding(512,128)
precond_conv1
=ConvLayer(147
,256,
LeakyReLU,
kernel_size=9)
precond_conv2
=ConvLayer(256
,256,
LeakyReLU,
kernel_size=9)
precond_dense=
p_embed
=pitch_embedding(pitch)*pitch_corr
precond_out=precond_conv1([mfcc,p_embed])
precond_out=precond_conv2(precond_out)
precond_out=precond_dense(precond_out)
multiband_waveforms
=generator_network(
conditioning=precond_out,prior=noise)
out_frame
=pqmf.synthesis(multiband_waveforms)
4.3.先验音高信息(例如图8c)
在本节中,我们引入一种通过编码参数调节smGan的新方法。编码参数被更直接地引入到生成网络中,而不是强制梅尔频谱图作为中间表示,因此减小了预调节网络的大小,而且在生成中更有效。因为音高信息被示出为是关键的,所以它与频谱包络信息分开处理。实际上,解码的MFCC和能量用于调节先验信号的生成和样式。在这种情况下,后者不是由随机噪声产生的,而是由音高信息和音高相关性的嵌入表示产生的。
pitch_embedding
=Embedding(354,128)
precond_conv
=ConvLayer(
18,80,
LeakyReLU,
kernel_size=9)
pitch_embed
=pitch_embedding(pitch)
*pitch_corr
multiband_waveforms
=generator_network(
conditioning=precond_conv(mfcc),
prior=pitch_embed)
out_frame
=pqmf.synthesis(multiband_waveforms)
5.评估
5.1.复杂度
我们在表2中报告了计算复杂度的估计。值得一提的是,由于smGAN能够在生成期间实现高度并行化,与其他列出的自回归模型不同,因此它可以受益于基于GPU等专用平台的更快生成。
模型 复杂度
按流SmGAN 4.56GMACS
LPCNet[7] 3GFLOPs
多频带WaveRNN[12] 5.5GFLOPS
表2:复杂度估计
5.2.实验设置
训练是在VCTK数据库上进行的。
5.3.主观测试
我们进行了MUSHRA收听测试,使用第4.3节中描述的技术评估以1.6kbps编码的LPCnet参数调节的按流smGan。该测试涉及2名专家听众,结果如图6中所示。
使用以4kbps的比特率使用的Speex语音编码器来生成锚。在这种比特率下,预期质量非常低,并且它仅提供窄带语音。考虑了三种神经声码器编码器:1.6kbps处的LPCnet、3kbps处的Lyra和1.6kbps处的我们的解决方案。作为基准,添加了两个经典但仍然现代的编码器:6.6kbps处的AMR-WB和5.9kbps处的3GPP EVS。值得一提的是,5.9kbps处的EVS采用可变比特率(VBR),而5.9kbps反映了活动帧的平均比特率。在长时间的非活动阶段,EVS进入非传输模式(DTX),仅周期性地以低至2.4kbps的比特率传输数据包。测试项由有限的暂停组成,并且DTX模式在该测试中起着非常小的作用。
LPCNet是在用于训练我们的模型的同一数据库上训练的,即VCTK。与原始工作的另一个不同是,我们没有通过首先在未量化的特征上训练然后在量化的特征上训练来应用域调适。由于VCTK是比原始作品中使用的NTT数据库更嘈杂、更多样化的数据库,因此我们已经删除了被发现影响最终质量的数据扩充。
6.讨论的结论
在这篇论文中,我们提出采用基于GAN的神经声码器,使用前馈生成器进行语音合成。通过使用完全相同的编码参数,使用自回归模型实现的质量显示优于现有的解决方案。为此目的,我们引入两个主要贡献:前馈生成的流式传输,这是具有低算法延迟的实时应用所需要的;以及使用比常规梅尔频谱图声学特征更紧凑的表示来适当调节模型。我们证明了基于GAN的神经声码器对于编码应用是非常有竞争力的,并且带来了在非常低的比特率下获得语音的新标志。
一些有利的技术效果
本发明对于语音编码的潜在应用和益处:
本示例通过仅传输调节神经声码器所需的参数来显著降低比特率。
基于轻量级神经声码器的解决方案适用于嵌入式系统,尤其适用于即将到来的配备GPU或神经处理单元(NPU)的(最终)用户设备(UE)。
方面
根据一个方面,以上示例针对一种音频解码器,该音频解码器被配置成从输入信号和目标数据生成音频信号的帧,该目标数据表示在目标帧周围开窗以再现的音频信号,该音频解码器包括:
+第一处理块,其被配置成接收从输入信号导出的第一数据并且输出第一输出数据,其中第一输出数据包括多个通道,以及
+第二处理块,其被配置成接收第一输出数据或从第一输出数据导出的数据作为第二数据,
其中对于第一输出数据的每个通道,第一处理块包括:
一组调节可学习层,其被配置成处理目标数据以获得调节特征参数;并且
其中第二处理块被配置成组合第一输出数据的多个通道以获得音频信号。
根据一个方面,以上示例针对一种音频解码器,该音频解码器被配置成从输入信号和目标数据生成音频信号的帧,该目标数据表示在目标帧周围开窗以再现的音频信号,该音频解码器包括:
+第一处理块,其被配置成接收从输入信号导出的第一数据并且输出第一输出数据,其中第一输出数据包括多个通道,以及
+第二处理块,其被配置成接收第一输出数据或从第一输出数据导出的数据作为第二数据,
其中对于第一输出数据的每个通道,第一处理块包括:
一组调节可学习层,其被配置成处理目标数据以获得调节特征参数;并目.
其中第二处理块被配置成组合第一输出数据的多个通道以获得音频信号。
根据一个方面,以上示例针对一种音频解码器,该音频解码器用于从输入信号和编码数据生成音频信号,该编码数据表示要生成的原始音频信号的信息,该音频解码器包括:
+第一处理块,其被配置成接收从输入信号导出的第一数据并且输出第一输出数据,其中第一输出数据包括多个通道,以及
+第二处理块,其被配置成接收第一输出数据或从第一输出数据导出的数据作为第二数据,
其中对于第一输出数据的每个通道,第一处理块包括:
一组预调节的可学习层,其被配置成处理编码数据以获得目标数据,
一组调节可学习层,其被配置成处理目标数据以获得调节特征参数;并且
其中第二处理块被配置成组合第一输出数据的多个通道以获得音频信号。
考虑因素
在本文件中,我们提供了所谓的流式StyleMelGAN(SStyleMelGAN)的示例。
StyleMelGAN[10]是轻量级的神经声码器,允许以低计算复杂度合成高保真语音。它采用时间自适应非归一化(TADE),TADE通过实例归一化和逐元素调制,用目标语音的声学特征(例如梅尔频谱图)来设计低维噪声向量的上采样。更准确地说,它自适应地从声学特征中学习调制参数γ(伽玛)和β(贝塔),然后应用变换
γ⊙c+β, (1)
其中c是输入激活的归一化内容。为了进行有效的训练,多个随机窗口判别器对由一组PQMF滤波器组分析的语音信号进行对抗评估,其中生成器通过多分辨率STFT损失进行正则化。
[10]的StyleMelGAN中的卷积是非因果的,在输入张量的滑动窗口上作为移动平均运行。由于模型的深层次结构,这导致了大量的算法延迟。在本文件中,我们描述了对该基线模型的主要修改,这些修改使得能够以非常低的延迟产生生成不同声学特征用于调节。
此处,我们描述了一种通过编码参数来调节StyleMelGAN的新方法。代替将梅尔频谱图作为中间表示来实施,编码参数可以更直接地引入到生成网络(例如770、40、50)中,从而减小预调节网络(例如710)的大小,但是在生成中也更有效。音高信息(例如,音高数据)3b输出对于高质量合成是关键的,因此其可以与频谱包络信息(或滤波数据)3a分开处理。更准确地说,解码的MFCC和能量可以用于调节先验信号(例如14、15)的生成和样式化,在这种情况下,该先验信号(在“第一选项”中)不一定是从随机噪声(如在“第二选项”中)创建的,而是从音高信息的学习嵌入表示和/或它们的存储器管理创建的。
图4可以理解为描绘了用于生成以16kHz采样的宽带语音的10毫秒成帧的前向传递的示例。
训练程序和超参数与[10]中描述的相似。我们使用一个NVIDIA Tesla V100 GPU在VCTK语料库[17]的一个子集上以16kbit/s的速度训练SSMGAN。如第2节所述,按照[6]中的方法计算调节特征。使用Adam优化器[18]对生成器进行200k步的预训练,其中学习率lrg=10-4,β={0.5,0.9}。当开始对抗训练时,我们使用[5]中描述的多尺度判别器设置lrg,经由Adam优化器训练,其中lrd=2*10-4,而β相同。批量大小为32个,并且对于批量中的每个样本,我们提取长度为1秒的片段。对抗训练持续大约1.5M步。
锚是使用以4kbit/s的比特率部署的Speex语音编码器生成的。在该比特率下,预期质量非常低,并且它仅提供窄带语音。考虑了两种最先进的神经声码器编码器,1.6kbit/s处的LPC-net、3kbit/s处的Lyra,以及6.6kbit/s处的AMR-WB和5.9kbit/s处的3GPP EVS这两种经典但仍然现代的经典编码器。值得一提的是,5.9kbit/s处的EVS以可变比特率(VBR)工作,并且5.9kbit/s反映了活动帧的平均比特率。在长时间的非活动阶段,EVS切换到非传输模式(DTX),仅以低至2.4kbit/s的比特率传输周期性的数据包。测试项由有限的暂停组成,并且DTX模式在该测试中起着非常小的作用。
LPCNet是在用于训练我们的模型的同一数据库上训练的,即VCTK。与原始工作的另一个不同是,我们没有通过首先在未量化特征上训练然后微调量化特征来应用域调适。由于VCTK是比原始作品中使用的NTT数据库更嘈杂、更多样化的数据库,因此我们已经删除了被发现影响最终质量的数据扩充。
对SSMGAN的计算复杂度的一个重要贡献来自于TADEResBlock50(例如50a-50h、42)和上采样层(参见上文)中的卷积。如果∧表示潜在维度(例如,目标数据15或输入信号14的通道数量),K表示卷积核的长度,并且φ表示预调节输入特征(例如,取自比特流的滤波数据)的维度,那么(忽略激活和低阶项)对TADEResBlock的评估对于每个输出样本需要(φ+5∧)∧K次乘法累加操作(MAC)。此外,具有核大小K和潜在维度∧的上采样层需要∧2K个MAC。在∧=64、K=9、φ=80并且TADEResBlock输出采样速率为10Hz、200Hz、500Hz、1000Hz、2000Hz、4000Hz、4000Hz、4000Hz和4000Hz的情况下,累加为
(80+5·64)·64·9·(100+200+500+1000+2000+4·4000)
+642.9.(200+500+1000+2000+4000)MACS/sec
≈4.8GMACS/sec
在提供融合乘法累加(FMA)指令的平台上,这转化为4.8GFLoPS/s。表2给出了与用于神经语音编码的其他神经声码器的比较。
应注意,本发明的SSMGAN的卷积结构允许高效的并行执行,这使其在GPU上具有超越自回归模型的决定性优势。此外,SSMGAN在桌面CPU上以X倍实时运行。它还应该在普通智能手机CPU上实时运行,并且只消耗用于边缘设备的现代人工智能加速器计算能力的一小部分。
一些假设(例如对于TTS应用)
对于一些应用(例如TTS应用),上面的一些假设可以放宽,并且可以进行一些概括。
在一些示例中(例如,对于TTS应用,也参见下文,但是对于其他应用),预调节层710可以被假设为可学习的、确定性的、或者部分可学习且部分确定性的(例如,具有至少一个可学习的子层或子块以及至少一个确定性的子层或子块)。
在一些示例中(例如,在TTS应用中,参见下文),目标数据12(其通常被称为声学特征,诸如梅尔频谱图、对数频谱图、MFCC),也可以是文本特征和/或语言特征。
这同样适用于比特流3,比特流3可以如上所述从文本中导出,并且可以包括文本特征、声学特征或语言特征(也参见下文)。
因此,可学习层可以(确定性地或可学习地)将比特流3从比特流格式转换到目标数据格式的目标数据上。
首先,我们可以认为解码器10(生成器)被细分为:
1)用于文本分析和/或音频合成的块1110(图11a和图11b),其最终是准备要输出到预调节层(例如710)的输入序列(比特流3)。
2)波形合成块1120(图11a和图11b),用于生成音频信号16,例如以音频波的形式。在这些情况下,图4可以被认为示出了波形合成块1120(并且图3和图10也可以被认为示出了波形合成块1120的一部分)。
在一些情况下,块1110可以不是解码器10(生成器)的一部分(块1110可以不存在或者可以在外部设备中)。参考图7和图7b,元件71、72、73、702、77和45可以被认为是波形块1120的一部分,而至少一个预调节层710可以被认为是文本分析块1110的一部分。参考图7a,元素71、72、73、702、77、45和710c可以被认为是块1120的一部分,而文本分析块1110可以在生成器10的外部(或者它可以在内部)。
当涉及TTS应用时,图1、图7至图7b、图8a至图8c的比特流3可以是以下至少一个:
·至少一个文本特征(例如,字符、单词等),
·至少一个语言特征(例如,例如从文本中获得的音素、单词韵律、语调、短语中断和填充停顿中的至少一个),以及
·至少一个声学特征(例如,例如从文本中获得的对数频谱图、MFCC和梅尔频谱图中的至少一个)
至少一个预调节(可学习的或确定性的)层710的输出(目标数据12)可以是以下至少一个:
·至少一个文本特征(例如,字符、单词等),
·至少一个语言特征(例如,例如从文本中获得的音素、单词韵律、语调、短语中断和填充停顿中的至少一个),以及
·至少一个声学特征(例如,例如从文本中获得对数频谱图、MFCC和梅尔频谱图中的至少一个)
图12示出了例如在TTS应用中实例化至少一个(可学习的或确定性的)层710的若干种可能性的概要表:
A)在情况A中,输入到至少一个(可学习的或确定性的)层710的比特流3是纯文本,并且来自至少一个(可学习的或确定性的)层710的输出(目标数据12)是文本的字符或单词(也是文本)中的至少一个。在情况A中,至少一个(可学习的或确定性的)层710可以在比特流3的元素中执行文本(比特流3)的选择。随后,目标数据12(以比特流3的文本元素的形式)将调节对输入信号14的处理,以获得输出信号16(例如,以声波的形式)。
B)在情况B中,输入到至少一个预调节(可学习的或确定性的)层710的比特流3是纯文本,并且来自至少一个(可学习的或确定性的)层710的输出(目标数据12)包括至少一个语言特征,例如从比特流3获得的音素、单词韵律、语调、短语中断和填充停顿等中的语言特征。在情况B中,至少一个预调节(可学习的或确定性的)层710可以对文本112的元素执行语言分析,从而获得音素、单词韵律、语调、短语中断和填充停顿等中的至少一个中的至少一个语言特征。随后,目标数据12(以音素、单词韵律、语调、短语中断和填充停顿等中的至少一种形式)将调节对输入信号14的处理,以获得输出信号16(声波)。
C)在情况C中,输入到至少一个预调节(可学习的或确定性的)层710的比特流3是纯文本,并且来自至少一个(可学习的或确定性的)层710的输出(目标数据12)包括至少一个声学特征,例如从文本获得的对数频谱图或MFCC以及梅尔频谱图中的一个声学特征。在情况C中,至少一个预调节(可学习的或确定性的)层710对比特流的元素执行声学分析,从而获得从比特流3获得的对数频谱图或MFCC和梅尔频谱图中的至少一个声学特征。随后,目标数据12(例如,以从文本获得的对数频谱图、MFCC、梅尔频谱图等声学特征中的至少一种的形式)将调节对输入信号14的处理,以获得输出信号16(声波)。
D)在情况D中,输入到至少一个预调节(可学习的或确定性的)层710的输入序列是语言特征(例如,音素、单词韵律、语调、短语中断和填充停顿中的至少一个),并且输出(目标数据12)也是经处理的语言特征(例如,音素、单词韵律、语调、短语中断和填充停顿中的至少一个)。随后,目标数据12(以音素、单词韵律、语调、短语中断和填充停顿等中的至少一种形式)将调节对输入信号14的处理,以获得输出信号16(声波)。
E)在情况E中,输入到至少一个预调节(可学习的或确定性的)层710、710b、710c的比特流3是语言特征(例如,音素、单词韵律、语调、短语中断和填充停顿中的至少一个),并且来自至少一个(可学习的或确定性的)层710、710b、710c的输出(目标数据12)包括至少一个声学特征,例如从文本获得的对数频谱图或MFCC和梅尔频谱图中的一个声学特征。在情况E中,至少一个(可学习的或确定性的)层710、710b、710c对文本112的元素执行声学分析,以获得对数频谱图或MFCC和梅尔频谱图中的至少一个声学特征。随后,目标数据12(例如,以从文本获得的对数频谱图、MFCC、梅尔频谱图等声学特征中的至少一种的形式)将调节对输入信号14的处理,以获得输出信号16(声波)。
F)在情况F中,输入到至少一个预调节(可学习的或确定性的)层710、710b、710c的比特流3是声学特征的形式(例如,是从文本获得的对数频谱图、MFCC、梅尔频谱图等声学特征中的至少一种形式),并且输出(目标数据12)是经处理的声学特征的形式(例如,是从文本获得的对数频谱图、MFCC、梅尔频谱图等声学特征中的至少一种形式)。随后,目标数据12(例如,以经处理的声学特征的形式,如从文本获得的对数频谱图、MFCC、梅尔频谱图等声学特征中的至少一个)将调节对输入信号14的处理,以获得输出信号16(声波)。
替代图12中列出的用于例如在TTS应用中实例化至少一个(可学习的或确定性的)层710的可能性,目标数据性质可以被学习并且是语音或文本的隐藏表示,并且不能被容易地分类或表征。然后目标数据12是潜在特征形式,并且被称为潜在表示,其非常适合于调节生成器网络770。在这种情况下,无论比特流的性质如何(声学、语言或文本特征),预调节网络的输出可以是由潜在特征构成的潜在表示,即语音/文本的隐藏/学习表示。
图11a和图7a示出了比特流3(包括语言特征)从外部文本分析块1110输入到波形合成块1120,并且比特流3由至少一个(可学习的或确定性的)层710c处理的示例。应注意,文本分析块1110可以是生成器10的一部分,或者可以在生成器10的外部。在一些示例中,文本分析块1110可以是确定性的,并且至少一个预调节层710c可以是可学习的,但是可以提供不同的配置。由于比特流3包括语言特征并且目标数据12包括声学特征,所以图11a和图7a属于图12的情况E。
图11b和图7b示出了文本分析块1110在生成器10内部,并且由至少一个预调节(可学习的或确定性的)层710b来具体实施的示例。在这种情况下,至少一个预调节(可学习的或确定性的)层710b可以仅执行文本分析,并且从比特流3(其以文本112的形式)提供声学特征形式的目标数据12。因此,在图11b和图7b中,我们处于图10的情况C。
一般而言,至少一个(可学习的或确定性的)预调节层710b在对目标数据12的处理中越来越多地加工文本(或从文本获得的其他输入序列)形式的比特流3,该目标数据比输入到至少一个预调节(可学习的或确定性的)层710b的比特流3更精细。至少一个(可学习的或确定性的)预调节层710b也可以使用原文中可能没有的约束条件(例如,注意力功能、男人/女人的声音、口音、情绪表征等)。这些约束条件通常可以由用户提供。
应注意,在以上和以下情况下,块1110和/或至少一个(可学习的或确定性的)预调节层710、710c、710b可以使用统计模型,例如执行文本分析和/或使用声学模型。另外或备选地,块1110和/或至少一个(可学习的或确定性的)预调节层710、710c、710b可以使用可学习的模型,例如执行文本分析和/或使用声学模型。可学习的模型可以基于例如神经网络、马尔可夫链等。此外或在另一备选方案中,块1110和/或至少一个(可学习的或确定性的)预调节层710、710c、710b可以利用执行文本分析和/或基于声学模型的基于规则的算法。
在一些示例中,块1110和/或至少一个预调节层710、710c、710b可以确定性地导出目标数据。因此,可能一些子块是可学习的,而其他子块是确定性的。
块1110和/或至少一个预调节层710、710c、710b可以被称为“文本分析块”(例如,当将文本转换到至少一个语言特征上时)或“音频合成块”(例如,当将文本或至少一个语言特征转换到至少一个声学特征上时,诸如频谱图)。总之,根据实施例,认为目标数据12可以是文本、语言特征或声学特征的形式。
应注意,图12示出了一些转换的组合通常是不期望的。这是因为没有设想从精细特征到简单特征的转换(例如,从语言特征到文本或从声学特征到文本或语言特征)。
TTS应用
图7a示出了用于TTS应用的生成器10c(解码器)的示例,其中比特流3是通过文本分析(音频合成)1110和/或至少一个预调节层710、710c、710b从文本112获得的,例如以编码形式从远程发射机接收或者存储在存储装置中。所有随后的操作可以被理解为由允许获得输出音频信号16的波形合成块1120执行。基本上,上面执行的所有操作(例如,通过图7所示的实现方式)可以具体实施波形合成块1120。
因此,生成器10c(解码器)可以包括:
-至少一个预调节层710、710c、710b,以及
-波形合成模块1120(声码器)
-(在一些情况下,还有块1110,在其他情况下,块1110可以在外部设备中或者甚至不存在)
文本到语音(TTS)旨在在给定文本112的情况下合成可理解且听起来自然的语音16。它可能在工业中有广泛的应用,特别是在机器与人的交流中。
本发明的音频生成器10包括不同的组件,其中声码器1120位于最后一级,并且主要包括用于转换音频波形中的声学特征的模块。
具体地,在块1110处,可以分析文本112,并且可以例如通过文本分析模块从文本112中提取语言特征。文本分析可以包括例如多个任务,如文本归一化、分词、韵律预测和字形到音素。这些语言特征可以是或包括在比特流3中。
然后,这些语言特征(比特流3)可以例如通过声学模型被转换成声学特征,如MFCC、基频、梅尔频谱图或者它们的组合。该操作可以由预调节层710c执行,该预调节层可以是确定性的或可学习的。如果预调节层710c是可学习层,则在一些示例中,它可以起到图7的预调节层710的作用。如果预调节层710是确定性的,则它不等同于图7的预调节层710。
应注意,随着DNN的引入,这种经典的流水线可以被端到端处理所取代。例如,可以直接根据语言特征来调节神经声码器,或者声学模型可以绕过测试分析阶段直接处理字符。例如,如Tacotron 1和2之类的一些端到端模型被提出来简化文本分析模块,并且直接将字符/音素序列作为输入,同时输出声学特征梅尔频谱图。
当前解决方案可以被用作TTS系统(即,包括块1110和1120两者),其中在一些示例中,目标数据12可以包括从文本112导出的信息流或语音表示。该表示可以是例如从文本112中导出的字符或音素,这意味着文本分析块1110的通常输入。在这种情况下,预调节的可学习层可以用于块1110,用于提取声学特征或调节适合于神经声码器(例如,块1120)的特征(比特流3)。该预调节层1110通常利用深度神经网络(DNN),如编码器-注意力-解码器架构,以将字符或音素直接映射到声学特征。备选地,表示(目标数据)12可以是或包括语言特征,这意味着与像韵律、语调、停顿等信息相关联的音素。在这种情况下,预调节的可学习层1110可以是声学模型,该声学模型基于诸如隐马尔可夫模型(HMM)、深度神经网络(DNN)或递归神经网络(RNN)之类的统计模型将语言特征映射到声学特征。最后,目标数据12可以直接包括从文本112导出的声学特征,其可以在可学习的或确定性的预调节层1110之后用作调节特征。在极端的情况下,目标数据12中的声学特征可以直接用作调节特征,并且绕过预调节层。
音频解码器(例如10c)可以至少从自比特流3导出的时间包络信息或时域结构中获得输入信号14,该时间包络信息或时域结构又是由文本分析块1110从文本112中获得的。
图11a和图7a的音频合成块1110(文本分析块)在一些示例中可以是确定性的,但是在其他情况下可以通过至少一个可学习层来获得。
一般而言,比特流3可以包括声学特征,如从文本112获得的对数频谱图、或频谱图、或MFCC、或梅尔频谱图。
备选地,比特流3可以包括语言特征,如从文本中获得的音素、单词韵律、语调、短语中断或填充停顿。
比特流3可以使用统计模型、可学习模型或基于规则的算法中的至少一个从文本中导出,这些可以包括文本分析和/或声学模型。
因此,一般而言,从文本112输出目标数据12的音频合成块1110(从而从文本112中导出目标数据12)可以是确定性块或可学习块。
一般而言,目标数据12可以具有多个通道,而文本112(从其导出目标数据12)可以具有一个单通道。
图11a示出了生成器10c的示例(其可以是图7a的生成器的示例),其中目标数据12包括至少一个声学特征,如从文本112获得的对数频谱图、或频谱图、或MFCC或梅尔频谱图。此处,块1110可以包括可以提供比特流3的文本分析块1112(其可以是确定性的或可学习的)。比特流3可以包括至少一个语言特征,如从文本112获得的音素、单词韵律、语调、短语中断或填充停顿。预调节层710c(例如,使用声学模型)可以生成目标数据12,例如作为声学特征中的至少一个,如通过块1110从文本112获得的对数频谱图、或频谱图、或MFCC或梅尔频谱图。此后,波形合成块1120(其可以是上面讨论的任何波形合成块,并且可以包括块702、71-73、45中的至少一个)可以用于生成输出音频信号16。如上所述,块1120可以与块71-73和77一起是块50(例如40)的一部分。因此,目标数据12可以被输入到一组调节可学习层71-73中,以获得γ(伽玛)和β(贝塔)(74、75),例如用于样式元素77。
图11b示出了生成器10b的示例(其可以是图7b的生成器10b的示例),其中比特流3是文本112或文本的一部分。目标数据可以是例如声学特征(例如频谱图,诸如梅尔频谱图)。波形合成块1120(例如,声码器1120)可以输出音频信号16。波形合成块1120可以是上面讨论的图1至图8中描述的那些中的任何一个,但是特别类似于图7b。在这种情况下,例如,目标数据12可以被直接输入到一组调节可学习层71-73中,以获得γ(伽玛)和β(贝塔)(74、75),例如用于样式元素77。
一般而言,上述任何音频生成器(例如10、10b、10c)、特定的任何文本分析块1110(例如图8或图9a至图9c中的任何一个)可以使用统计模型、可学习模型或基于规则的算法中的至少一个从文本中导出目标数据12,例如包括文本分析和/或声学模型。
在一些示例中,目标数据12可以由至少一个预调节层710、1710b、710c确定性地获得。在其他示例中,目标数据12可以由至少一个预调节层710、1710b、710c非确定性地获得;例如,块1110和/或1120可以是可学习层或多个可学习层。
在一些示例中,块1110和1120中的至少一个可以包括一个可学习层和一个确定性层。
应注意,图8a至图8c的示例可以用于TTS应用。音高数据3b(例如,指示音频信号的音高滞后的至少一个参数3b)或其他数据3b和滤波数据3a(例如,MFCC、频谱包络数据)可以从比特流3中获得,例如,当比特流3是声学特征的形式时(例如,图10中的情况F)。这也适用于图7、图7a、图7b的“第一选项”,使得输入到第一数据供应器702的输入信号14(例如,为了获得第一数据(潜在的,先验的)15)可以从音高数据3b获得,而滤波数据(频谱包络)3a可以用于(例如,在逐帧分支中)输入到预处理可学习或确定性层710上。
另外的示例
通常,示例可以被实现为具有程序指令的计算机程序产品,当计算机程序产品在计算机上运行时,程序指令可操作用于执行方法中的一种。程序指令可以例如存储在机器可读介质上。
其他示例包括存储在机器可读载体上的用于执行本文描述的方法中的一种的计算机程序。换句话说,方法的示例因此是具有程序指令的计算机程序,当该计算机程序在计算机上运行时,该程序指令用于执行本文描述的方法中的一种。
因此,该方法的另一个示例是数据载体介质(或数字存储介质,或计算机可读介质),其包括记录在其上的用于执行本文描述的方法中的一种的计算机程序。数据载体介质、数字存储介质或记录介质是有形的和/或非瞬时的,而不是无形的和瞬时的信号。
因此,该方法的另一个示例是表示用于执行本文描述的方法中的一种的计算机程序的数据流或信号序列。数据流或信号序列可以例如经由数据通信连接,例如经由互联网传输。
另一个示例包括执行本文描述的方法中的一种的处理装置,例如计算机或可编程逻辑器件。
另一个示例包括计算机,其上安装有用于执行本文描述的方法中的一种的计算机程序。
另一个示例包括向接收器传送(例如,电子地或光学地)用于执行本文描述的方法中的一种的计算机程序的装置或系统。例如,接收器可以是计算机、移动设备、存储设备等。该装置或系统可以例如包括用于将计算机程序传送到接收器的文件服务器。
在一些示例中,可编程逻辑器件(例如,现场可编程门阵列)可以用于执行本文描述的方法的一些或全部功能。在一些示例中,现场可编程门阵列可以与微处理器协作,以便执行本文描述的方法中的一种。通常,这些方法可以由任何适当的硬件装置来执行。
上述示例仅仅是对上述原理的说明。应当理解,本文描述的布置和细节的修改和变化将是显而易见的。因此,其意图是由权利要求的范围来限制,而不是由通过描述和解释本文的示例而呈现的具体细节来限制。
即使出现在不同的附图中,在下面的描述中,相同或等同的元件或具有相同或等同功能的元件由相同或等同的附图标记表示。
参考资料
[1]A.van den oord、S.Dieleman、H.Zen、K.Simonyan等人的《WaveNet:原始音频的生成模型》(WaveNet:A Generative Model for Raw Audio),arXiv:1609.03499,2016年。
[2]R.Prenger、R.Valle和B.Catanzaro的《Waveglow:基于流的语音合成生成网络》(Waveglow:A Flow-based Generative Network for Speech Synthesis),载于IEEE声学、语音和信号处理国际会议(ICASSP),2019年,第3617-3621页。
[3]N.Kalchbrenner、E.Elsen、K.Simonyan、S.Noury等人的《高效神经音频合成》(Ef-ficient neural audio synthesis),arXiv:1802.08435,2018年。
[4]J.Valin和J.Skoglund的《LPCNET:通过线性预测改善神经语音合成》(LPCNET:Improving Neural Speech Synthesis through Linear Prediction),载于IEEE声学、语音和信号处理国际会议(ICASSP),2019年,第5891-5895页。
[5]K.Kumar、R.Kumar,de T.Boissiere、L.Gestin等的《MelGAN:条件波形合成的生成性对抗网络》(MelGAN:Generative Adversarial Networks for ConditionalWaveform Synthesis),载于《神经科学进展》第32期,2019年,第14 910-14921页。
[6]W.B.Kleijn、F.S.C.Lim、A.Luebs、J.Skoglund、F.Stimberg、Q.Wang和T.C.Walters的《基于Wavenet的低速率语音编码》(Wavenet based low rate speechcoding),载于2018年IEEE声学、语音和信号处理国际会议(ICASSP),2018年,第676-680页。
[7]J.-M.Valin和J.Skoglund的《使用lpcnet的1.6kb/s实时宽带神经声码器》(Areal-time wideband neural vocoder at 1.6kb/s using lpcnet),2019年。
[8]J.Klejsa、P.Hedelin、C.Zhou、R.Fejgin和L.Villemoes的《使用样本rnn的高质量语音编码》(High-quality speech coding with sample rnn),载于ICASSP 2019-2019IEEE声学、语音和信号处理国际会议(ICASSP),2019年,第7155-7159页。
[9]W B.Kleijn、A.Storus、M.Chinen、T.Denton、F.S.C.Lim、A.Luebs、J.Skoglund和H.Yeh的《预测方差正则化的生成式语音编码》(enerative speech coding withpredictive variance regularization),2021年。
[10]A.Mustafa、N.Pia和G.Fuchs的《Stylemelgan:具有时间自适应归一化的高效高保真对抗声码器》(Stylemelgan:An efficient high-fidelity adversarial Vocoderwith temporal adaptiVe normalization),2021年。
[11]O.Rybakov、N.Kononenko、N.Subrahmanya、M.Visontai和S.Laurenzo的《移动设备上的流式传输关键词定位》(Streaming keyword spotting on mobilede-vices),2020年。
[12]C.Yu、H.Lu、N.Hu、M.Yu、C.Weng、K.Xu、P.Liu、D.Tuo、S.Kang、G.Lei、D.Su和D.Yu的《Durian:多模态合成的持续时间信息注意网络》(Durian:Duration in-formedattention network for mulltimodal synthesis),2019年。
[13]G.Yang、S.Yang,、K.Liu、P.Fang、W.Chen和L.Xie的《多频带melgan:用于高质量文本到语音的更快波形生成》(Multi-band melgan:Faster waveform generation forhigh-quality text-to-speech),2020年。

Claims (198)

1.一种音频解码器(10),其被配置成从比特流(3)生成音频信号(16),所述比特流(3)表示所述音频信号(16),所述音频信号被细分为帧序列,所述音频解码器(10)包括:
第一数据供应器(702),其被配置成对于给定帧,提供从来自外部或内部源的输入信号(14)或从所述比特流(3)导出的第一数据(15),其中所述第一数据(15)具有多个通道;
第一处理块(40、50、50a-50h),其被配置成对于给定帧,接收所述第一数据(15)并且输出所述给定帧中的第一输出数据(69),其中所述第一输出数据(69)包括多个通道(47),以及
第二处理块(45),其被配置成对于所述给定帧,接收所述第一输出数据(69)或从所述第一输出数据(69)导出的数据作为第二数据,
其中所述第一处理块(50)包括:
至少一个预调节可学习层(710),其被配置成接收所述比特流(3),并且对于所述给定帧,利用针对所述给定帧的多个通道和多个样本输出表示所述给定帧中的所述音频信号(16)的目标数据(12);
至少一个调节可学习层(71、72、73),其被配置成对于所述给定帧,处理所述目标数据(12)以获得所述给定帧的调节特征参数(74、75);以及
样式元素(77),其被配置成将所述调节特征参数(74、75)应用于所述第一数据(15、59a)或归一化的第一数据(59、76’);并且
其中所述第二处理块(45)被配置成组合所述第二数据(69)的所述多个通道(47)以获得所述音频信号(16)。
2.根据权利要求1所述的解码器,其中所述第一处理块(50)被配置成将所述第一数据(15)从所述给定帧的样本数量上采样到所述给定帧的大于所述第一样本数量的第二样本数量。
3.根据权利要求1或2所述的解码器,其中所述第二处理块(46)被配置成将从所述第一处理块(40)获得的所述第二数据(69)从所述给定帧的第二样本数量上采样到所述给定帧的大于所述第二样本数量的第三样本数量。
4.根据前述权利要求中任一项所述的解码器,其被配置成将所述第一数据(15)的通道数量从第一通道数量减少到所述第一输出数据(69)的第二通道数量,所述第二通道数量低于所述第一通道数量。
5.根据前述权利要求中任一项所述的解码器,其中所述第二处理块(45)被配置成将从所述第一处理块(40)获得的所述第一输出数据(69)的所述通道数量从第二通道数量减少到所述音频信号(16)的第三通道数量,其中所述第三通道数量低于所述第二通道数量。
6.根据权利要求5所述的解码器,其中所述音频信号(16)是单声道音频信号。
7.根据前述权利要求中任一项所述的音频解码器,其被配置成从所述比特流(3、3b)获得所述输入信号(14)。
8.根据前述权利要求中任一项所述的音频解码器,其被配置成从与所述给定帧相关联的所述比特流(3)的至少一个参数(3b)中获得所述输入信号(14)。
9.根据前述权利要求中任一项所述的音频解码器,其被配置成从指示所述给定帧中的所述音频信号(16)的音高滞后或其他音高数据的至少一个参数(3b)获得所述输入信号(14)。
10.根据权利要求9所述的音频解码器,其被配置成通过将所述音高滞后与音高相关性相乘来获得所述输入信号(14)。
11.根据权利要求1至6中任一项所述的音频解码器,其被配置成从噪声(14)中获得所述输入信号。
12.根据前述权利要求中任一项所述的音频解码器,其中所述至少一个预调节可学习层(710)被配置成提供所述目标数据(12)作为频谱图。
13.根据前述权利要求中任一项所述的音频解码器,其中所述至少一个预调节可学习层(710)被配置成提供所述目标数据(12)作为梅尔频谱图。
14.根据前述权利要求中任一项所述的音频解码器,其中所述至少一个预调节可学习层(710)被配置成从编码在所述比特流(3)中的倒谱数据中导出所述目标数据(12)。
15.根据前述权利要求中任一项所述的音频解码器,其中所述至少个预调节可学习层(710)被配置成至少从编码在与所述给定帧相关联的所述比特流(3)中的滤波数据(3a)中导出所述目标数据(12)。
16.根据权利要求15所述的音频解码器,其中所述滤波数据(3a)包括编码在与所述给定帧相关联的所述比特流(3)中的频谱包络数据。
17.根据前述权利要求中任一项所述的音频解码器,其中所述至少一个预调节可学习层(710)被配置成从编码在所述比特流(3)中的激励数据、和谐性数据、周期性数据、长期预测数据中的至少一个中导出所述目标数据(12)。
18.根据前述权利要求中任一项所述的音频解码器,其中所述至少一个预调节可学习层(710)被配置成至少从编码在所述比特流(3)中的音高数据(3b)中导出所述目标数据(12)。
19.根据权利要求18所述的音频解码器,其中所述至少一个预调节可学习层(710)被配置成至少通过将所述音高滞后与所述音高相关性相乘(812)来导出所述目标数据(12、813)。
20.根据权利要求19所述的音频解码器,其中所述至少一个预调节可学习层(710)被配置成至少通过对所述音高滞后与所述音高相关性的乘积和频谱包络数据进行卷积来导出所述目标数据(12)。
21.根据权利要求1至18中任一项所述的音频解码器,其中所述至少一个预调节可学习层(710)被配置成通过至少对所述音高滞后、所述音高相关性和频谱包络数据进行卷积来导出所述目标数据(12)。
22.根据前述权利要求中任一项所述的音频解码器,其中所述至少一个预调节可学习层(710)被配置成根据从所述比特流(3)获得的LPC系数(3a、3b)、基于频谱的系数和/或基于倒谱的系数导出所述目标数据(12)。
23.根据前述权利要求中任一项所述的音频解码器,其中所述目标数据(12)是卷积映射,并且所述至少一个预调节可学习层(710)被配置成对所述卷积映射执行卷积。
24.根据权利要求23所述的音频解码器,其中所述目标数据(12)包括所述给定帧中的所述音频信号(16)的倒谱数据(3a)。
25.根据前述权利要求中任一项所述的音频解码器,其中至少从所述给定帧中的所述音频信号(16)的相关性数据中获得所述输入信号。
26.根据前述权利要求中任一项所述的音频解码器,其中从所述给定帧中的所述音频信号(16)的音高数据中获得所述目标数据。
27.根据前述权利要求中任一项所述的音频解码器,其中所述目标数据包括通过将所述给定帧中的所述音频信号(16)的音高数据与所述给定帧中的所述音频信号的相关性数据相乘而获得的相乘值。
28.根据前述权利要求中任一项所述的音频解码器,其中所述至少一个预调节可学习层(710)被配置成对通过并置从所述比特流或其处理版本中获得的至少一个倒谱数据而获得的比特流模型执行至少一次卷积。
29.根据前述权利要求中任一项所述的音频解码器,其中所述至少一个预调节可学习层(710)被配置成对通过并置从所述比特流中获得的至少一个参数而获得的比特流模型执行至少一次卷积。
30.根据前述权利要求中任一项所述的音频解码器,其中所述至少一个预调节可学习层(710)被配置成对从所述比特流(3)或其处理版本获得的卷积映射(712、716、720、724、816、820、824、813、856)执行至少一次卷积。
31.根据权利要求30所述的音频解码器,其中通过并置与后续帧相关联的参数来获得所述卷积映射。
32.根据权利要求28至31中任一项所述的音频解码器,其中由所述至少一个预调节可学习层(710)执行的所述卷积中的至少一个由预调节激活函数激活。
33.根据权利要求32所述的解码器,其中所述预调节激活函数是整流线性单元ReLu函数。
34.根据权利要求32或33所述的解码器,其中所述预调节激活函数是泄漏整流线性单元泄漏ReLu函数。
35.根据权利要求28至31中任一项所述的音频解码器,其中所述至少一次卷积是非条件卷积。
36.根据权利要求28至31中任一项所述的音频解码器,其中所述至少一次卷积是神经网络的一部分。
37.根据前述权利要求中任一项所述的音频解码器,还包括队列,用于在所述第一处理块和/或所述第二处理块处理前一帧时,存储随后将由所述第一处理块和/或所述第二处理块处理的帧。
38.根据前述权利要求中任一项所述的音频解码器,其中所述第一数据供应器被配置成对通过并置一组编码参数而获得的比特流模型执行卷积,所述一组编码参数是从与所述比特流的前一帧紧邻的所述比特流的所述给定帧获得的。
39.根据前述权利要求中任一项所述的音频解码器,其中所述一组调节可学习层包括一个或至少两个卷积层(71-73)。
40.根据前述权利要求中任一项所述的音频解码器,其中第一卷积层(71-73)被配置成使用第一激活函数对所述目标数据(12)或上采样的目标数据进行卷积,以获得第一卷积数据(71’)。
41.根据前述权利要求中任一项所述的音频解码器,其中所述一组调节可学习层(71-73)和所述样式元素(77)是神经网络的残差块(50、50a-50h)中的权重层的一部分,所述神经网络包括一个或多个残差块(50、50a-50h)。
42.根据前述权利要求中任一项所述的音频解码器,其中所述音频解码器(10)还包括被配置成归一化所述第一数据(59a、15)的归一化元件(76)。
43.根据前述权利要求中任一项所述的音频解码器,其中所述音频解码器(10)还包括被配置成在通道维度上归一化所述第一数据(59a、15)的归一化元件(76)。
44.根据前述权利要求中任一项所述的音频解码器,其中所述音频信号(16)是语音音频信号。
45.根据前述权利要求中任一项所述的音频解码器,其中以因子2的幂对所述目标数据(12)进行上采样。
46.根据权利要求45所述的音频解码器,其中通过非线性插值对所述目标数据(12)进行上采样(70)。
47.根据前述权利要求中任一项所述的音频解码器,其中所述第一处理块(40、50、50a-50k)还包括:
另一组可学习层(62a、62b),其被配置成使用第二激活函数(63b、64b)处理从所述第一数据(15、59、59a、59b)导出的数据,
其中所述第二激活函数(63b、64b)是门控激活函数。
48.根据权利要求47所述的音频解码器,其中所述另一组可学习层(62a、62b)包括一个或两个或更多个卷积层。
49.根据前述权利要求中任一项所述的音频解码器,其中所述第二激活函数(63a、63b)是softmax门控双曲正切TanH函数。
50.根据权利要求40或从属于权利要求40的权利要求41至49中任一项所述的音频解码器,其中所述第一激活函数是泄漏整流线性单元泄漏ReLu函数。
51.根据前述权利要求中任一项所述的音频解码器,其中卷积运算(61b、62b)以最大膨胀因子2运行。
52.根据前述权利要求中任一项所述的音频解码器,包括八个第一处理块(50a-50h)和一个第二处理块(45)。
53.根据前述权利要求中任一项所述的音频解码器,其中所述第一数据(15、59、59a、59b)具有低于所述音频信号(16)的自身维度。
54.根据前述权利要求中任一项所述的音频解码器,其中所述目标数据(12)是频谱图。
55.根据前述权利要求中任一项所述的音频解码器,其中所述目标数据(12)是梅尔频谱图。
56.一种用于从比特流(3)解码音频信号(1、16)的方法,所述比特流表示所述音频信号(16),所述方法使用输入信号(14),所述音频信号(1、16)被细分成多个帧,所述方法包括:
由第一处理块(40)的至少一个预调节层(710)从所述比特流(3)获得给定帧的目标数据(15),所述目标数据(15)表示所述音频信号(16)并且具有两个维度;
由所述第一处理块(40、50、50a-50h)对于所述给定帧的每个样本接收从所述输入信号(14)导出的第一数据(12);
由所述第一处理块(40、50)的一组调节可学习层(71、72、73)处理所述目标数据(12)以获得调节特征参数(74、75);以及
由所述第一处理块(50)的样式元素(77)将所述调节特征参数(74、75)应用于所述第一数据(15、59)或归一化的第一数据(76’);
由所述第一处理块(40、50)输出包括多个通道(47)的第一输出数据(69);
由第二处理块(45)接收所述第一输出数据(69)或从所述第一输出数据(69)导出的数据作为第二数据;以及
由所述第二处理块(45)组合所述第二数据的所述多个通道(47)以获得所述音频信号(16)。
57.根据权利要求56所述的方法,还包括:当所述第一处理块(40)和/或所述第二处理块(45)处理前一帧时,存储随后将由所述第一处理块(40)和/或所述第二处理块(45)处理的帧。
58.根据权利要求56或57所述的方法,还包括:对通过并置一组编码参数而获得的比特流模型执行卷积,所述一组编码参数是从与所述比特流的前一帧紧邻的所述比特流的所述给定帧获得的。
59.根据权利要求56至58中任一项所述的方法,其中所述一组调节可学习层(71-73)包括一个或两个卷积层。
60.根据权利要求56至59中任一项所述的方法,其中由所述一组调节可学习层(71-73)进行的处理包括由第一卷积层(71)使用第一激活函数对所述目标数据(12)或上采样的目标数据进行卷积,以获得第一卷积数据(71’)。
61.根据权利要求56至60中任一项所述的方法,其中所述一组调节可学习层(71-73)和所述样式元素(77)是神经网络的残差块(50、50a-50h)中的权重层的一部分,所述神经网络包括一个或多个残差块(50、50a-50h)。
62.根据权利要求56至61中任一项所述的方法,还包括:由归一化元件(76)归一化所述第一数据(15、59)。
63.根据权利要求56至62中任一项所述的方法,其中所述音频信号(16)是语音音频信号。
64.根据权利要求56至63中任一项所述的方法,其中以因子2或2的幂对所述目标数据(12)进行上采样(70)。
65.根据权利要求56至64中任一项所述的方法,其中通过非线性插值对所述目标数据(12)进行上采样(70)。
66.根据权利要求56至65中任一项所述的方法,其中所述第一激活函数是泄漏整流线性单元泄漏ReLu函数。
67.根据权利要求56至66中任一项所述的方法,其中卷积运算(61b、62b)以最大膨胀因子2运行。
68.根据权利要求56至67中任一项所述的方法,包括:执行八次所述第一处理块(50、50a-50h)的所述步骤和一次所述第二处理块(45)的所述步骤。
69.根据权利要求56至68中任一项所述的方法,其中所述目标数据(12)是频谱图。
70.根据权利要求69所述的方法,其中所述频谱图是梅尔频谱图。
71.一种用于训练(100)根据权利要求1至55中任一项所述的音频解码器(10)的方法,其中训练(100)包括重复根据权利要求56至70中任一项所述的步骤一次或多次。
72.根据权利要求71所述的方法,还包括:
由至少一个评估器(132)评估(130)所述生成的音频信号(14、16),以及
根据所述评估(130)的结果调适所述音频解码器(10)的所述权重(74、75)。
73.根据权利要求72所述的方法,其中所述至少一个评估器(132)是神经网络。
74.根据权利要求72或73所述的方法,还包括:
根据所述评估的结果调适所述评估器的所述权重。
75.根据权利要求71至74中任一项所述的方法,其中训练(130)包括优化损失函数(140)。
76.根据权利要求75所述的方法,其中优化(130)损失函数包括计算所述生成的音频信号(16)与参考音频信号(104)之间的固定度量。
77.根据权利要求76所述的方法,其中计算所述固定度量包括计算所述生成的音频信号(16)与所述参考音频信号(104)之间的一个或若干个频谱失真。
78.根据权利要求77所述的方法,其中计算所述一个或若干个频谱失真针对以下执行:
所述生成的音频信号(16)和所述参考音频信号(104)的频谱表示的幅度或对数幅度。
79.根据权利要求77或78所述的方法,其中计算所述一个或若干个频谱失真针对以下执行:
所述生成的音频信号(16)和所述参考音频信号(104)的不同时间或频率分辨率。
80.根据权利要求76至79中任一项所述的方法,其中优化所述损失函数(140)包括通过随机提供和由一个或多个评估器(132)评估所述生成的音频信号(16)的表示或所述参考音频信号(104)的表示来导出一个或多个对抗度量,其中评估包括将所述提供的音频信号(16、132)分类为预定数量的类别,这些类别指示所述音频信号(14、16)的预训练分类自然度水平。
81.根据权利要求75至80中任一项所述的方法,其中优化所述损失函数包括由一个或多个评估器(132)计算固定度量并且导出对抗度量。
82.根据权利要求81所述的方法,其中首先使用所述固定度量来训练所述音频解码器(10)。
83.根据权利要求80至82中任一项所述的方法,其中四个评估器(132a-132d)导出四个对抗度量。
84.根据权利要求80至83中任一项所述的方法,其中所述评估器(132)在滤波器组(110)分解(110)所述生成的音频信号(16)的所述表示或所述参考音频信号(104)的所述表示之后进行操作。
85.根据权利要求80至84中任一项所述的方法,其中所述评估器(132a-132d)中的每一个接收所述生成的音频信号(16)的所述表示或所述参考音频信号(104)的所述表示的一个或若干个部分(105a-105d)作为输入。
86.根据权利要求85所述的方法,其中通过使用随机窗口函数从所述输入信号(14)中采样随机窗口(105a-105d)来生成所述信号部分。
87.根据权利要求86所述的方法,其中对于每个评估器(132a-132d),所述随机窗口(105a-105d)的采样重复多次。
88.根据权利要求87所述的方法,其中对于每个评估器(132a-132d),所述随机窗口(105a-105d)被采样的所述次数与所述生成的音频信号的所述表示或所述参考音频信号(104)的所述表示的长度成比例。
89.根据权利要求56至88中任一项所述的方法,其中至少一个预调节层(710)是可学习的。
90.根据权利要求56至89中任一项所述的方法,其中至少一个预调节层(710)是确定性的。
91.根据权利要求56至90中任一项所述的方法,其中所述比特流是从文本导出的。
92.一种存储指令的非暂时性存储单元,当所述指令由计算机运行时,使所述计算机执行根据权利要求56至89中任一项所述的方法。
93.一种音频解码器(10),其被配置成从比特流(3)生成音频信号(16),所述比特流(3)表示从文本导出的所述音频信号(16),所述音频信号被细分为帧序列,所述音频解码器(10)包括:
第一数据供应器(702),其被配置成对于给定帧,提供从来自外部或内部源的输入信号(14)或从所述比特流(3)导出的第一数据(15),其中所述第一数据(15)具有多个通道;
第一处理块(40、50、50a-50h),其被配置成对于给定帧,接收所述第一数据(15)并且输出所述给定帧中的第一输出数据(69),其中所述第一输出数据(69)包括多个通道(47),以及
第二处理块(45),其被配置成对于所述给定帧,接收所述第一输出数据(69)或从所述第一输出数据(69)导出的数据作为第二数据,
其中所述第一处理块(50)包括:
至少一个预调节层(710),其被配置成接收所述比特流(3),并且对于所述给定帧,利用针对所述给定帧的多个通道和多个样本输出表示所述给定帧中的所述音频信号(16)的目标数据(12);
至少一个调节可学习层(71、72、73),其被配置成对于所述给定帧,处理所述目标数据(12)以获得所述给定帧的调节特征参数(74、75);以及
样式元素(77),其被配置成将所述调节特征参数(74、75)应用于所述第一数据(15、59a)或归一化的第一数据(59、76’);并且
其中所述第二处理块(45)被配置成组合所述第二数据(69)的所述多个通道(47)以获得所述音频信号(16)。
94.根据权利要求93所述的音频解码器,其中所述至少一个预调节层(710c)是确定性的。
95.根据权利要求93所述的音频解码器,其中所述至少一个预调节层(710c)是可学习的。
96.根据权利要求93至95中任一项所述的音频解码器,其中至少一个预调节层是可学习的,并且至少一个预调节层是确定性的。
97.根据权利要求93至96中任一项所述的音频解码器,其中所述第一处理块(50)被配置成将所述第一数据(15)从所述给定帧的样本数量上采样到所述给定帧的大于所述第一样本数量的第二样本数量。
98.根据权利要求93至97中任一项所述的音频解码器,其中所述第二处理块(46)被配置成将从所述第一处理块(40)获得的所述第二数据(69)从所述给定帧的第二样本数量上采样到所述给定帧的大于所述第二样本数量的第三样本数量。
99.根据权利要求93至98中任一项所述的音频解码器,其被配置成将所述第一数据(15)的通道数量从第一通道数量减少到所述第一输出数据(69)的第二通道数量,所述第二通道数量低于所述第一通道数量。
100.根据权利要求93至99中任一项所述的音频解码器,其中所述第二处理块(45)被配置成将从所述第一处理块(40)获得的所述第一输出数据(69)的通道数量从第二通道数量减少到所述音频信号(16)的第三通道数量,其中所述第三通道数量低于所述第二通道数量。
101.根据权利要求92至100中任一项所述的音频解码器,其中所述目标数据(12)包括至少一个潜在特征。
102.根据权利要求93至101中任一项所述的音频解码器,其被配置成从所述比特流(3、3b)获得所述输入信号(14)。
103.根据权利要求93至102中任一项所述的音频解码器,其中所述目标数据(12)包括至少一个声学特征。
104.根据权利要求103所述的音频解码器,其中所述预调节层(710、710c、710b)被配置成通过将所述比特流从文本转换(1110)到所述至少一个声学特征上来获得所述目标数据(12)。
105.根据权利要求104所述的音频解码器,其中所述至少一个声学特征是对数频谱图、MFCC和梅尔频谱图中的一个。
106.根据权利要求103至105中任一项所述的音频解码器,其中所述预调节层(710、710b、710c)被配置成通过将至少一个语言特征形式的所述比特流(3)转换(1114)到至少一个声学特征形式的所述目标数据(12)上来获得所述目标数据(12)。
107.根据权利要求93至106中任一项所述的音频解码器,其中所述目标数据(12)包括至少一个语言特征。
108.根据权利要求107所述的音频解码器,其中至少一个语言特征是从文本中获得的音素、单词韵律、语调、短语中断和填充停顿中的一个。
109.根据权利要求107至108中任一项所述的音频解码器,其中所述预调节层被配置成通过将文本或文本元素形式的所述比特流转换(1110)到至少一个语言特征形式的所述目标数据(12)上来获得所述目标数据(12)。
110.根据权利要求93至109中任一项所述的音频解码器,其中所述目标数据(12)包括从文本中获得的字符和单词中的至少一个。
111.根据权利要求93至110中任一项所述的音频解码器,其中所述预调节层(710、710c、710b)被配置成使用至少一个统计模型将所述目标数据(12)从所述文本形式的所述比特流中导出到所述目标数据(12)上,所述至少一个统计模型被配置成执行文本分析和/或使用声学模型。
112.根据权利要求93至111中任一项所述的音频解码器,其中所述预调节层(710、710c、710b)被配置成使用可学习模型将所述目标数据(12)从所述文本形式的所述比特流(3)中导出到所述目标数据(12)上,所述可学习模型执行文本分析和/或使用声学模型。
113.根据权利要求93至112中任一项所述的音频解码器,其中所述预调节层(710、710c、710b)被配置成使用执行文本分析和/或声学模型的基于规则的算法将所述目标数据(12)从所述文本形式的所述比特流中导出到所述目标数据(12)上。
114.根据权利要求93至113中任一项所述的音频解码器,其被配置成至少从自所述比特流(3)导出的时间包络信息或时域结构中获得所述输入信号(14)。
115.根据前述权利要求中任一项所述的音频解码器,其被配置成从噪声(14)中获得所述输入信号。
116.根据前述权利要求中任一项所述的音频解码器,其中所述至少一个预调节层(710)被配置成提供所述目标数据(12)作为频谱图。
117.根据权利要求93至116中任一项所述的音频解码器,其中所述至少一个预调节层(710)被配置成提供所述目标数据(12)作为梅尔频谱图。
118.根据权利要求93至117中任一项所述的音频解码器,其中所述至少一个预调节层(710)被配置成从编码在所述比特流(3)中的倒谱数据中导出所述目标数据(12)。
119.根据权利要求93至118中任一项所述的音频解码器,其中所述至少一个预调节层(710)被配置成通过至少对频谱包络数据进行卷积来导出所述目标数据(12)。
120.根据权利要求93至119中任一项所述的音频解码器,其中所述目标数据(12)是卷积映射,并且所述至少一个预调节层(710)被配置成对所述卷积映射执行卷积。
121.根据权利要求120所述的音频解码器,其中所述目标数据(12)包括所述给定帧中的所述音频信号(16)的倒谱数据(3a)。
122.根据前述权利要求中任一项所述的音频解码器,其中至少从所述给定帧中的所述音频信号(16)的相关性数据中获得所述输入信号。
123.根据权利要求93至122中任一项所述的音频解码器,其中所述至少一个预调节层(710)被配置成对通过并置从所述比特流中获得的至少一个参数而获得的比特流模型执行至少一次卷积。
124.根据权利要求93至123中任一项所述的音频解码器,其中所述至少一个预调节层(710)被配置成对从所述比特流(3)或其处理版本获得的卷积映射(712、716、720、724、816、820、824、813、856)执行至少一次卷积。
125.根据权利要求124所述的音频解码器,其中通过并置与后续帧相关联的参数来获得所述卷积映射。
126.根据权利要求122至125中任一项所述的音频解码器,其中由所述至少一个预调节层(710)执行的所述卷积中的至少一个由预调节激活函数激活。
127.根据权利要求126所述的解码器,其中所述预调节激活函数是整流线性单元ReLu函数。
128.根据权利要求126或127所述的解码器,其中所述预调节激活函数是泄漏整流线性单元泄漏ReLu函数。
129.根据权利要求122至125中任一项所述的音频解码器,其中所述至少一次卷积是非条件卷积。
130.根据权利要求122至125中任一项所述的音频解码器,其中所述至少一次卷积是神经网络的一部分。
131.根据权利要求93至130中任一项所述的音频解码器,还包括队列,用于在所述第一处理块和/或所述第二处理块处理前一帧时,存储随后将由所述第一处理块和/或所述第二处理块处理的帧。
132.根据权利要求93至131中任一项所述的音频解码器,其中所述第一数据供应器被配置成对通过并置一组编码参数而获得的比特流模型执行卷积,所述一组编码参数是从与所述比特流的前一帧紧邻的所述比特流的所述给定帧获得的。
133.根据权利要求93至132中任一项所述的音频解码器,其中所述一组调节可学习层包括一个或至少两个卷积层(71-73)。
134.根据权利要求93至133中任一项所述的音频解码器,其中第一卷积层(71-73)被配置成使用第一激活函数对所述目标数据(12)或上采样的目标数据进行卷积,以获得第一卷积数据(71’)。
135.根据权利要求93至134中任一项所述的音频解码器,其中所述一组调节可学习层(71-73)和所述样式元素(77)是神经网络的残差块(50、50a-50h)中的权重层的一部分,所述神经网络包括一个或多个残差块(50、50a-50h)。
136.根据权利要求93至135中任一项所述的音频解码器,其中所述音频解码器(10)还包括被配置成归一化所述第一数据(59a、15)的归一化元件(76)。
137.根据权利要求93至136中任一项所述的音频解码器,其中所述音频解码器(10)还包括被配置成在通道维度上归一化所述第一数据(59a、15)的归一化元件(76)。
138.根据权利要求93至137中任一项所述的音频解码器,其中所述音频信号(16)是语音音频信号。
139.根据权利要求93至138中任一项所述的音频解码器,其中以因子2的幂对所述目标数据(12)进行上采样。
140.根据权利要求139所述的音频解码器,其中通过非线性插值对所述目标数据(12)进行上采样(70)。
141.根据权利要求134或从属于权利要求134的权利要求135至140中任一项所述的音频解码器,其中所述第一激活函数是泄漏整流线性单元泄漏ReLu函数。
142.根据权利要求93至141中任一项所述的音频解码器,其中卷积运算(61b、62b)以最大膨胀因子2运行。
143.根据权利要求93至142中任一项所述的音频解码器,包括八个第一处理块(50a-50h)和一个第二处理块(45)。
144.根据权利要求93至143中任一项所述的音频解码器,其中所述第一数据(15、59、59a、59b)具有低于所述音频信号(16)的自身维度。
145.根据权利要求93至144中任一项所述的音频解码器,其中所述目标数据(12)是频谱图。
146.根据权利要求93至145中任一项所述的音频解码器,其中所述目标数据(12)是梅尔频谱图。
147.一种用于从比特流(3)解码音频信号(1、16)的方法,所述比特流表示所述音频信号(16),所述比特流(3)从文本(212)导出,所述方法使用输入信号(14),所述音频信号(1、16)被细分成多个帧,所述方法包括:
由第一处理块(40)的至少一个预调节层(710)从所述比特流(3)获得给定帧的目标数据(15),所述目标数据(15)表示所述音频信号(16)并且具有两个维度;
由所述第一处理块(40、50、50a-50h)对于所述给定帧的每个样本接收从所述输入信号(14)导出的第一数据(12);
由所述第一处理块(40、50)的一组调节可学习层(71、72、73)处理所述目标数据(12)以获得调节特征参数(74、75);以及
由所述第一处理块(50)的样式元素(77)将所述调节特征参数(74、75)应用于所述第一数据(15、59)或归一化的第一数据(76’);
由所述第一处理块(40、50)输出包括多个通道(47)的第一输出数据(69);
由第二处理块(45)接收所述第一输出数据(69)或从所述第一输出数据(69)导出的数据作为第二数据;以及
由所述第二处理块(45)组合所述第二数据的所述多个通道(47)以获得所述音频信号(16)。
148.根据权利要求147所述的方法,还包括:当所述第一处理块(40)和/或所述第二处理块(45)处理前一帧时,存储随后将由所述第一处理块(40)和/或所述第二处理块(45)处理的帧。
149.根据权利要求147或148所述的方法,还包括对通过并置一组编码参数而获得的比特流模型执行卷积,所述一组编码参数是从与所述比特流的前一帧紧邻的所述比特流的所述给定帧获得的。
150.根据权利要求147至149中任一项所述的方法,其中所述一组调节可学习层(71-73)包括一个或两个卷积层。
151.根据权利要求147至150中任一项所述的方法,其中由所述一组调节可学习层(71-73)进行的处理包括由第一卷积层(71)使用第一激活函数对所述目标数据(12)或上采样的目标数据进行卷积,以获得第一卷积数据(71’)。
152.根据权利要求147至151中任一项所述的方法,其中所述一组调节可学习层(71-73)和所述样式元素(77)是神经网络的残差块(50、50a-50h)中的权重层的一部分,所述神经网络包括一个或多个残差块(50、50a-50h)。
153.根据权利要求147至152中任一项所述的方法,还包括:由归一化元件(76)归一化所述第一数据(15、59)。
154.根据权利要求147至153中任一项所述的方法,其中所述音频信号(16)是语音音频信号。
155.根据权利要求147至154中任一项所述的方法,其中以因子2或2的幂对所述目标数据(12)进行上采样(70)。
156.根据权利要求147至155中任一项所述的方法,其中通过非线性插值对所述目标数据(12)进行上采样(70)。
157.根据权利要求147至156中任一项所述的方法,还包括:
由所述第一处理块(50)的另一组可学习层(61b、62b)使用第二激活函数(63b、64b)处理从所述第一数据(15、59a)导出的数据,
其中所述第二激活函数(63b、64b)是门控激活函数。
158.根据权利要求157所述的方法,其中所述另一组可学习层(61b、62b)包括一个或两个卷积层。
159.根据权利要求157或158所述的方法,其中所述第二激活函数(63b、64b)是softmax门控双曲正切TanH函数。
160.根据权利要求147至159中任一项所述的方法,其中所述第一激活函数是泄漏整流线性单元leaky ReLu函数。
161.根据权利要求147至160中任一项所述的方法,其中卷积运算(61b、62b)以最大膨胀因子2运行。
162.根据权利要求147至161中任一项所述的方法,包括执行八次所述第一处理块(50、50a-50h)的所述步骤和一次所述第二处理块(45)的所述步骤。
163.根据权利要求147至162中任一项所述的方法,其中所述目标数据(12)是频谱图。
164.根据权利要求163所述的方法,其中所述频谱图是梅尔频谱图。
165.一种用于训练(100)根据权利要求93至146中任一项所述的音频解码器(10)的方法,其中训练(100)包括重复根据权利要求147至164中任一项所述的步骤一次或多次。
166.根据权利要求165所述的方法,还包括:
由至少一个评估器(132)评估(130)所述生成的音频信号(14、16),以及
根据所述评估(130)的结果调适所述音频解码器(10)的所述权重(74、75)。
167.根据权利要求166所述的方法,其中所述至少一个评估器(132)是神经网络。
168.根据权利要求166或167所述的方法,还包括
根据所述评估的结果调适所述评估器的所述权重。
169.根据权利要求165至168中任一项所述的方法,其中训练(130)包括优化损失函数(140)。
170.根据权利要求169所述的方法,其中优化(130)损失函数包括:计算所述生成的音频信号(16)与参考音频信号(104)之间的固定度量。
171.根据权利要求170所述的方法,其中计算所述固定度量包括:计算所述生成的音频信号(16)与所述参考音频信号(104)之间的一个或若干个频谱失真。
172.根据权利要求171所述的方法,其中计算所述一个或若干个频谱失真针对以下执行:
所述生成的音频信号(16)和所述参考音频信号(104)的频谱表示的幅度或对数幅度。
173.根据权利要求171或172所述的方法,其中计算所述一个或若干个频谱失真针对以下执行:
所述生成的音频信号(16)和所述参考音频信号(104)的不同时间或频率分辨率。
174.根据权利要求170至173中任一项所述的方法,其中优化所述损失函数(140)包括通过随机提供和由一个或多个评估器(132)评估所述生成的音频信号(16)的表示或所述参考音频信号(104)的表示来导出一个或多个对抗度量,其中评估包括将所述提供的音频信号(16、132)分类为预定数量的类别,这些类别指示所述音频信号(14、16)的预训练分类自然度水平。
175.根据权利要求169至174中任一项所述的方法,其中优化所述损失函数包括由一个或多个评估器(132)计算固定度量并且导出对抗度量。
176.根据权利要求175所述的方法,其中首先使用所述固定度量来训练所述音频解码器(10)。
177.根据权利要求174至176中任一项所述的方法,其中四个评估器(132a-132d)导出四个对抗度量。
178.根据权利要求174至177中任一项所述的方法,其中所述评估器(132)在滤波器组(110)分解(110)所述生成的音频信号(16)的所述表示或所述参考音频信号(104)的所述表示之后进行操作。
179.根据权利要求174至178中任一项所述的方法,其中所述评估器(132a-132d)中的每一个接收所述生成的音频信号(16)的所述表示或所述参考音频信号(104)的所述表示的一个或若干个部分(105a-105d)作为输入。
180.根据权利要求179所述的方法,其中通过使用随机窗口函数从所述输入信号(14)中采样随机窗口(105a-105d)来生成所述信号部分。
181.根据权利要求180所述的方法,其中对于每个评估器(132a-132d),所述随机窗口(105a-105d)的采样重复多次。
182.根据权利要求181所述的方法,其中对于每个评估器(132a-132d),所述随机窗口(105a-105d)被采样的次数与所述生成的音频信号的所述表示或所述参考音频信号(104)的所述表示的长度成比例。
183.根据权利要求147至182中任一项所述的方法,其中所述至少一个预调节层(710、710c、710b)是可学习的。
184.根据权利要求147至182中任一项所述的方法,其中所述至少一个预调节层(710、710c、710b)是确定性的。
185.根据权利要求147至182中任一项所述的方法,其中所述至少一个预调节层(710、710c、710b)包括至少一个确定性预调节层和至少一个可学习预调节层。
186.根据权利要求147至185中任一项所述的方法,其中所述目标数据(12)包括至少一个声学特征。
187.根据权利要求186所述的方法,其中所述预调节层(710、710c、710b)通过将所述比特流从文本转换(1110)到所述至少一个声学特征上来获得所述目标数据(12)。
188.根据权利要求187所述的方法,其中所述至少一个声学特征是对数频谱图、MFCC和梅尔频谱图中的一个。
189.根据权利要求163、164和186至188中任一项所述的方法,其中所述预调节层(710、710b、710c)通过将至少一个语言特征形式的所述比特流(3)转换(1114)到至少一个声学特征形式的所述目标数据(12)上来获得目标数据(12)。
190.根据权利要求147至189中任一项所述的方法,其中所述目标数据(12)包括至少一个语言特征。
191.根据权利要求190所述的方法,其中至少一个语言特征是从文本中获得的音素、单词韵律、语调、短语中断和填充停顿中的一个。
192.根据权利要求190至191中任一项所述的方法,其中所述预调节层通过将文本或文本元素形式的所述比特流(3)转换(1110)到至少一个语言特征形式的目标数据(12)上来获得目标数据(12)。
193.根据权利要求147至192中任一项所述的方法,其中所述目标数据(12)包括从文本中获得的字符和单词中的至少一个。
194.根据权利要求147至193中任一项所述的方法,其中所述预调节层(710、710c、710b)通过使用至少一个统计模型将所述文本形式的所述比特流(3)转换到所述目标数据(12)上来导出所述目标数据(12),所述至少一个统计模型被配置用于执行文本分析和/或使用声学模型。
195.根据权利要求147至194中任一项所述的音频解码器,其中所述预调节层(710、710c、710b)通过使用可学习模型将所述文本形式的所述比特流(3)转换到所述目标数据(12)上来导出所述目标数据(12),所述可学习模型执行文本分析和/或使用声学模型。
196.根据权利要求147至195中任一项所述的音频解码器,其中所述预调节层(710、710c、710b)通过使用执行文本分析和/或声学模型的基于规则的算法将所述文本形式的所述比特流(3)转换到所述目标数据(12)上来导出所述目标数据(12)。
197.根据权利要求93至196中任一项所述的音频解码器,其被配置成至少从自所述比特流(3)导出的时间包络信息或时域结构中获得所述输入信号(14)。
198.一种存储指令的非暂时性存储单元,当所述指令由计算机运行时,使所述计算机执行根据权利要求147至197中任一项所述的方法。
CN202180098890.2A 2021-04-27 2021-08-06 解码器 Pending CN117546237A (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
EP21170782.3 2021-04-27
EP21170782 2021-04-27
PCT/EP2021/072091 WO2022228704A1 (en) 2021-04-27 2021-08-06 Decoder

Publications (1)

Publication Number Publication Date
CN117546237A true CN117546237A (zh) 2024-02-09

Family

ID=75728621

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202180098890.2A Pending CN117546237A (zh) 2021-04-27 2021-08-06 解码器

Country Status (7)

Country Link
US (1) US20240127832A1 (zh)
EP (1) EP4330962A1 (zh)
JP (1) JP2024516664A (zh)
KR (1) KR20240012407A (zh)
CN (1) CN117546237A (zh)
BR (1) BR112023022466A2 (zh)
WO (1) WO2022228704A1 (zh)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2023175197A1 (en) * 2022-03-18 2023-09-21 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Vocoder techniques
WO2024129132A1 (en) * 2022-12-16 2024-06-20 Google Llc Multi-channel audio signal generation

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10872596B2 (en) * 2017-10-19 2020-12-22 Baidu Usa Llc Systems and methods for parallel wave generation in end-to-end text-to-speech
US11024321B2 (en) * 2018-11-30 2021-06-01 Google Llc Speech coding using auto-regressive generative neural networks
US11437050B2 (en) * 2019-09-09 2022-09-06 Qualcomm Incorporated Artificial intelligence based audio coding

Also Published As

Publication number Publication date
EP4330962A1 (en) 2024-03-06
KR20240012407A (ko) 2024-01-29
US20240127832A1 (en) 2024-04-18
JP2024516664A (ja) 2024-04-16
BR112023022466A2 (pt) 2024-01-02
WO2022228704A1 (en) 2022-11-03

Similar Documents

Publication Publication Date Title
Yu et al. DurIAN: Duration Informed Attention Network for Speech Synthesis.
Kleijn et al. Wavenet based low rate speech coding
Wali et al. Generative adversarial networks for speech processing: A review
Tachibana et al. An investigation of noise shaping with perceptual weighting for WaveNet-based speech generation
JP6545748B2 (ja) 低または中ビットレートに対する知覚品質に基づくオーディオ分類
US20230317056A1 (en) Audio generator and methods for generating an audio signal and training an audio generator
US20240127832A1 (en) Decoder
Li et al. A conditional generative model for speech enhancement
Singh et al. Spectral modification based data augmentation for improving end-to-end ASR for children's speech
Lim et al. Robust low rate speech coding based on cloned networks and wavenet
Korse et al. PostGAN: A gan-based post-processor to enhance the quality of coded speech
O’Shaughnessy Review of methods for coding of speech signals
Anees Speech coding techniques and challenges: A comprehensive literature survey
EP2087485B1 (en) Multicodebook source -dependent coding and decoding
Giacobello et al. Stable 1-norm error minimization based linear predictors for speech modeling
Wu et al. Denoising Recurrent Neural Network for Deep Bidirectional LSTM Based Voice Conversion.
Lee et al. A segmental speech coder based on a concatenative TTS
WO2023175197A1 (en) Vocoder techniques
JPWO2008072733A1 (ja) 符号化装置および符号化方法
JPWO2007037359A1 (ja) 音声符号化装置および音声符号化方法
Srikotr The improved speech spectral envelope compression based on VQ-VAE with adversarial technique
Lopukhova et al. A Codec Simulation for Low-rate Speech Coding with Radial Neural Networks
Erzin New methods for robust speech recognition
So A New Quantization Technique for Linear Predictive Speech Coding

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination