这篇博文主要讲解下梯度与方向导数的关系、等值线图中梯度的表示,以及梯度的应用。因涉及太多高数的知识点,在此就不一一详述了,只是简单梳理下知识点,有所纰漏还望纠正指出,文末附有参考文献,借图。

一、方向导数与梯度

1、方向导数

导数引言

我们知道在二维平面上,F(x,y)=0 有斜率的概念,从名字上看就是“倾斜的程度” 。百度百科的解释:表示一条直线(或曲线的切线)关于(横)坐标轴倾斜程度的量。它通常是直线(或曲线的切线)与(横)坐标轴夹角的正切,或两点的纵坐标之差与横坐标之差的比来表示。导数的几何意义就是该函数曲线在这一点上的切线斜率,曲线上的点可导时,也就能找到过该点的切线。

方向导数

知道了二维平面上的斜率(即导数)的概念,延伸到三维呢?那就有了方向导数的概念,在二维平面上,任何曲线上可导一点都能找到切线,那曲面上有全微分(可微)的一点都能找到过该点的一个切平面,并且在切平面上任意方向的向量都是该点的方向导数。下面形式化表述什么是全微分,以及方向导数怎么定义。

形式化表述

我们先了解下全增量的概念:

如果函数 z=f(x,y) 在点p(x,y) 的某邻域内有定义,设为这邻域内任意一点,则称这两点的函数值之差

 为函数在点p对应于自变量增量的全增量,记为

全微分:

若在p点的全增量 Δz 可以表示为 Δz=AΔx+BΔy+o(ρ),其中A、B不依赖于Δx, Δy,仅与x,y有关,ρ趋近于0,

,此时称函数z =f(x, y)在点 p 处可微分,AΔx+BΔy 称为函数z=f(x, y)在点(x, y)处的全微分,记为 dz=AΔx +BΔy。那么A、B分别怎么求呢?该函数在点(x,y)的偏导数

,当Δx=0 和 Δy分别为0 时,利用全增量的公式可推出,

我们上面提到了偏导数的概念,下面给出偏导数几何意义:

做了这么多铺垫,终于到了主角方向导数出场了。

我们对比二维平面上曲线的导数来理解方向导数的概念,导数的公式是

三维空间的方向导数公式如下:

 其中ρ趋近于0,

由以上求得全微分的公式

,代入即

其中ρ趋近于0,

(见下图)

2、梯度

梯度的由来

函数 z = f(x,y) 在p(x,y) 点沿哪一方向增加的速度最快? 我们定义梯度的方向是函数在该点增长最快的方向。由方向导数公式推导如下

  其中cos(G,el)=1时,方向导数取得最大值 |G|,我们称G为梯度。梯度的方向与偏导的方向一致,增加的速度最快。二元函数z=f(x,y)的梯度,记为

可知,函数在某点的梯度是一个向量,它是方向导数取得最大值的方向,而它的模为方向导数的最大值。

等值线与梯度的表示

梯度的方向与过点p的等值线上的法向量的一个方向相同,且指向等值线(函数值)增加的方向。在几何上 z = f(x,y) 表示一个曲面,曲面被 z=c 所截得的曲线在xoy轴投影如下图2,对f(x,y) = c2 对x求导,其中涉及到y是x的隐变量,得

在p点的切线斜率是

,则由以上公式可得法向量的斜率是

,这也正是梯度的斜率(下图1)。又由于沿梯度的方向导数大于0,所以沿梯度方向是函数增加。

图1

图2

二、梯度的应用

在机器学习领域,梯度有很广泛的应用,比如常见的梯度下降算法,它是求解无约束最优化问题的一种常用方法。我们先列出损失函数,求损失函数的最小,我们只要沿着梯度的反方向下降,一步步到极小值。这也是一种贪心算法。但是在求梯度的时候,往往要用到全部训练样本,当训练样本数量大的时候,这是个很耗时的工程,所以提出随机梯度下降和批量梯度下降,求解梯度选用少量样本。

参考博客:

梯度下降算法动图_一文读懂梯度下降算法相关推荐

  1. 梯度下降算法动图_一文看懂常用的梯度下降算法

    概述 梯度下降算法(Gradient Descent Optimization)是神经网络模型训练最常用的优化算法.对于深度学习模型,基本都是采用梯度下降算法来进行优化训练的.梯度下降算法背后的原理: ...

  2. java中date类型如何赋值_一文读懂java中的Reference和引用类型

    简介 java中有值类型也有引用类型,引用类型一般是针对于java中对象来说的,今天介绍一下java中的引用类型.java为引用类型专门定义了一个类叫做Reference.Reference是跟jav ...

  3. stata 求输出相关系数矩阵命令_一文读懂结果输出命令大全(上)

    目录 描述统计量 help tabstat   //Stata 官方命令 描述统计量组间均值差异检验 help ttest help ttable2 help estout 相关分析命令 help p ...

  4. psm倾向得分匹配法举例_一文读懂倾向得分匹配法(PSM)举例及stata实现(一)

    原标题:一文读懂倾向得分匹配法(PSM)举例及stata实现(一) 一.倾向匹配得分应用之培训对工资的效应 政策背景:国家支持工作示范项目( National Supported Work,NSW ) ...

  5. stata 将数据集变量名称导出_一文读懂空间计量经济学及stata操作

    在Stata 15中,推出了最新的空间计量官方命令,均以sp开头,表示 spatial data),可以处理横截面与面板形式的空间数据.本文主要为大家介绍空间计量命令之spregress的使用. 一. ...

  6. 三轴加速度传感器和六轴惯性传感器_一文读懂三轴,六轴,MEMS陀螺仪(角速率传感器)的区别...

    原标题:一文读懂三轴,六轴,MEMS陀螺仪(角速率传感器)的区别 随着现代科技的不断发展,陀螺仪也被应用到越来越多的领域和行业,例如我们常见纸飞机等飞行类游戏,赛车类游戏等.以陀螺仪为核心的惯性制导系 ...

  7. python输入什么就输出什么_一文读懂Python的输入和输出

    本文介绍了Python的输入和输出,既然是Python代码,那么就一定有输出量,那么,Python是如何输出的呢? 输出 用print()在括号中加上字符串,就可以向屏幕上输出指定的文字.比如输出'h ...

  8. gps导航原理与应用_一文读懂角速度传感器(陀螺仪)的应用场景

    前文我们大致了解陀螺仪的来历,原理和种类,那么,它与我们的日常生活有怎样的关系呢? 陀螺仪器最早是用于航海导航,但随着科学技术的发展,它在航空和航天事业中也得到广泛的应用.陀螺仪器不仅可以作为指示仪表 ...

  9. hdfs读写流程_一文读懂HDFS分布式存储框架分析

    一文读懂HDFS分布式存储框架分析 HDFS是一套基于区块链技术的个人的数据存储系统,利用无处不在的私人PC存储空间及便捷的网络为个人提供数据加密存储服务,将闲置的存储空间利用起来,服务于正处于爆发期 ...

最新文章

  1. 京东某员工因加班太多引女友不满,下定决心离职:不想被迫加班!
  2. signature=17cdfa42b38e299201383f4fa6ccc23f,EYE FOR FASHION
  3. hdu 2459 (后缀数组+RMQ)
  4. python数据处理实例-Python数据处理numpy.median的实例讲解
  5. 尺取法——POJ3061
  6. Office快捷键大全之三(Access快捷键下篇)
  7. Bootstrap-select使用说明
  8. 公司组织框架以及人员信息同步到钉钉相关解决方案
  9. SQL Server中的查询跟踪列值
  10. [原创][Windows] Win7安装visual c++ 2015 redistributable x64失败
  11. 使用range()以相反的顺序打印列表?
  12. Python:详解format格式化函数
  13. cmd cd 无法切换目录_如何获取用户主目录?os/user 就可以了,为什么要 gohomedir...
  14. 怎样卸载干净Oracle
  15. 扫地机器人基本设计方案
  16. android后台进程隐藏手段
  17. 记录各大吃播饭店地址
  18. 【神经网络参数初始化方法】
  19. 12 聚类模型 -- 机器学习基础理论入门
  20. tensorflow函数 tf.nn.xw_plus_b

热门文章

  1. UIToolkit下一代UI系统
  2. eclipse配置python django环境_windows下python+Django+eclipse开发环境的配置
  3. Ubuntu-查看ubuntu系统的版本信息
  4. 极度调查:“变阵”中国移动
  5. linux下建立软链接
  6. 【单片机】keil和Proteus使用教程
  7. 系统迁移必知会(多年总结)
  8. GNS3安装过程(详细)
  9. 7-5 计算个人所得税 (20分)
  10. TM4C123G 硬件spi