语言处理 之 tensorflow cuda安装,pip更换源

创造令人信服的人造语言是当前的热门话题,谷歌在此领域可以说是领先的。Tacotron 2是一种训练神经网络以产生逼真语音的新方法,可以让语音发出完美效果,但几乎不需要任何语言知识。这项新技术采用了谷歌以前的两个语音生成项目中最好的:WaveNet和原来的Tacotron。

WaveNet所产生所谓的令人耳目一新的一个音频样本,这听起来对任何对声音设计一无所知的人来说都是表示疑惑。WaveNet虽然很完美,但却需要大量关于语言的元数据,这其中包括发音,已知的语言特征等。Tacotron合成了更多的这些高级特征,比如语调和韵律,但并不真正适合于生成最终的演讲产品。

Tacotron 2使用了两者,尽管我会坦率地承认,在这一点上,我们已经达到了这项技术专长的极限,但是从所掌握的情况来看,它使用文本和叙述来计算系统通常必须明确关联所有语言规则。为了达到其节奏和语调,文本本身被转换成Tacotron风格的“mel-scale谱图”,而词汇本身是使用WaveNet风格的系统所生成的。

由此产生的音频,我们可以在这里听到的几个例子,效果比任何东西都好。讲话的节奏是令人信服的,它主要是因为发音不是特别直观,可能是因为它们出自美国英语以外的原因,例如强调第一个音节的“decorum”和强调第一个音节的“Merlot”。研究人员写道:“在极端情况下,甚至会随机产生奇怪的噪音。

最后,没有办法控制言论的语调,例如乐观或担心,虽然重音和其他微妙的东西可以用WaveNet来处理。

降低培训系统的障碍意味着可以培训效果更为出色,并且集成新的方法,而不必重新评估复杂的手动定义的规则集或为新的语言或讲话风格提供新的规则集。

——————————————————————————————————————————————-

谈到数据的生成,很多人都会想到利用生成对抗网络(GAN)去实现,这对于图像和视频这种较易于编码表示的数据是合适的。然而在实现音频的生成时,却是困难重重,首先音频具有较高的时间分辨率(通常至少为每秒 16,000 个样本),并且在不同时间尺度上存在具有短期和长期依赖性的结构。

就目前基于 GAN 做音频生成的文章中,基本上都是生成出音频对应的中间形态-声谱图。本篇将对音频的后端生成进行分析,介绍 MelGAN 是如何通过梅尔谱图快速转换得到最终声音的。

对原始音频进行建模是一个特别具有挑战性的问题,因为音频具有很高的时间分辨率,同时音频在时间尺度上是有前后依赖关系的。因此,目前大多数方法不是直接对原始时间音频建模,而是通过对原始音频信号进行较低分辨率表示后再进行建模。

选择这样的表示形式比使用原始音频更容易建模,同时也保留足够的信息再次转换回音频。这种低分辨率的表示我们称之为音频的中间形式,目前主流的中间形式表达有两种,对齐的语言特征[1] 和 Mel 频谱图[2]。有了音频的中间形式,那么对音频建模就可以转换为音频→中间形式→音频

音频转换到中间形式相对来说是比较容易的,拿 Mel 频谱图的转换来说,首先对原始音频文件进行采样,采样速率视实际音频而定,对采样后的信号进行短时傅里叶变换,即在傅里叶变换过程中,使用时间窗口函数与源信号相乘,通过窗函数的滑动得到一系列傅里叶变换的结果,其中快速傅里叶变换的点数和窗函数每次滑动的大小也是人为设定,进而得到其线性振幅谱,然后利用梅尔滤波器组就可以得到梅尔频谱图,其中梅尔滤波器组的个数视实际而定,最后还可以通过对数运算将线性谱转换为对数谱

由音频的中间形式转换为原始音频是一项很大的挑战,不过目前倒是已经有一些方法去实现这个转换。这个转换过程可分为三大家族:纯信号处理技术,自回归和非自回归神经网络。

纯信号处理:较早的 Griffin-Lim 算法 [3]使人们可以有效地将 STFT 序列解码回时间信号,而代价是要引入了伪像。WORLD 声码器[4] 引入了一种中间类表示形式,专门针对基于类似于 mel 频谱图的特征的语音建模而设计。WORLD 声码器与专用信号处理算法配对,以将中间表示映射回原始音频。这些纯信号处理方法的主要问题是,从中间特征到音频的映射通常会引入明显的伪像。

基于自回归神经网络模型:WaveNet [1]是一种完全卷积的自回归序列模型,可生成高度逼真的语音样本,该样本与原始音频在时间保持对齐为条件,同时它还能够生成高质量的无条件语音和音乐样本。SampleRNN [5] 是一种执行无条件波形生成的替代架构,该架构使用多尺度递归神经网络以不同的时间分辨率显式建模原始音频。WaveRNN [6]是一种基于简单单层递归神经网络的更快的自回归模型。然而,由于这些自回归模型必须依次生成音频样本,因此对这些模型的推论本质上是缓慢且效率低下的,所以自回归模型通常不适合实时应用。

基于非自回归神经网络模型:并行 WaveNet [7] 和 Clarinet [8] 将经过训练的自回归解码器提炼成基于流的蒸馏模型。WaveGlow [9]是一种非常高容量的生成流,由 12 个耦合和 12 个可逆 1×1 卷积组成,每个耦合层由 8 层膨胀卷积的堆栈组成。然而,这些基于非自回归模型的一大弊病就是训练成本太高,往往需要耗费长时间在训练上。

GAN 在数据生成上已经取得了很大的进展,尽管它们在计算机视觉方面取得了巨大的成功,但在使用 GAN 进行音频建模方面,并没有多大的进展。目前基于 GAN 对音频生成的文章中,大多数是对于音频表示为中间形式就戛然而至了,完全由 GAN 一步到位生成音频样本的到目前还没有。

本篇要介绍的 MelGAN 打破了这一僵局的同时,还大大提升了音频建模的速度,总结一下 MelGAN 的优势:

1. MelGAN 是一种非自回归前馈卷积架构,是第一个由 GAN 去实现原始音频的生成,在没有额外的蒸馏和感知损失的引入下仍能产生高质量的语音合成模型。

2. MelGAN 解码器可替代自回归模型,以生成原始音频。

3. MelGAN 的速度明显快于其他 Mel 谱图转换到音频的方法,在保证音频质量没有明显下降的情况下比迄今为止最快的可用模型快 10 倍。

https://www.sohu.com/a/354692739_500659

【LibriTTS语料库:Google发布、取自LibriSpeech的大规模英语文本-语音语料(585小时英语语音/24kHz采样)】“LibriTTS corpus - Large-scale corpus of English speech derived from the original materials of the LibriSpeech corpus”

cuda下载不下来啊。。。

VS那是给cuda开发人员用的,检测cuda安装成功你也完全不需要考虑使用vs跑一个cuda-example,直接看命令nvcc -V就够了。

pip更换源?直接在后面加上

pip install some-package -i https://mirrors.aliyun.com/pypi/simple/
即可

猜你喜欢

转载自blog.csdn.net/HeroIsUseless/article/details/112055541