zoukankan      html  css  js  c++  java
  • 深度之眼PyTorch训练营第二期---11、学习率的调整

    一、PyTorch的六种学习率调整策略

    class_LRScheduler

    主要属性:

    • optimizer:关联的优化器
    • last_epoch:记录epoch数
    • base_lrs:记录初始学习率

    主要方法:

    • step():更新下一个epoch的学习率
    • get_lr():虚函数,计算下一个epoch的学习率

    学习率调整

    1、StepLR

    功能:等间隔调整学习率

    主要参数:

    • step_size:调整间隔数
    • gamma:调整系数

    调整方式:lr = lr * gamma

    2、MultiStepLR

    功能:按给定间隔调整学习率

    主要参数:

    milestones:设定调整时刻数

    gamma:调整系数

    3、ExponetialLR

    功能:按指数衰减调整学习率

    主要参数:

    gamma:指数的底

    调整方式:lr = lr * gamma ** epoch

    4、CosineAnnealingLR

    功能:余弦周期调整学习率

    主要参数:

    T_max:下降周期

    eta_min:学习率下降

    调整方式:

     5、ReduceLRonPlateau

    功能:监控指标,当指标不再变化则调整

    主要参数:

    mode:min/max 两种模式

    factor:调整系数

    patience:“耐心”,接受几次不变化

    cooldown:“冷却时间”,停止监控一段时间

    verbose:是否打印日志

    min_lr:学习率下限

    eps:学习率衰减最小值

    6、LambdaLR

    功能:自定义调整策略

    主要参数:

    lr_lambda:function or list

    小结:

    1、有序调整:Step、MultiStep、Exponential 和 CosineAnnealing

    2、自适应调整:ReduceLROnPleateau

    3、自定义调整:Lambda

    学习率初始化:

    1、设置较小数:0.01、0.001、0.0001

    2、搜索最大学习率:

  • 相关阅读:
    javaweb(五)——Servlet开发(一)
    JDK1.8改为JDK1.7过程
    javaweb(四)——Http协议(请求头,响应头详解)
    JavaWeb(三)——Tomcat服务器(二)
    JavaWeb(二)——Tomcat服务器(一)
    JavaWeb——JavaWeb开发入门
    java学习之异常总结
    java学习之异常之覆盖
    java学习之异常之格式
    java学习之异常之finally
  • 原文地址:https://www.cnblogs.com/cola-1998/p/11899493.html
Copyright © 2011-2022 走看看