定义:

         对于n阶方阵A,若任意n阶非零向量x(x里面的元素不能全为0),都有xTAx>0,则称A是正定阵。

         若条件变成xTAx≥0,则A称作半正定阵

         类似还有负定阵,半负定阵。

 

数学家为什么要定义正定阵:

         其实是这样,如果把n降为1,那A就是一个数,而向量x也变成了一个数。

         那xTAx就是 A*X2,而如果A*X2 > 0,则A是正数;如果A*X2≥0,则A是个非负数。

         因此就好像:超平面对应到1维是个点,对应到2维是个面,对应到3为是个体,对应到n维就统称为超平面一样,“正定、半正定”个对应到n维的一个称呼罢了,其实它对应到一维就是“正数、非负数”。

 

一个例子:

         在机器学习中,我们有时会使用这样的方式来判断函数的凹凸性:对于函数z = f(x1, x2) ,如果它的二阶导也就是f’’(x1,x2) > 0,则函数的凸的。

         而f’’(x1,x2)可以写成下面的黑森矩阵:

                  

Hesse阵正定 正定阵的意义_特征值

         所以,可以将“如果f’’(x1,x2) > 0,则函数的凸的”表达成“如果该函数二阶导对应的黑森矩阵 > 0,则函数是凸的”,而看了上面关于正定的介绍后就可以进一步表达成“如果黑森矩阵是正定的,则函数是凸的”。


判别一个矩阵是正定阵的方法:

         1,  对称阵是正定阵

         2,  特征值都为正的矩阵正定

         3,  顺序主子式大于0的矩阵正定


一些小总结:

         1,对任意m*n的矩阵A,ATA一定是半正定的。

                  PS:这个结论在线性回归中将用到。

         2,正定矩阵的元素不一定都大于0,只要矩阵最终大于0就可以。

                   比如:矩阵

Hesse阵正定 正定阵的意义_机器学习_02

里面就有个值-2是小于0的,但它的值是8*10 -(-2)*3是大于0的,所以这个矩阵是正定阵,但里面有个元素小于0。


最后:

         到此明白了吧,所谓正定,就是将“一维的某个数 > 0”推广到“n维的某个矩阵> 0”(以防万一再啰嗦一句,一维的矩阵就是一个数,比如:矩阵[1]其实就是数1),半正定就是将“一维的某个数≥0”推广到“n维的某个矩阵≥0”,其他负定阵,半负定阵同理。