学习率调度器是训练深度学习模型时优化收敛速度的关键工具,通过动态调整学习率可以显著提升性能。以下是常见调度策略:
1. 步长衰减(Step Decay)
每隔固定步数降低学习率,例如:
learning_rate = initial_rate * (decay_rate)^(step // decay_step)
✅ 适用场景:适用于训练初期快速收敛,后期精细调整。
2. 指数衰减(Exponential Decay)
学习率随时间按指数函数递减,公式为:
learning_rate = initial_rate * exp(-k * t)
🔍 特点:衰减速度可控,适合需要平滑调整的场景。
3. 余弦退火(Cosine Annealing)
通过余弦函数周期性调整学习率,可避免陷入局部最优:
learning_rate = min_lr + (max_lr - min_lr) * (1 + cos(t / T)) / 2
🔁 优势:在训练后期能更精细地探索损失函数。
4. 阶梯衰减(Stepwise Decay)
根据验证集性能手动设置学习率变化点,灵活但需经验:
if epoch >= 50:
lr = 0.001
elif epoch >= 30:
lr = 0.01
else:
lr = 0.1
📘 扩展阅读:点击了解不同调度器的实践对比
📌 小贴士:
- 初学者建议从Step Decay或Exponential Decay开始
- 高级用户可尝试Cosine Annealing或自定义策略
- 实际应用中需结合验证集表现调整参数