Diffusers documentation
TransformerTemporalModel
TransformerTemporalModel
Một mô hình Transformer cho dữ liệu dạng video.
TransformerTemporalModel
lớp diffusers.TransformerTemporalModel
< source >( num_attention_heads: int = 16attention_head_dim: int = 88in_channels: int | None = Noneout_channels: int | None = Nonenum_layers: int = 1dropout: float = 0.0norm_num_groups: int = 32cross_attention_dim: int | None = Noneattention_bias: bool = Falsesample_size: int | None = Noneactivation_fn: str = 'geglu'norm_elementwise_affine: bool = Truedouble_self_attention: bool = Truepositional_embeddings: str | None = Nonenum_positional_embeddings: int | None = None )
Tham số
- num_attention_heads (
int, tùy chọn, mặc định là 16) — Số lượng đầu (heads) được sử dụng cho cơ chế chú ý đa đầu (multi-head attention). - attention_head_dim (
int, tùy chọn, mặc định là 88) — Số lượng kênh trong mỗi head. - in_channels (
int, tùy chọn) — Số lượng kênh trong đầu vào và đầu ra (cần chỉ định nếu đầu vào là liên tục). - num_layers (
int, tùy chọn, mặc định là 1) — Số lượng lớp khối Transformer cần sử dụng. - dropout (
float, tùy chọn, mặc định là 0.0) — Xác suất dropout cần sử dụng. - cross_attention_dim (
int, tùy chọn) — Số chiều củaencoder_hidden_statesđược sử dụng. - attention_bias (
bool, tùy chọn) — Cấu hình xem chú ý củaTransformerBlockcó nên chứa tham số bias hay không. - sample_size (
int, tùy chọn) — Độ rộng của các ảnh tiềm ẩn (cần chỉ định nếu đầu vào là discrete). Giá trị này được cố định trong quá trình huấn luyện vì nó được dùng để học một số lượng embedding vị trí. - activation_fn (
str, tùy chọn, mặc định là"geglu") — Hàm kích hoạt được sử dụng trong feed-forward. Xemdiffusers.models.activations.get_activationđể biết các hàm kích hoạt được hỗ trợ. - norm_elementwise_affine (
bool, tùy chọn) — Cấu hình xemTransformerBlockcó nên sử dụng các tham số affine elementwise có thể học được cho phép chuẩn hóa hay không. - double_self_attention (
bool, tùy chọn) — Cấu hình xem mỗiTransformerBlockcó nên chứa hai lớp self-attention hay không. - positional_embeddings — (
str, tùy chọn): Loại positional embeddings được áp dụng cho đầu vào chuỗi trước khi truyền đi sử dụng. - num_positional_embeddings — (
int, tuỳ chọn): Chiều dài tối đa của chuỗi để áp dụng positional embeddings.
Một mô hình Transformer cho dữ liệu dạng video.
forward
< source >( hidden_states: Tensorencoder_hidden_states: typing.Optional[torch.LongTensor] = Nonetimestep: typing.Optional[torch.LongTensor] = Noneclass_labels: LongTensor = Nonenum_frames: int = 1cross_attention_kwargs: dict[str, typing.Any] | None = Nonereturn_dict: bool = True ) → TransformerTemporalModelOutput or tuple
Tham số
- hidden_states (
torch.LongTensorcó hình dạng(batch size, num latent pixels)nếu rời rạc,torch.Tensorcó hình dạng(batch size, channel, height, width)nếu liên tục) — hidden_states đầu vào. - encoder_hidden_states (
torch.LongTensorcó hình dạng(batch size, encoder_hidden_states dim), tùy chọn) — Các embedding điều kiện cho lớp cross attention. Nếu không được cung cấp, cross-attention sẽ mặc định là self-attention. - timestep (
torch.LongTensor, tùy chọn) — Dùng để chỉ bước khử nhiễu. Timestep tùy chọn được áp dụng dưới dạng embedding trongAdaLayerNorm. - class_labels (
torch.LongTensorcó shape(batch size, num classes), tùy chọn) — Dùng để chỉ định nhãn lớp điều kiện. Các nhãn lớp tùy chọn sẽ được áp dụng dưới dạng embedding trongAdaLayerZeroNorm. - num_frames (
int, tùy chọn, mặc định là 1) — Số lượng khung hình cần xử lý cho mỗi batch. Tham số này được dùng để thay đổi hình dạng (reshape) của các trạng thái ẩn (hidden states). - cross_attention_kwargs (
dict, tùy chọn) — Một từ điển kwargs, nếu được chỉ định, sẽ được truyền đếnAttentionProcessornhư đã định nghĩa dướiself.processortrong diffusers.models.attention_processor. - return_dict (
bool, tùy chọn, mặc định làTrue) — Có nên trả về một TransformerTemporalModelOutput thay vì một tuple thông thường hay không.
Trả về
TransformerTemporalModelOutput hoặc tuple
Nếu return_dict là True, một
TransformerTemporalModelOutput sẽ được trả về, ngược lại một
tuple trong đó phần tử đầu tiên là tensor mẫu.
Phương thức forward của TransformerTemporal.
TransformerTemporalModelOutput
lớp diffusers.models.transformers.transformer_temporal.TransformerTemporalModelOutput
< source >( sample: Tensor )
Đầu ra của TransformerTemporalModel.