转自:http://www.cnblogs.com/jerrylead/archive/2011/03/09/1978280.html

作者讲得很清楚

记得在高中做数学题时,经常要求曲线的切线。见到形如之类的函数,不管三七二十一直接求导得到,这就是切线的斜率,然后就得到了处的切线。

上大学又学习了曲面切线和法向量的求法,求偏导是法向量,然后套公式求出切线。

一个经典例子如下:

(来自web上某个《几何应用》ppt)

其中的向量n是F(x,y,z)的偏导数。

然而,这两者求法看似无关啊,中求得的是切线,然而下面的求偏导后却是法向量,为啥都是求导,差别这么大呢?切平面的方程为啥又是与法向量有关呢?

当然这些问题的问答都可以通过严格的数学推导完成。这里想从更加直白的角度来说明道理。

首先,法向量(梯度)是F(X)(其中X={x0,x1,x2,…xn}是n维向量)对各个分量求偏导后的结果,代表了F(X)在各个方向的变化率,整个法向量就是F(X)在各个方向上变化率叠加出来的向量。如对于一维的F(x)=,在x上导数是2x,意味着在x方向上是以2x的速度变化,比如当x=2时,F(x)变化率为4大于当x=1时(变化率为2)的变化率,法向量的方向只能是x方向,因为F(X)是一维。这里的F(X)称为隐函数,如我们平时使用的使用隐函数就可以表示成F(x,y)=f(x)-y,这样其实F(x,y)是二维的。至于为什么导数就是变化率,可以通过导数的定义就可以知道了(微小的dx变化引起多大的dy变化)。

那么我们明白了,隐函数F(X)的法向量就是F(X)对各个分量的偏导数的向量。那么为何中求得的是切线,而不是法向量?其实我们不能搞混了隐函数F(X)和。隐函数是一个函数,它的值根据X的取值不同而不同。而只是x和y之间满足的约束关系,如建立x-y坐标,两者的约束关系可以通过图形(直线、曲线等)来表示。比如我们可以用来表示一条抛物线,而且能够在x-y坐标系下画出来。而换用隐函数表示就是F(x,y)=,只有当F(x,y)等于一个给定值(比如0时),它才是一条抛物线,否则它只是一个函数,如果用z来代替F(x,y),那么F(x,y)其实是一个曲面,维度上升了1。我们对F(x,y)求偏导后的结果其实就是F(x,y)的值z的变化率。

说明F(x,y)的值究竟将在(x,y)的小范围能变化多少,这个变化率决定于x方向上的微小变换dx和y方向上微小变换dy的线性组合,而他们的系数就是偏导数。将dx和dy换成单位向量i和j就是法向量了。那么梯度也就反映了F(X)在某一点的变化率和变换方向。

说的有点绕口,简而言之,对于一个隐函数F(X),我们想知道在给定X附近F(X)的变化方向和大小。怎么去刻画?由于X的各个方向(x0,x1,x2…xn)上变化速率和方向都不同(比如在x0上以平方级别变化,在x1上以线性方式变化,这个要根据具体的表达式了),而我们想知道他们叠加在一块是怎么变化的。我们使用全微分公式(比如上面的,可以知道他们之间的叠加系数就是偏导数,叠加结果就是变化率,而方向就是x0,x1,x2…相应的变化方向i,j,k…等线性组合得到的方向。

回到为什么“中求得的是切线”的问题,其实这是最终结论了,是推导出来的。第一步我们将写成隐函数(这里的x,y都是实数了,上面的X是向量),

然后求F对x的偏导得=

求F对y的偏导得-1。

即梯度是

由于切线和法向量是垂直的,因此切线和法向量内积为0。

设切线方向向量为(m,n),那么,即

可见,切线斜率是

回到上面蓝色图片中的曲面求切平面问题,求出某点的法向量后,在该点的切平面要满足两个条件,一是要过切点,而是要反映出该点的变化方向(这里不是该点F(X)值的变化方向,而是该点自己的变化方向)。然而该点的变化最终要反映出该点F(X)值的变化,也就是切平面的变化要反映出法向量的变化,而偏导数正是反映出了F(X)值的变化。因此切平面的偏导数与F(X)的偏导数是一样的。我们从蓝色图片中看到,切平面正是利用了F(X)的偏导数。

有上面的全微分公式,我们可以更好地理解极值,为什么常说函数取得极值的时候导数为0呢。假设一维情况,吧,要求极小值,两边微分后得,当x=0时,导数2x为0,取得极值。否则,如果x为正数,那么dx只需向左调整(dx<0),就能使F(x)值变小,如果x为负数,那么dx只需向右调整(dx>0),就能使F(x)变小。因此最后调整结果是x=0。对于二维情况,

的值在计算后会有正负值,但我们应该注意到dx可正可负,dy也可正可负,只要有一个不为0,那么通过调整dx,dy的正负号(也就是确定怎么移动x和y)就可以使的值变大变小。只有在偏导数都是0的情况下,无论如何调整dx和dy,都是0,取得极值。

以上只是一些个人浅显理解,目的是建立感性认识,会存在一些纰漏。

*下面是个人更为通俗的理解:

如果函数是一维的变量,则梯度就是切线的方向

如果是大于一维的,梯度就是在这个点的法向量,并指向数值更高的等值线,这就是为什么求最小值的时候要用负梯度

导数和梯度,切线和法向量相关推荐

  1. 小谈导数、梯度和极值

    [转载请注明出处] http://www.cnblogs.com/jerrylead 记得在高中做数学题时,经常要求曲线的切线.见到形如之类的函数,不管三七二十一直接求导得到,这就是切线的斜率,然后就 ...

  2. 干货来袭!3天0基础Python实战项目快速学会人工智能必学数学基础全套(含源码)(第2天)微积分篇:极限与导数、梯度下降与积分

    第1天:线性代数篇:矩阵.向量.实战编程 第2天:微积分篇:极限与导数.梯度下降.积分.实战编程 第3天:概率分析篇:条件概率与全概率.贝叶斯公式.实战项目 目录 前言 一.极限与导数 1.1 极限 ...

  3. [数值计算-10]:一元非线性函数求最小值 - 导数与梯度下降法Python法代码示例

    作者主页(文火冰糖的硅基工坊):https://blog.csdn.net/HiWangWenBing 本文网址:https://blog.csdn.net/HiWangWenBing/article ...

  4. Python求函数导数并绘制切线

    下面我们通过Python来求函数y = 0.01x**2 + 0.1*x的导数,并绘制函数图像以及函数在某一点的切线. 首先,我们给出导数的数学定义式: 其次,我们先来写一写函数导数的实现代码.一般来 ...

  5. 切线和倒数_导数法求切线

    根据导数的几何意义,切点处导数等于切线斜率,这也作为我们求解函数切线方程的基础. 求切线,我们需要两个要素:①切点坐标,②切点斜率. 1.已经切点:直接通过求切点导数来求切线斜率,然后用点斜式方程求解 ...

  6. Tensorflow 2.x源码详解之第三章:导数(梯度/GradientTape)

      大家好,我是爱编程的喵喵.双985硕士毕业,现担任全栈工程师一职,热衷于将数据思维应用到工作与生活中.从事机器学习以及相关的前后端开发工作.曾在阿里云.科大讯飞.CCF等比赛获得多次Top名次.现 ...

  7. 导数与梯度,切线和法向量

    查看全文 http://www.taodudu.cc/news/show-6477083.html 相关文章: P值的含义 大数据专业 数据科学与大数据技术专业有哪些就业方向? 本科大数据专业该怎么上 ...

  8. 方向导数、导数、梯度在图形学里的意义

    导数是数学概念,对于可导函数,利用割线无限逼近切线,而割线斜率的极线即为切线的斜率,公式为:函数y=f(x)在x=x0处的导数f′(x0),表示曲线y=f(x)在点P(x0,f(x0))处的切线的斜率 ...

  9. 随机过程:高斯函数导数、梯度

    一.说明 高斯函数广泛应用于统计学领域,随机过程,谱分析等.在信号处理领域,用于定义高斯滤波器,在图像处理领域,二维高斯核函数常用于高斯模糊Gaussian Blur,在数理方程领域,主要是用于解决热 ...

最新文章

  1. sqlmap完成简单的sql注入
  2. SAP Spartacus UI TabParagraphContainerComponent 的工作原理
  3. JavaFX技巧23:节省内存! 属性的阴影场
  4. PCS7组态及简单项目搭建
  5. firefox如何下载播放的视频
  6. python隐藏窗口_python中隐藏Console窗口
  7. 连接局域网打印机显示无法连接服务器,网络打印机拒绝访问无法连接处理方法汇总...
  8. 新氧科技CEO金星直播背后:助推产业线上化,打造医美“新基建”
  9. LNK1104:无法打开文件d3dx11.lib
  10. Flex应用的易用性设计过程
  11. python数据分析董付国ppt_Python数据分析、挖掘与可视化(慕课版) 董付国 著 / 人民邮电出版社...
  12. Windows10搭建opengrok服务器
  13. Java求两个数组的交集、差集、并集
  14. java 基本类型 不赋值_探究Java中基本类型和部分包装类在声明变量时不赋值的情况下java给他们的默认赋值...
  15. win10系统显示打印机未连接到服务器,win10系统无法连接到打印机的解决方法
  16. vue 项目ztree 异步加载树
  17. Word复选框字体丢失解决
  18. Java基础知识(基如eclipse)
  19. AVI怎么转换成MP4格式?
  20. 银行营销数据的Python数据分析--连接SQLserver

热门文章

  1. 太赞了,使用应用魔方 AppCube,我没有写一行代码就开发出了一款投票微信小程序
  2. C++ STL常见容器
  3. 微商小程序加人加粉推广平台二维码
  4. [ES6] Generator 函数
  5. JavaScript事件冒泡、事件捕获和阻止默认事件
  6. sql语句里面最难的not exists,exists,口语化解释(个人笔记)
  7. Mercurial与TortoiseHg使用入门教程(转)
  8. 学术-物理-维空间:五维空间
  9. MD5 SHA1 加密
  10. 会计初级可以自己报名吗_初级会计考试可以自学吗?