Buckets:
| # UVit2DModel | |
| O modelo [U-ViT](https://hf.co/papers/2301.11093) é um UNet baseado em vision transformer (ViT). Este modelo incorpora elementos do ViT (considera todas as entradas, como tempo, condições e patches de imagem com ruído, como tokens) e do UNet (conexões de salto longas entre as camadas rasas e profundas). A conexão de salto é importante para prever características em nível de pixel. Um bloco convolucional adicional de 3x3 é aplicado antes da saída final para melhorar a qualidade da imagem. | |
| O resumo do artigo é: | |
| *Atualmente, aplicar modelos de difusão no espaço de pixels de imagens de alta resolução é difícil. Em vez disso, as abordagens existentes focam na difusão em espaços de dimensão inferior (difusão latente) ou possuem múltiplos níveis de super-resolução de geração, referidos como cascatas. A desvantagem é que essas abordagens adicionam complexidade adicional ao framework de difusão. Este artigo visa melhorar a difusão de desruidamento para imagens de alta resolução, mantendo o modelo o mais simples possível. O artigo é centrado na pergunta de pesquisa: Como treinar modelos padrão de difusão de desruidamento em imagens de alta resolução e ainda assim obter desempenho comparável a essas abordagens alternativas? As quatro principais descobertas são: 1) o agendamento de ruído deve ser ajustado para imagens de alta resolução, 2) é suficiente escalar apenas uma parte específica da arquitetura, 3) o dropout deve ser adicionado em localizações específicas na arquitetura e 4) o downsampling é uma estratégia eficaz para evitar mapas de recursos de alta resolução. Combinando essas técnicas simples, porém eficazes, alcançamos o estado da arte na geração de imagens entre os modelos de difusão, sem modificadores de amostragem, no ImageNet.* | |
| ## UVit2DModel[[diffusers.UVit2DModel]] | |
| #### diffusers.UVit2DModel[[diffusers.UVit2DModel]] | |
| ```python | |
| diffusers.UVit2DModel(hidden_size: int = 1024, use_bias: bool = False, hidden_dropout: float = 0.0, cond_embed_dim: int = 768, micro_cond_encode_dim: int = 256, micro_cond_embed_dim: int = 1280, encoder_hidden_size: int = 768, vocab_size: int = 8256, codebook_size: int = 8192, in_channels: int = 768, block_out_channels: int = 768, num_res_blocks: int = 3, downsample: bool = False, upsample: bool = False, block_num_heads: int = 12, num_hidden_layers: int = 22, num_attention_heads: int = 16, attention_dropout: float = 0.0, intermediate_size: int = 2816, layer_norm_eps: float = 1e-06, ln_elementwise_affine: bool = True, sample_size: int = 64) | |
| ``` | |
| [Fonte](https://github.com/huggingface/diffusers/blob/main/src/diffusers/models/unets/uvit_2d.py#L38) | |
| #### forward[[diffusers.UVit2DModel.forward]] | |
| ```python | |
| forward(input_ids, encoder_hidden_states, pooled_text_emb, micro_conds, cross_attention_kwargs = None) | |
| ``` | |
| [Fonte](https://github.com/huggingface/diffusers/blob/main/src/diffusers/models/unets/uvit_2d.py#L150) | |
| **Parâmetros:** | |
| input_ids (`torch.LongTensor`) : IDs dos tokens da imagem latente mascarada, com forma `(batch_size, height, width)`. | |
| encoder_hidden_states (`torch.Tensor`) : Embeddings condicionais (embeddings calculados a partir das condições de entrada, como prompts) a serem usados. | |
| pooled_text_emb (`torch.Tensor`) : Embeddings de texto agregados usados para condicionamento adicional. | |
| micro_conds (`torch.Tensor`) : Valores de micro-condicionamento que são incorporados e combinados com `pooled_text_emb`. | |
| cross_attention_kwargs (`dict`, *opcional*) : Um dicionário de kwargs que, se especificado, é passado para o `AttentionProcessor`. | |
| **Retorna:** `torch.Tensor` | |
| Os logits sobre o codebook para cada token de imagem, de forma `(batch_size, codebook_size, height, width)`. | |
| #### set_default_attn_processor[[diffusers.UVit2DModel.set_default_attn_processor]] | |
| ```python | |
| set_default_attn_processor() | |
| ``` | |
| [Fonte](https://github.com/huggingface/diffusers/blob/main/src/diffusers/models/unets/uvit_2d.py#L232) | |
| Desativa os processadores de atenção personalizados e define a implementação padrão de atenção. | |
| ## UVit2DConvEmbed[[diffusers.models.unets.uvit_2d.UVit2DConvEmbed]] | |
| #### diffusers.models.unets.uvit_2d.UVit2DConvEmbed[[diffusers.models.unets.uvit_2d.UVit2DConvEmbed]] | |
| ```python | |
| diffusers.models.unets.uvit_2d.UVit2DConvEmbed(in_channels, block_out_channels, vocab_size, elementwise_affine, eps, bias) | |
| ``` | |
| [Fonte](https://github.com/huggingface/diffusers/blob/main/src/diffusers/models/unets/uvit_2d.py#L248) | |
| ## UVitBlock[[diffusers.models.unets.uvit_2d.UVitBlock]] | |
| #### diffusers.models.unets.uvit_2d.UVitBlock[[diffusers.models.unets.uvit_2d.UVitBlock]] | |
| ```python | |
| diffusers.models.unets.uvit_2d.UVitBlock(channels, num_res_blocks: int, hidden_size, hidden_dropout, ln_elementwise_affine, layer_norm_eps, use_bias, block_num_heads, attention_dropout, downsample: bool, upsample: bool) | |
| ``` | |
| [Fonte](https://github.com/huggingface/diffusers/blob/main/src/diffusers/models/unets/uvit_2d.py#L263) | |
| ## ConvNextBlock[[diffusers.models.unets.uvit_2d.ConvNextBlock]] | |
| #### diffusers.models.unets.uvit_2d.ConvNextBlock[[diffusers.models.unets.uvit_2d.ConvNextBlock]] | |
| ```python | |
| diffusers.models.unets.uvit_2d.ConvNextBlock(channels, layer_norm_eps, ln_elementwise_affine, use_bias, hidden_dropout, hidden_size, res_ffn_factor = 4) | |
| ``` | |
| [Fonte](https://github.com/huggingface/diffusers/blob/main/src/diffusers/models/unets/uvit_2d.py#L362) | |
| ## ConvMlmLayer[[diffusers.models.unets.uvit_2d.ConvMlmLayer]] | |
| #### diffusers.models.unets.uvit_2d.ConvMlmLayer[[diffusers.models.unets.uvit_2d.ConvMlmLayer]] | |
| ```python | |
| diffusers.models.unets.uvit_2d.ConvMlmLayer(block_out_channels: int, in_channels: int, use_bias: bool, ln_elementwise_affine: bool, layer_norm_eps: float, codebook_size: int) | |
| ``` | |
| [Fonte](https://github.com/huggingface/diffusers/blob/main/src/diffusers/models/unets/uvit_2d.py#L407) | |
Xet Storage Details
- Size:
- 5.89 kB
- Xet hash:
- 7db88cedd4e265a5196234d4ca22237443a8727b0913684f138e2775f74b77e2
·
Xet efficiently stores files, intelligently splitting them into unique chunks and accelerating uploads and downloads. More info.