【问题标题】:Keras: how learning rate changes when Adadelta optimizer is used?Keras:使用 Adadelta 优化器时学习率如何变化?
【发布时间】:2017-05-18 15:37:02
【问题描述】:

例如,我在编译网络模型时使用Adadelta 作为优化器,那么learning rate 将通过这个rule 及时更改(但iterations 是什么?)我如何将学习率值记录到控制台?

model.compile(loss=keras.losses.mean_squared_error,
        optimizer= keras.optimizers.Adadelta())

documentation lr 刚刚开始学习率?

【问题讨论】:

    标签: python machine-learning deep-learning keras


    【解决方案1】:

    查看Keras source code,学习率是根据衰减重新计算的:

    lr = self.lr
    if self.initial_decay > 0:
        lr *= (1. / (1. + self.decay * K.cast(self.iterations, K.dtype(self.decay))))
    

    所以是的,lr 才刚刚开始学习率。

    要在每个 epoch 之后打印它,正如@orabis 提到的,你可以创建一个回调类:

    class YourLearningRateTracker(Callback):
        def on_epoch_end(self, epoch, logs=None):
            lr = self.model.optimizer.lr
            decay = self.model.optimizer.decay
            iterations = self.model.optimizer.iterations
            lr_with_decay = lr / (1. + decay * K.cast(iterations, K.dtype(decay)))
            print(K.eval(lr_with_decay))
    

    然后在调用model.fit()时将其实例添加到回调中:

    model.fit(..., callbacks=[YourLearningRateTracker()])
    

    但是,请注意,默认情况下,Adadelta 的 decay 参数为零,并且不是“标准”参数的一部分,因此在使用默认参数时,您的学习率不会改变其值。 我怀疑衰变不打算与 Adadelta 一起使用。

    另一方面,rho 参数,默认为非零,不描述学习率的衰减,而是对应于每个时间步要保持的梯度分数(根据Keras documentation )。

    我在this Github issue上找到了一些相关信息,并通过询问similar question

    【讨论】:

      【解决方案2】:

      该规则与衰减更新有关。 Adadelta 是一种自适应学习率方法,它使用梯度的指数衰减平均值。

      【讨论】:

      • 你的意思是更新规则lr=lr*alpha?反正Adadelta还有其他参数。
      • Adadelta 扩展了 Adagrad 以改变更新学习率的方式。 Adagrad 根据梯度的历史更新和缩放 alpha 参数,这导致学习率单调下降。另一方面,Adadelta 将梯度的累积历史限制为固定大小,这是所有过去平方梯度的衰减平均值。查看以下链接了解更多信息:quora.com/…
      • 是的,我知道每个优化器都有自己的学习率更新策略,现在我只想要打印/日志/查看学习率。
      • 可以使用回调和日志学习率在“on_epoch_end”上完成。如下所示:model.fit(..., callbacks=[YourLearningRateTracker()]) 也请检查以下问题:github.com/fchollet/keras/issues/2823
      猜你喜欢
      • 2020-08-22
      • 2020-10-16
      • 2018-05-09
      • 1970-01-01
      • 2021-06-21
      • 1970-01-01
      • 2021-02-05
      • 2021-09-25
      • 2021-02-16
      相关资源
      最近更新 更多