wavegrad

wavegrad

由Google Brain设计的高效神经声码器

WaveGrad是由Google Brain团队设计的神经声码器,专业于将对数缩放的Mel频谱图转换为波形。此项目提供稳定训练、合成、混合精度训练以及多GPU支持,且支持命令行和API推理接口,配备预训练模型。易于安装,支持通过pip和GitHub进行安装。其多GPU训练和混合精度训练提升了处理效率,适合需进行高效音频处理的开发者。

WaveGrad神经声码器高质量合成多GPU训练预训练模型Github开源项目

WaveGrad 项目介绍

WaveGrad 是由 Google Brain 团队设计的一个快速高质量神经声码器。它的架构旨在将对数规模的 Mel 频谱图通过迭代优化转换为波形,详细描述见WaveGrad: Estimating Gradients for Waveform Generation

项目概况

WaveGrad 项目自 2020 年 10 月 15 日以来已经完成了以下功能:

  • 稳定的训练,支持 22 kHz 和 24 kHz 的音频采样率。
  • 高质量合成音频。
  • 混合精度训练,提升计算效率。
  • 多 GPU 训练,加快模型的训练速度。
  • 自定义噪声调度,实现更快的推断速度。
  • 命令行推断,方便用户直接使用。
  • 编程推断 API,提供更灵活的调用方式。
  • PyPI 包,便于安装使用。
  • 音频样本展示,提供直观的质量验证。
  • 预训练模型下载,方便复用。
  • 尚未完成预计算噪声调度。

音频样例

用户可以通过这里查看 24 kHz 的音频样例,以亲耳感受 WaveGrad 的合成质量。

预训练模型

WaveGrad 提供了 24 kHz 的预训练模型(183 MB),可以直接下载并使用。这一模型的 SHA256 校验值是 65e9366da318d58d60d2c78416559351ad16971de906e53b415836c068e335f3

安装方法

用户可以通过以下命令使用 pip 安装 WaveGrad:

pip install wavegrad

或者从 GitHub 克隆代码并安装:

git clone https://github.com/lmnt-com/wavegrad.git cd wavegrad pip install .

训练详情

在开始训练之前,用户需要准备一个训练数据集。数据集内部可以有任意目录结构,只需要保证其中的 .wav 文件为 16 位单声道即可(例如 LJSpeech, VCTK 数据集)。默认情况下,WaveGrad 假定采样率为 22 kHz,如果需要修改采样率,可以编辑 params.py

训练步骤如下:

python -m wavegrad.preprocess /path/to/dir/containing/wavs python -m wavegrad /path/to/model/dir /path/to/dir/containing/wavs # 开启另一个终端以监测训练进度: tensorboard --logdir /path/to/model/dir --bind_all

经过大约 20000 步(在 2080 Ti GPU 上约需 1.5 小时),您应当能够听到清晰可辨的语音。

推断 API

WaveGrad 提供了便捷的推断 API,基本使用方法如下:

from wavegrad.inference import predict as wavegrad_predict model_dir = '/path/to/model/dir' spectrogram = # 获取格式为 [N,C,W] 的频谱图 audio, sample_rate = wavegrad_predict(spectrogram, model_dir) # 生成的 `audio` 是一个格式为 [N,T] 的 GPU 张量。

如果您有自定义的噪声调度:

from wavegrad.inference import predict as wavegrad_predict params = { 'noise_schedule': np.load('/path/to/noise_schedule.npy') } model_dir = '/path/to/model/dir' spectrogram = # 获取格式为 [N,C,W] 的频谱图 audio, sample_rate = wavegrad_predict(spectrogram, model_dir, params=params) # `audio` 是 [N,T] 格式的 GPU 张量。

推断命令行工具

用户可以使用如下命令进行推断:

python -m wavegrad.inference /path/to/model /path/to/spectrogram -o output.wav

噪声调度

默认情况下,WaveGrad 使用 1000 次迭代来优化波形,这比实时合成稍慢。然而,WaveGrad 可以通过仅使用 6 次迭代而无需重新训练模型来实现高质量且快于实时的合成。

为了实现这一速度提升,用户需要寻找适合自己数据集的噪声调度。WaveGrad 提供了一个脚本来帮助用户进行搜索:

python -m wavegrad.noise_schedule /path/to/trained/model /path/to/preprocessed/validation/dataset python -m wavegrad.inference /path/to/trained/model /path/to/spectrogram -n noise_schedule.npy -o output.wav

默认设置应该能够在较短的时间内提供不错的结果。如果用户希望找到更佳的噪声调度,或希望使用不同的推断迭代次数,可以运行 noise_schedule 脚本并使用 --help 选项查看更多配置选项。

参考资料

WaveGrad 项目体现了现代神经网络在音频合成领域的强大潜力,以高质量和高效率为目标,致力于推动声码器技术的发展。

编辑推荐精选

Vora

Vora

免费创建高清无水印Sora视频

Vora是一个免费创建高清无水印Sora视频的AI工具

Refly.AI

Refly.AI

最适合小白的AI自动化工作流平台

无需编码,轻松生成可复用、可变现的AI自动化工作流

酷表ChatExcel

酷表ChatExcel

大模型驱动的Excel数据处理工具

基于大模型交互的表格处理系统,允许用户通过对话方式完成数据整理和可视化分析。系统采用机器学习算法解析用户指令,自动执行排序、公式计算和数据透视等操作,支持多种文件格式导入导出。数据处理响应速度保持在0.8秒以内,支持超过100万行数据的即时分析。

AI工具酷表ChatExcelAI智能客服AI营销产品使用教程
TRAE编程

TRAE编程

AI辅助编程,代码自动修复

Trae是一种自适应的集成开发环境(IDE),通过自动化和多元协作改变开发流程。利用Trae,团队能够更快速、精确地编写和部署代码,从而提高编程效率和项目交付速度。Trae具备上下文感知和代码自动完成功能,是提升开发效率的理想工具。

AI工具TraeAI IDE协作生产力转型热门
AIWritePaper论文写作

AIWritePaper论文写作

AI论文写作指导平台

AIWritePaper论文写作是一站式AI论文写作辅助工具,简化了选题、文献检索至论文撰写的整个过程。通过简单设定,平台可快速生成高质量论文大纲和全文,配合图表、参考文献等一应俱全,同时提供开题报告和答辩PPT等增值服务,保障数据安全,有效提升写作效率和论文质量。

AI辅助写作AI工具AI论文工具论文写作智能生成大纲数据安全AI助手热门
博思AIPPT

博思AIPPT

AI一键生成PPT,就用博思AIPPT!

博思AIPPT,新一代的AI生成PPT平台,支持智能生成PPT、AI美化PPT、文本&链接生成PPT、导入Word/PDF/Markdown文档生成PPT等,内置海量精美PPT模板,涵盖商务、教育、科技等不同风格,同时针对每个页面提供多种版式,一键自适应切换,完美适配各种办公场景。

AI办公办公工具AI工具博思AIPPTAI生成PPT智能排版海量精品模板AI创作热门
潮际好麦

潮际好麦

AI赋能电商视觉革命,一站式智能商拍平台

潮际好麦深耕服装行业,是国内AI试衣效果最好的软件。使用先进AIGC能力为电商卖家批量提供优质的、低成本的商拍图。合作品牌有Shein、Lazada、安踏、百丽等65个国内外头部品牌,以及国内10万+淘宝、天猫、京东等主流平台的品牌商家,为卖家节省将近85%的出图成本,提升约3倍出图效率,让品牌能够快速上架。

iTerms

iTerms

企业专属的AI法律顾问

iTerms是法大大集团旗下法律子品牌,基于最先进的大语言模型(LLM)、专业的法律知识库和强大的智能体架构,帮助企业扫清合规障碍,筑牢风控防线,成为您企业专属的AI法律顾问。

SimilarWeb流量提升

SimilarWeb流量提升

稳定高效的流量提升解决方案,助力品牌曝光

稳定高效的流量提升解决方案,助力品牌曝光

Sora2视频免费生成

Sora2视频免费生成

最新版Sora2模型免费使用,一键生成无水印视频

最新版Sora2模型免费使用,一键生成无水印视频

下拉加载更多