zoukankan      html  css  js  c++  java
  • torch.optim.Adam优化器参数学习

    1.参数

    https://blog.csdn.net/ibelievesunshine/article/details/99624645

    class torch.optim.Adam(params, lr=0.001, betas=(0.9, 0.999), eps=1e-08, weight_decay=0)[source]

    • params (iterable) – 待优化参数的iterable或者是定义了参数组的dict
    • lr (float, 可选) – 学习率(默认:1e-3)
    • betas (Tuple[floatfloat], 可选) – 用于计算梯度以及梯度平方的运行平均值的系数(默认:0.9,0.999)
    • eps (float, 可选) – 为了增加数值计算的稳定性而加到分母里的项(默认:1e-8)
    • weight_decay (float, 可选) – 权重衰减(L2惩罚)(默认: 0)

    2.算法

    https://arxiv.org/pdf/1412.6980.pdf

     可以看到,beta参数是用来更新m、v这两个动量向量和梯度的,梯度经过动量估计之后代替了SDG中的直接用梯度来更新参数。

    α也就是lr学习率,用来更新参数,作为一个步长吧。

    weight_decay 是针对最后更新参数的时候,给参数加的一个惩罚参数,

     总结:lr是在更新梯度的时候用到的,weight_decay权重衰减是在损失函数中的模型参数的权重,更新参数时用到的。

     总的loss中加入了一个对权重的限制,防止过大产生过拟合现象,

     在参数更新时反映出来,正则化参数λ决定了你如何权衡原始损失E和较大的权重惩罚。

  • 相关阅读:
    Java Web 网络留言板2 JDBC数据源 (连接池技术)
    Java Web 网络留言板3 CommonsDbUtils
    Java Web ConnectionPool (连接池技术)
    Java Web 网络留言板
    Java Web JDBC数据源
    Java Web CommonsUtils (数据库连接方法)
    Servlet 起源
    Hibernate EntityManager
    Hibernate Annotation (Hibernate 注解)
    wpf控件设计时支持(1)
  • 原文地址:https://www.cnblogs.com/BlueBlueSea/p/14269033.html
Copyright © 2011-2022 走看看