Diffusers 文档

AutoencoderOobleck

Hugging Face's logo
加入 Hugging Face 社区

并获得增强的文档体验

开始使用

AutoencoderOobleck

Oobleck 变分自编码器 (VAE) 模型,使用 KL 损失,由 Stability AI 在 Stability-AI/stable-audio-toolsStable Audio Open 中引入。该模型在 🤗 Diffusers 中用于将音频波形编码为潜在变量,并将潜在表示解码为音频波形。

论文摘要如下:

开放式生成模型对社区至关重要,它们允许进行微调,并在展示新模型时作为基线。然而,目前大多数文本到音频模型都是私有的,艺术家和研究人员无法在其基础上进行构建。本文描述了一种使用知识共享数据训练的新型开放权重文本到音频模型的架构和训练过程。我们的评估表明,该模型的性能在各种指标上与最先进的模型具有竞争力。值得注意的是,报告的 FDopenl3 结果(衡量生成作品的真实感)展示了其在 44.1kHz 下合成高质量立体声的潜力。

AutoencoderOobleck

class diffusers.AutoencoderOobleck

< >

( encoder_hidden_size = 128 downsampling_ratios = [2, 4, 4, 8, 8] channel_multiples = [1, 2, 4, 8, 16] decoder_channels = 128 decoder_input_channels = 64 audio_channels = 2 sampling_rate = 44100 )

参数

  • encoder_hidden_size (int, 可选, 默认为 128) — 编码器的中间表示维度。
  • downsampling_ratios (List[int], 可选, 默认为 [2, 4, 4, 8, 8]) — 编码器中的下采样比率。这些比率以相反的顺序用于解码器中的上采样。
  • channel_multiples (List[int], 可选, 默认为 [1, 2, 4, 8, 16]) — 用于确定隐藏层隐藏尺寸的倍数。
  • decoder_channels (int, 可选, 默认为 128) — 解码器的中间表示维度。
  • decoder_input_channels (int, 可选, 默认为 64) — 解码器的输入维度。对应于潜在维度。
  • audio_channels (int, 可选, 默认为 2) — 音频数据中的通道数。单声道为 1,立体声为 2。
  • sampling_rate (int, 可选, 默认为 44100) — 音频波形应以赫兹 (Hz) 表示的采样率进行数字化。

用于将波形编码为潜在变量并将潜在表示解码为波形的自编码器。首次在 Stable Audio 中引入。

此模型继承自 ModelMixin。有关所有模型实现的通用方法(如下载或保存),请参阅超类文档。

包装器

< >

( *args **kwargs )

包装器

< >

( *args **kwargs )

disable_slicing

< >

( )

禁用切片 VAE 解码。如果之前启用了 enable_slicing,此方法将恢复一步计算解码。

enable_slicing

< >

( )

启用切片 VAE 解码。启用此选项后,VAE 会将输入张量分片,分步计算解码。这有助于节省一些内存并允许更大的批次大小。

forward

< >

( sample: Tensor sample_posterior: bool = False return_dict: bool = True generator: typing.Optional[torch._C.Generator] = None )

参数

  • sample (torch.Tensor) — 输入样本。
  • sample_posterior (bool, 可选, 默认为 False) — 是否从后验分布中采样。
  • return_dict (bool, 可选, 默认为 True) — 是否返回 OobleckDecoderOutput 而不是普通元组。

OobleckDecoderOutput

class diffusers.models.autoencoders.autoencoder_oobleck.OobleckDecoderOutput

< >

( sample: Tensor )

参数

  • sample (形状为 (batch_size, audio_channels, sequence_length)torch.Tensor) — 模型最后一层的解码输出样本。

解码方法的输出。

OobleckDecoderOutput

class diffusers.models.autoencoders.autoencoder_oobleck.OobleckDecoderOutput

< >

( sample: Tensor )

参数

  • sample (形状为 (batch_size, audio_channels, sequence_length)torch.Tensor) — 模型最后一层的解码输出样本。

解码方法的输出。

AutoencoderOobleckOutput

class diffusers.models.autoencoders.autoencoder_oobleck.AutoencoderOobleckOutput

< >

( latent_dist: OobleckDiagonalGaussianDistribution )

参数

  • latent_dist (OobleckDiagonalGaussianDistribution) — Encoder 的编码输出,表示为 OobleckDiagonalGaussianDistribution 的均值和标准差。 OobleckDiagonalGaussianDistribution 允许从分布中采样潜在变量。

AutoencoderOobleck 编码方法的输出。

< > 在 GitHub 上更新