• 深度之眼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、搜索最大学习率:

  • 相关阅读:
    推送技术 --SignalR
    软件解耦
    xrBarCode 条形码的密度设置
    Javascript 中方法的重写
    数据库锁
    oracle instr,substr 截取字符串
    循环读取写入表
    Oracle For 循环,字符串拼接,查找
    iis,webservice 启用 acrobat.exe 打印
    iis,webservice 打印
  • 原文地址:https://www.cnblogs.com/cola-1998/p/11899493.html
Copyright © 2020-2023  润新知