|
|
|
@@ -100,8 +100,10 @@ def _generate_cosine_lr(lr_init, lr_end, lr_max, total_steps, warmup_steps): |
|
|
|
lr_inc = (float(lr_max) - float(lr_init)) / float(warmup_steps) |
|
|
|
lr = float(lr_init) + lr_inc * (i + 1) |
|
|
|
else: |
|
|
|
cosine_decay = 0.5 * (1 + math.cos(math.pi * (i - warmup_steps) / decay_steps)) |
|
|
|
lr = (lr_max - lr_end) * cosine_decay + lr_end |
|
|
|
linear_decay = (total_steps - i) / decay_steps |
|
|
|
cosine_decay = 0.5 * (1 + math.cos(math.pi * 2 * 0.47 * i / decay_steps)) |
|
|
|
decayed = linear_decay * cosine_decay + 0.00001 |
|
|
|
lr = lr_max * decayed |
|
|
|
lr_each_step.append(lr) |
|
|
|
return lr_each_step |
|
|
|
|
|
|
|
|