梯度下降法参数更新公式的推导

先来回顾一下梯度下降法的参数更新公式:

(其中,α是学习速率,是梯度)

这个公式是怎么来的呢?下面进行推导:

首先,如果一个函数 n 阶可导,那么我们可以用多项式仿造一个相似的函数,这就是泰勒展开式。其在a点处的表达式如下:

可以看出,随着式子的展开,这个展开式越来越接近于原函数。

如果用一阶泰勒展开式,得到的函数近似表达式就是:。想像梯度下降就是站在山坡上往下走,是原点,是往下走一步后所处的点。

我们知道梯度下降每走一步都是朝着最快下山的方向,因此应该最小化

我们使用一个向量来表示也是一个向量,那么上式可写成:

既然我们要使最小,那么只有当等于-1,也就是这两个向量反方向时,才会最小。

反方向时,我们可以用向量来表示。(其中表示长度大小)

因为:,代入可得:

这样就可以得到参数更新公式:。(其中是步长,是函数在时的梯度)

因为我们使用的是一阶泰勒展开式,因此要非常小,式子才成立。也就是说学习速率要非常小才行。所以如果你要让你的损失函数越来越小的话,梯度下降的学习速率就要非常小。如果学习速率没有设好,有可能更新参数的时候,函数近似表达式是不成立的,这样就会导致损失函数没有越变越小。

梯度下降法参数更新公式的推导相关推荐

  1. 机器学习之数学系列(二)梯度下降法(参数更新公式的由来)

    一.引言 下山问题   如下图所示,假设我们位于黄山的某个山腰处,山势连绵不绝,不知道怎么下山.于是决定走一步算一步,也就是每次选个方向往山下走一步,这样一步一步走下去,一直走到觉得我们已经到了山脚. ...

  2. 神经网络中梯度下降的参数更新公式理解

    目的:降低损失函数y 可调整数值:变量x(式子中时θ) 当求得导数为正数时,代表x增大,y也增大,根据目的,需要减小x,这样y也会减小,所以取导数反方向,即更新为负号. 当求得导数为负数时,代表x增大 ...

  3. CS231n 卷积神经网络与计算机视觉 7 神经网络训练技巧汇总 梯度检验 参数更新 超参数优化 模型融合 等

    前面几章已经介绍了神经网络的结构.数据初始化.激活函数.损失函数等问题,现在我们该讨论如何让神经网络模型进行学习了. 1 梯度检验 权重的更新梯度是否正确决定着函数是否想着正确的方向迭代,在UFLDL ...

  4. 机器学习基础(十一)—— Logistic Regression 梯度更新公式的推导

    Logistic Regression 所要最佳化的问题是: minw1N∑n=1Nln(1+exp(−ynwTxn))Ein( ...

  5. 梯度下降法与批量梯度下降法的简洁公式总结

    http://www.julyedu.com/question/big/kp_id/23/ques_id/1017

  6. 机器学习梯度下降法举例

    本文是参考Andrew Ng网上课程和别人总结的机器学习笔记,作为笔者学习的参考,笔者主要实现了一些程序问题. 持续更新中- 更新- 先以最为简单的例子举例,比如有一个函数为y=x2y=x^2y=x2 ...

  7. 深度学习中多层全连接网络的梯度下降法及其变式

    深度学习中多层全连接网络的梯度下降法及其变式 1 梯度下降法 2 梯度下降的变式 1.SGD 2.Momentum 3.Adagrad 4.RMSprop 5.Adam 6.小结 1 梯度下降法 梯度 ...

  8. 深度学习原理-----线性回归+梯度下降法

    系列文章目录 深度学习原理-----线性回归+梯度下降法 深度学习原理-----逻辑回归算法 深度学习原理-----全连接神经网络 深度学习原理-----卷积神经网络 深度学习原理-----循环神经网 ...

  9. 梯度下降法-学习率选取

    回顾 先来回顾一下梯度下降法参数更新方法: 对代价函数求偏导,乘以学习率,来更新 那么如何确定梯度下降法正常的工作呢?如何选取一个学习率呢? 梯度下降法是否正常工作? 梯度下降所做的工作就是寻找一个合 ...

最新文章

  1. 在Windows上使用LaTeX
  2. 华硕 RT-AC54U路由器固件功能说明
  3. python编写装饰器_我也来写一下python装饰器
  4. redis循环键_Redis的并发控制
  5. linux 输入--输出--重定向 stdin/stdout/stderr
  6. Java第五次作业 ,面向对象高级特性(抽象类与接口)
  7. mysql插入用户 5.7_mysql 5.7 用户添加与权限管理
  8. CentOS6.5 firefox安装flash插件
  9. c++在数组中添加元素_LeetCode 题解 | 1157. 子数组中占绝大多数的元素
  10. Excel VBA编程教程(基础一)
  11. 云课堂智慧职教答案python_云课堂智慧职教答案表,职教云答案课堂智慧职教答案公众号,云课堂智慧职教答案python...
  12. MWEC:一种基于多语义词向量的中文新词发现方法
  13. Android隐藏app应用图标
  14. 豪沃轻abs12v电是什么系统_汽车中的ABS系统是什么意思?
  15. 内网渗透-内网穿透猕猴桃抓密码提权烂土豆提权
  16. IBM服务器修改时间为24小时制,联想携IBM为用户提供24小时全天候技术支持
  17. HTB-Cursed Secret Party
  18. 【Unity】刮刮乐效果(擦除图片像素值)
  19. HQChart使用教程11-如何把K线数据API替换成自己的API数据
  20. 【实战案例】python进行自动网上考试

热门文章

  1. APT/APT-GET常用信息
  2. 【题解】Luogu P5071 [Ynoi2015]此时此刻的光辉
  3. Bytom国密网说明和指南
  4. free -m 下的含义
  5. 设计模式之享元(flyweight)模式
  6. 20162303 实验二 树
  7. magento中某个商店实现部分样式
  8. Linq lambda表达式经验总结
  9. 練習重繪TreeView控件
  10. 网络编程套接字Socket