对于一个函数对向量的求导,通常使用向量的偏导数。如果有一个函数 f : R n → R f: \mathbb{R}^n \rightarrow \mathbb{R} f:Rn→R,其输入是一个 n 维向量 x = [ x 1 , x 2 , … , x n ] \mathbf{x} = [x_1, x_2, \ldots, x_n] x=[x1,x2,…,xn],那么该函数的梯度(gradient)是一个包含所有偏导数的向量。梯度的第 i i i个分量是函数对第 i i i个自变量的偏导数。
数学上,可以表示为:
∇ f ( x ) = [ ∂ f ∂ x 1 , ∂ f ∂ x 2 , … , ∂ f ∂ x n ] \nabla f(\mathbf{x}) = \left[\frac{\partial f}{\partial x_1}, \frac{\partial f}{\partial x_2}, \ldots, \frac{\partial f}{\partial x_n}\right] ∇f(x)=[∂x1∂f,∂x2∂f,…,∂xn∂f]
这个向量包含了函数在给定点 x \mathbf{x} x处的切线方向上的斜率。这是一个非常有用的概念,特别是在优化问题中。
举例说明,如果有一个函数 f ( x ) = x 1 2 + 2 x 2 f(\mathbf{x}) = x_1^2 + 2x_2 f(x)=x12+2x2,则其梯度是 ∇ f ( x ) = [ 2 x 1 , 2 ] \nabla f(\mathbf{x}) = [2x_1, 2] ∇f(x)=[2x1,2]。
在实际操作中,可以通过计算每个自变量的偏导数来找到梯度。这涉及对每个变量分别求导,将其他变量视为常数。