speechbrain.lobes.models.segan_model 模块

此文件包含两个 PyTorch 模块,它们共同构成了 SEGAN 模型架构(基于 Pascual 等人的论文:https://arxiv.org/pdf/1703.09452.pdf)。修改初始化参数可以改变类项目中描述的模型,例如将生成器转换为 VAE,或移除潜在变量拼接。

用于训练 SEGAN 的损失函数也在此文件中定义。

作者
  • Francis Carter 2021

摘要

Discriminator

SEGAN 的 CNN 鉴别器

Generator

用于清理语音信号的 CNN 自动编码器模型。

函数

d1_loss

计算输入为干净时的鉴别器损失

d2_loss

计算输入不干净时的鉴别器损失

g3_loss

根据鉴别器输出计算生成器损失

参考

class speechbrain.lobes.models.segan_model.Generator(kernel_size, latent_vae, z_prob)[source]

基类: Module

用于清理语音信号的 CNN 自动编码器模型。

参数:
  • kernel_size (int) – 卷积核大小。

  • latent_vae (bool) – 是否将自动编码器转换为 vae

  • z_prob (bool) – 是否移除潜在变量拼接。仅当 latent_vae 为 False 时适用

forward(x)[source]

自动编码器的前向传播

class speechbrain.lobes.models.segan_model.Discriminator(kernel_size)[source]

基类: Module

SEGAN 的 CNN 鉴别器

参数:

kernel_size (int) – 卷积核大小。

forward(x)[source]

鉴别器的前向传播

speechbrain.lobes.models.segan_model.d1_loss(d_outputs, reduction='mean')[source]

计算输入为干净时的鉴别器损失

speechbrain.lobes.models.segan_model.d2_loss(d_outputs, reduction='mean')[source]

计算输入不干净时的鉴别器损失

speechbrain.lobes.models.segan_model.g3_loss(d_outputs, predictions, targets, length, l1LossCoeff, klLossCoeff, z_mean=None, z_logvar=None, reduction='mean')[source]

根据鉴别器输出计算生成器损失