优化理论与实用算法
上QQ阅读APP看书,第一时间看更新

2.2 多维导数

梯度是导数在多元函数的推广。它代表了函数的局部斜率,从而能够预测从一点的任意方向移动一个小的步长后的效果。回想一下,导数是切线的斜率。梯度指向切线超平面的最陡上升方向,如图2.3所示。n维空间中的切线超平面是满足以下条件的点集:

图2.3 梯度的每个分量都定义了一条局部切线。这些切线定义了局部切线超平面。梯度向量指向最大增长方向(见彩插

其中w为向量,b为标量。一个超平面具有n-1个维度。

fx处的梯度写作∇fx),它是一个向量。该向量由f关于它的每一个分量的偏导数[1]组成:

一般规定列向量由逗号分隔。例如,。例2.2展示了如何计算特定点上函数的梯度。

多元函数的黑塞矩阵是一个包含关于所有输入的二阶导数的矩阵[2]。二阶导数包含函数局部曲率的信息。

例2.2 计算特定点的梯度

计算当c=[2,0]时,fx)=x1sin(x2)+1的梯度。

多元函数f的方向导数∇sfx)是x以速度s移动时fx)的瞬时变化率。该定义与一元函数导数的定义紧密相关[3]

方向导数可以使用函数的梯度来计算:

计算方向导数∇sfx)的另一种方法是定义gα)≡fx+αs),然后计算g′(0),如例2.3所示。

方向导数在梯度方向上最高,而在与梯度相反的方向上最低。这种方向依赖性源于方向导数定义中的点积,以及梯度是局部切线超平面的事实。

例2.3 计算方向导数

我们希望计算出s=[-1,-1]方向上,fx)=x1x2x=[1,0]处的方向导数:

我们还可以这样计算方向异数:

[1] 函数关于变量的偏导数是假定所有其他输入变量保持不变的导数,记为∂f/∂x

[2] 只有当f的二阶导数在其取值点的邻域中都连续时,黑塞矩阵才是对称的:

[3] 有些文献要求s是单位向量。例如:

G. B.Thomas,Calculus and Analytic Geometry,9th ed. Addison-Wesley,1968.