# Слои нормализации

Специализированные слои нормализации для поддержки различных моделей в 🤗 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)
```

[Источник](https://github.com/huggingface/diffusers/blob/v0.43.0/src/diffusers/models/normalization.py#L27)

**Параметры:**

embedding_dim (`int`) : размер каждого вектора эмбеддинга.

num_embeddings (`int`, *необязательный*) : Размер словаря эмбеддингов.

output_dim (`int`, *необязательный*) --

norm_elementwise_affine (`bool`, по умолчанию `False) --

norm_eps (`bool`, по умолчанию `False`) --

chunk_dim (`int`, по умолчанию `0`) --

Слой нормализации изменён для включения эмбеддингов временных шагов.

## 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)
```

[Источник](https://github.com/huggingface/diffusers/blob/v0.43.0/src/diffusers/models/normalization.py#L130)

**Параметры:**

embedding_dim (`int`) : размер каждого вектора эмбеддинга.

num_embeddings (`int`) : Размер словаря эмбеддингов.

Нормализующий слой адаптивная нормализация нулей (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)
```

[Источник](https://github.com/huggingface/diffusers/blob/v0.43.0/src/diffusers/models/normalization.py#L235)

**Параметры:**

embedding_dim (`int`) : размер каждого вектора эмбеддинга.

use_additional_conditions (`bool`) : Использовать дополнительные условия для нормализации или нет.

Нормализующий слой адаптивная нормализация по слоям single (adaLN-single).

Как предложено в PixArt-Alpha (см.: https://huggingface.co/papers/2310.00426; раздел 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)
```

[Источник](https://github.com/huggingface/diffusers/blob/v0.43.0/src/diffusers/models/normalization.py#L269)

**Параметры:**

embedding_dim (`int`) : размер каждого вектора эмбеддинга.

num_embeddings (`int`) : Размер словаря эмбеддингов.

num_groups (`int`) : Количество групп, на которые разделяются каналы.

act_fn (`str`, *необязательный*, по умолчанию `None`) : Функция активации, которую следует использовать.

eps (`float`, *необязательный*, по умолчанию `1e-5`) : Значение эпсилона, используемое для численной стабильности.

Слой GroupNorm, модифицированный для включения эмбеддингов временных шагов.

## 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')
```

[Источник](https://github.com/huggingface/diffusers/blob/v0.43.0/src/diffusers/models/normalization.py#L307)

**Параметры:**

embedding_dim (`int`) : Размерность эмбеддинга, используемая при проекции.

conditioning_embedding_dim (`int`) : Размерность входного условия.

elementwise_affine (`bool`, по умолчанию `True`) : Булев флаг, указывающий, следует ли применять аффинное преобразование.

eps (`float`, по умолчанию 1e-5) : Коэффициент эпсилона.

bias (`bias`, по умолчанию `True`) : Булев флаг, указывающий, следует ли использовать смещение.

norm_type (`str`, по умолчанию `"layer_norm"`) : Слой нормализации для использования. Поддерживаемые значения: "layer_norm", "rms_norm".

Слой адаптивной нормализации со слоем нормализации (layer_norm или 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)
```

[Источник](https://github.com/huggingface/diffusers/blob/v0.43.0/src/diffusers/models/normalization.py#L472)

**Параметры:**

dim (`int`) : Количество измерений, используемых для `weights`. Действует только при `elementwise_affine` = True.

eps (`float`) : Малое значение, используемое при вычислении обратной величины квадратного корня.

elementwise_affine (`bool`, по умолчанию `True`) : Булев флаг, указывающий, следует ли применять аффинное преобразование.

bias (`bool`, по умолчанию False) : Если также обучать параметр `bias`.

RMS Norm, предложенный в https://huggingface.co/papers/1910.07467 Zhang et al.

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

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

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

[Источник](https://github.com/huggingface/diffusers/blob/v0.43.0/src/diffusers/models/normalization.py#L563)

**Параметры:**

dim (`int`) : Количество измерений, используемых для `gamma` и `beta`.

Глобальная нормализация ответа, предложенная в 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)
```

[Источник](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)
```

[Источник](https://github.com/huggingface/diffusers/blob/v0.43.0/src/diffusers/models/normalization.py#L96)

**Параметры:**

embedding_dim (`int`) : размер каждого вектора эмбеддинга.

num_embeddings (`int`) : Размер словаря эмбеддингов.

Нормализующий слой адаптивной нормализации нулей (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)
```

[Источник](https://github.com/huggingface/diffusers/blob/v0.43.0/src/diffusers/models/normalization.py#L173)

**Параметры:**

embedding_dim (`int`) : размер каждого вектора эмбеддинга.

num_embeddings (`int`) : Размер словаря эмбеддингов.

Нормализующий слой адаптивная нормализация нулей (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)
```

[Источник](https://github.com/huggingface/diffusers/blob/v0.43.0/src/diffusers/models/normalization.py#L205)

**Параметры:**

embedding_dim (`int`) : размер каждого вектора эмбеддинга.

Слой нормализации адаптивная RMS-нормализация ноль.

## 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)
```

[Источник](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)
```

[Источник](https://github.com/huggingface/diffusers/blob/v0.43.0/src/diffusers/models/normalization.py#L403)

**Параметры:**

embedding_dim (`int`) : размер каждого вектора эмбеддинга.

num_embeddings (`int`) : Размер словаря эмбеддингов.

Нормализующий слой адаптивная нормализация нулей (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)
```

[Источник](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)
```

[Источник](https://github.com/huggingface/diffusers/blob/v0.43.0/src/diffusers/models/transformers/transformer_mochi.py#L88)

**Параметры:**

embedding_dim (`int`) : размер каждого вектора эмбеддинга.

Адаптивная RMS Norm, используемая в 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)
```

[Источник](https://github.com/huggingface/diffusers/blob/v0.43.0/src/diffusers/models/normalization.py#L535)

