等高线的示意图:

三维曲面上的梯度更新过程中,很多地方出现梯度的下降方向是如下这样走的:

从图上能够看出,梯度下降的方向与等高线的切线方向垂直

那么为什么会垂直呢?其实是一个高数问题

解释

假设我们的损失函数为z=f(x,y),在几何上表示是一个曲面,该曲面被平面c(c为常数)所截得的曲线L方程为:

这条曲线L在xoy轴面上的投影是一条平面曲线Q,它在x0y平面直角坐标系中的方程为:

则我们称平面曲线Q为函数z=f(x,y)的等高线。

由于等高线f(x,y)=c上任一一点的切线斜率为dy/dx来求。

则等高线f(x,y)=c上任一一点(x,y)处的法线的斜率为:

又因为梯度的计算式子为:

则可以得到梯度的方向为:

从上可以看出梯度的方法与等高线f(x,y)=c上任一一点的法线斜率是相同的。

这也就解释了为什么梯度的方向与等高线切线方向垂直的原因。结论如下:

函数z=f(x,y)在点p(x,y)的梯度的方向与过点p的等高线f(x,y)=c在这点的法线一个方向相同。梯度的方向与等高线切线方向垂直.

转自:

https://zhuanlan.zhihu.com/p/27731819

为什么梯度的方向与等高线切线方向垂直?相关推荐

  1. OpenCV(八)形态学操作3--形态学梯度实现轮廓分析(基本梯度、内部梯度、外部梯度、方向梯度X(Y))

    目录 形态学梯度概述 一.基本梯度 1.原理 2.代码 3.效果 二.内部梯度 1.原理 2.代码 3.效果 三.外部梯度 1.原理 2.代码 3.效果 四.方向梯度 1.原理 2.二值化图像(黑白) ...

  2. 获取图像的梯度,方向和方向梯度图像

    %获取图像的梯度,方向和方向梯度图像 clc,clear,close all; Image = rgb2gray(imread('pic01.bmp')); [Gx,Gy] = imgradientx ...

  3. 什么是梯度?为什么梯度的方向总是指向函数值增大的方向?

    闲谈 对于梯度这个概念,我是这样的, 学习时,正序:导数–>偏导数–>方向导数–>梯度,从导数开始一步一步学到梯度这个概念,脑子里想 着:"梯度这个玩意儿有什么用,得记下来 ...

  4. matlab 梯度 什么意思,在MATLAB中使用imgradient时,如何解释梯度的方向?

    你的计算是正确的,但我们强烈建议您不使用atan(y/x)定义,因为这个计算是不认识的渐变的角度驻留在象限的,否则atan(y/x)与如果不正确,您的组件会错误地将角度报告为-45度.您应该使用ata ...

  5. html 怎么做分屏效果,纯css实现水平方向分屏和垂直方向分屏

    最近开发有这样一个需求,水平/垂直方向上的能够拖动.最开始采用操作dom的方式,但是卡顿现象明显,体验太差.思考问题是不是操作太频繁,导致卡顿,于是又尝试防抖与节流,效果还是不明显.突发想到,css有 ...

  6. GHM------Gradient Harmonized Single-stage Detector 从梯度的方向来解决样本不均衡的问题

    最近GHM太热门了,因此最近在做GHM的实验,因此做个笔记. 文章:https://arxiv.org/pdf/1811.05181.pdf code:https://github.com/libuy ...

  7. 我最佩服的一位同学!他是哈工大在读NLP博士积累28W粉丝

    今天只给大家介绍我的朋友忆臻,我是在知乎认识他的,解答了我不少问题,他目前在哈工大SCIR实验室读NLP方向博士,一直热心回答问题,知乎粉丝达到3万多人! 忆臻创建的公众号[机器学习算法与自然语言处理 ...

  8. 由KTT展开的一系列知识点

    首先为了便于理解,补充梯度方向这一概念 借鉴网址:https://baijiahao.baidu.com/s?id=1612682474674468619&wfr=spider&for ...

  9. 2017年7月历史文章汇总

    2017年7月历史文章汇总 2017-08-01 机器学习研究会 机器学习研究会 2017年1月历史文章汇总 2017年2月历史文章汇总 2017年3月历史文章汇总 2017年4月历史文章汇总 201 ...

最新文章

  1. Duilib界面库学习笔记
  2. VMware中的桥接模式、NAT(网络地址转换模式)、Host-only(主机模式):转自:http://blog.chinaunix.net/uid-11798538-id-3061551.html
  3. 写给程序员的美术创作指南
  4. FTP两种工作模式:主动模式(Active FTP)和被动模式(Passive FTP)
  5. 在jsx中绑定js表达式以及jsx注释
  6. 利用数据库创建webservice
  7. 【CodeForces - 215C 】Crosses (思维,图形题)
  8. sqlmap源码阅读_setPreprocessFunctions和_setPostprocessFunctions
  9. 阿里面试官必问21 个刁钻的HashMap 面试题,这次让你彻底搞懂
  10. [PKU 3580 3468][Noi 2005 Sequance]伸展树Splay 平衡树SBT(下)
  11. 你手机里装过最牛的软件是什么,精选15款分享,有一个你没用过
  12. ExtMail 参数配置指导
  13. oracle使用dmp文件恢复,dmp文件恢复oracle数据库
  14. js 正则校验 长数字 电话号码 银行卡号
  15. html七天签到页面,每日前端签到(第七天)
  16. 微信小游戏开发实战教程3-绘制网格
  17. 免费在线接线图软件 + 示例
  18. 大数据hadoop新手快速入门视频教程 Hadoop学习视频教程
  19. JBOSS EAP 6 系列七 JPA/hibernate
  20. AutoSAR系列讲解(实践篇)8.5-C/S原理进阶

热门文章

  1. OpenCV使用函数compareHist的实例(附完整代码)
  2. OpenCV霍夫直线houghlines点集的实例(附完整代码)
  3. OpenCV用代码解释单应性的基本概念
  4. VS中使用OpenCV构建应用程序
  5. WebAssembly的Qt
  6. c++标准I/O输入流
  7. 查看oracle数据库的连接数以及用户 (转:http://blog.itpub.net/24558279/viewspace-752293/)
  8. 检索数据_10_通过多条件组合返回数据
  9. Python多继承基础
  10. HALCON Progress