Dl4j学习率衰减策略

本文介绍了Dl4j中不同的学习率衰减策略,包括Exponential、Inverse、Step、TorchStep、Poly、Sigmoid、Schedule和Score。衰减策略在每次反向传播后调整学习率,衰减率通常在0~1之间。例如,Schedule策略允许在特定迭代次数改变学习率,而Score策略则根据模型损失函数的得分来调整学习率,防止过早停止模型更新。更多详细信息可参考相关文档。
摘要由CSDN通过智能技术生成

Dl4j学习率衰减策略

package org.deeplearning4j.nn.conf;

/**
 * Learning Rate Policy
 *
 * How to decay learning rate during training.
 *
 * <p><b>None</b> = do not apply decay policy aka fixed in Caffe <br>
 * <p><b>Exponential</b> = applies decay rate to the power of the # batches  <br>
 * <p><b>Inverse</b> = divide learning rate by negative (1 + decay rate * # batches)^power <br>
 * <p><b>Poly</b> = polynomial decay that hits 0 when iterations are complete <br>
 * <p><b>Sigmoid</b> = sigmoid decay rate <br>
 * <p><b>Step</b> = decay rate to the power of the floor (nearest integer) of # of batches by # of steps <br>
 * <p><b>Schedule</b> = rate to use at a specific iteration <br>
 * <p><b>Score</b> = apply decay when score stops improving <br>
 */

// TODO provide options using epochs in addition to iterations

public enum LearningRatePolicy {
    None, Exponential, Inverse, Poly, Sigmoid, Step, TorchStep, Schedule, Score
}

dl4j的学习率衰减策略应用部分是在反向传播计算完地图之后,调用Updater.update()方法对梯度进行更新并且进行梯度的衰减。

调用学习率衰减的为package org.deeplearning4j.optimize.solvers包下的BaseOptimizer抽象类中的updateGradientAccordingToParams(Gradient gradient, Model model, int batchSize)方法中的updater.update(layer, gradient, getIterationCount(model), batchSize);语句。

  • 后面衰减策略所使用的iteration为Model的总迭代次数
  • 衰减率由NeuralNetConfiguration.Builder()lrPolicyDecayRate()方法进行配置,衰减率通常为0~1中间的一个值。

Exponential

newLr = lr * Math.pow(decayRate, iteration);

newLr=lr×decayRateiteration

Inverse

newLr = lr / Math.pow((1 + decayRate * iteration), conf.getLrPolicyPower());

newLr=lr1+(decayRate×itera
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值