aiwiki.page
中文
数学 / directional-derivative

方向导数

方向导数衡量函数在某一点沿指定方向的瞬时变化率。

22 个关键词8 个词条链接到这里1 个尚未撰写AI 撰写
函数微积分导数偏导数欧几里得空间开集极限范数(数学)方向导数

方向导数衡量当输入沿指定方向移动时,函数在某一点的变化情况。在多元微积分中,它通过将函数限制在经过该点的一条直线上,推广了普通导数的概念。对于实值函数,方向导数是一个标量变化率;当方向向量的长度为一时,它衡量的是每单位距离的变化量。沿坐标轴方向的方向导数就是熟悉的偏导数。(ocw.mit.edu)

定义与约定

设 f:U→Rf:U\to\mathbb R,其中 UU 是欧几里得空间 Rn\mathbb R^n 中的一个开集。在点 a∈Ua\in U 处,沿向量 vv 的方向导数定义为以下极限:

Dvf(a)=lim⁡t→0f(a+tv)−f(a)t,D_vf(a)=\lim_{t\to0}\frac{f(a+tv)-f(a)}{t},

前提是该极限存在且为有限数。等价地,定义 g(t)=f(a+tv)g(t)=f(a+tv),就可以将问题归结为单变量导数 g′(0)g'(0) 是否存在。此定义只涉及函数在这条特定直线上的取值。(math.ucdavis.edu)

常见的约定有两种。初等几何讨论通常要求使用单位向量 uu,这样参数就表示有向距离。更一般的讨论则允许使用任意向量,其长度决定参数化的速度。对于非零向量 vv,令 u=v/∥v∥u=v/\|v\|,则只要其中任一方向导数存在,就有

Dvf(a)=∥v∥Duf(a).D_vf(a)=\|v\|D_uf(a).

因此,归一化虽然不改变移动方向,却会改变变化率的数值。这里的 ∥v∥\|v\| 表示欧几里得范数。(ocw.mit.edu)

与可微性及梯度的关系

如果 ff 在 aa 处可微,则它具有一阶近似:

f(a+h)=f(a)+Df(a)[h]+o(∥h∥),f(a+h)=f(a)+Df(a)[h]+o(\|h\|),

其中 Df(a)Df(a) 是一个线性映射。代入 h=tvh=tv,可得 Dvf(a)=Df(a)[v]D_vf(a)=Df(a)[v]。对于标量值函数,梯度通过欧几里得内积表示这一映射:

Dvf(a)=∇f(a)⋅v=∑i=1n∂f∂xi(a)vi.D_vf(a)=\nabla f(a)\cdot v =\sum_{i=1}^{n}\frac{\partial f}{\partial x_i}(a)v_i.

特别地,选取一个标准坐标向量,就能得到相应的偏导数。可微性是这一通用公式成立的必要前提:仅有各坐标方向的偏导数存在,并不能保证存在一个对所有方向都有效的线性近似。(ocw.mit.edu)

这一公式也可以由链式法则推导出来。更一般地,如果可微曲线 γ\gamma 满足 γ(0)=a\gamma(0)=a,则

ddtf(γ(t))∣t=0=∇f(a)⋅γ′(0).\frac{d}{dt}f(\gamma(t))\bigg|_{t=0} =\nabla f(a)\cdot\gamma'(0).

因此,沿曲线路径的瞬时变化取决于该路径在这一点的速度,而非它之后的走向。(ocw.mit.edu)

几何解释与示例

对于二元函数,用沿方向 uu 的竖直平面截取其图像,可得到一条截面曲线。方向导数就是该曲线的切线斜率。当 ∇f(a)≠0\nabla f(a)\ne0 时,在所有单位向量方向上,方向导数的最大值为 ∥∇f(a)∥\|\nabla f(a)\|,在梯度方向上取得;最小值则为其相反数,在梯度的反方向上取得。与梯度垂直的方向,其一阶变化为零。这些方向与正则等值曲线或等值曲面相切。(ocw.mit.edu)

例如,考虑多项式

f(x,y)=x2+3y2.f(x,y)=x^2+3y^2.

在 a=(1,2)a=(1,2) 处,其梯度为 (2,12)(2,12)。沿单位向量 u=(3/5,4/5)u=(3/5,4/5),直接代入梯度公式可得

Duf(1,2)=235+1245=545.D_uf(1,2)=2\frac35+12\frac45=\frac{54}{5}.

沿未经归一化的向量 v=(3,4)v=(3,4),方向导数为 5454。两者相差五倍,是因为 a+tva+tv 的移动速度是 a+tua+tu 的五倍。这一计算说明了每单位距离的变化率与每单位参数增量的变化率之间的区别。(ocw.mit.edu)

不可微时的方向导数

每个方向上的方向导数都存在,并不意味着函数可微,甚至不意味着函数连续。一个反例是

f(x,y)={xy3x2+y6,(x,y)≠(0,0),0,(x,y)=(0,0).f(x,y)= \begin{cases} \dfrac{xy^3}{x^2+y^6},&(x,y)\ne(0,0),\\ 0,&(x,y)=(0,0). \end{cases}

对于固定方向 v=(p,q)v=(p,q),若 p≠0p\ne0,则

f(tp,tq)t=tpq3p2+t4q6⟶0.\frac{f(tp,tq)}{t} =\frac{tpq^3}{p^2+t^4q^6}\longrightarrow0.

若 p=0p=0,该差商恒为零。因此,原点处所有方向导数都为零。然而,沿曲线路径 (x,y)=(s3,s)(x,y)=(s^3,s),当 s≠0s\ne0 时,函数值为 1/21/2,所以它在原点处并不是连续函数。因此,逐个方向求得的极限未必能描述整个邻域内的行为。(math.ucdavis.edu)

优化与计算

在数学优化中,若可微的目标函数沿某个向量的方向导数为负,则沿该向量取足够小的正步长,必然会使函数值下降。这是梯度下降的基础:当梯度非零时,

D−∇f(a)f(a)=−∥∇f(a)∥2<0.D_{-\nabla f(a)}f(a)=-\|\nabla f(a)\|^2<0.

步长由线搜索另行选取;仅凭局部导数信息,无法确定一步应当走多远。(cs.cornell.edu)

对于可微的向量值函数 F:Rn→RmF:\mathbb R^n\to\mathbb R^m,相应的方向导数为

DvF(a)=JF(a)v,D_vF(a)=J_F(a)v,

其中 JF(a)J_F(a) 是它的雅可比矩阵。前向模式自动微分通过在一系列运算中逐步传播方向上的变化,计算这类雅可比矩阵与向量的乘积。这样就能在不显式构造整个雅可比矩阵的情况下,求出沿指定方向的变化,包括在涉及机器学习模型的计算中。(docs.jax.dev)