zoukankan      html  css  js  c++  java
  • 梯度下降法参数更新公式的推导

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

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

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

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

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

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

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

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

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

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

    因为:,代入可得:

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

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

  • 相关阅读:

    20145309《网络对抗》网络欺诈技术防范
    ceshi
    20145306 网路攻防 web安全基础实践
    20145306 张文锦 网络攻防 web基础
    20145306张文锦 网络欺诈技术防范
    20145306 《网络攻防》 信息搜集与漏洞扫描
    20145306 《网络攻防》 MSF基础应用
    20145306张文锦《网络对抗》恶意代码分析
    20145306 《网络攻防》 免杀技术
  • 原文地址:https://www.cnblogs.com/HuZihu/p/10858319.html
Copyright © 2011-2022 走看看