深度学习框架Caffe学习系列(2):学习率衰减策略

学习率衰减策略

  • 参数学习率
    • 参考
    • 学习率机制
    • /caffe-master/src/caffe/proto/caffe.proto文件说明
    • 1. fixed: 固定学习率
    • 2. inv:学习率下降为~1 / T.
    • 3. step:逐步衰减
    • 4. multistep:任意间隔的分段常数
    • 5. exp : 指数型学习率
    • 6. poly : 多项式衰减

参数学习率

参考

  • caffe中的学习率的衰减机制
  • What is lr_policy in Caffe?

学习率机制

  • “fixed”
  • “inv”
  • “step”
  • “multistep”
  • “stepearly”
  • “poly”

/caffe-master/src/caffe/proto/caffe.proto文件说明

学习率衰减政策。 目前实施的学习率策略如下:

  • fixed:始终返回base_lr。

  • step:分段常数

    return base_lr * gamma ^(floor(iter / step))

  • exp:指数型

    return base_lr * gamma ^ iter

  • inv:学习率下降为~1 / T.

    return base_lr *(1 + gamma * iter)^( - power)

  • multistep:类似于step但它允许由stepvalue定义的非均匀步骤

  • poly:有效学习率遵循多项式衰减

    当max_iter时为零。 return base_lr(1 - iter / max_iter)^(power)

  • sigmoid:有效学习率遵循sigmod衰减

    return base_lr(1 /(1 + exp(-gamma *(iter - stepsize))))

其中base_lr,max_iter,gamma,step,stepvalue和power在solver参数协议缓冲区中定义,iter是当前迭代。

1. fixed: 固定学习率

在训练过程中,学习率不变。

2. inv:学习率下降为~1 / T.

需要设置:参数 gamma 与 power(caffe框架)

  • 公式
    在这里插入图片描述

  • 图例
    深度学习框架Caffe学习系列(2):学习率衰减策略_第1张图片

3. step:逐步衰减

台阶式变化(step by step):学习速率是分段常数,每X次迭代都会下降一次 。
需要设置:gamma 与 stepsize(caffe框架);scale与step(darknet框架)。

  • 公式
    在这里插入图片描述

  • 图例
    深度学习框架Caffe学习系列(2):学习率衰减策略_第2张图片

4. multistep:任意间隔的分段常数

在任意区间可设置多个 stepvalue的值, 它由参数 stepsize 与 stepvalue 决定。它在达到我们设定的stepvalue的时候,更新学习率。
需要设置: stepsize 与 stepvalue(caffe框架);scales与steps(darknet框架)。

  • 无公式

  • 图例
    深度学习框架Caffe学习系列(2):学习率衰减策略_第3张图片

5. exp : 指数型学习率

需要设置:参数gamma(caffe框架)。

  • 公式
    在这里插入图片描述
  • 图例(暂无)

6. poly : 多项式衰减

当到达最大次数时, 学习率衰减到0。

  • 公式

在这里插入图片描述

  • 图例(暂无)

你可能感兴趣的:(深度学习)