若干数学常识

记录平时遇到的问题,会随时更新。

1、为什么梯度方向是函数变化最快的方向?

我们知道可以用导数值大小来表示函数的变化快慢。在多元函数中,可以求各个方向的导数,他们称为方向导数。

方向导数等于梯度与方向的余弦内积(方向指定是:所求方向与x轴方向间的逆时针角度)。梯度是固定的,所以

夹角越小,方向导数越大。当角度为0时,达到最大值。

故梯度方向是函数值变化最快的方向。

2、梯度方向是函数值变大的方向还是变小的方向?

是增大的方向。

想知道增大还是减小,我们只需知道沿着梯度方向,导数值是正还是负。如果为正,函数值就增大;反之,就减小。

结论:梯度方向上的导数值永远不会为负。为什么?看下面的式子:


方向导数的值等于梯度的模值乘以求导方向和梯度方向夹角的余弦,当求导方向为梯度方向时,二者夹角为0,余弦值为1,方向导数的值就是梯度的模值,永远大于等于0。

所以,梯度方向是函数值增大的方向,而且是增大最快的方向。那梯度的反方向就是函数值减小最快的方向。这就是为什么最速下降法中的步长方向是梯度的反方向。

3、梯度、Hessian矩阵、Jacobi矩阵

3.1) 梯度(一阶导数)

考虑一座在 (x1, x2) 点高度是 f(x1, x2) 的山。那么,某一点的梯度方向是在该点坡度最陡的方向,而梯度的大小告诉我们坡度到底有多陡。注意,梯度也可以告诉我们不在最快变化方向的其他方向的变化速度(二维情况下,按照梯度方向倾斜的圆在平面上投影成一个椭圆)。对于一个含有 n 个变量的标量函数,即函数输入一个 n 维 的向量,输出一个数值,梯度可以定义为:

3.2) Hesse 矩阵(二阶导数)

Hesse 矩阵常被应用于牛顿法解决的大规模优化问题(后面会介绍),主要形式如下:


当 f(x) 为二次函数时,梯度以及 Hesse 矩阵很容易求得。二次函数可以写成下列形式:


其中 A 是 n 阶对称矩阵,b 是 n 维列向量, c 是常数。f(x) 梯度是 Ax+b, Hesse 矩阵等于 A。

3.3) Jacobi 矩阵

Jacobi 矩阵实际上是向量值函数的梯度矩阵,假设F:Rn→Rm 是一个从n维欧氏空间转换到m维欧氏空间的函数。这个函数由m个实函数组成: 。这些函数的偏导数(如果存在)可以组成一个m行n列的矩阵(m by n),这就是所谓的雅可比矩阵:


总结一下,

a) 如果 f(x) 是一个标量函数,那么雅克比矩阵是一个向量,等于 f(x) 的梯度, Hesse 矩阵是一个二维矩阵。如果 f(x) 是一个向量值函数,那么Jacobi 矩阵是一个二维矩阵,Hesse 矩阵是一个三维矩阵。

b) 梯度是 Jacobian 矩阵的特例,梯度的 jacobian 矩阵就是 Hesse 矩阵(一阶偏导与二阶偏导的关系)。

  • 1
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值