# Couches de normalisation

Couches de normalisation personnalisées pour prendre en charge divers modèles dans 🤗 Diffusers.

## AdaLayerNorm[[diffusers.models.normalization.AdaLayerNorm]]

#### diffusers.models.normalization.AdaLayerNorm[[diffusers.models.normalization.AdaLayerNorm]]

```python
diffusers.models.normalization.AdaLayerNorm(embedding_dim: int, num_embeddings: int | None = None, output_dim: int | None = None, norm_elementwise_affine: bool = False, norm_eps: float = 1e-05, chunk_dim: int = 0)
```

[Source](https://github.com/huggingface/diffusers/blob/v0.43.0/src/diffusers/models/normalization.py#L27)

**Paramètres :**

embedding_dim (`int`) : La taille de chaque vecteur d'embedding.

num_embeddings (`int`, *facultatif*) : La taille du dictionnaire d'embeddings.

output_dim (`int`, *facultatif*) --

norm_elementwise_affine (`bool`, par défaut `False) --

norm_eps (`bool`, par défaut `False`) --

chunk_dim (`int`, par défaut `0`) --

Couche de normalisation modifiée pour intégrer les embeddings de pas de temps.

## AdaLayerNormZero[[diffusers.models.normalization.AdaLayerNormZero]]

#### diffusers.models.normalization.AdaLayerNormZero[[diffusers.models.normalization.AdaLayerNormZero]]

```python
diffusers.models.normalization.AdaLayerNormZero(embedding_dim: int, num_embeddings: int | None = None, norm_type = 'layer_norm', bias = True)
```

[Source](https://github.com/huggingface/diffusers/blob/v0.43.0/src/diffusers/models/normalization.py#L130)

**Paramètres :**

embedding_dim (`int`) : La taille de chaque vecteur d'embedding.

num_embeddings (`int`) : La taille du dictionnaire d'embeddings.

Couche de normalisation adaptative, couche de normalisation adaptative zéro (adaLN-Zero).

## AdaLayerNormSingle[[diffusers.models.normalization.AdaLayerNormSingle]]

#### diffusers.models.normalization.AdaLayerNormSingle[[diffusers.models.normalization.AdaLayerNormSingle]]

```python
diffusers.models.normalization.AdaLayerNormSingle(embedding_dim: int, use_additional_conditions: bool = False)
```

[Source](https://github.com/huggingface/diffusers/blob/v0.43.0/src/diffusers/models/normalization.py#L235)

**Paramètres :**

embedding_dim (`int`) : La taille de chaque vecteur d'embedding.

use_additional_conditions (`bool`) : Indique s'il faut utiliser des conditions supplémentaires pour la normalisation.

Couche de normalisation adaptative, normalisation par couche unique (adaLN-single).

Tel que proposé dans PixArt-Alpha (voir : https://huggingface.co/papers/2310.00426 ; section 2.3).

## AdaGroupNorm[[diffusers.models.normalization.AdaGroupNorm]]

#### diffusers.models.normalization.AdaGroupNorm[[diffusers.models.normalization.AdaGroupNorm]]

```python
diffusers.models.normalization.AdaGroupNorm(embedding_dim: int, out_dim: int, num_groups: int, act_fn: str | None = None, eps: float = 1e-05)
```

[Source](https://github.com/huggingface/diffusers/blob/v0.43.0/src/diffusers/models/normalization.py#L269)

**Paramètres :**

embedding_dim (`int`) : La taille de chaque vecteur d'embedding.

num_embeddings (`int`) : La taille du dictionnaire d'embeddings.

num_groups (`int`) : Le nombre de groupes dans lesquels séparer les canaux.

act_fn (`str`, *facultatif*, par défaut `None`) : La fonction d'activation à utiliser.

eps (`float`, *facultatif*, par défaut `1e-5`) : La valeur epsilon à utiliser pour la stabilité numérique.

Couche GroupNorm modifiée pour intégrer les embeddings de pas de temps.

## AdaLayerNormContinuous[[diffusers.models.normalization.AdaLayerNormContinuous]]

#### diffusers.models.normalization.AdaLayerNormContinuous[[diffusers.models.normalization.AdaLayerNormContinuous]]

```python
diffusers.models.normalization.AdaLayerNormContinuous(embedding_dim: int, conditioning_embedding_dim: int, elementwise_affine = True, eps = 1e-05, bias = True, norm_type = 'layer_norm')
```

[Source](https://github.com/huggingface/diffusers/blob/v0.43.0/src/diffusers/models/normalization.py#L307)

**Paramètres :**

embedding_dim (`int`) : Dimension d'embedding à utiliser lors de la projection.

conditioning_embedding_dim (`int`) : Dimension de la condition d'entrée.

elementwise_affine (`bool`, par défaut `True`) : Drapeau indiquant si une transformation affine doit être appliquée.

eps (`float`, par défaut 1e-5) : Facteur epsilon.

bias (`bias`, par défaut `True`) : drapeau booléen indiquant si le biais doit être utilisé.

norm_type (`str`, par défaut `"layer_norm"`) : Couche de normalisation à utiliser. Valeurs prises en charge : "layer_norm", "rms_norm".

Couche de normalisation adaptative avec une couche de normalisation (layer_norm ou rms_norm).

## RMSNorm[[diffusers.models.normalization.RMSNorm]]

#### diffusers.models.normalization.RMSNorm[[diffusers.models.normalization.RMSNorm]]

```python
diffusers.models.normalization.RMSNorm(dim, eps: float, elementwise_affine: bool = True, bias: bool = False)
```

[Source](https://github.com/huggingface/diffusers/blob/v0.43.0/src/diffusers/models/normalization.py#L472)

**Paramètres :**

dim (`int`) : Nombre de dimensions à utiliser pour `weights`. N'est efficace que lorsque `elementwise_affine` est True.

eps (`float`) : Petite valeur à utiliser lors du calcul de la réciproque de la racine carrée.

elementwise_affine (`bool`, par défaut `True`) : Drapeau indiquant si une transformation affine doit être appliquée.

bias (`bool`, défaut : False) : Si le paramètre `bias` est également entraîné.

RMS Norm, introduite dans https://huggingface.co/papers/1910.07467 par Zhang et al.

## GlobalResponseNorm[[diffusers.models.normalization.GlobalResponseNorm]]

#### diffusers.models.normalization.GlobalResponseNorm[[diffusers.models.normalization.GlobalResponseNorm]]

```python
diffusers.models.normalization.GlobalResponseNorm(dim)
```

[Source](https://github.com/huggingface/diffusers/blob/v0.43.0/src/diffusers/models/normalization.py#L563)

**Paramètres :**

dim (`int`) : Nombre de dimensions à utiliser pour `gamma` et `beta`.

Normalisation de la réponse globale, telle qu'introduite dans ConvNeXt-v2 (https://huggingface.co/papers/2301.00808).

## LuminaLayerNormContinuous[[diffusers.models.normalization.LuminaLayerNormContinuous]]

#### diffusers.models.normalization.LuminaLayerNormContinuous[[diffusers.models.normalization.LuminaLayerNormContinuous]]

```python
diffusers.models.normalization.LuminaLayerNormContinuous(embedding_dim: int, conditioning_embedding_dim: int, elementwise_affine = True, eps = 1e-05, bias = True, norm_type = 'layer_norm', out_dim: int | None = None)
```

[Source](https://github.com/huggingface/diffusers/blob/v0.43.0/src/diffusers/models/normalization.py#L354)

## SD35AdaLayerNormZeroX[[diffusers.models.normalization.SD35AdaLayerNormZeroX]]

#### diffusers.models.normalization.SD35AdaLayerNormZeroX[[diffusers.models.normalization.SD35AdaLayerNormZeroX]]

```python
diffusers.models.normalization.SD35AdaLayerNormZeroX(embedding_dim: int, norm_type: str = 'layer_norm', bias: bool = True)
```

[Source](https://github.com/huggingface/diffusers/blob/v0.43.0/src/diffusers/models/normalization.py#L96)

**Paramètres :**

embedding_dim (`int`) : La taille de chaque vecteur d'embedding.

num_embeddings (`int`) : La taille du dictionnaire d'embeddings.

Couche de normalisation adaptative, couche de normalisation adaptative zéro (AdaLN-Zero).

## AdaLayerNormZeroSingle[[diffusers.models.normalization.AdaLayerNormZeroSingle]]

#### diffusers.models.normalization.AdaLayerNormZeroSingle[[diffusers.models.normalization.AdaLayerNormZeroSingle]]

```python
diffusers.models.normalization.AdaLayerNormZeroSingle(embedding_dim: int, norm_type = 'layer_norm', bias = True)
```

[Source](https://github.com/huggingface/diffusers/blob/v0.43.0/src/diffusers/models/normalization.py#L173)

**Paramètres :**

embedding_dim (`int`) : La taille de chaque vecteur d'embedding.

num_embeddings (`int`) : La taille du dictionnaire d'embeddings.

Couche de normalisation adaptative, couche de normalisation adaptative zéro (adaLN-Zero).

## LuminaRMSNormZero[[diffusers.models.normalization.LuminaRMSNormZero]]

#### diffusers.models.normalization.LuminaRMSNormZero[[diffusers.models.normalization.LuminaRMSNormZero]]

```python
diffusers.models.normalization.LuminaRMSNormZero(embedding_dim: int, norm_eps: float, norm_elementwise_affine: bool)
```

[Source](https://github.com/huggingface/diffusers/blob/v0.43.0/src/diffusers/models/normalization.py#L205)

**Paramètres :**

embedding_dim (`int`) : La taille de chaque vecteur d'embedding.

Norm layer adaptive RMS normalization zero.

## LpNorm[[diffusers.models.normalization.LpNorm]]

#### diffusers.models.normalization.LpNorm[[diffusers.models.normalization.LpNorm]]

```python
diffusers.models.normalization.LpNorm(p: int = 2, dim: int = -1, eps: float = 1e-12)
```

[Source](https://github.com/huggingface/diffusers/blob/v0.43.0/src/diffusers/models/normalization.py#L583)

## CogView3PlusAdaLayerNormZeroTextImage[[diffusers.models.normalization.CogView3PlusAdaLayerNormZeroTextImage]]

#### diffusers.models.normalization.CogView3PlusAdaLayerNormZeroTextImage[[diffusers.models.normalization.CogView3PlusAdaLayerNormZeroTextImage]]

```python
diffusers.models.normalization.CogView3PlusAdaLayerNormZeroTextImage(embedding_dim: int, dim: int)
```

[Source](https://github.com/huggingface/diffusers/blob/v0.43.0/src/diffusers/models/normalization.py#L403)

**Paramètres :**

embedding_dim (`int`) : La taille de chaque vecteur d'embedding.

num_embeddings (`int`) : La taille du dictionnaire d'embeddings.

Couche de normalisation adaptative, couche de normalisation adaptative zéro (adaLN-Zero).

## CogVideoXLayerNormZero[[diffusers.models.normalization.CogVideoXLayerNormZero]]

#### diffusers.models.normalization.CogVideoXLayerNormZero[[diffusers.models.normalization.CogVideoXLayerNormZero]]

```python
diffusers.models.normalization.CogVideoXLayerNormZero(conditioning_dim: int, embedding_dim: int, elementwise_affine: bool = True, eps: float = 1e-05, bias: bool = True)
```

[Source](https://github.com/huggingface/diffusers/blob/v0.43.0/src/diffusers/models/normalization.py#L448)

## MochiRMSNormZero[[diffusers.models.transformers.transformer_mochi.MochiRMSNormZero]]

#### diffusers.models.transformers.transformer_mochi.MochiRMSNormZero[[diffusers.models.transformers.transformer_mochi.MochiRMSNormZero]]

```python
diffusers.models.transformers.transformer_mochi.MochiRMSNormZero(embedding_dim: int, hidden_dim: int, eps: float = 1e-05, elementwise_affine: bool = False)
```

[Source](https://github.com/huggingface/diffusers/blob/v0.43.0/src/diffusers/models/transformers/transformer_mochi.py#L88)

**Paramètres :**

embedding_dim (`int`) : La taille de chaque vecteur d'embedding.

Adaptive RMS Norm utilisé dans Mochi.

## MochiRMSNorm[[diffusers.models.normalization.MochiRMSNorm]]

#### diffusers.models.normalization.MochiRMSNorm[[diffusers.models.normalization.MochiRMSNorm]]

```python
diffusers.models.normalization.MochiRMSNorm(dim, eps: float, elementwise_affine: bool = True)
```

[Source](https://github.com/huggingface/diffusers/blob/v0.43.0/src/diffusers/models/normalization.py#L535)

