雅可比矩阵
雅可比矩阵是一种组织偏导数的方式,帮助理解非线性函数的局部线性变化。通过计算给定函数的所有偏导数并组成矩阵,可以得到雅可比矩阵。通过计算函数在某一点处的雅可比矩阵,可以预测函数在特定点附近的变化。雅可比矩阵作为线性化工具,对理解复杂非线性函数的局部行为具有重要意义。
雅可比矩阵的计算
矩阵形式表示的多元函数的导数,每一列对函数的一个自变量求偏导。
例如对一个由 f 1 f1 f1和 f 2 f2 f2组成的矩阵求导:
得到的矩阵就是雅可比矩阵,一般用J表示(Jacobian)。
示例
可根据雅可比矩阵的定义,先求函数 f f f各分量对 x x x、 y y y的偏导数,再将其按顺序排列成矩阵。
设 f ( [ x y ] ) = [ u ( x , y ) v ( x , y ) ] = [ x + sin ( y ) y + sin ( x ) ] f\left(\begin{bmatrix}x\\y\end{bmatrix}\right)=\begin{bmatrix}u(x,y)\\v(x,y)\end{bmatrix}=\begin{bmatrix}x + \sin(y)\\y+\sin(x)\end{bmatrix} f([xy])=[u(x,y)v(x,y)]=[x+sin(y)y+sin(x)],其中 u ( x , y ) = x + sin ( y ) u(x,y)=x + \sin(y) u(x,y)=x+sin(y), v ( x , y ) = y + sin ( x ) v(x,y)=y+\sin(x) v(x,y)=y+sin(x)。
步骤一:求 u ( x , y ) u(x,y) u(x,y)对 x x x、 y y y的偏导数
- 对 u ( x , y ) u(x,y) u(x,y)关于 x x x求偏导数时,将 y y y看作常数:
根据求导公式 ( X n ) ′ = n X n − 1 (X^n)^\prime=nX^{n - 1} (Xn)′=nXn−1, ( sin X ) ′ = cos X (\sin X)^\prime=\cos X (sinX)′=cosX,可得 ∂ u ∂ x = ∂ ∂ x ( x + sin ( y ) ) = 1 + 0 = 1 \frac{\partial u}{\partial x}=\frac{\partial}{\partial x}(x + \sin(y)) = 1+0 = 1 ∂x∂u=∂x∂(x+sin(y))=1+0=1。 - 对 u ( x , y ) u(x,y) u(x,y)关于 y y y求偏导数时,将 x x x看作常数:
同理可得 ∂ u ∂ y = ∂ ∂ y ( x + sin ( y ) ) = 0 + cos ( y ) = cos ( y ) \frac{\partial u}{\partial y}=\frac{\partial}{\partial y}(x + \sin(y)) = 0+\cos(y)=\cos(y) ∂y∂u=∂y∂(x+sin(y))=0+cos(y)=cos(y)。
步骤二:求 v ( x , y ) v(x,y) v(x,y)对 x x x、 y y y的偏导数
- 对 v ( x , y ) v(x,y) v(x,y)关于 x x x求偏导数时,将 y y y看作常数:
可得 ∂ v ∂ x = ∂ ∂ x ( y + sin ( x ) ) = 0 + cos ( x ) = cos ( x ) \frac{\partial v}{\partial x}=\frac{\partial}{\partial x}(y+\sin(x)) = 0+\cos(x)=\cos(x) ∂x∂v=∂x∂(y+sin(x))=0+cos(x)=cos(x)。 - 对 v ( x , y ) v(x,y) v(x,y)关于 y y y求偏导数时,将 x x x看作常数:
可得 ∂ v ∂ y = ∂ ∂ y ( y + sin ( x ) ) = 1 + 0 = 1 \frac{\partial v}{\partial y}=\frac{\partial}{\partial y}(y+\sin(x)) = 1+0 = 1 ∂y∂v=∂y∂(y+sin(x))=1+0=1。
步骤三:构建雅可比矩阵
雅可比矩阵 J J J的形式为 J = [ ∂ u ∂ x ∂ u ∂ y ∂ v ∂ x ∂ v ∂ y ] J=\begin{bmatrix}\frac{\partial u}{\partial x}&\frac{\partial u}{\partial y}\\\frac{\partial v}{\partial x}&\frac{\partial v}{\partial y}\end{bmatrix} J=[∂x∂u∂x∂v∂y∂u∂y∂v],将上面求得的偏导数代入可得:
J = [ 1 cos ( y ) cos ( x ) 1 ] J=\begin{bmatrix}1&\cos(y)\\\cos(x)&1\end{bmatrix} J=[1cos(x)cos(y)1]
综上,该函数的雅可比矩阵是 [ 1 cos ( y ) cos ( x ) 1 ] \begin{bmatrix}1&\cos(y)\\\cos(x)&1\end{bmatrix} [1cos(x)cos(y)1]。
雅可比矩阵与线性变换
非线性变换也存在局部线性,即使函数整体变换很复杂,但是某个点附近的变换是线性的。
考虑某点附近的线性变换,则其 x x x方向基向量变换如下,
同理,对 y y y方向变换如下图:
对于 2 × 2 2\times2 2×2的雅可比矩阵 [ ∂ f 1 ∂ x ∂ f 1 ∂ y ∂ f 2 ∂ x ∂ f 2 ∂ y ] \begin{bmatrix}\frac{\partial f_{1}}{\partial x}&\frac{\partial f_{1}}{\partial y}\\\frac{\partial f_{2}}{\partial x}&\frac{\partial f_{2}}{\partial y}\end{bmatrix} [∂x∂f1∂x∂f2∂y∂f1∂y∂f2] 与列向量 [ d x d y ] \begin{bmatrix}dx\\dy\end{bmatrix} [dxdy] 相乘:
- 计算结果矩阵的第一行元素:
用雅可比矩阵的第一行 [ ∂ f 1 ∂ x ∂ f 1 ∂ y ] \left[\frac{\partial f_{1}}{\partial x} \quad \frac{\partial f_{1}}{\partial y}\right] [∂x∂f1∂y∂f1] 与列向量 [ d x d y ] \begin{bmatrix}dx\\dy\end{bmatrix} [dxdy] 相乘,即 ∂ f 1 ∂ x × d x + ∂ f 1 ∂ y × d y \frac{\partial f_{1}}{\partial x}\times dx+\frac{\partial f_{1}}{\partial y}\times dy ∂x∂f1×dx+∂y∂f1×dy ,得到结果矩阵第一行的元素 ∂ f 1 ∂ x d x + ∂ f 1 ∂ y d y \frac{\partial f_{1}}{\partial x}dx+\frac{\partial f_{1}}{\partial y}dy ∂x∂f1dx+∂y∂f1dy 。 - 计算结果矩阵的第二行元素:
用雅可比矩阵的第二行 [ ∂ f 2 ∂ x ∂ f 2 ∂ y ] \left[\frac{\partial f_{2}}{\partial x} \quad \frac{\partial f_{2}}{\partial y}\right] [∂x∂f2∂y∂f2] 与列向量 [ d x d y ] \begin{bmatrix}dx\\dy\end{bmatrix} [dxdy] 相乘,即 ∂ f 2 ∂ x × d x + ∂ f 2 ∂ y × d y \frac{\partial f_{2}}{\partial x}\times dx+\frac{\partial f_{2}}{\partial y}\times dy ∂x∂f2×dx+∂y∂f2×dy ,得到结果矩阵第二行的元素 ∂ f 2 ∂ x d x + ∂ f 2 ∂ y d y \frac{\partial f_{2}}{\partial x}dx+ \frac{\partial f_{2}}{\partial y}dy ∂x∂f2dx+∂y∂f2dy 。
从多元函数全微分角度看, f 1 = f 1 ( x , y ) f_{1} = f_{1}(x,y) f1=f1(x,y) 的全微分为 d f 1 = ∂ f 1 ∂ x d x + ∂ f 1 ∂ y d y df_{1}=\frac{\partial f_{1}}{\partial x}dx+\frac{\partial f_{1}}{\partial y}dy df1=∂x∂f1dx+∂y∂f1dy , f 2 = f 2 ( x , y ) f_{2} = f_{2}(x,y) f2=f2(x,y) 的全微分为 d f 2 = ∂ f 2 ∂ x d x + ∂ f 2 ∂ y d y df_{2}=\frac{\partial f_{2}}{\partial x}dx+\frac{\partial f_{2}}{\partial y}dy df2=∂x∂f2dx+∂y∂f2dy 。那么 [ ∂ f 1 ∂ x d x + ∂ f 1 ∂ y d y ∂ f 2 ∂ x d x + ∂ f 2 ∂ y d y ] = [ d f 1 d f 2 ] \begin{bmatrix} \frac{\partial f_{1}}{\partial x}dx+\frac{\partial f_{1}}{\partial y}dy\\ \frac{\partial f_{2}}{\partial x}dx+ \frac{\partial f_{2}}{\partial y}dy\end{bmatrix}=\begin{bmatrix}df_{1}\\df_{2}\end{bmatrix} [∂x∂f1dx+∂y∂f1dy∂x∂f2dx+∂y∂f2dy]=[df1df2] ,表示向量值函数 [ f 1 ( x , y ) f 2 ( x , y ) ] \begin{bmatrix}f_{1}(x,y)\\f_{2}(x,y)\end{bmatrix} [f1(x,y)f2(x,y)] 的全微分向量形式,体现了函数在 x x x和 y y y方向微小变化 d x dx dx、 d y dy dy时,函数值的微小变化情况。
这个 2 × 2 2\times2 2×2的矩阵便是表示该点被放大后线性变换的样子,这个矩阵被称为雅可比矩阵。
类比线性变换,把2维映2维的多元函数表示成一种空间变换,并通过这个变换的局部线性化来解释雅可比矩阵的含义。
例如,在 ( − 2 , 1 ) (-2,1) (−2,1)附近线性变换计算如下:
将 x = − 2 x = -2 x=−2, y = 1 y = 1 y=1代入雅可比矩阵 J J J中,可得:
J ( − 2 , 1 ) = [ 1 cos ( 1 ) cos ( − 2 ) 1 ] J(-2,1)=\begin{bmatrix}1&\cos(1)\\\cos(-2)&1\end{bmatrix} J(−2,1)=[1cos(−2)cos(1)1]
综上,函数 f f f在 ( − 2 , 1 ) (-2,1) (−2,1)处的雅可比矩阵是 [ 1 cos ( 1 ) cos ( − 2 ) 1 ] \begin{bmatrix}1&\cos(1)\\\cos(-2)&1\end{bmatrix} [1cos(−2)cos(1)1],
d e t ( [ 1 cos ( 1 ) cos ( − 2 ) 1 ] ) ≈ 1.227 det(\begin{bmatrix}1&\cos(1)\\\cos(-2)&1\end{bmatrix})\approx 1.227 det([1cos(−2)cos(1)1])≈1.227。
应用
雅可比矩阵在判断函数性质方面有多种应用:
局部可逆性:对于一个向量值函数 f : R n → R n f: \mathbb{R}^n \to \mathbb{R}^n f:Rn→Rn,若在某点 p p p 处雅可比矩阵 J f ( p ) J_f(p) Jf(p) 的行列式 det ( J f ( p ) ) ≠ 0 \det(J_f(p)) \neq 0 det(Jf(p))=0,则函数 f f f 在点 p p p 的某个邻域内是局部可逆的。比如在二维空间中,若雅可比矩阵行列式不为 0 0 0,则在该点附近函数能进行一对一的变换,存在反函数。
函数的局部线性近似:雅可比矩阵 J f ( x ) J_f(x) Jf(x) 可用于对向量值函数 f f f 进行局部线性近似。函数 f f f 在点 x 0 x_0 x0 附近可近似表示为 f ( x ) ≈ f ( x 0 ) + J f ( x 0 ) ( x − x 0 ) f(x)\approx f(x_0)+J_f(x_0)(x - x_0) f(x)≈f(x0)+Jf(x0)(x−x0),这有助于分析函数在某点附近的变化趋势 ,类似一元函数的导数用于线性近似。
判断函数的增减性与极值:在多元函数求极值问题中,通过对雅可比矩阵及其二阶导数相关矩阵(海森矩阵)分析,可以判断函数是否取得极值。若雅可比矩阵在某点处为零矩阵,还需进一步分析海森矩阵的正定性等性质来确定该点是否为极值点。
流形上的映射性质:在研究流形之间的映射时,雅可比矩阵能反映映射的光滑性和切空间之间的线性变换关系。例如,若雅可比矩阵在某点处秩小于流形维度,则该点可能是映射的奇点。
视频参考
(干货)《雅可比矩阵是什么东西》3Blue1Brown,搬自可汗学院。 【自制中文字幕】
《雅可比矩阵下:所谓的雅可比行列式》3Blue1Brown Grant Sanderson,搬自可汗学院。 【自制中文字幕】