Diffusers documentation

Normalization 레이어

You are viewing main version, which requires installation from source. If you'd like regular pip install, checkout the latest stable version (v0.42.1).
Hugging Face's logo
Join the Hugging Face community

and get access to the augmented documentation experience

to get started

Normalization 레이어

🤗 Diffusers에서 다양한 모델을 지원하기 위한 사용자 정의 정규화 레이어.

AdaLayerNorm

class diffusers.models.normalization.AdaLayerNorm

< >

( embedding_dim: intnum_embeddings: int | None = Noneoutput_dim: int | None = Nonenorm_elementwise_affine: bool = Falsenorm_eps: float = 1e-05chunk_dim: int = 0 )

매개변수

  • embedding_dim (int) — 각 임베딩 벡터의 크기입니다.
  • num_embeddings (int, 선택 사항) — 임베딩 사전의 크기입니다.
  • output_dim (int, 선택 사항) —
  • norm_elementwise_affine (bool, 기본값 `False) —
  • norm_eps (bool, 기본값 False) —
  • chunk_dim (int, 기본값 0) —

timestep 임베딩을 포함하도록 수정된 Norm 레이어.

AdaLayerNormZero

클래스 diffusers.models.normalization.AdaLayerNormZero

< >

( embedding_dim: intnum_embeddings: int | None = Nonenorm_type = 'layer_norm'bias = True )

매개변수

  • embedding_dim (int) — 각 임베딩 벡터의 크기입니다.
  • num_embeddings (int) — 임베딩 사전의 크기.

Norm layer adaptive layer norm zero (adaLN-Zero).

AdaLayerNormSingle

class diffusers.models.normalization.AdaLayerNormSingle

< >

( embedding_dim: intuse_additional_conditions: bool = False )

매개변수

  • embedding_dim (int) — 각 임베딩 벡터의 크기입니다.
  • use_additional_conditions (bool) — 정규화에 추가 조건을 사용할지 여부.

Norm 레이어 적응형 레이어 정규화 단일(adaLN-single).

PixArt-Alpha에서 제안한 바와 같습니다(참조: https://huggingface.co/papers/2310.00426; 2.3절).

AdaGroupNorm

class diffusers.models.normalization.AdaGroupNorm

< >

( embedding_dim: intout_dim: intnum_groups: intact_fn: str | None = Noneeps: float = 1e-05 )

매개변수

  • embedding_dim (int) — 각 임베딩 벡터의 크기입니다.
  • num_embeddings (int) — 임베딩 사전의 크기.
  • num_groups (int) — 채널을 분리할 그룹의 수.
  • act_fn (str, 선택 사항, 기본값 None) — 사용할 활성화 함수입니다.
  • eps (float, 선택 사항, 기본값 1e-5) — 수치적 안정성을 위해 사용할 epsilon 값입니다.

timestep 임베딩을 통합하도록 수정된 GroupNorm 레이어.

AdaLayerNormContinuous

클래스 diffusers.models.normalization.AdaLayerNormContinuous

< >

( embedding_dim: intconditioning_embedding_dim: intelementwise_affine = Trueeps = 1e-05bias = Truenorm_type = 'layer_norm' )

매개변수

  • embedding_dim (int) — 투영 과정에서 사용할 임베딩 차원.
  • conditioning_embedding_dim (int) — 입력 조건의 차원.
  • elementwise_affine (bool, 기본값 True) — Affine 변환을 적용할지 여부를 나타내는 Boolean 플래그입니다.
  • eps (float, 기본값 1e-5) — Epsilon 계수.
  • bias (bias, 기본값 True) — bias를 사용할지 여부를 나타내는 Boolean 플래그.
  • norm_type (str, 기본값 "layer_norm") — 사용할 정규화 레이어입니다. 지원되는 값: “layer_norm”, “rms_norm”.

norm 레이어(layer_norm 또는 rms_norm)를 갖춘 적응형 정규화 레이어.

RMSNorm

클래스 diffusers.models.normalization.RMSNorm

< >

( dimeps: floatelementwise_affine: bool = Truebias: bool = False )

매개변수

  • dim (int) — weights에 사용할 차원의 수입니다. elementwise_affine가 True일 때만 적용됩니다.
  • eps (float) — 제곱근의 역수를 계산할 때 사용할 작은 값.
  • elementwise_affine (bool, 기본값 True) — Affine 변환을 적용할지 여부를 나타내는 Boolean 플래그입니다.
  • bias (bool, 기본값 False) — bias 파라미터도 함께 학습할지 여부.

Zhang et al.이 https://huggingface.co/papers/1910.07467에서 도입한 RMS Norm

GlobalResponseNorm

class diffusers.models.normalization.GlobalResponseNorm

< >

( dim )

매개변수

  • dim (int) — gamma와 beta에 사용할 차원의 수.

ConvNeXt-v2(https://huggingface.co/papers/2301.00808)에서 도입된 전역 응답 정규화(Global response normalization).

LuminaLayerNormContinuous

클래스 diffusers.models.normalization.LuminaLayerNormContinuous

< >

( embedding_dim: intconditioning_embedding_dim: intelementwise_affine = Trueeps = 1e-05bias = Truenorm_type = 'layer_norm'out_dim: int | None = None )

SD35AdaLayerNormZeroX

클래스 diffusers.models.normalization.SD35AdaLayerNormZeroX

< >

( embedding_dim: intnorm_type: str = 'layer_norm'bias: bool = True )

매개변수

  • embedding_dim (int) — 각 임베딩 벡터의 크기입니다.
  • num_embeddings (int) — 임베딩 사전의 크기.

Norm 레이어 적응형 레이어 노름 제로(AdaLN-Zero).

AdaLayerNormZeroSingle

class diffusers.models.normalization.AdaLayerNormZeroSingle

< >

( embedding_dim: intnorm_type = 'layer_norm'bias = True )

매개변수

  • embedding_dim (int) — 각 임베딩 벡터의 크기입니다.
  • num_embeddings (int) — 임베딩 사전의 크기.

Norm layer adaptive layer norm zero (adaLN-Zero).

LuminaRMSNormZero

클래스 diffusers.models.normalization.LuminaRMSNormZero

< >

( embedding_dim: intnorm_eps: floatnorm_elementwise_affine: bool )

매개변수

  • embedding_dim (int) — 각 임베딩 벡터의 크기입니다.

Norm 레이어 적응형 RMS 정규화 zero.

LpNorm

클래스 diffusers.models.normalization.LpNorm

< >

( p: int = 2dim: int = -1eps: float = 1e-12 )

CogView3PlusAdaLayerNormZeroTextImage

클래스 diffusers.models.normalization.CogView3PlusAdaLayerNormZeroTextImage

< >

( embedding_dim: intdim: int )

매개변수

  • embedding_dim (int) — 각 임베딩 벡터의 크기입니다.
  • num_embeddings (int) — 임베딩 사전의 크기.

Norm layer adaptive layer norm zero (adaLN-Zero).

CogVideoXLayerNormZero

클래스 diffusers.models.normalization.CogVideoXLayerNormZero

< >

( conditioning_dim: intembedding_dim: intelementwise_affine: bool = Trueeps: float = 1e-05bias: bool = True )

MochiRMSNormZero

클래스 diffusers.models.transformers.transformer_mochi.MochiRMSNormZero

< >

( embedding_dim: inthidden_dim: inteps: float = 1e-05elementwise_affine: bool = False )

매개변수

  • embedding_dim (int) — 각 임베딩 벡터의 크기입니다.

Mochi에서 사용되는 Adaptive RMS Norm입니다.

MochiRMSNorm

클래스 diffusers.models.normalization.MochiRMSNorm

< >

( dimeps: floatelementwise_affine: bool = True )

Update on GitHub