Buckets:
| # AutoencoderSAME | |
| **SAME**(Semantically-Aligned Music Encoder)オートエンコーダーは、[Stable Audio 3](https://stability.ai/news-updates/meet-stable-audio-3-the-model-family-built-for-artistic-experimentation-with-open-weight-models)によって使用され、ステレオ音声波形をコンパクトな潜在変数シーケンスに圧縮し、再構築するために用いられます。 | |
| エンコーダーは`SAMETransformerResamplingBlock`モジュールをスタックし、各モジュールは固定数のオーディオパッチフレームをグループ化し、差分トランスフォーマーを通じて1つの学習可能な出力トークンを生成します。デコーダーはこの過程を逆転させ、各潜在トークンをオーディオフレームのパッチに再展開します。 | |
| ソフトノームボトルネック(`SoftNormBottleneck`)は、拡散モデルの前後で潜在変数を正規化し、安定した学習ダイナミクスを実現します。 | |
| ## AutoencoderSAME[[diffusers.AutoencoderSAME]] | |
| #### diffusers.AutoencoderSAME[[diffusers.AutoencoderSAME]] | |
| ```python | |
| diffusers.AutoencoderSAME(audio_channels: int = 2, patch_size: int = 256, encoder_channels: int = 128, encoder_c_mults: typing.List[int] = (6,), encoder_strides: typing.List[int] = (16,), encoder_transformer_depths: typing.List[int] = (6,), latent_dim: int = 256, use_differential_attention: bool = True, dim_heads: int = 64, ff_mult: int = 3, sliding_window: int = 1, encoder_sinusoidal_blocks: typing.List[int] = (0,), decoder_sinusoidal_blocks: typing.List[int] = (0,), sampling_rate: int = 44100) | |
| ``` | |
| [ソース](https://github.com/huggingface/diffusers/blob/main/src/diffusers/models/autoencoders/autoencoder_same.py#L608) | |
| **パラメータ:** | |
| audio_channels : 音声チャネル数(ステレオの場合は2)。 | |
| patch_size : TRBエンコーダーの前に適用される、重複しないパッチサイズ(TRBデコーダーの後に逆転されます)。`patch_size ×`の値が、全体のダウンサンプリング比率に寄与します。本番環境での値: 256。 | |
| encoder_channels : TRBのベースチャネル数。SAME-Sでは128、SAME-Lでは256です。 | |
| encoder_c_mults : 各 TRB レベルのチャネル乗数(TRB ごとに 1 項目)。SAME-S と SAME-L はどちらも `(6,)` を使用します。これは、隠れ次元が `encoder_channels × 6` である単一の TRB です。 | |
| encoder_strides : 各 TRB レベルにおけるダウン/アップサンプリングのストライド。SAME-S と SAME-L の両方で `(16,)` が使用されます — ストライド 16 の TRB が 1 つです。 | |
| encoder_transformer_depths : TRBレベルあたりのTransformerレイヤー数。SAME-Sでは6、SAME-Lでは12です。 | |
| latent_dim : 潜在空間の次元数。両方のバリアントで256です。 | |
| use_differential_attention : `True`の場合、各TRB Transformerブロック内で微分注意機構を使用します(SAME-S/Lではデフォルトで有効)。 | |
| dim_heads : Attention head の次元。本番環境の SAME-S/L では 64 です。 | |
| ff_mult : SwiGLUフィードフォワードの拡張係数。 | |
| sliding_window : バンドマスク注意機構におけるスライディングウィンドウの半幅(潜在変数単位)。本番環境の SAME-S/L では 1 を使用します。 | |
| encoder_sinusoidal_blocks : エンコーダー内で`sin` FFNゲーティングを使用する末尾のTransformer層のTRBごとの数(SAME-L: `(0,)`)。 | |
| decoder_sinusoidal_blocks : デコーダー内で`sin` FFNゲーティングを使用する末尾のTransformer層のTRBごとの数(SAME-L: `(8,)`)。 | |
| sampling_rate : 音声のサンプリングレート(Hz単位、例: 44100)。 | |
| *Stable Audio 3*のSemantically-Aligned Music Encoder (SAME)オートエンコーダー([arXiv 2605.17991](https://arxiv.org/abs/2605.17991))。 | |
| モデルは以下で構成されています: | |
| - **パッチ埋め込み** — ステレオオーディオを重複しないパッチにリシェイプし、時間軸をチャネル軸に置き換えます(`patch_size ×` のダウンサンプリング、学習可能なパラメータなし)。 | |
| - **エンコーダーTRBスタック** — `∏(encoder_strides)`倍の係数でさらにダウンサンプリングを行う`SAMETransformerResamplingBlock`ブロック。 | |
| - **Soft-norm bottleneck** — 実行標準偏差を持つ学習可能なアフィン正規化。 | |
| - **Decoder TRB スタック** — エンコーダーを逆順に反映します。 | |
| - **Unpatch** — チャネルを時間次元に再整形します。 | |
| 総ダウンサンプリング比: `patch_size × ∏(encoder_strides)`。 | |
| デフォルトのハイパーパラメータは、**SAME-S**チェックポイント(`stabilityai/SAME-S`)と一致しています。**SAME-L**(`stabilityai/SAME-L`、SA3 Mediumで使用)を読み込むには、`encoder_channels=256, encoder_transformer_depths=(12,)`を渡してください。 | |
| ```python | |
| # SAME-S (108 M params, used by SA3 small models) model = AutoencoderSAME() # default values | |
| # SAME-L (852 M params, used by SA3 Medium) model = AutoencoderSAME(encoder_channels=256, | |
| encoder_transformer_depths=(12,)) | |
| ``` | |
| #### encode[[diffusers.AutoencoderSAME.encode]] | |
| ```python | |
| encode(sample: Tensor, return_dict: bool = True) | |
| ``` | |
| [ソース](https://github.com/huggingface/diffusers/blob/main/src/diffusers/models/autoencoders/autoencoder_same.py#L733) | |
| **パラメータ:** | |
| sample : `(B, audio_channels, T)` の波形テンソル。 | |
| return_dict : `True`の場合、`AutoencoderSAMEOutput`を返します。 | |
| **戻り値:** | |
| `(B, latent_dim, T // downsampling_ratio)` の形状を持つ潜在テンソル(*return_dict* が `True` の場合、`AutoencoderSAMEOutput` にラップされます)。 | |
| ステレオオーディオを潜在変数にエンコードします。 | |
| #### decode[[diffusers.AutoencoderSAME.decode]] | |
| ```python | |
| decode(latents: Tensor, return_dict: bool = True) | |
| ``` | |
| [ソース](https://github.com/huggingface/diffusers/blob/main/src/diffusers/models/autoencoders/autoencoder_same.py#L758) | |
| **パラメータ:** | |
| latents : `(B, latent_dim, T_latent)` 潜在テンソル。 | |
| return_dict : `True` の場合、`AutoencoderSAMEDecoderOutput` を返します。 | |
| **戻り値:** | |
| `(B, audio_channels, T_latent × downsampling_ratio)` の形状を持つ波形テンソル(*return_dict* が `True` の場合、`AutoencoderSAMEDecoderOutput` にラップされます)。 | |
| 潜在変数(latents)をステレオ音声にデコードします。 | |
| #### forward[[diffusers.AutoencoderSAME.forward]] | |
| ```python | |
| forward(sample: Tensor, return_dict: bool = True) | |
| ``` | |
| [ソース](https://github.com/huggingface/diffusers/blob/main/src/diffusers/models/autoencoders/autoencoder_same.py#L783) | |
| **パラメータ:** | |
| sample : `(B, audio_channels, T)` の波形テンソル。 | |
| return_dict : `True` の場合、`AutoencoderSAMEDecoderOutput` を返します。 | |
| **戻り値:** | |
| 再構成された波形(*sample* と同じ形状ですが、パディングにより長くなる場合があります)。*return_dict* が `True` の場合、`AutoencoderSAMEDecoderOutput` にラップされます。 | |
| *sample* をエンコードし、すぐにデコードします(再構成)。 | |
| ## SAMETransformerResamplingBlock[[diffusers.models.autoencoders.autoencoder_same.SAMETransformerResamplingBlock]] | |
| #### diffusers.models.autoencoders.autoencoder_same.SAMETransformerResamplingBlock[[diffusers.models.autoencoders.autoencoder_same.SAMETransformerResamplingBlock]] | |
| ```python | |
| diffusers.models.autoencoders.autoencoder_same.SAMETransformerResamplingBlock(in_channels: int, out_channels: int, stride: int, mode: str = 'encoder', transformer_depth: int = 3, dim_heads: int = 128, use_differential: bool = True, ff_mult: int = 3, sliding_window: int = 1, sinusoidal_blocks: int = 0) | |
| ``` | |
| [ソース](https://github.com/huggingface/diffusers/blob/main/src/diffusers/models/autoencoders/autoencoder_same.py#L294) | |
| **パラメータ:** | |
| in_channels : 入力チャネル数。 | |
| out_channels : 出力チャネル数。 | |
| stride : 下/上サンプリング係数。 | |
| mode : `"encoder"` または `"decoder"`。 | |
| transformer_depth : `TransformerBlock` レイヤーの数。 | |
| dim_heads : Attentionヘッドの次元。 | |
| use_differential : 微分注意機構を使用するかどうか。 | |
| ff_mult : Feed-forward 拡張係数。 | |
| sliding_window : 潜在変数におけるスライディングウィンドウの半幅(バンドの半幅は `sliding_window * (stride + 1)` です)。 | |
| sinusoidal_blocks `sin` FFN ゲーティングを SiLU の代わりに使用する、末尾の Transformer レイヤーの数。 | |
| SAMEの基本的な構成要素です。 | |
| **エンコーダーモード**(ストライド S): 連続する S 個の入力フレームを 1 セグメントにグループ化し、学習可能な出力埋め込みを 1 つ付加します。その後、フラット化されたセグメントシーケンス全体に対して D 層の Transformer を実行し、出力埋め込みのみを保持します → S 倍ダウンサンプリング。 | |
| **デコーダーモード**(ストライド S):1つの入力フレームを S 個の学習可能な出力埋め込みとグループ化し、フラット化された完全なシーケンス全体に対して D 層の Transformer を実行した上で、S 個の出力埋め込みを保持します → S 倍のアップサンプリング。 | |
| Attention は、フラット化されたセグメントシーケンスに対して、重複する*スライディングウィンドウ*のバンドマスクを使用します。各トークンは、左右それぞれ`sliding_window * (stride + 1)`個の近傍トークンにアテンションを向けます。RoPE はシーケンス全体の長さに対して計算されます。これにより、参照実装と完全に一致します(重複しない単一のチャンクでは、1つのセグメントでのみ一致します)。 | |
| ## AutoencoderSAMEOutput[[diffusers.models.autoencoders.autoencoder_same.AutoencoderSAMEOutput]] | |
| #### diffusers.models.autoencoders.autoencoder_same.AutoencoderSAMEOutput[[diffusers.models.autoencoders.autoencoder_same.AutoencoderSAMEOutput]] | |
| ```python | |
| diffusers.models.autoencoders.autoencoder_same.AutoencoderSAMEOutput(latents: Tensor) | |
| ``` | |
| [ソース](https://github.com/huggingface/diffusers/blob/main/src/diffusers/models/autoencoders/autoencoder_same.py#L52) | |
| [AutoencoderSAME.encode()](/docs/diffusers/main/ja/api/models/autoencoder_same#diffusers.AutoencoderSAME.encode)の出力。 | |
| ## AutoencoderSAMEDecoderOutput[[diffusers.models.autoencoders.autoencoder_same.AutoencoderSAMEDecoderOutput]] | |
| #### diffusers.models.autoencoders.autoencoder_same.AutoencoderSAMEDecoderOutput[[diffusers.models.autoencoders.autoencoder_same.AutoencoderSAMEDecoderOutput]] | |
| ```python | |
| diffusers.models.autoencoders.autoencoder_same.AutoencoderSAMEDecoderOutput(sample: Tensor) | |
| ``` | |
| [ソース](https://github.com/huggingface/diffusers/blob/main/src/diffusers/models/autoencoders/autoencoder_same.py#L59) | |
| [AutoencoderSAME.decode()](/docs/diffusers/main/ja/api/models/autoencoder_same#diffusers.AutoencoderSAME.decode)の出力。 | |
Xet Storage Details
- Size:
- 11.3 kB
- Xet hash:
- c83f123e7512f17a22cafe69c16909f8d8150223d4342360f6a1099103c7de29
·
Xet efficiently stores files, intelligently splitting them into unique chunks and accelerating uploads and downloads. More info.