今天挖了个坑,关于优化器的初始化。

优化器的初始化函数:

create_optimizer

在梯度反传的时候,我们用随机梯度下降等优化方法的时候,需要对一个batch_size的梯度求和然后求平均再反传。

这个就涉及到一个参数:rescale_grad。

这个参数的作用就是对梯度进行求平均,按道理应该是(实际也是)rescale_grad=1/batch_size。

但是在optimizer中,初始化的这个值是默认1的,所以在训练的时候就容易发散。

当我们直接调用model.fit的时候,fit.py对于有没有手动初始化优化器有两个选择。当手动初始化的时候,也就是自己在fit之外初始化了优化器,那优化器的参数是手动设置的或者就是按照init函数里面的。如果没有手动初始化,那fit.py则会自己初始化一些参数。

这其中的最大区别就是,rescale_grad的初始化,手动默认的为1,而fit中的为正确的1/batch_size。

所以,这个在手动初始化的时候千万记得设置为正确的值。或者就不要自己初始化,交给module.fit就好。

mxnet:Optimizer rescale_grad相关推荐

  1. DL框架之MXNet :神经网络算法简介之MXNet 常见使用方法总结(神经网络DNN、CNN、RNN算法)之详细攻略(个人使用)

    DL框架之MXNet :神经网络算法简介之MXNet 常见使用方法总结(神经网络DNN.CNN.RNN算法)之详细攻略(个人使用) 相关文章 DL框架之MXNet :深度学习框架之MXNet 的简介. ...

  2. DL框架之MXNet :深度学习框架之MXNet 的简介、安装、使用方法、应用案例之详细攻略

    DL框架之MXNet :深度学习框架之MXNet 的简介.安装.使用方法.应用案例之详细攻略 目录 MXNet 的简介 1.优缺点 2.相关文章 3.相关链接 MXNet 的安装 MXNet 的使用方 ...

  3. mxnet:结合R与GPU加速深度学习

    转载于统计之都,http://cos.name/tag/dmlc/,作者陈天奇 ------------------------------------------------------------ ...

  4. mxnet:结合R与GPU加速深度学习(转)

    mxnet:结合R与GPU加速深度学习(转) 近年来,深度学习可谓是机器学习方向的明星概念,不同的模型分别在图像处理与自然语言处理等任务中取得了前所未有的好成绩.在实际的应用中,大家除了关心模型的准确 ...

  5. MXNet:基础和入门

    质量声明:原创文章,内容质量问题请评论吐槽.如对您产生干扰,可私信删除. 主要参考:李沐等:动手学深度学习-伯克利教材 文章目录 MXNet 基础 导入MXNet 张量模块 nd 自动求梯度 auto ...

  6. mxnet:mx.sym.BlockGrad理解

    解释: 我们知道现在深度学习的框架是计算图,由节点和路径组成.在前向和反向的时候都是通过图路径传递的,那么这个函数是用在反向传播的时候,字面意思就是阻塞梯度传播. 举例: 输入两个点,输出一个点,如下 ...

  7. spark.mllib:Optimizer

    Spark中的求解器,根据输入的训练数据及设定的迭代次数.正则化项.参数收敛精度等进行迭代求解模型的参数.Spark内部实现来两类求解器,基于随机梯度下降(miniBatch选取样本)的Gradien ...

  8. MXNET:深度学习计算-模型参数

    我们将深入讲解模型参数的访问和初始化,以及如何在多个层之间共享同一份参数. 之前我们一直在使用默认的初始函数,net.initialize(). from mxnet import init, nd ...

  9. 亚马逊发布新版MXNet:支持英伟达Volta和稀疏张量

    安妮 编译自 AWS官博 量子位 出品 | 公众号 QbitAI Apache MXNet v0.12来了. 今天凌晨,亚马逊宣布了MXNet新版本,在这个版本中,MXNet添加了两个重要新特性: 支 ...

  10. orb-slam2 从单目开始的简单学习(7):Optimizer

    前言 有不足或者不正确不清晰的地方可以随时在评论区或者私我,敬请斧正! 1. 整体介绍 class Optimizer {public:void static BundleAdjustment(con ...

最新文章

  1. mysql plsql 循环_PL/SQL for...loop循环语句
  2. pythonjs语法_Python语法精解:JSON语法
  3. 使用Helm 在容器服务k8s集群一键部署wordpress
  4. 业务直通式管理,你真的了解吗?
  5. SRM596 DIV2 250
  6. c++程序员会用到的函数积累
  7. WIN32 使用 MUTEX 实现禁止多开
  8. UNIX环境编程学习笔记(25)——信号处理进阶学习之 sigaction 函数
  9. 【实例分割_SOLOv2】SOLOv2:Dynamic,Faster and Stronger
  10. java中select的用法_mybaties中select用法,以及常用增删改查
  11. 2018.7.3 JS实现增删改查没有连接数据库
  12. R语言导出为html,科学网—[转载]R语言中数据的导入与导出(笔记) - 刘朋的博文...
  13. Linux下安装jdk报Permission denied以及chmod详解
  14. 第三季-第2课-GDB程序调试
  15. 集合操作retainAll和removeAll
  16. c语言中ifelse语句的例子,ifelse语句例子
  17. django之csrf_exempt解决跨域请求的问题
  18. 如何破解AppOps (需要root)
  19. owt webrtc 音频没有声音
  20. elementUI 导航栏 鼠标移入改变背景色

热门文章

  1. 谈谈刚结束的全国大学生电子设计竞赛
  2. 年薪30~60万,机器学习算法工程师必备能力项
  3. 三种Perceptual_metric:VGG distance,Inception Score,FID Score的源码
  4. TI公司CC系列的各种芯片的区别 CC2430 CC1100
  5. python入门指南txt许半仙百度网盘-《江火欲燃山》《这题超纲了》《Python入门指南》...
  6. Eclipse debug 的 drop to frame 的技巧
  7. 计算机策略组怎么设置,怎么设置win7系统中的组策略
  8. 移动开发技术的进化历程(原生开发与跨平台技术)
  9. windows的mysql无密码登录,windows mysql 跳过登录密码重置
  10. html5实现统计功能,基于HTML5的统计图表系统的设计与实现