←上一篇 ↓↑ 下一篇→
2.4 理解指数加权平均 回到目录 2.6 动量梯度下降法

指数加权平均的偏差修正 (Bias Correction in Exponentially Weighted Average)

你学过了如何计算指数加权平均数,有一个技术名词叫做偏差修正,可以让平均数运算更加准确,来看看它是怎么运行的。

vt=βvt−1+(1−β)θtv_t=\beta v_{t-1}+(1-\beta)\theta_tvt​=βvt−1​+(1−β)θt​

在上一个视频中,这个(红色)曲线对应 β\betaβ 的值为0.9,这个(绿色)曲线对应的 β=0.98\beta=0.98β=0.98 ,如果你执行写在这里的公式,在 β\betaβ 等于0.98的时候,得到的并不是绿色曲线,而是紫色曲线,你可以注意到紫色曲线的起点较低,我们来看看怎么处理。

计算移动平均数的时候,初始化 v0=0v_0=0v0​=0, v1=0.98v0+0.02θ1v_1=0.98v_0+0.02\theta_1v1​=0.98v0​+0.02θ1​ ,但是 v0=0v_0=0v0​=0 ,所以这部分没有了( 0.98v00.98v_00.98v0​ ),所以 v1=0.02θ1v_1=0.02\theta_1v1​=0.02θ1​ ,所以如果一天温度是40华氏度,那么 v1=0.02θ1=0.02∗40=8v_1=0.02\theta_1=0.02*40=8v1​=0.02θ1​=0.02∗40=8 ,因此得到的值会小很多,所以第一天温度的估测不准。

v2=0.98v1+0.02θ2v_2=0.98v_1+0.02\theta_2v2​=0.98v1​+0.02θ2​ ,如果代入 v1v_1v1​ ,然后相乘,所以 v2=0.98∗0.02θ1+0.02θ2=0.0196θ1+0.02θ2v_2=0.98*0.02\theta_1+0.02\theta_2=0.0196\theta_1+0.02\theta_2v2​=0.98∗0.02θ1​+0.02θ2​=0.0196θ1​+0.02θ2​ ,假设 θ1\theta_1θ1​ 和 θ2\theta_2θ2​ 都是正数,计算后 v2v_2v2​ 要远小于 θ1\theta_1θ1​ 和 θ2\theta_2θ2​ ,所以 v2v_2v2​ 不能很好估测出这一年前两天的温度。

有个办法可以修改这一估测,让估测变得更好,更准确,特别是在估测初期,也就是不用 vtv_tvt​ ,而是用 vt1−βt\frac{v_t}{1-\beta^t}1−βtvt​​ , ttt 就是现在的天数。举个具体例子,当 t=2t=2t=2 时, 1−βt=1−0.982=0.03961-\beta^t=1-0.98^2=0.03961−βt=1−0.982=0.0396 ,因此对第二天温度的估测变成了 v20.0396=0.0196θ1+0.02θ20.0396\frac{v_2}{0.0396}=\frac{0.0196\theta_1+0.02\theta_2}{0.0396}0.0396v2​​=0.03960.0196θ1​+0.02θ2​​ ,也就是 θ1\theta_1θ1​ 和 θ2\theta_2θ2​ 的加权平均数,并去除了偏差。你会发现随着 ttt 增加, βt\beta^tβt 接近于0,所以当 ttt 很大的时候,偏差修正几乎没有作用,因此当 ttt 较大的时候,紫线基本和绿线重合了。不过在开始学习阶段,你才开始预测热身练习,偏差修正可以帮助你更好预测温度,偏差修正可以帮助你使结果从紫线变成绿线。

在机器学习中,在计算指数加权平均数的大部分时候,大家不在乎执行偏差修正,因为大部分人宁愿熬过初始时期,拿到具有偏差的估测,然后继续计算下去。如果你关心初始时期的偏差,在刚开始计算指数加权移动平均数的时候,偏差修正能帮助你在早期获取更好的估测。

所以你学会了计算指数加权移动平均数,我们接着用它来构建更好的优化算法吧!

课程PPT



←上一篇 ↓↑ 下一篇→
2.4 理解指数加权平均 回到目录 2.6 动量梯度下降法

2.5 指数加权平均的偏差修正-深度学习第二课《改善深层神经网络》-Stanford吴恩达教授相关推荐

  1. 2.4 理解指数加权平均-深度学习第二课《改善深层神经网络》-Stanford吴恩达教授

    ←上一篇 ↓↑ 下一篇→ 2.3 指数加权平均 回到目录 2.5 指数加权平均的偏差修正 理解指数加权平均 (Understanding Exponentially Weighted Averages ...

  2. 0.0 目录-深度学习第五课《序列模型》-Stanford吴恩达教授

    文章目录 目录 第五课 第四课 第三课 第二课 第一课 目录 第五课 <序列模型> 笔记列表 Week 1 循环序列模型 Week 1 传送门 -> 1.1 为什么选择序列模型 1. ...

  3. 0.0 目录-深度学习第四课《卷积神经网络》-Stanford吴恩达教授

    文章目录 第五课 第四课 第三课 第二课 第一课 第五课 <序列模型> 笔记列表 Week 1 循环序列模型 Week 1 传送门 -> 1.1 为什么选择序列模型 1.2 数学符号 ...

  4. 0.0 目录-深度学习第三课《结构化机器学习项目》-Stanford吴恩达教授

    文章目录 第五课 第四课 第三课 第二课 第一课 第五课 <序列模型> 笔记列表 Week 1 循环序列模型 Week 1 传送门 -> 1.1 为什么选择序列模型 1.2 数学符号 ...

  5. 0.0 目录-深度学习第二课《改善神经网络》-Stanford吴恩达教授

    文章目录 第五课 第四课 第三课 第二课 第一课 第五课 <序列模型> 笔记列表 Week 1 循环序列模型 Week 1 传送门 -> 1.1 为什么选择序列模型 1.2 数学符号 ...

  6. 0.0 目录-深度学习第一课《神经网络与深度学习》-Stanford吴恩达教授

    文章目录 第五课 第四课 第三课 第二课 第一课 第五课 <序列模型> 笔记列表 Week 1 循环序列模型 Week 1 传送门 -> 1.1 为什么选择序列模型 1.2 数学符号 ...

  7. 2.6 动量梯度下降法-深度学习第二课《改善深层神经网络》-Stanford吴恩达教授

    ←上一篇 ↓↑ 下一篇→ 2.5 指数加权平均的偏差修正 回到目录 2.7 RMSprop 动量梯度下降法 (Gradient Descent with Momentum) 还有一种算法叫做Momen ...

  8. 2.19 总结-深度学习-Stanford吴恩达教授

    ←上一篇 ↓↑ 下一篇→ 2.18 Logistic 损失函数的解释 回到目录 3.1 神经网络概览 文章目录 总结 习题 第 11 题 第 12 题 第 13 题 第 14 题 第 15 题 第 1 ...

  9. 深度学习教程(6) | 神经网络优化算法(吴恩达·完整版)

    作者:韩信子@ShowMeAI 教程地址:https://www.showmeai.tech/tutorials/35 本文地址:https://www.showmeai.tech/article-d ...

最新文章

  1. 【C#】集合_哈希表_字典_泛型_文件
  2. 使用Ranger对Hive数据进行脱敏
  3. hdu 1692(枚举+剪枝)
  4. Cadence IC CDB-OA工艺库转换方法
  5. GDCM:gdcm::Writer的测试程序
  6. IoT与区块链的机遇与挑战
  7. 树莓派4b ros镜像 网盘_树莓派4B的入手操作
  8. c语言08,标准C语言08_01.doc
  9. zabbix在ubuntu16.04上的安装
  10. c语言实现数据结构中的链式表
  11. 第二十一章 基于鹰栖息(eagle perching)的无模型优化
  12. CTreeCtrl 类的InsertItem成员函数
  13. DirectSound 播放声音杂音问题.
  14. idea代码格式化详细总结(快捷键、格式化规则、格式化模板)
  15. [逆向破解]lua脚本解密
  16. 从unity3d官网下载教程
  17. 4399知名游戏-赛尔号图鉴的爬取
  18. 工业云平台大数据统计分析有什么优势?
  19. Lumen 安装配置
  20. debian 安装打印机驱动及打印机共享

热门文章

  1. 2018 计蒜之道 初赛 第四场
  2. MyBatis使用动态代理报 invalid bound statement (not found) 错
  3. ucos操作系统的内核有哪些调度方法
  4. 纪念逝去的岁月——C/C++字符串反转
  5. 五花八门的bug跟踪工具
  6. VC++在两个按钮之间连直线和折线
  7. Windows PatchGuard学习
  8. IDA Pro 反汇编窗口基本操作
  9. 802.11成帧封装实现(四)
  10. [Swift]LeetCode324. 摆动排序 II | Wiggle Sort II