# TransformerTemporalModel

動画のようなデータ向けの Transformer モデル。

## TransformerTemporalModel[[diffusers.TransformerTemporalModel]]

#### diffusers.TransformerTemporalModel[[diffusers.TransformerTemporalModel]]

```python
diffusers.TransformerTemporalModel(num_attention_heads: int = 16, attention_head_dim: int = 88, in_channels: int | None = None, out_channels: int | None = None, num_layers: int = 1, dropout: float = 0.0, norm_num_groups: int = 32, cross_attention_dim: int | None = None, attention_bias: bool = False, sample_size: int | None = None, activation_fn: str = 'geglu', norm_elementwise_affine: bool = True, double_self_attention: bool = True, positional_embeddings: str | None = None, num_positional_embeddings: int | None = None)
```

[ソース](https://github.com/huggingface/diffusers/blob/v0.43.0/src/diffusers/models/transformers/transformer_temporal.py#L41)

**パラメータ:**

num_attention_heads (`int`, *optional*, デフォルトは 16) : マルチヘッドアテンションで使用するヘッド数。

attention_head_dim (`int`、*任意*、デフォルトは 88) : 各ヘッドのチャネル数。

in_channels (`int`, *任意*) : 入力と出力のチャネル数（入力が**連続**の場合に指定します）。

num_layers (`int`、*optional*、デフォルトは 1) : 使用する Transformer ブロックの層数。

dropout (`float`、*任意*、デフォルトは 0.0) : 使用する dropout の確率。

cross_attention_dim (`int`, *任意*) : 使用する`encoder_hidden_states`の次元数。

attention_bias (`bool`, *任意*) : `TransformerBlock` のアテンションにバイアスパラメータを含めるかどうかを設定します。

sample_size (`int`、*任意*) : 潜在画像の幅（入力が**discrete**の場合に指定します）。これは位置埋め込みの数を学習するために使用されるため、トレーニング中は固定されます。

activation_fn (`str`、*任意*、デフォルトは`"geglu"`) : フィードフォワードで使用する活性化関数です。サポートされている活性化関数については、`diffusers.models.activations.get_activation`を参照してください。

norm_elementwise_affine (`bool`, *省略可*) : `TransformerBlock`が正規化に学習可能な要素ごとのアフィンパラメータを使用するかどうかを設定します。

double_self_attention (`bool`, *任意*) : 各 `TransformerBlock` に2つの自己注意層を含めるかどうかを設定します。

positional_embeddings : (`str`, *任意*): シーケンス入力に適用する位置埋め込みのタイプです。

num_positional_embeddings : (`int`, *任意*): 位置埋め込みを適用するシーケンスの最大長。

動画のようなデータ向けの Transformer モデル。

#### forward[[diffusers.TransformerTemporalModel.forward]]

```python
forward(hidden_states: Tensor, encoder_hidden_states: typing.Optional[torch.LongTensor] = None, timestep: typing.Optional[torch.LongTensor] = None, class_labels: LongTensor = None, num_frames: int = 1, cross_attention_kwargs: dict[str, typing.Any] | None = None, return_dict: bool = True)
```

[ソース](https://github.com/huggingface/diffusers/blob/v0.43.0/src/diffusers/models/transformers/transformer_temporal.py#L123)

**パラメータ:**

hidden_states (`torch.LongTensor` の場合、形状は `(batch size, num latent pixels)`、`torch.Tensor` の場合、形状は `(batch size, channel, height, width)`) : 入力 hidden_states。

encoder_hidden_states ( `torch.LongTensor`、shape `(batch size, encoder_hidden_states dim)`、*任意*) : クロスアテンション層用の条件付きエンベディングです。指定しない場合、クロスアテンションはデフォルトでセルフアテンションになります。

timestep ( `torch.LongTensor`, *任意*) : デノイジングステップを示すために使用します。`AdaLayerNorm`内で埋め込みとして適用される任意のタイムステップです。

class_labels ( `torch.LongTensor`、shape `(batch size, num classes)`、*任意*) : クラスラベルによる条件付けを示すために使用します。`AdaLayerZeroNorm`内で埋め込みとして適用される任意のクラスラベルです。

num_frames (`int`、*optional*、デフォルトは 1) : バッチごとに処理するフレーム数です。これは hidden states をリサイズするために使用されます。

cross_attention_kwargs (`dict`, *任意*) : 指定された場合、[diffusers.models.attention_processor](https://github.com/huggingface/diffusers/blob/main/src/diffusers/models/attention_processor.py) の `self.processor` で定義されている `AttentionProcessor` に渡される kwargs の辞書です。

return_dict (`bool`、*任意*、デフォルトは`True`) : プレーンなタプルではなく、[TransformerTemporalModelOutput](/docs/diffusers/v0.43.0/ja/api/models/transformer_temporal#diffusers.models.transformers.transformer_temporal.TransformerTemporalModelOutput)を返すかどうか。

**戻り値:** [TransformerTemporalModelOutput](/docs/diffusers/v0.43.0/ja/api/models/transformer_temporal#diffusers.models.transformers.transformer_temporal.TransformerTemporalModelOutput) または `tuple`

`return_dict` が True の場合、[TransformerTemporalModelOutput](/docs/diffusers/v0.43.0/ja/api/models/transformer_temporal#diffusers.models.transformers.transformer_temporal.TransformerTemporalModelOutput) が返され、それ以外の場合は、最初の要素がサンプルテンソルである `tuple` が返されます。

`TransformerTemporal`のforwardメソッド。

## TransformerTemporalModelOutput[[diffusers.models.transformers.transformer_temporal.TransformerTemporalModelOutput]]

#### diffusers.models.transformers.transformer_temporal.TransformerTemporalModelOutput[[diffusers.models.transformers.transformer_temporal.TransformerTemporalModelOutput]]

```python
diffusers.models.transformers.transformer_temporal.TransformerTemporalModelOutput(sample: Tensor)
```

[ソース](https://github.com/huggingface/diffusers/blob/v0.43.0/src/diffusers/models/transformers/transformer_temporal.py#L29)

**パラメータ:**

sample (`torch.Tensor`、形状 `(batch_size x num_frames, num_channels, height, width)`) : `encoder_hidden_states` 入力を条件として出力される隠れ状態。

[TransformerTemporalModel](/docs/diffusers/v0.43.0/ja/api/models/transformer_temporal#diffusers.TransformerTemporalModel)の出力。

