当前位置: 首页 > news >正文

「高等数学」雅可比矩阵和黑塞矩阵的异同

「高等数学」雅可比矩阵和黑塞矩阵的异同

雅可比矩阵,Jacobi matrix 或者 Jacobian,是向量值函数 f : R n → R m f:\mathbb{R}^n \to \mathbb{R}^m f:RnRm)的一阶偏导数按行排列所得的矩阵。

黑塞矩阵,又叫海森矩阵,Hesse matrix,是多元函数 f : R n → R f:\mathbb{R}^n \to \mathbb{R} f:RnR)的二阶偏导数组成的方阵。

1、雅可比矩阵 J m × n J_{m\times n} Jm×n

雅可比矩阵通常是一个mxn的矩阵。

给出一个向量值函数: h ( x ) = ( h 1 ( x ) , h 2 ( x ) , ⋯ , h m ( x ) ) T h(\mathbf{x}) = (h_1(\mathbf{x}),h_2(\mathbf{x}),\cdots,h_m(\mathbf{x}))^T h(x)=(h1(x),h2(x),,hm(x))T

它的雅可比矩阵是:

J = [ ∂ h ∂ x 1 ⋯ ∂ h ∂ x n ] = [ ∂ h 1 ∂ x 1 ⋯ ∂ h 1 ∂ x n ⋮ ⋱ ⋮ ∂ h m ∂ x 1 ⋯ ∂ h m ∂ x n ] {\displaystyle \mathbf {J} ={\begin{bmatrix}{\dfrac {\partial \mathbf {h} }{\partial x_{1}}}&\cdots &{\dfrac {\partial \mathbf {h} }{\partial x_{n}}}\end{bmatrix}}={\begin{bmatrix}{\dfrac {\partial h_{1}}{\partial x_{1}}}&\cdots &{\dfrac {\partial h_{1}}{\partial x_{n}}}\\\vdots &\ddots &\vdots \\{\dfrac {\partial h_{m}}{\partial x_{1}}}&\cdots &{\dfrac {\partial h_{m}}{\partial x_{n}}}\end{bmatrix}}} J=[x1hxnh]= x1h1x1hmxnh1xnhm

矩阵的每一行相当于每个向量值函数的分量的梯度的转置,或者叫一阶偏导数按行(row)排列。

一个n元实值函数的梯度的雅可比矩阵:
J = D [ ∇ f ( x ) ] = [ ∂ 2 f ∂ x 1 2 ∂ 2 f ∂ x 2 ∂ x 1 ⋯ ∂ 2 f ∂ x n ∂ x 1 ∂ 2 f ∂ x 1 ∂ x 2 ∂ 2 f ∂ x 2 2 ⋯ ∂ 2 f ∂ x n ∂ x 2 ⋮ ⋮ ⋱ ⋮ ∂ 2 f ∂ x 1 ∂ x n ∂ 2 f ∂ x 2 ∂ x n ⋯ ∂ 2 f ∂ x n 2 ] {\displaystyle \mathbf {J} = D[\nabla f(\mathbf{x})] = {\begin{bmatrix}{\frac {\partial ^{2}f}{\partial x_{1}^{2}}}&{\frac {\partial ^{2}f}{\partial x_{2}\,\partial x_{1}}}&\cdots &{\frac {\partial ^{2}f}{\partial x_{n}\,\partial x_{1}}}\\ \\{\frac {\partial ^{2}f}{\partial x_{1}\,\partial x_{2}}}&{\frac {\partial ^{2}f}{\partial x_{2}^{2}}}&\cdots &{\frac {\partial ^{2}f}{\partial x_{n}\,\partial x_{2}}}\\ \\\vdots &\vdots &\ddots &\vdots \\\\{\frac {\partial ^{2}f}{\partial x_{1}\,\partial x_{n}}}&{\frac {\partial ^{2}f}{\partial x_{2}\,\partial x_{n}}}&\cdots &{\frac {\partial ^{2}f}{\partial x_{n}^{2}}}\end{bmatrix}}\,} J=D[f(x)]= x122fx1x22fx1xn2fx2x12fx222fx2xn2fxnx12fxnx22fxn22f

2、黑塞矩阵 H n × n H_{n\times n} Hn×n

黑塞矩阵一定是一个方阵。

二阶混合偏导数:
∂ 2 f ∂ y ∂ x = ∂ ∂ y ( ∂ f ∂ x ) = f x y \frac{\partial^2 f}{\partial y \, \partial x} = \frac{\partial}{\partial y} \left( \frac{\partial f}{\partial x} \right) = f_{xy} yx2f=y(xf)=fxy
对于一个n元实值函数 f ( x ) f(\mathbf{x}) f(x),它的梯度为一个列向量: ∇ f ( x ) = ( f x 1 ( x ) , f x 2 ( x ) , ⋯ , f x n ( x ) ) T \nabla f(\mathbf{x}) = (f_{x_1}(\mathbf{x}),f_{x_2}(\mathbf{x}),\cdots,f_{x_n}(\mathbf{x}))^T f(x)=(fx1(x),fx2(x),,fxn(x))T

对其求二阶偏导数,并将偏导数按列(col)排列。
H = [ ∂ 2 f ∂ x 1 2 ∂ 2 f ∂ x 1 ∂ x 2 ⋯ ∂ 2 f ∂ x 1 ∂ x n ∂ 2 f ∂ x 2 ∂ x 1 ∂ 2 f ∂ x 2 2 ⋯ ∂ 2 f ∂ x 2 ∂ x n ⋮ ⋮ ⋱ ⋮ ∂ 2 f ∂ x n ∂ x 1 ∂ 2 f ∂ x n ∂ x 2 ⋯ ∂ 2 f ∂ x n 2 ] {\displaystyle \mathbf {H} ={\begin{bmatrix}{\frac {\partial ^{2}f}{\partial x_{1}^{2}}}&{\frac {\partial ^{2}f}{\partial x_{1}\,\partial x_{2}}}&\cdots &{\frac {\partial ^{2}f}{\partial x_{1}\,\partial x_{n}}}\\\\{\frac {\partial ^{2}f}{\partial x_{2}\,\partial x_{1}}}&{\frac {\partial ^{2}f}{\partial x_{2}^{2}}}&\cdots &{\frac {\partial ^{2}f}{\partial x_{2}\,\partial x_{n}}}\\\\\vdots &\vdots &\ddots &\vdots \\\\{\frac {\partial ^{2}f}{\partial x_{n}\,\partial x_{1}}}&{\frac {\partial ^{2}f}{\partial x_{n}\,\partial x_{2}}}&\cdots &{\frac {\partial ^{2}f}{\partial x_{n}^{2}}}\end{bmatrix}}\,} H= x122fx2x12fxnx12fx1x22fx222fxnx22fx1xn2fx2xn2fxn22f


因此:

  1. 对于一个二阶可微的n元实值函数,它的黑塞矩阵的转置🟰它的梯度的雅可比矩阵。

  2. 对于一个二阶连续可微的n元实值函数,其二阶混合偏导数: ∂ 2 f ∂ y ∂ x = ∂ 2 f ∂ x ∂ y \frac{\partial^2 f}{\partial y \, \partial x} = \frac{\partial^2 f}{\partial x \, \partial y} yx2f=xy2f。此时,其黑塞矩阵🟰它的梯度的雅可比矩阵。

  3. 在很多地方,遇到的都是二阶连续可微的情况,因此有些地方对雅可比矩阵和黑塞矩阵不加以区分。

http://www.lryc.cn/news/155740.html

相关文章:

  • 继承(个人学习笔记黑马学习)
  • ToBeWritten之ATTCK 测评方案
  • JSONUtil详解
  • ArcGIS Maps SDK for JS(一):概述与使用
  • 【STM32】FSMC接口的复用和非复用
  • 操作系统强化认识之Shell编程学习与总结
  • 怎么用conda下载清华源的pytorch(自带cuda的版本)
  • 【ES6】CommonJS模块和ES6模块
  • 两个线程同步执行:解决乱箭穿心(STL/Windows/Linux)
  • Ubuntu18.04更改镜像源(网易,阿里,清华,中科大,浙大)
  • 字节码和机器码的区别
  • go学习part21 Redis和Go(2)
  • 从0到1学会Git(第二部分):Git的本地操作和管理
  • hive lateral view 实践记录(Array和Map数据类型)
  • 理解 std::thread::join
  • C#循环定时上传数据,失败重传解决方案,数据库标识
  • R语言图形的组合( par(),layout(),par(fig()) )
  • 如何为 Flutter 应用程序创建环境变量
  • 「C++程序设计 (面向对象进阶)」学习笔记・一
  • Leetcode125. 验证回文串
  • 【Yellowbrick】特征可视化分析
  • Android大厂需要刷的(999道)面试题
  • Pycharm中出现ImportError:DLL load failed:找不到指定模块的解决方法
  • Java设计模式:四、行为型模式-08:策略模式
  • ICCOA蓝牙数字车钥匙2.0
  • ArcGIS土地利用程度综合指数分析
  • 服务端请求伪造(SSRF)及漏洞复现
  • v-model和v-bind
  • 详细介绍 弹性盒子(display:flex)
  • Docker使用数据卷挂载进行数据存储与共享