深度学习中不同学习率调整策略

1、StepLR

功能:固定等间隔调整学习率

主要参数:

step_size:调整间隔数

gamma:调整系数

调整方式:
l r = l r ∗ g a m m a lr=lr\ast gamma lr=lr∗gamma

2、MultiStepLR

功能:按给定间隔调整学习率

主要参数:

milestones:设定调整的时刻数

gamma:调整系数

调整方式:
l r = l r ∗ g a m m a lr=lr\ast gamma lr=lr∗gamma

3、ExponentialLR

功能:按指数衰减调整学习率

主要参数:

gamma:指数的底

调整方式:
l r = l r ∗ g a m m a e p o c h lr=lr\ast gamma^{epoch} lr=lr∗gammaepoch

4、CosineAnnealingLR

功能:预弦周期调整学习率

主要参数:

T_max:下降周期

eta_min:学习率下限

调整方式:
η t = η m i n + 1 2 ( η m a x − η m i n ) ( 1 + cos ⁡ T c u r T m a x Π ) \eta _{t} =\eta _{min}+\frac{1}{2} \left (\eta {max} -\eta {min}\right ) \left ( 1+\cos \frac{T{cur} }{T{max} }\Pi \right ) ηt=ηmin+21(ηmax−ηmin)(1+cosTmaxTcurΠ)

这里的T_max是以epoch为单位的,T_max对于余弦函数学习率的半周期(下降的半周期)

5、LinearLR

主要参数:

start_factor:起始factor

end_factor:终止factor

LinearLR是线性学习率,给定起始factor和最终的factor,LinearLR会在中间阶段做线性插值,比如学习率为0.1,起始factor为1,最终的factor为0.1。那么刚开始迭代时,学习率将为0.1,最终轮学习率为0.01。下面设置的总轮数total_iters为80,所以超过80时,学习率恒为0.01。

相关推荐
Joshua-a35 分钟前
工程数学-理解卷积的含义_线性时不变系统的冲激响应与卷积
人工智能·深度学习
song50141 分钟前
React Native for OpenHarmony 实战:三方库 react-native-css-transformer 的鸿蒙化适配指南
css·人工智能·深度学习·react native·transformer
老金带你玩AI5 小时前
ChatGPT dots,到底能替你操多少心?
人工智能
AliCloudROS6 小时前
计算巢 X DeepSeek Harness — 云端智能体工作台
人工智能·阿里云
深蓝AI6 小时前
GitHub的Push一年涨4.9倍:AI Agent为什么逼它重做Git存储?
人工智能·github
敬往事一杯酒哈6 小时前
海康 AGV 导航读码器学习
学习
stereohomology6 小时前
大模型的观点谨:StoryTold 「Crafting Apps」四件套 · 深度总览
人工智能·llm
运维行者_7 小时前
网络性能监控怎么做?从自动发现到根因分析的4个环节
运维·服务器·网络·人工智能·支持向量机
Su米苏7 小时前
Spring AI 中MCP 与普通 @Tool的区别
java·人工智能·spring
美狐美颜sdk7 小时前
直播APP源码可以直接接入视频美颜sdk吗?技术方案详解
android·人工智能·音视频·美颜sdk·直播美颜sdk