zoukankan      html  css  js  c++  java
  • tensorflow 加速优化方法

    1. stochastic gradient decent(CGD)

      将data分小批放入神经网络中进行计算

      W += -Learning rate * dx

    缺点:选择合适的learning rate比较困难

       速度慢

       容易收敛到局部最优,并且在某些情况下可能被困在鞍点

    2. momentum

      模拟物理里动量的概念,积累之前的动量来替代真正的梯度。(利用斜坡的惯性)

      m = b1 * m - Learning rate * dx

      W += m

    特点:在相关方向加速SGD,抑制振荡,从而加快收敛

       依靠人工设置全局学习率,中后期分母上梯度平方的累加将会越来越大,使得训练提前结束

    3. adagrad

      每一个参数的更新都有自己的学习率(不好走的鞋子)

      v += dx^2

      W += -Learning rate * dx / √v

    特点:前期放大梯度,后期约束梯度,适合处理稀疏梯度

    4. RMSProp

    综合了momentum和adagrad的优势

    v = b1 * v + (1 - b1) * dx^2

    W += -Learning rate * dx / √v

    特点:依赖于全局学习率

       适合处理非平稳目标 - 对于RNN效果很好

    5. Adam(又快又好)

    m = b1 * m + (1 - b1) * dx

    v = b2 * v + (1 - b2) * dx^2

    W += -Learning rate * m / √v

    特点:结合了Adagrad善于处理稀疏梯度和RMSprop善于处理非平稳目标的优点

       对内存需求较小

       为不同的参数计算不同的自适应学习率

       也适用于大多非凸优化 - 适用于大数据集和高维空间

     6. 优化器

    用于改变学习效率

  • 相关阅读:
    获取网络时间,减轻自己服务器的请求压力
    mysql学习记录(windows)
    Docker 部署本地pip源
    npm : 无法加载文件 D:vueProject odejs ode_global pm.ps1
    微信小程序没有找到可构建的npm包
    vue 记录 mode:history 模式 踩过的坑
    Linux学习笔记
    kafka监控 Kafka-eagle-web
    vi 分屏 --(visual 可视模式)
    [安卓网络入门] 获取天气
  • 原文地址:https://www.cnblogs.com/syyy/p/8473889.html
Copyright © 2011-2022 走看看