文章Super-Convergence记录
来源:互联网 发布:python cdll 编辑:程序博客网 时间:2024/05/29 15:59
Super-Convergence: Very Fast Training of Residual Networks Using Large Learning Rates
在这篇文章中,作者针对现在训练较慢,超参数学习率比较难找,给出了自己的解决方案,周期学习率:
将学习率设置一个最大值,和最小值,在给出一个参数stepsize,两个stepsize为一个周期,在前半个stepsize内,学习率逐渐从最小值增大到最大值,在后半个stepsize内,学习率从最大值变成最小值,通过这样设置学习率,文章中的实验数据指出,只要原始训练次数的1/3左右,就可以达到相同的准确率,而使用相同的训练次数,准确率更高,相当于对训练进行了提速,加速了收敛,因此这篇文章的名字就叫:Super-Convergence,超级收敛
周期学习率策略的本质来自于这样一个观察事实:增大学习率在短时间内可能对网络性能有负面影响,但是长时间来看还是有正面影响。因此,根据这个观察事实,使学习率在一定范围内变动而不是固定学习率。因此,就需要设置最小学习率和最大学习率,以及与周期相关的参数:stepsize。
stepsize设定:
假设你有500000张图像,批处理大小是100,那么一个epoch就需要500000/100=5000次迭代,那么stepsize的大小,经过验证,需要为这个迭代次数的2-10倍,一般设置2-10之间,结果不会有太大区别,因此可以设置为2-3倍,这样,学习率更新的周期短一点。
最大最小学习率
需要通过实验来获得,下图就是通过实验来获取网络结构最小最大学习率,实验中总共跑了8个epoch,学习率从0一直增加到0.02,从图中可以看到,网络很快就开始收敛,因此将学习率最小值设置为0.001,而到学习率来到0.006时,准确率就开始下降,因此将最大学习率设置为0.006
结论
googlenet,alexnet的学习率测试:
相关的收敛速度与结果测试对比:
- 文章Super-Convergence记录
- 文章记录
- 文章记录
- 文章记录
- 文章记录
- 文章记录
- 文章记录
- 记录文章
- 文章记录
- THE Perceptron Convergence Theorem
- ABOUT NETWORK CONVERGENCE
- 分页组件(引用Super Flex文章)
- Ubuntu平台融合(Convergence)演进
- Super Pig游戏开发记录(1)
- Super Pig游戏开发记录(2)
- Super Pig游戏开发记录(3)
- Super Pig游戏开发记录(4)
- 记录一些好文章.
- crt连接centos时的一个小问题(桥接模式)
- pipenet.v9.0(Spray V3.40,Standard V3.4,Transient V5.3)
- 十四 iOS之 画板
- 五、python日期相关的操作
- java基础之序列化详解
- 文章Super-Convergence记录
- HDU 6128 Inverse of sum(取模+map处理)
- 走进大数据,学习路线
- mysql命令
- WOJ1038-Help!
- Android Service学习笔记--用户通知
- 微信小程序商品详情页的底部弹出框
- 关于mybatis中数据表多表交互处理
- java异常