热门标签 | HotTags
当前位置:  开发笔记 > 前端 > 正文

多元函数偏导数的几何意义,梯度与偏导数的关系

本篇文章,探讨下多元函数微分学下的一些知识点之间的关系。包括全微分、偏导数、方向导数、梯度、全导数等内容。初学这些知识的时候,学生会明显觉得这些概念不难掌握,而且定义及计算公式

 

本篇文章,探讨下多元函数微分学下的一些知识点之间的关系。包括全微分、偏导数、方向导数、梯度、全导数等内容。

初学这些知识的时候,学生会明显觉得这些概念不难掌握,而且定义及计算公式也很容易记住,但总觉得差那么点东西,说又不知道从何说起。反正笔者是这种感觉。其实最根本的原因是没有理清这些知识间的关系,对这些知识并没有本质的理解。不妨现在就跟笔者一起再重新认识下它们,看看是否解开了你内心得些许疑惑。

 

一、导数和微分到底是什么,以及为什么会有这些概念

关于导数和微分到底是个什么玩意,笔者在探讨一元函数微分的时候有清晰的描述,现在再复述一遍,如下:

导数和微分其实就是数学家创造的两个代数工具,是为了从代数的角度来描述函数图像在几何上的变化。说白了,就是每次描述函数图像变化,不用再画图了,有了这个,直接用算式算算就行了。因此导数和微分也是沟通几何和代数的重要桥梁之一。而导数描述的是函数在一点处的变化快慢的趋势,是一个变化的速率,微分描述的是函数从一点(移动一个无穷小量)到另一点的变化幅度,是一个变化的量。

我们知道在一元函数中,函数从一点到另一点的变化只有一个方向,就是沿着函数曲线移动就行了。而且函数在某一点处的切线也只有一条,因此函数的变化快慢只由这个切线(的斜率)决定。然而多元函数就不同了,多元函数往往是一个面,这也是为什么多元函数的微分学会多出那么多东西,催生那么多概念。但是不要怕,其实多出的东西只是一元函数微分的拓展,本质都是一样的,不信请跟着笔者往下看,不难的,万变不离其宗。

我们来看图1。现在跟着笔者,咱们一起像数学家一样来思考(其实学会从数学家的角度来思考问题,往往最能达到理解知识的本质的目的)。描述函数的变化,一个是描述函数的变化快慢,一个是描述函数变化多少。比如图1中,类似于一元函数的探讨,我想知道函数在A点变化的快慢趋势,以及从A点到B点变化的幅度是多少另外我们多元函数的图像还有一个有意思的问题,就是函数可以固定一个变量,让另一个变量来变化,那么这又是与一元函数的十分不同的变化了,其实这是一个变化维度的问题。这些是数学家最兴趣的问题了。

 

 

好,到这里我们来总结下,我们想要全面的描述多元函数的变化,要考虑哪些方面呢,如下:
(1)函数在A点的趋势变化。

(2)函数从A到B的变化的量。

(3)函数降维时候的变化,比如固定y,将二元函数看成一个一元函数来让x单独变化,又会产生什么变化。

明确了我们要解决的问题,其实就是怎么用数学工具来描述上面的那些变化,就要动手来解决问题了。那么根据一元函数微分学的经验,描述变化快慢,就得看导数,即切线的斜率。描述变化的多少,就得看微分了。因此我们动手在上面按照这个目的画了画,得到了图2和图3.如下所示。

 

从图2可以看到,过A点有无数条曲线,相应的也必定有无数条切线。因此切线的斜率必定不止一个。从图3可以看到从A到B有无数条路径可以到达。那么摆在我们面前的问题就是,如何将一元函数的导数和微分的知识进行相应的拓展,来适应这些“无数”的问题?

这点问题肯定难不倒数学家。于是就产生了多元函数微分学的那些概念。A点不是存在无数条切线吗?那好办,这些切线的斜率都是导数,那么就定义一个方向导数来表示他们。另外有无数条切线,就会有无个变化的方向,这里面哪个方向变化是最快的呢?于是梯度的定义就来了。数学家说,把变化最快的那个方向定义为梯度,所以梯度其实是一个向量,表示的是在A点变化趋势最大的那个方向。好了变化快慢的问题基本解决了。那么从A到B变化多少的问题怎么解决呢?这就是全微分的定义了。把从A到B的变化的多少定义为全微分。还剩下最后一个问题,就是如果函数降维度变化,比如固定了x,让y单独变化,这种变化怎么描述?没关系,就把他们定义为偏导数。好了,方向导数、梯度、全微分、偏导数的概念都已经出来了。当然了,真实情况肯定是数学家们经过大量的论证,才决定把A点无数条切线的变化方向称之为“方向导数”更加合适,而不是称之为“偏导”,我在这里这样子讲,是做了事后的专一的小猫咪而已。具体各个概念的定义及公式,也是经过数学家们大量的论证和证明才得到,可看相关教材。

好了,废话好多。我们来总结下吧:

(1)方向导数:本质就是函数在A点无数个切线的斜率的定义。每一个切线都代表一个变化的方向。

(2)梯度:函数在A点无数个变化方向中变化最快的那个方向。

(3)全微分:函数从A点到B点变化的量(其实是取一个无穷小的变化的量)。

(4)偏导:多元函数降维时候的变化,比如二元函数固定y,只让x单独变化,从而看成是关于x的一元函数的变化来研究。

再经过一番论证加证明得到了教材上关于他们的严格的数学表达式,从此数学家们拿着这套表达式开始在微分几何的领域叱咤风云了!!

讲到这里,我们来回顾下,我们是怎么打通理解这些知识点的,其实就是把自己想象成一位数学家,想象成自己要解决这些问题,应该怎么办,然后结合已有的知识仔细琢磨,从而得到知识的本质理解。这就是思维是如何产生的过程。如果说的官方点,其实就是探寻那些概念的几何意义。

二、相关概念的定义及公式回顾

为了加深理解,笔者干脆用白话把这些概念写在这里供大家结合理解。

2.1 偏导

上面讲了,偏导其实就是多元函数的降维下的导数。那么就非常简单了,比如二元函数关于x的偏导,只需要模仿一元函数导数的定义即可。这里把y看成常量。如下:

 \[{f_x}(x{\rm{y}}) = \mathop {\lim }\limits_{\Delta x \to 0} \frac{{f(x + \Delta x,y) - f(x,y)}}{{\Delta x}}\]

同理,大家可以得出f关于y的偏导。

2.2 方向导数

比如二元函数f在A点沿一个方向L变化,这条切线L由点A和切线L上另外一点B所确定。其中A(x1,y1),B(x2,y2)。那么怎么求f沿L的方向导数呢?经过数学家们的论证,有如下公式:

 

\[\begin{array}{l}
\frac{{\partial f}}{{\partial L}} = {f_x}\cos \alpha + {f_y}\cos \beta \\
\cos \alpha = \frac{{\overrightarrow {A{B_x}} }}{{\left| {\overrightarrow {AB} } \right|}}{\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} \cos \beta = \frac{{\overrightarrow {A{B_y}} }}{{\left| {\overrightarrow {AB} } \right|}}\\
\overrightarrow {AB} = ({x_1} - {x_2},{y_1} - {y_2})
\end{array}\]

2.3 梯度

数学家们经过证明,发现函数只要每一个变量都沿着关于这个变量的偏导所指定的方向来变化,函数的整体变化就能达到最快(变化的绝对值最大)。因此函数在A处的梯度为(以三元函数为代表):

 \[gradA = ({f_x}(A),{f_y}(A),{f_z}(A))\]

2.4 全微分

全微分的定义书上有严格的数学语言。这里我就用大白话说简单点。数学家们发现,其实跟一元函数差不多,多元函数从A到B的变化可以用一个线性变化来进行逼近,毕竟非线性的东西太复杂了。只要取的变化区间无穷小,总能找到一个多元的线性函数对这种变化的量进行逼近,而且线性函数的系数不受从A到B的路径选择的影响,只跟变化的量(即\[\Delta x\]或者\[\Delta y\])有关。于是把这个线性函数定义为全微分。之所以称之为全微分,是针对偏微分而言的,偏微分这里不提,有兴趣可以查查。而且数学家还证明了,系数其实就是偏导。

那么比如二元函数的全微分就是\[dz = {z_x}dx + {z_y}dy\]。

在此提一句,别总是纠结\[\Delta x\]和dx的区别,你可以简单理解为取到无穷小就是dx。

2.5 切平面

在这里再啰嗦一句。其实大家可以顺着想一想什么是切平面。前面说过A点存在无数条切线,这些切线肯定在同一个平面中,这个面就是在A点的切平面。是不是就很好理解了。

三、再啰嗦两句

切记,导数和微分的本质含义。

导数,即描述函数在一点处的变化快慢的趋势。

微分,即描述函数在一点处发生一个无穷小区间的变化的量的线性逼近。

相信通过这篇文章,大家对偏导、方向导数、梯度、以及全微分他们之间的区别和联系理解的更加透彻了。

哦,对了,差点把全导数给忘记了。其实全导数本质上就是一元函数的导数。他是针对复合函数而言的定义。比如z=f(x,y)x=u(t)y=v(t)。那么z关于t的导数就是全导数。所以我说本质上就是个一元函数的导数,z本质上就是个一元函数。因此全导数没什么好说的。

 

转载于:https://www.cnblogs.com/fuly550871915/p/8017151.html


推荐阅读
  • 本文介绍了一家大型电信公司在SOA/BPM基础设施项目中采用的版本控制和分支管理策略。自项目启动以来,团队通过定义详细的命名约定、测试流程和分支规则,确保了项目的顺利进行并成功投入生产。 ... [详细]
  • 本文探讨了从传统SSM(Spring + Spring MVC + MyBatis)架构到现代化Spring Boot框架的转变过程,详细分析了两者之间的差异和改进。文章结合图表展示了技术演进的关键节点,帮助读者更好地理解这一重要变革。 ... [详细]
  • 比较源文件与备份目录的差异
    本文介绍了如何有效对比源文件和备份目录之间的差异,确保数据完整性和一致性。文章提供了详细的步骤和工具推荐,帮助用户快速识别并解决潜在问题。 ... [详细]
  • 磁盘健康检查与维护
    在计算机系统运行过程中,硬件或电源故障可能会导致文件系统出现异常。为确保数据完整性和系统稳定性,定期进行磁盘健康检查至关重要。本文将详细介绍如何使用fsck和badblocks工具来检测和修复文件系统及硬盘扇区的潜在问题。 ... [详细]
  • 在跨浏览器开发中,一个常见的问题是关于如何在鼠标悬停时显示图片提示信息。本文深入探讨了 IE 浏览器对 IMG 元素 alt 属性的特殊处理,并提供了最佳实践建议。 ... [详细]
  • 解决Anaconda安装TensorFlow时遇到的TensorBoard版本问题
    本文介绍了在使用Anaconda安装TensorFlow时遇到的“Could not find a version that satisfies the requirement tensorboard”错误,并提供详细的解决方案,包括创建虚拟环境和配置PyCharm项目。 ... [详细]
  • JavaScript 基础语法指南
    本文详细介绍了 JavaScript 的基础语法,包括变量、数据类型、运算符、语句和函数等内容,旨在为初学者提供全面的入门指导。 ... [详细]
  • 基于JQuery实现的评分插件
    本文介绍了一个使用JQuery创建的交互式评分控件。当用户将鼠标悬停在星星上时,左侧的星星会变为实心,右侧保持空心,并显示对应的评分等级;移开鼠标后,所有星星恢复为空心状态。 ... [详细]
  • 本文介绍了如何利用 Spring Boot 和 Groovy 构建一个灵活且可扩展的动态计算引擎,以满足钱包应用中类似余额宝功能的推广需求。我们将探讨不同的设计方案,并最终选择最适合的技术栈来实现这一目标。 ... [详细]
  • 在项目部署后,Node.js 进程可能会遇到不可预见的错误并崩溃。为了及时通知开发人员进行问题排查,我们可以利用 nodemailer 插件来发送邮件提醒。本文将详细介绍如何配置和使用 nodemailer 实现这一功能。 ... [详细]
  • 在尝试更新Microsoft Edge浏览器时遇到“检查更新时出错:无法连接到Internet”的问题。本文将详细介绍可能的原因及解决方案,包括防火墙设置和证书缺失的处理方法。 ... [详细]
  • 本文将探讨Java编程语言中对象和类的核心概念,帮助读者更好地理解和应用面向对象编程的思想。通过实际例子和代码演示,我们将揭示如何在Java中定义、创建和使用对象。 ... [详细]
  • 在使用STM32Cube进行定时器配置时,有时会遇到延时不准的问题。本文探讨了可能导致延时不准确的原因,并提供了解决方法和预防措施。 ... [详细]
  • 阿里云ecs怎么配置php环境,阿里云ecs配置选择 ... [详细]
  • 本文介绍了MindManager在项目管理中的强大功能,特别是其内置的甘特图工具。通过该工具,用户可以轻松创建和管理项目计划,优化任务分配,并与其他软件无缝集成。 ... [详细]
author-avatar
陈跃西vs_298
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有