当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


Python PyTorch WaveRNN用法及代码示例


本文简要介绍python语言中 torchaudio.models.WaveRNN 的用法。

用法:

class torchaudio.models.WaveRNN(upsample_scales: List[int], n_classes: int, hop_length: int, n_res_block: int = 10, n_rnn: int = 512, n_fc: int = 512, kernel_size: int = 5, n_freq: int = 128, n_hidden: int = 128, n_output: int = 128)

参数

  • upsample_scales-上采样比例列表。

  • n_classes-输出类的数量。

  • hop_length-连续帧开始之间的样本数。

  • n_res_block-堆栈中ResBlock 的数量。 (默认:10)

  • n_rnn-RNN 层的维度。 (默认:512)

  • n_fc-全连接层的维度。 (默认:512)

  • kernel_size-第一个 Conv1d 层中的内核大小数。 (默认:5)

  • n_freq-频谱图中的 bin 数量。 (默认:128)

  • n_hidden-resblock 的隐藏维数。 (默认:128)

  • n_output-melresnet 的输出维数。 (默认:128)

WaveRNN 模型基于 fatchord 的实现。

最初的实现是在高效的神经音频合成[7]。波形和频谱图的输入通道必须为 1。upsample_scales必须相等hop_length.

示例
>>> wavernn = WaveRNN(upsample_scales=[5,5,8], n_classes=512, hop_length=200)
>>> waveform, sample_rate = torchaudio.load(file)
>>> # waveform shape: (n_batch, n_channel, (n_time - kernel_size + 1) * hop_length)
>>> specgram = MelSpectrogram(sample_rate)(waveform)  # shape: (n_batch, n_channel, n_freq, n_time)
>>> output = wavernn(waveform, specgram)
>>> # output shape: (n_batch, n_channel, (n_time - kernel_size + 1) * hop_length, n_classes)

相关用法


注:本文由纯净天空筛选整理自pytorch.org大神的英文原创作品 torchaudio.models.WaveRNN。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。