docs/si/optimizers/adam_warmup.html
මෙය AMSGrad ප්රශස්තකරණය පුළුල් කරන අතර උනුසුම් අවධියක් එක් කරයි.
12fromtypingimportDict1314fromlabml\_nn.optimizersimportWeightDecay15fromlabml\_nn.optimizers.amsgradimportAMSGrad
මෙමපන්තිය AMSGrad ප්රශස්තකරණයෙන් අර්ථ දක්වා ඇත amsgrad.py.
18classAdamWarmup(AMSGrad):
params යනු පරාමිතීන් ලැයිස්තුවයිlr යනු ඉගෙනුම් අනුපාතයයි αbetas (β1, β2) ක tuple වේepsϵ^ හෝ මත ϵ පදනම් වේ optimized_updateweight_decay``WeightDecay අර්ථ දක්වා ඇති පන්තියේ අවස්ථාවකි __init__.pyamsgrad ආදම් සරල කිරීම සඳහා AMSGrad හෝ වැටීම භාවිතා කළ යුතුද යන්න දැක්වෙන ධජයකිwarmup උනුසුම් පියවර ගණනdefaults කණ්ඩායම් අගයන් සඳහා පෙරනිමි ශබ්ද කෝෂයකි. ඔබට පන්තිය දීර් extend කිරීමට අවශ්ය විට මෙය ප්රයෝජනවත් AdamWarmup වේ.24def\_\_init\_\_(self,params,lr=1e-3,betas=(0.9,0.999),eps=1e-16,25weight\_decay:WeightDecay=WeightDecay(),26optimized\_update:bool=True,27amsgrad=False,warmup=0,defaults=None):
44defaults={}ifdefaultsisNoneelsedefaults45defaults.update(dict(warmup=warmup))46super().\_\_init\_\_(params,lr,betas,eps,weight\_decay,optimized\_update,amsgrad,defaults)
αmin(1,wt) උණුසුම් කිරීමේ පියවර ගණන w කොහේද?
48defget\_lr(self,state:Dict[str,any],group:Dict[str,any]):
අපිඋනුසුම් අවධියක සිටී නම්
56ifgroup['warmup']\>state['step']:
සිට 0 රේඛීයව වැඩිවන ඉගෙනුම් අනුපාතය α
58return1e-8+state['step']\*group['lr']/group['warmup']59else:
නිරන්තරඉගෙනුම් අනුපාතය α
61returngroup['lr']