STE作为一种方法已经被提出很久了,也出现了很多它的变体。但它在本质上,是用了一个与当前函数无关的梯度来代替原有的梯度,为什么这个朝着这个替代品的梯度下降的方向优化网络有用?面对已经提出的许多STE的变体,我们应该如何选取?本文的主要内容就是解决以上两个问题。

首先,作者定义了一个简单的网络:

其中Z是一个取样自(0,1)高斯分布的输入数据,w和v是权重,σ是二元的的激活函数:

标签的定义如下:

损失函数的定义如下:

由于
,作者这里使||w*||等于1.于是优化目标变为:

使用传统的反向传播方式对参数进行求导的结果是:

但σ的导数几乎处处是零,这就导致网络无法训练,于是STE就提出了解决方案,使用一个可求导的μ函数的导数来代替它:

这样就可以进行训练了。

接着作者定义了真实参数和实际参数的夹角:

并依次改造了损失函数和损失对参数的梯度:



当w为零向量时,不管v是何值,(v,w)都不可能是极小值,模型可能的极小值点为:

其中第二种情况显然是全局最优点,而第一种情况,如果有的话,就是鞍点。

随后作者通过实验证明,使用STE方法时,即使假定输入数据满足不同的分布,损失始终是下降的,且损失的平滑程度随着数据量的提升而提升:

随后作者分别证明了vanilla ReLU和clipped ReLU(如下图所示):分别与真实梯度呈非负相关\正相关,且最终会在鞍点或全局最小值处收敛,而传统的STE方法则不能在这里收敛。随后作者用实验证明了它的正确。

UNDERSTANDING STRAIGHT-THROUGH ESTIMATOR IN TRAINING ACTIVATION QUANTIZED NEURAL NETS相关推荐

  1. Paper:Xavier参数初始化之《Understanding the difficulty of training deep feedforward neural networks》的翻译与解读

    Paper:Xavier参数初始化之<Understanding the difficulty of training deep feedforward neural networks>的 ...

  2. Paper之DL之BP:《Understanding the difficulty of training deep feedforward neural networks》

    Paper之DL之BP:<Understanding the difficulty of training deep feedforward neural networks> 目录 原文解 ...

  3. 经典DL论文研读(part1)--Understanding the difficulty of training deep feedforward neural networks

    学习笔记,仅供参考,有错必纠 文章目录 Understanding the difficulty of training deep feedforward neural networks Abstra ...

  4. 【Deep Learning】笔记:Understanding the difficulty of training deep feedforward neural networks

    这几天读了这篇论文,在这里将大致内容写在这里. Abstract 介绍这篇论文的主要内容就是尝试更好的理解为什么使用"标准随机初始化"来计算使用标准梯度下降的网络效果通常来讲都不是 ...

  5. 《Understanding the Effective Receptive Field in Deep Convolutional Neural Networks》理解深卷积神经网络中的有效感受野

    前言 论文推荐来自B站UP-启释科技,该up对感受野和卷积有深刻的理解 推荐感受野视频讲解: 深度理解感受野(一) 深度理解感受野(二) 深度理解感受野(三) 深度理解感受野(四) 深度理解感受野(五 ...

  6. 【阅读】A Comprehensive Survey on Distributed Training of Graph Neural Networks——翻译

    转载请注明出处:小锋学长生活大爆炸[xfxuezhang.cn] (本文中,涉及到公式部分的翻译不准确,请看对应原文.) 另一篇:[阅读]Distributed Graph Neural Networ ...

  7. 二值网络训练--Training Competitive Binary Neural Networks from Scratch

    Training Competitive Binary Neural Networks from Scratch https://github.com/hpi-xnor/BMXNet-v2 MXNet ...

  8. 有效感受野--Understanding the Effective Receptive Field in Deep Convolutional Neural Networks

    Understanding the Effective Receptive Field in Deep Convolutional Neural Networks NIPS 2016 本文主要分析了 ...

  9. 论文笔记:Straight to the Tree: Constituency Parsing with Neural Syntactic Distance

    论文笔记:Straight to the Tree: Constituency Parsing with Neural Syntactic Distance 目录 论文笔记:Straight to t ...

  10. Flexpoint: An Adaptive Numerical Format for Efficient Training of Deep Neural Networks:弯曲点:一种有效训练深度神

    2017.:Flexpoint: An Adaptive Numerical Format for Efficient Training of Deep Neural Networks:弯曲点:一种有 ...

最新文章

  1. jQuery - 当当网我的订单页
  2. 博世投资张翠波:自动驾驶需要突破芯片、传感器、深度学习算法等关键技术
  3. 【spring】jar包详解与模块依赖关系
  4. 适用于 ESXi 6.x 中的 OpenSLP 安全漏洞 (CVE-2019-5544) 的权宜措施 (76372)
  5. 使用spring集成的kafka收发消息
  6. [leetcode]Symmetric Tree
  7. (转)“宇宙之王”高盛在历史的交叉口,不得不全面走向机器自动化
  8. MyBatis入门到精通,最全最详细的MyBatis学习教程来了
  9. 关于:Google Chrome 官方下载地址
  10. [Win32]路径操作API函数
  11. 笔记十五:研发管理者如何激励他人
  12. 删除Mac中的Windows启动项
  13. xp下 c语言用什么编程软件,学C语言在windows XP环境下用什么编程软件好??
  14. tomcat9开启远程调试功能
  15. 【Python自动化测试14】Python自动化测试基础与进阶练习题
  16. cortex-M3/cortex-M4处理器简介
  17. C3P0的使用 Spring配置数据库连接池
  18. Attention Map
  19. Python学习笔记3-Python开发工具
  20. Codeup——597 | 问题 A: Set Similarity (25)

热门文章

  1. 什么是抓包?为什么要抓包?
  2. [Unity]摘录笔记UnityShader(解读shader代码构成)
  3. CF679A.Bear and Prime 100 (交互题)
  4. html5遮罩层动画制作,纯css3图片点击弹出动画遮罩层效果
  5. 北理计算机专业如何,2019北理计算机学硕经验分享
  6. 如何写好一份用户需求说明书
  7. (六)K8S中HostPath、EmptyDir、ConfigMap、Secret、Downward API用法
  8. 关于node-pyg的路径问题导致build失败
  9. Java8 装逼for循环写法
  10. java中指数形式的格式_java – 复数的指数形式