多元函数微分学

简介: 多元函数微分学

目录


偏导数


概念


示例


高阶偏导数与梯度


高阶偏导数


概念


示例


梯度


概念


雅可比矩阵


概念


雅可比矩阵的作用


hessian矩阵(黑塞矩阵)


概念


示例


hessian矩阵的作用




偏导数


概念


偏导数是多元函数的导数概念的一种推广,用于描述函数在特定变量上的变化率。偏导数可以理解为将多元函数对于某个变量的变化率,其他变量保持不变而取偏移量的极限。偏导数常用符号表示为∂(f)/∂(x),其中∂表示对某个变量求偏导数,f表示多元函数,x表示自变量。


对于一个多元函数f(x₁, x₂, ..., xn),其中x₁, x₂, ..., xn是自变量,可以对其中的任意一个变量求偏导数。偏导数的计算方法与一元函数的导数计算类似,只需将其他变量视为常数,然后对目标变量求导即可。


例如,对于二元函数f(x, y),可以计算关于x的偏导数∂(f)/∂(x)和关于y的偏导数∂(f)/∂(y)。计算偏导数时,将除目标变量外的其他变量视为常数,然后分别对目标变量求导。


  • 偏导数是针对多元函数(有多个自变量的函数)的导数

  • 对于多元函数,对其中的某一个自变量求导数,把其它的自变量看成常量,那就是该多元函数关于这个自变量的偏导数
  • 25.png
  • 26.png

高阶偏导数与梯度


高阶偏导数


概念


高阶偏导数是指多元函数的偏导数再次对某个变量进行偏导数的过程,也就是对偏导数进行重复求导。高阶偏导数的符号表示与一阶偏导数类似,使用∂²(f)/∂(x)²表示对变量x的二阶偏导数。


对于一个多元函数f(x₁, x₂, ..., xn),可以计算其各个变量的偏导数,以及这些偏导数再次对其他变量的偏导数。例如,对于二元函数f(x, y),可以计算它的一阶偏导数∂(f)/∂(x)和∂(f)/∂(y),然后可以进一步计算这些一阶偏导数的二阶偏导数,即∂²(f)/∂(x)²、∂²(f)/∂(y)²,以及混合偏导数∂²(f)/∂(x)∂(y)和∂²(f)/∂(y)∂(x)。


高阶偏导数在分析多变量函数的性质和行为时很有用。它们可以提供更深入的信息,例如函数的凸凹性、拐点、曲率等。高阶偏导数也在微分方程、优化理论、物理模型等领域中扮演重要的角色。


对于多元函数,依次对变量反复求导,就是所谓的高阶偏导数


示例

27.png

梯度


概念


  • 在机器学习中,梯度这个概念是很常见的

  • 对于一个多元函数,如果它的自变量有 n个:x~1~,x~2~,...x~n~,则分别对各个自变量

  • 求偏导数,构成一个向量,称之为梯度

梯度是一个向量,由多元函数的偏导数组成。它描述了函数在给定点上的最大变化率和变化方向。梯度通常用符号∇表示(nabla符号)。


对于一个多元函数f(x₁, x₂, ..., xn),其梯度由各个自变量的偏导数组成,表示为∇f。梯度向量的每个分量是对应自变量的偏导数,即∇f = (∂f/∂x₁, ∂f/∂x₂, ..., ∂f/∂xn)。


梯度向量的方向指向函数在给定点上的最大变化方向,而梯度向量的模表示函数在该方向上的变化率。梯度向量的模越大,函数在该点的变化率越大

28.png

雅可比矩阵


概念


假设F:R~n~ → R~m~是一个从n维欧氏空间映射到m维欧氏空间的函数。这个函数由m个实函数组成:y~1~(x~1~,...,x~n~), ..., y~m~(x~1~,...,x~n~)。这些函数的偏导数(如果存在)可以组成一个m行n列的矩阵,这个矩阵就是所谓的雅可比矩阵:

29.png

举个栗子:


函数F由y~1~与y~2~两个函数组成

30.png

雅可比矩阵的作用


简化求导公式,在神经网络的反向传播中能发挥很大的作用。


1.线性近似:雅可比矩阵可以用于多元函数在某个点附近的线性近似。通过雅可比矩阵,可以将多元函数的微小变化与自变量的微小变化之间建立起线性关系。具体而言,对于函数F(x),在某点x₀处的线性近似可以表示为:


ΔF(x) ≈ J(x₀) · Δx


其中,ΔF(x)表示函数F在x₀处的微小变化,Δx表示自变量的微小变化,J(x₀)是雅可比矩阵在点x₀处的取值。


2.变量替换:雅可比矩阵在变量替换中起到重要作用。当进行变量替换时,例如从自变量x变换到另一组自变量y,雅可比矩阵可以用来衡量坐标系间的关系。具体而言,如果有一个变量替换关系x = g(y),其中g是可逆函数,那么雅可比矩阵可以表示为:


J(x) = J(g(y)) = ∂x/∂y


这里的J(x)是x处的雅可比矩阵,∂x/∂y是x相对于y的偏导数。雅可比矩阵的行列式 |J(x)| 可以衡量变量替换对体积元的缩放效应。


hessian矩阵(黑塞矩阵)


概念


hessian Matrix(黑塞矩阵),又译作海森矩阵、海瑟矩阵、海塞矩阵等,是一个多元函数的二阶偏导数构成的方阵。它描述了函数的曲率和变化率的二阶信息,是一种重要的数学工具。


考虑一个多元函数f(x₁, x₂, ..., xn),其Hessian矩阵由函数的二阶偏导数组成,表示为H(f)。Hessian矩阵是一个n×n矩阵,其中元素为二阶偏导数,表示为:


H(f) = [[∂²f/∂x₁², ∂²f/∂x₁∂x₂, ..., ∂²f/∂x₁∂xn], [∂²f/∂x₂∂x₁, ∂²f/∂x₂², ..., ∂²f/∂x₂∂xn], ... [∂²f/∂xn∂x₁, ∂²f/∂xn∂x₂, ..., ∂²f/∂xn²]]


示例

31.png


注意


hessian矩阵是对称矩阵


hessian矩阵的作用


hessian矩阵常用于牛顿法解决优化问题。


1.极值点判定:Hessian矩阵可以用来判定多元函数的极值点。通过分析Hessian矩阵的特征值,可以确定函数在某个点上的凸凹性和极值点的类型。如果Hessian矩阵的所有特征值都大于零,则该点是函数的局部极小值点;如果所有特征值都小于零,则该点是函数的局部极大值点;如果特征值既有正又有负,则该点是函数的鞍点。


2.优化算法:Hessian矩阵在优化算法中起到重要作用。例如,牛顿法(Newton's method)使用Hessian矩阵来确定函数的极值点。通过计算Hessian矩阵的逆矩阵(或伪逆矩阵)和梯度向量的乘积,可以更新自变量的值,逐步逼近极值点。Hessian矩阵的信息可以提供更准确的方向和步长。


3.凸优化:Hessian矩阵在凸优化问题中具有重要意义。对于凸函数,Hessian矩阵是半正定矩阵,即所有特征值非负。这一性质在凸优化理论和算法中扮演关键角色。通过分析Hessian矩阵的半正定性,可以判定凸函数的凸性、确定最优解的存在性和稳定性,以及设计高效的凸优化算法。


4.物理模型和动力学系统:Hessian矩阵在物理模型和动力学系统的分析和计算中有广泛应用。例如,在势能函数和拉格朗日函数中,Hessian矩阵可以用来描述系统的动力学性质、稳定性和振动模式。通过分析Hessian矩阵的特征值和特征向量,可以获得关于系统稳定性和相空间的重要信息。


相关文章
|
3月前
|
消息中间件 编解码 人工智能
函数计算应用场景
本文介绍函数计算的典型应用场景,包括Web应用、数据ETL处理、AI推理、视频转码等
34 2
|
5月前
|
数据可视化 数据挖掘
SPSS多元对应分析
SPSS多元对应分析
50 0
多元复合函数求导法则
多元复合函数求导法则
|
数据可视化
【数据篇】34 # 如何处理多元变量?
【数据篇】34 # 如何处理多元变量?
130 0
【数据篇】34 # 如何处理多元变量?
|
PyTorch 算法框架/工具 索引
pytorch使用布尔索引获取指定维度元素
pytorch使用布尔索引获取指定维度元素
211 0
|
安全 C++
C++模板实现,支持多维,安全数组的完整代码
C++模板实现,支持多维,安全数组的完整代码
168 0
|
SQL 存储 JSON
Spark访问多元索引-细则剖析
## 背景 表格存储可以为Spark提供**KV查询(主表,全局二级索引表)**、**多元索引查询**两套数据访问方式,以支持海量结构化数据快速读写和丰富的SQL查询分析能力。其分布式存储的特点和强大的索引引擎能够支持PB级存储、千万TPS以及毫秒级延迟的服务能力。 KV访问方式指的是主表和全局二级索引访问方式,其中主表指的是Tablestore的源数据主表,全局二级索引和多元索引的介绍见
468 0
Spark访问多元索引-细则剖析
|
SQL 存储 分布式计算
Spark访问多元索引-快速开始
本文介绍如何在E-MapReduce集群中使用Spark SQL访问表格存储的多元索引。 ### 前置准备 1. 创建E-MapReduce Hadoop集群,步骤参见[E-MapReduce快速入门](https://help.aliyun.com/document_detail/65683.html)。创建时挂载公网地址,用于后续的Shell远程登陆。 ![1.png](http
292 0
Spark访问多元索引-快速开始