in utils/lr_scheduler.py [0:0]
def _get_closed_form_lr(self):
if self.warm_d == 0:
return super(WarmUpCosineAnnealingLR, self)._get_closed_form_lr()
else:
if self.last_epoch <= self.warm_d:
return [base_lr * (self.warm_d + (self.warm_m - 1) * self.last_epoch) / (self.warm_d * self.warm_m) for base_lr in self.base_lrs]
else:
cos_last_epoch = self.last_epoch - self.warm_d
return [self.cos_eta_min + (base_lr - self.cos_eta_min) *
(1 + math.cos(math.pi * cos_last_epoch / self.cos_duration)) / 2
for base_lr in self.base_lrs]