Ë
    éÓ^j  ã                   óŽ  — d Z ddlZddlZddlmZ ddlmZ ddlmZm	Z	m
Z
mZmZmZmZmZmZmZmZmZmZmZ ddlmZ  edi dej2                  “dej2                  “d	ej4                  “d
e“de	“de
“de“de“de“de“de“de“de“de“de“de“de“de“ŽZej9                  «       D � �ch c]  \  } }|’Œ	 c}} Zd„ Zd„ Zyc c}} w )z Norm Layer Factory

Create norm modules by string (to mirror create_act and creat_norm-act fns)

Copyright 2022 Ross Wightman
é    N)ÚTypeé   )Ú	GroupNormÚ
GroupNorm1Ú	LayerNormÚLayerNorm2dÚLayerNormFp32ÚLayerNorm2dFp32ÚRmsNormÚ	RmsNorm2dÚRmsNormFp32ÚRmsNorm2dFp32Ú
SimpleNormÚSimpleNorm2dÚSimpleNormFp32ÚSimpleNorm2dFp32)ÚFrozenBatchNorm2dÚ	batchnormÚbatchnorm2dÚbatchnorm1dÚ	groupnormÚ
groupnorm1Ú	layernormÚlayernorm2dÚlayernormfp32Úlayernorm2dfp32ÚrmsnormÚ	rmsnorm2dÚrmsnormfp32Úrmsnorm2dfp32Ú
simplenormÚsimplenorm2dÚsimplenormfp32Úsimplenorm2dfp32Úfrozenbatchnorm2dc                 ó.   — t        | «      } ||fi |¤Ž}|S )N)Úget_norm_layer)Ú
layer_nameÚnum_featuresÚkwargsÚlayerÚlayer_instances        úb/var/www/ramen.bs-engineer-server.com/venv/lib/python3.12/site-packages/timm/layers/create_norm.pyÚcreate_norm_layerr.   6   s!   € Ü˜:Ó&€EÙ˜<Ñ2¨6Ñ2€NØÐó    c                 ó¬  — | €y t        | t        t        t        j                  t
        j                  f«      sJ ‚i }t        | t
        j                  «      r'|j                  | j                  «       | j                  } t        | t        «      r-| sy | j                  dd«      j                  «       }t        |   } n| } |rt        j                  | fi |¤Ž} | S )NÚ_Ú )Ú
isinstanceÚtypeÚstrÚtypesÚFunctionTypeÚ	functoolsÚpartialÚupdateÚkeywordsÚfuncÚreplaceÚlowerÚ	_NORM_MAP)Ú
norm_layerÚnorm_kwargsr(   s      r-   r'   r'   <   s¼   € ØÐØÜ�j¤4¬¬e×.@Ñ.@Ä)×BSÑBSÐ"TÔUÐUÐUØ€Kô �*œi×/Ñ/Ô0Ø×Ñ˜:×.Ñ.Ô/Ø—_‘_ˆ
ä�*œcÔ"ÙØØ×'Ñ'¨¨RÓ0×6Ñ6Ó8ˆ
Ü˜zÑ*‰
àˆ
áÜ×&Ñ& zÑA°[ÑAˆ
ØÐr/   © ) Ú__doc__r8   r6   Útypingr   Útorch.nnÚnnÚnormr   r   r   r   r	   r
   r   r   r   r   r   r   r   r   Útorchvision.ops.miscr   ÚdictÚBatchNorm2dÚBatchNorm1dr?   ÚitemsÚ_NORM_TYPESr.   r'   )ÚnÚms   00r-   ú<module>rP      s#  ðñó Û Ý å ÷÷ ÷ ÷ õ  3áò Ø�nŠnðà—’ðð —’ðñ ð	ñ
 ðñ ðñ ðñ  ðñ $ðñ ðñ ðñ ðñ  ðñ ðñ ðñ  "ð!ñ" &ð#ñ$ (ð%€	ð( 'Ÿ_™_Ó.×/‘T�Q˜ŠqÓ/€òóùó 0s   Â*C