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。查看超类文档,了解所有模型通用的方法实现(例如下载或保存)。

wrapper

< >

( *args **kwargs )

wrapper

< >

( *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, optional, defaults to False) — 是否从后验分布中采样。(默认为 False)。
  • return_dict (bool, optional, defaults to True) — 是否返回 OobleckDecoderOutput 而不是普通元组。(默认为 True)。

OobleckDecoderOutput

class diffusers.models.autoencoders.autoencoder_oobleck.OobleckDecoderOutput

< >

( sample: Tensor )

参数

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

解码方法的输出。

OobleckDecoderOutput

class diffusers.models.autoencoders.autoencoder_oobleck.OobleckDecoderOutput

< >

( sample: Tensor )

参数

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

解码方法的输出。

AutoencoderOobleckOutput

class diffusers.models.autoencoders.autoencoder_oobleck.AutoencoderOobleckOutput

< >

( latent_dist: OobleckDiagonalGaussianDistribution )

参数

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

AutoencoderOobleck 编码方法的输出。

< > Update on GitHub