pytorch实现SampleRNN,无条件端到端神经音频生成模型(samplernn-pytorch)

Song • 86 次浏览 • 0 个回复 • 2019年01月05日

PyTorch实现SampleRNN无条件端到端神经音频生成模型

它基于Theano的实现:https://github.com/soroushmehr/sampleRNN_ICLR2017 。与Theano版本不同,我们的代码允许训练模型具有任意的层数,而原来的实现最多允许3层。但是它不允许使用LSTM单元(仅限GRU)。有关将此模型重写为PyTorch的更多详细信息和动机,请参阅:博客文章

一、依赖

此代码需要Python 3.5+PyTorch 0.1.12+PyTorch的安装说明可在其网站上找到:http://pytorch.org/ 。您可以通过运行pip install -r requirements.txt来安装其余的依赖项。

二、数据集

我们提供了一个脚本,用于从YouTube单视频mixes创建数据集。它下载一个mixes,将其转换为wav并将其拆分为等长的块。要运行它,你需要youtube-dl(最新版​​本; pip的最新版本应该没问题)和ffmpeg。要创建示例数据集 - 将4小时的钢琴音乐分成8个块,请运行:

cd datasets
./download-from-youtube.sh "https://www.youtube.com/watch?v=EhO_MrRfftU" 8 piano

您也可以自己准备数据集。在datasets/目录下添加等长的wav文件。或者,您可以通过子类化创建自己的数据集格式torch.utils.data.Dataset。这很容易,请看一下dataset.FolderDataset中的一个例子。

三、训练

要训​​练你需要运行的模型train.py。所有模型超参数都可以在命令行中设置。大多数顶级参数都设置了合理的默认值,因此您无需提供所有超级参数。运行python train.py -h查看详细信息。要使用我们发现的最佳配置在piano数据集上训练数据,请运行:

python train.py --exp TEST --frame_sizes 16 4 --n_rnn 2 --dataset piano

结果将在results/中生成训练日志,损失图,模型检查点和生成的样本。

我们还可以选择使用CometML监控指标。要使用它,只需将API密钥作为--comet_key参数传递给train.py

项目地址:deepsound-project/samplernn-pytorch

学习参考:SampleRNN语音合成模型


原创文章,转载请注明 :pytorch实现SampleRNN,无条件端到端神经音频生成模型(samplernn-pytorch) - pytorch中文网
原文出处: https://ptorch.com/news/227.html
问题交流群 :168117787
提交评论
要回复文章请先登录注册
用户评论
  • 没有评论
Pytorch是什么?关于Pytorch! Pytorch AttentionOCR 中文端到端的文字识别(Attention_ocr.pytorch)