优化方法,一些重要参数learning rate,weight decay,momentum,learing rate decay
来源:互联网 发布:微信爬虫拦截域名 编辑:程序博客网 时间:2024/05/21 09:53
http://blog.csdn.net/lien0906/article/details/47399823
http://blog.csdn.net/u014114990/article/details/47779111
Stochastic Gradient Descent (SGD)
SGD的参数
在使用随机梯度下降(SGD)的学习方法时,一般来说有以下几个可供调节的参数:
- Learning Rate 学习率
- Weight Decay 权值衰减
- Momentum 动量
- Learning Rate Decay 学习率衰减
再此之中只有第一的参数(Learning Rate)是必须的,其余部分都是为了提高自适应性的参数,也就是说后3个参数不需要时可以设为0。
Learning Rate
学习率决定了权值更新的速度,设置得太大会使结果越过最优值,太小会使下降速度过慢。仅靠人为干预调整参数需要不断修改学习率,因此后面3种参数都是基于自适应的思路提出的解决方案。
SGD优缺点
- 实现简单,当训练样本足够多时优化速度非常快
- 需要人为调整很多参数,比如学习率,收敛准则等
Averaged Stochastic Gradient Descent (ASGD)
在SGD的基础上计算了权值的平均值。
$$\bar{w}t=\frac{1}{t-t_0}\sum^t{i=t_0+1} w_t$$
ASGD的参数
在SGD的基础上增加参数$t_0$
- 学习率 $\eta$
- 参数 $t_0$
ASGD优缺点
- 运算花费和second order stochastic gradient descent (2SGD)一样小。
- 比SGD的训练速度更为缓慢。
- $t_0$的设置十分困难
3. Conjugate Gradient(共轭梯度法)
介于最速下降法与牛顿法之间的一个方法,它仅仅需要利用一阶导数的信息,克服了GD方法收敛慢的特点。
Link 1
Limited-memory Broyden-Fletcher-Goldfarb-Shanno (LBFGS) (一种拟牛顿算法)
L-BFGS算法比较适合在大规模的数值计算中,具备牛顿法收敛速度快的特点,但不需要牛顿法那样存储Hesse矩阵,因此节省了大量的空间以及计算资源。
Link 1
Link 2
Link 3
应用分析
不同的优化算法有不同的优缺点,适合不同的场合:
- LBFGS算法在参数的维度比较低(一般指小于10000维)时的效果要比SGD(随机梯度下降)和CG(共轭梯度下降)效果好,特别是带有convolution的模型。
- 针对高维的参数问题,CG的效果要比另2种好。也就是说一般情况下,SGD的效果要差一些,这种情况在使用GPU加速时情况一样,即在GPU上使用LBFGS和CG时,优化速度明显加快,而SGD算法优化速度提高很小。
- 在单核处理器上,LBFGS的优势主要是利用参数之间的2阶近视特性来加速优化,而CG则得得益于参数之间的共轭信息,需要计算器Hessian矩阵。
0 0
- 优化方法,一些重要参数learning rate,weight decay,momentum,learing rate decay
- 超参数简单理解-->learning rate,weight decay和momentum
- weight decay and learning rate
- learning rate 和weight decay
- 深度学习超参数简单理解------>learning rate,weight decay和momentum
- 深度学习超参数简单理解------>learning rate,weight decay和momentum
- 深度学习超参数简单理解------>learning rate,weight decay和momentum
- 学习笔记一:learning rate,weight decay和momentum的理解
- Caffe中learning rate 和 weight decay 的理解
- Caffe中learning rate 和 weight decay 的理解
- Caffe中learning rate 和 weight decay 的理解
- Tensorflow学习率的learning rate decay
- tensorflow学习笔记(三十六):learning rate decay
- pytorch学习笔记(十):learning rate decay(学习率衰减)
- pytorch学习笔记(十):learning rate decay(学习率衰减)
- 超参数momentum与weight-decay的作用
- CNN:weight decay,momentum,batch normalization
- weight decay
- xlistview刷新
- 常用的正则表达式大全
- GB/T2659-2000《世界各国和地区名称代码》
- The JSP specification requires that an attribute name is preceded by whitespace
- linux 学习之数据结构算法
- 优化方法,一些重要参数learning rate,weight decay,momentum,learing rate decay
- AJ学习感悟(一)
- Android Studio 开发opencv3应用
- JS DOM编程艺术学习笔记(一)
- weblogic启动不能锁定AdminServer.lok的故障处理
- 1004. 成绩排名 (20)
- Android中Parcelable接口用法
- Linux内核协议栈(附3)udp_lib_get_port函数
- 当指针指向一个字符串