数学分析-导数、偏导与微分

导数、偏导与微分

一元函数与多元函数的导数(偏导数)、微分以及函数的连续性之间关系密切,总体而言它们的关系如下图:

极限连续可导可微关系.png

极限连续可导可微关系.png

一元函数的内容在数学分析中较为容易理解,本文将着重介绍多元函数的偏导数、微分以及其他衍生概念和它们之间的关系。

多元函数与一元函数差别的根源

在一元函数中,可微和可导是等价的,但是在多元函数中并不如此,并且导数在多元函数中推广并不是自然的拓展,而是衍生出偏导数、方向导数、全导数等额外概念。此外,多元函数连续性的概念也不仅仅是从负方向和正方向两边连续这么简单了。造成这一切的根源是自变量维度的变化

我们先看一元函数场景下:

  • 函数\(f(x)\)\(x_0\)处极限:\(\lim\limits_{x\rightarrow x_0} f(x) =A\)
  • 函数\(f(x)\)\(x_0\)处连续:\(\lim\limits_{x\rightarrow x_0}f(x) = f(x_0)\)(函数在\(x_0\)出有定义);
  • 函数\(f(x)\)\(x_0\)处导数:\(\lim\limits_{x\rightarrow x_0} \frac{f(x)-f(x_0)}{x-x_0}=f'(x_0)\)(函数在\(x_0\)邻域有定义);

以上三者都谈到了\(x\rightarrow x_0\)的极限场景,而这三类极限存在的充要条件都是存在左极限\(x\rightarrow x_0^-\)和右极限\(x\rightarrow x_0^+\)且相等。也就是说,一元函数这些定义中,自变量是一维的,只要研究极限从点\(x_0\)正负两个方向趋近即可。如下图:

左右极限.png

左右极限.png

从上图中可知,在以为场景下,趋近于某一点只需要从两个方向分别趋近即可,但是当维度大于一维时,“趋近”的概念有了本质的变化。以二元空间的自变量\((x,y)\)组成的二维空间为例。如果我们按照惯有思路推导,会认为二维空间的极限是需要从四个方向趋近点\((x_0^-,0),(x_0^+,0),(0,y_0^-),(0,y_0^+)\),如下图:

二维空间极限轴方向

二维空间极限轴方向

这显然考虑的不够周全,比如考虑二维连续函数,在\(x,y\)两个轴是1,其他位置都是0,它在原点\((0,0)\)处,\((x_0^-,0),(x_0^+,0),(0,y_0^-),(0,y_0^+)\)四个方向都是连续的,但是从沿着向量\((1,1)\)的方向就不连续了,函数值从0跳跃到了1。所以,当自变量大于一维时,我们考虑点所在空间的所有方向,而不限于几个分量的方向:

二维空间极限全方向.png

二维空间极限全方向.png

当我们研究的问题从两个方向一下子扩展到无穷个方向后,传统的一些做法和结论就不适用了。

换个严谨点的说法:多维极限的存在,是指点\(\vec{p}\)以任何方式趋于点\(\vec{p}_0\)时,函数值\(f(\vec{p})\)都无限接近于\(f(\vec{p}_0)\)。因此,如果点\(\vec{p}\)只是以特殊方式,例如沿着一条定直线或定曲线趋于$ 0\(,即使函数值同样趋近于\)f(0)\(,我们还不能由此断定函数的极限存在。但是反过来,如果当\)\(以不同方式趋近于\)_0\(时,函数\)f()$趋于不同的值,那么就可以断定这函数的极限不存在。

一句话总结:极限趋近方向从两个变成了无穷个。

导数的延拓

一元函数的导数是直观的,因为自变量只有一个,导数的定义就是函数值(因变量)随着自变量变化的变化率。但是在多元函数中,自变量不止一个,如何定义导数就出现了不同方式。

首先,如果只考虑其中一个自变量的变化,比如\(x\),而其他自变量(\(y, z, \dotsb\))不变,那么此时多元函数就可以当成\(x\)的一元函数。这时仅对\(x\)求的导数就成为多元函数\(f\)对于\(x\)的偏导数,记为:\(\frac{\partial f}{\partial x}\)。同理,我们可以求出关于其他变量的偏导数\(\frac{\partial f}{\partial y}, \frac{\partial f}{\partial z}, \dotsb\)

偏导数只能反映出轴方向的变化性,因此偏导数存在可能说明函数延轴方向是连续的,对于其他方向爱莫能助,因此偏导数存在不能说明函数整体的连续性。

下图展示了二元函数的偏导数。固定\(y=y_0, x\)方向的偏导数(红色为x轴);固定\(x=x_0, y\)方向的偏导数(绿色为y轴)

x轴偏导数.jfif

y轴偏导数.jfif

其次,偏导数只反应了函数沿各平行于坐标轴的方向的变化率,对于其他的方向还需要定义新的导数。设函数\(f(\vec{x})\)是一个\(n\)维自变量的函数,\(\vec{x}=\{x_1,x_2,\dotsb,x_n\}\),若函数\(f\)在某点\(\vec{x}\)邻域内有定义,那么给定一个非零向量\(\vec{v}\),函数沿向量\(\vec{v}\)的方向导数为: \[ \nabla_{\vec{v}} f(\vec{x}) = \lim_{t\rightarrow 0}\frac{f(\vec{x}+t\vec {v})-f(\vec{x})}{t} \] 也可记为\(\frac{\mathrm{d}f_{\vec{v}}}{\mathrm{d}t}|_{t\rightarrow 0}\)。有些书籍中会较为严格地定义方向导数为函数在某一点沿单位长度向量的方向导数,在这样的上下文中,“函数在某点沿向量\(\vec{v}\)方向上的导数”指的是函数在这一点沿着\(\vec{v}\)对应的单位向量\(\vec{v_{unit}}=\frac{\vec{v}}{||\vec{v}||}\)的方向导数。不过,只要\(t\rightarrow 0\),是否指定向量\(\vec{v}\)为单位向量并不重要。下图展示了一个二维的方向导数。

方向导数.jfif

方向导数可以看成是偏导数的推广,当方向导数的方向正好沿着坐标轴时,方向导数就退化成了偏导数。例如,方向导数为\(\vec{v}=\{1,0,0,\dotsb\}\)平行于\(x_1\)轴,那么 \[ \begin{aligned} \nabla_{\vec{v}} f(\vec{x}) &= \lim_{t\rightarrow 0}\frac{f(\vec{x}+t\vec {v})-f(\vec{x})}{t}\\ &=\lim_{t\rightarrow 0}\frac{f(x_1+t,x_2,\dotsb,x_n)-f(x_1,x_2,\dotsb,x_n)}{t} \end{aligned} \] 我们将\(t\)改写成\(\Delta x_1\),则上式为: \[ \lim_{\Delta x_1\rightarrow 0}\frac{f(x_1+\Delta x_1,x_2,\dotsb,x_n)-f(x_1,x_2,\dotsb,x_n)}{\Delta x_1}=\frac{\partial f(\vec {x})}{\partial x_1} \] 此时,方向导数就是\(x_1\)分量的偏导数。

我们假设点\(\vec{x}\)邻域内各方向的方向导数都存在,那么是否有一个方向导数的最大值呢?该最大值又是什么方向呢?这就引出了梯度的概念。即梯度是多元函数在点\(\vec{x}\)处上升最快的方向

我们在这里直接给出梯度的表达式为: \[ \nabla f = \frac{\partial f}{\partial x_1}\vec{a}_1+\frac{\partial f}{\partial x_2}\vec{a}_2+\dotsb+\frac{\partial f}{\partial x_n}\vec{a}_n \] 其中,\(\frac{\partial f}{\partial x_i}\)\(\vec{x}_i\)分量的偏导数,\(\vec{a}_i\)\(\vec{x}_i\)方向的单位向量。 至于证明读者可以从各种教材上寻找到。

另外,还有一个叫做全导数的概念,不过它和偏导数、方向导数、梯度讨论的场景并不一样。全导数是在多元复合函数场景下,所有自变量都受到唯一参数\(t\)控制的,关于\(t\)的导数。即对于多元函数\(f(\vec{x})\),向量\(\vec{x}\)的每一个分量\(x_i\)都是\(t\)的函数\(x_i(t)\),那么全导数\(\frac{\mathrm{d}f}{\mathrm{d}t}\)为: \[ \frac{\mathrm{d}f}{\mathrm{d}t}=\frac{\partial f}{\partial x_1}\frac{\partial x_1}{\partial t}+\frac{\partial f}{\partial x_2}\frac{\partial x_2}{\partial t}+\dotsb+\frac{\partial f}{\partial x_n}\frac{\partial x_n}{\partial t} \] 全导数本质上是一个一元函数导数,只不过这个自变量\(t\)隐含在相关变量\(x_i(t)\)中,实际上等同于\(f(t)\)对于变量\(t\)的导数,反映了整体函数值关于\(t\)的变化率。

从增量到微分

在说明微分之前,我们需要介绍一个更直观的概念:增量\(\Delta\)。我们在上文中已经使用过这个概念了,例如\(\Delta x\),不过我们都只是在多元函数自变量的某个分量中使用增量,表示某一分量的变化值。

增量即自变量或因变量的变化值(不一定非要是正值),在一元函数中,自变量\(x\)的增量就是沿着\(x\)轴左右增减的量,因此,\(\Delta x\)是线性变化的量。因变量\(\Delta y\)是两个函数值的差\(\Delta y = f(x+\Delta x)-f(x)\),若函数\(f\)不是线性函数,增量通常也不是线性的。

在实际使用中,\(\Delta y\)计算会涉及函数\(f\),因此十分不可控,比如当\(f\)非常复杂时,\(\Delta y\)将难以计算,同时\(\Delta y\)没有特定的数学性质,会随着映射\(f\)的改变而改变。因此,在微积分中,借助其核心思想之一:“以直代曲”,对增量\(\Delta y\)进行简化,诞生了微分\(\mathrm{d}y\)

对于曲线\(y\)的研究通常不是平凡的,微积分的一大创举就是证明了以直代曲的广泛可行性。如果一条曲线不好研究,那么我们就将其分割成一个个小段,每一小段上用一条直线段取代,当分割的间隔非常非常小时,就可以用这一系列小折线段组取代原来的曲线。如下图所示:

以直代曲.png

以直代曲.png

那么如果确定每个小区间里的直线方程呢?一个广泛的做法是统一小区间内某一点,然后做过该点的切线作为代替曲线的直线,比如统一取区间左端点做切线(或中点、右端点都行,当区间足够小时,别没有差别。如果严格地来说,采用闭区间套定理不断缩小区间,最终每个区间只会剩下一个点^_^,所以在无穷小的情况下也不会考虑用割线,只有切线。)而选中点的切线的斜率就是我们之前所说的该点的导数,因此,已知直线斜率和过直线一点\((x_0,f(x_0))\),可以写出直线的方程\(g(x)\)\[ g(x)=f'(x_0)(x-x_0)+f(x_0) \] 我们令\(\mathrm{d}y = g(x)-f(x_0)\),由于函数\(g(x)\)是一个线性函数,因此\(\mathrm{d}y\)随着变化量\(\Delta x\)线性变化,至于\(\Delta x = x-x_0\),前面已经说过本来就是沿着\(x\)轴的线性变化,所以有\(\Delta x =\mathrm{d}x\)。因此,上式关系可改写为: \[ \mathrm{d}y = f'(x_0)\mathrm{d}x \] 即为函数\(f\)\(x_0\)处相应于自变量\(\Delta x\)的微分。注意,\(\mathrm{d}x=\Delta x\)。显然,\(\mathrm{d}y\)是在\(x_0\)邻域内,随自变量\(\mathrm{d}x\),以\(f'(x_0)\)为斜率的线性变化量。

那么,\(\mathrm{d}y\)\(\Delta y\)有什么关系呢?我们还是需要导数这个中间桥梁。

  • 导数:\(f'(x_0)=\lim\limits_{x\rightarrow x_0} \frac{f(x)-f(x_0)}{x-x_0}= \lim\limits_{\Delta x\rightarrow 0}\frac{\Delta y}{\Delta x}\)
  • 微分:\(f'(x_0)=\frac{\mathrm{d}y}{\mathrm{d}x}\)

上面二者结果都是\(x_0\)处的导数值!即\(\frac{\mathrm{d}y}{\mathrm{d}x}=\lim\limits_{\Delta x\rightarrow 0}\frac{\Delta y}{\Delta x}\)。后面的极限在\(\Delta x\rightarrow 0\)时只剩下了一项,说明\(\Delta y\)包含的其他项至少是\(\Delta x\)的高阶无穷小(如果\(f(x)\)是线性函数,剩余项就是0),所在才会在\(\Delta x\)趋于0的过程中消去,即\(\Delta y =f'(x_0)\Delta x+o(\Delta x), o(\Delta x)\)表示\(\Delta x\)的高阶无穷小。我们已知\(\Delta x=\mathrm{d}x\),那么\(\Delta y =f'(x_0)\mathrm{d}x+o(\Delta x)\Rightarrow \Delta y = \mathrm{d}y + o(\Delta x)\)。其含义是\(\Delta y\)增量是由线性增长部分\(\mathrm{d}y\)和高阶增长量\(o(\Delta x)\)组成,当\(\Delta x\)很小很小,以0为极限时有:\(\lim\limits_{\Delta x\rightarrow 0} \Delta y/\Delta x = \mathrm{d}y/\mathrm{d}x\)。(上面的过程也暗含了一元函数可微与可导的等价性)

他们之间的关系如下图所示:

增量与微分.png

增量与微分.png

从多元函数导数到微分

在一元函数中,可导和可微是互为充要条件。但是由于在多元函数中自变量维度的提升,可导变成了偏导,被限定了方向,甚至连多元函数的连续性都无法确定,而微分在向多元函数延时拓没有受到方向限制,这种充要关系也被破坏了。

具体谈到多元函数微分的话,通常指的是全微分。不过微分中是存在偏微分的,而偏微分确实也和偏导数是充要关系。例如: \[ f(x+\Delta x, y)-f(x,y)\approx \frac{\partial f}{\partial x}\Delta x\\ f(x, y+\Delta y)-f(x,y)\approx \frac{\partial f}{\partial y}\Delta y \] 当我们只考虑偏微分时,和一元函数是类似的,然而偏微分单独使用场景较少,因此谈到微分大家默认都是说全微分

多元函数全微分的引入和一元函数类似相同,都是通过增量概念,多元函数的总体增量称为全增量,记作\(\Delta f\): \[ \Delta f(\vec{x})=f(\vec{x}+\Delta \vec{x})-f(\vec{x}) \] 如果增量\(\Delta f\)可以表示成每个分量的增量的线性组合加上一个增量距离的高阶无穷小,那么则称函数\(f\)在点\(\vec{x}\)处可微: \[ \Delta f(\vec{x}) = \vec{A}^T\Delta\vec{x}+o(\rho) \] 其中,\(\vec{A}, \Delta\vec{x}\)是n维列向量,\(\rho=||\Delta\vec{x}||_2\)。同样的,在每个分量的增量都是沿坐标轴线性增长的,所以\(\Delta\vec{x}=\mathrm{d}\vec{x}\)。当\(\Delta\vec{x}\)很小很小时,\(o(\rho)\)忽略,剩余增量\(\Delta f\)记为\(\mathrm{d}f\),称为\(f\)在点\(\vec{x}\)处的全微分: \[ \mathrm{d}f=\vec{A}^T\mathrm{d}\vec{x}=a_1x_1+\dotsb+a_nx_n \] 由上可知,多元函数微分也是“以直代曲”思想的实践,只不过从用直线代替曲线变成了(高维)平面代替(高维)曲面。那每一个系数\(a_i\)到底等于多少呢?这就是从一般到特殊。

我们知道全微分是对点邻域任意方向都成立的,因此我们取平行于\(x_i\)的方向趋近,此时\(\Delta\vec{x}=\{0,\dotsb,\Delta x_i,\dotsb,0\}\),全增量在该方向的表达式为: \[ f(\vec{x}+\Delta \vec{x})-f(\vec{x})=a_i\Delta x_i\\ \Rightarrow \lim_{\Delta x_i\rightarrow 0} a_i=\frac{f(\vec{x}+\Delta \vec{x})-f(\vec{x})}{\Delta x_i} \] 熟悉的读者立刻就能发现,上式正式多元函数在\(x_i\)分量上的偏导数!即\(a_i=\frac{\partial f}{\partial x_i}\)。因此,全微分\(\mathrm{d}f\)等于: \[ \mathrm{d}f=\sum_{i=1}^n\frac{\partial f}{\partial x_i}\mathrm{d}x_i \] 从上面的过程我们也可以得出:当全微分存在时,其平行于各分量的偏导数也存在(可微\(\Rightarrow\)有偏导)。

反过来,如果有偏导,那么只能保证在轴方向的偏微分存在,全微分不一定存在。典型例子如下: \[ f(x,y)=\begin{cases} \frac{xy}{\sqrt{x^2+y^2}},(x,y)\neq (0,0)\\ 0,(x,y)=(0,0). \end{cases} \] 这个函数在\((0,0)\)处连续且偏导存在,但是不可微。 其在点\((0,0)\)全增量为: \[ \Delta f=f(0+\Delta x,0+\Delta y)-f(0,0)=\frac{\Delta x\Delta y}{\sqrt{\Delta x^2+\Delta y^2}} \] 当我们选用从x轴或y轴方向趋近于\((0,0)\),显然有: \[ \text{方向}_{\Delta x\rightarrow 0,\Delta y=0}: \Delta f = \mathrm{d}f = 0 \mathrm{d}x+0 \mathrm{d}y + 0= 0\\ \text{方向}_{\Delta y\rightarrow 0,\Delta x=0}: \Delta f = \mathrm{d}f = 0 \mathrm{d}x+0 \mathrm{d}y +0 = 0 \] 注意,上式表示时我们只谈从\({\Delta x\rightarrow 0,\Delta y=0}\)\({\Delta y\rightarrow 0,\Delta x=0}\)的方向,而非取极限

但是我们选用从方向\((1,1)\),即\(\Delta x = \Delta y\)趋近于\((0,0)\)时: \[ \text{方向}_{\Delta x\rightarrow 0,\Delta y=\Delta x}: \Delta f = \mathrm{d}f = \frac{\Delta x^2}{\sqrt{\Delta x^2+\Delta x^2}}=\frac{\sqrt{2}}{2}\mathrm{d} x+ 0\mathrm{d} y + 0 \] 显然点\((0,0)\)处从\((1,1)\)方向的微分和\(x,y\)轴方向的微分不相等,因此全微分并不存在。需要指出的是上面三个式子中\(o(\rho)=0\),因此我们可以直接写\(\Delta f = \mathrm{d}f\)

从上面可以看出可微的要求还是挺高的,需要从各个方向考虑。那么有没有一个简单的方法判断可微呢?有的,那就是一阶偏导数连续。

偏导与可微

其实偏导数连续是一个非常强的条件,一般函数都不会有这么好的性质。甚至偏导数连续是可微的充分条件,而非充要条件。可微并不能推导出偏导数连续!