概述
就像高中用二阶导数来判断一维二次函数的凹凸走向一样,Hessian矩阵不过是用来判断多维函数在某一指定点的凹凸性而已,看完这个博客想必你会立马恍然大悟,文章篇幅不大,还请耐心看完全程。
1. 基础一:什么是行列式
这个想必大家都懂得,以二维矩阵为例:
2.基础二:特征值和特征向量
矩阵最大的应用之一就是在几何变换上,比如旋转,平移,反射,以及倍数变大或变小。
举例:
X
=
[
3
−
1
]
X=left [begin{matrix}3&-1 end{matrix}right]
X=[3−1]
[
2
0
0
2
]
∗
X
left[begin{matrix} 2&0\0&2end{matrix} right]*X
[2002]∗X
[
6
−
2
]
left[begin{matrix}6&-2end{matrix} right]
[6−2]
可以看出,相等于把矩阵X每个元素都扩大了2倍。
再比如,给定一个普通矩阵
[
2
3
5
4
]
left[begin{matrix} 2&3\5&4end{matrix} right]
[2534]
这个矩阵看上去很普通,但是如果乘以
[
3
5
]
left[begin{matrix} 3\5end{matrix} right]
[35]
可以得到
[
21
35
]
left[begin{matrix} 21\35end{matrix} right]
[2135]
就好比乘以了一个标量7。此时我们便得到了一个特征向量以及特征值。对于分析Hessian矩阵,特征向量不是很重要,但是特征值很重要
3.基础三:求解特征值
简单粗暴,没什么解释的,就这么求的方法为:
∣
[
a
b
c
d
]
−
[
x
0
0
x
]
∣
=
0
left|left[begin{matrix}a&b\c&dend{matrix}right]-left[begin{matrix}x&0\0&xend{matrix}right]right|=0
∣∣∣∣[acbd]−[x00x]∣∣∣∣=0
∣
a
−
x
b
c
d
−
x
∣
=
0
left|begin{matrix}a-x&b\c&d-xend{matrix}right|=0
∣∣∣∣a−xcbd−x∣∣∣∣=0
我们已经复习过了求行列式的方法,所以上述行列式不难求。
举例,求
[
2
3
5
4
]
left[begin{matrix}2&3\5&4end{matrix}right]
[2534]的特征值,你会得到
[
2
−
x
3
5
4
−
x
]
left[begin{matrix}2-x&3\5&4-xend{matrix}right]
[2−x534−x]
计算行列式(determinant)可得
(
2
−
x
)
(
4
−
x
)
−
15
=
0
8
−
6
x
+
x
2
−
15
=
0
x
2
−
6
x
−
7
=
0
(
x
−
7
)
(
x
+
1
)
=
0
x
=
7
/
−
1
(2-x)(4-x)-15=0\8-6x+x^2-15=0\x^2-6x-7=0\(x-7)(x+1)=0\x=7/-1
(2−x)(4−x)−15=08−6x+x2−15=0x2−6x−7=0(x−7)(x+1)=0x=7/−1
7或者-1就是我们要求的特征值。
4.应用:特征值的含义
Hessian矩阵我们已经知道是二阶导数矩阵,有时候二阶导数仍然带有未知数,所以求给定点的Hessian矩阵才有意义,给定坐标后,Hessain矩阵变成常数矩阵,然后就可以求其特征值
- 如果Hessian矩阵所有特征值均为正:开口向上凹的点
- 如果均为负:开口向下凹的点
- 如果有正有负:存在鞍点
- 如果有一项为0:不确定情况。
5.结论
Hessain矩阵的几何意义就是判断点的凹凸性,基于Hessian矩阵的牛顿法,只适用于所有特征值均为正的情况。
(本文翻译自Bing搜索某一链接,如有侵权,请立即联系我,我会立刻删除,谢谢☺)
最后
以上就是开心摩托为你收集整理的Hessian矩阵的几何意义的全部内容,希望文章能够帮你解决Hessian矩阵的几何意义所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
发表评论 取消回复