今天,我们将继续深入学习正定矩阵。更具体地说,我们将学习如何确定矩阵是否为正定矩阵。此外,我们还将学习这种正定性的几何解释,这在机器学习中理解优化时非常有用。
如果你错过了上一篇关于正定矩阵定义的文章,可以在 《线性代数》 - 7对称矩阵 (致敬Gilbert Strang)
本节涉及的内容:
-
正定性的判断 -
什么是二次型以及如何用它来检验正定性 -
正定性的几何解释 -
如何将非对称矩阵转化为正定矩阵
在材料和结构方面,我沿用了麻省理工学院 Gilbert Strang 博士著名而精彩的讲座,您可以从第 27 讲座中看到他关于今天主题的讲座。
判断正定性
比方说,你面前有一个矩阵,想要确定该矩阵是否为正定矩阵。这将帮助你解决优化问题、将矩阵分解为更简单的矩阵等。
根据前面的故事,你必须根据定义检查 3 个条件:
矩阵必须是:
-
-
对称 -
-
所有特征值均为正数 -
-
所有子行列式是正数
你肯定可以地检查,但显然,还有一种更简单实用的检查方法。这就是第四种方法。
检查正定性的检验方法:
-
检查所有 特征值是否为正值 -
检查所有 子行列式是否为正值 -
检查所有 主元是否为正值 -
检查 二次型是否为正值。
这与一种叫做 “二次型”的东西有关。
什么是二次型以及如何用它来检验正定性
首先,让我们定义并理解一下什么是二次型。
二次型:
-
-
为标量
你应该已经知道将二次型展开成方程,而上面只是用线性代数的另一种方法来表示它。
因此,为了说明本质上是一样的,让我们试着用矩阵形式来写二次方程式,就像你之前看到的那样。
没那么难吧?
要检查矩阵是否为正定矩阵,只需计算上述二次方程式,然后检查其值是否为正。
如果 = 0 或负值会怎样?
这其实是个好问题,根据二次方程的符号,你可以把确定性分为三类:
-
正定式,如果(二次函数形式)> 0 -
半正定,如果(二次函数形式)≥ 0 -
如果(二次函数形式)< 0,则为负定式
正定性的几何解释
让我们试着从几何的角度来理解正确定性的概念。
还记得我曾说过,当涉及到理解机器学习优化时,这种确定性很有用吗?
这是因为正定性可以告诉我们矩阵的 “平面”。
如果你熟悉机器学习优化,就应该知道机器学习的整个目的就是调整权重,使损失最小。
损失可以是任何东西,但举个例子,想想目标值( )和预测值( )之间的均方误差(MSE)。希望最大限度地减小这两个值之间的误差,从而使预测值接近目标值,这意味着您有一个好的模型,可以为您提供相当好的预测。
为此,有各种优化算法来调整权重。随机梯度下降算法(SGD)是最基本但仍在使用的技术之一。
使用随机梯度下降算法,您将计算损失(如 MSE)的梯度,并以此为向导(方向)沿着优化平面的斜坡下降,最终到达平面底部。平面底部基本上表示损失中可能的最低点,这意味着您的预测处于最佳点,目标值和预测值之间的误差可能最小。
然而,平面可以有不同的形状,下面是几个简单的例子。
如果矩阵是正定矩阵,那就太好了,因为你可以保证得到最小点。但如果矩阵是正半定的,问题就来了,比如左边的例子。它有一个比较稳定的点,称为鞍点,但大多数情况下,它会从鞍点滑落,一直滑到无穷深渊中,这时优化就变得很有挑战性。
作为练习,你也可以试着想想当矩阵是负定矩阵时会发生什么,以及如果你尝试对这种情况进行优化会发生什么。
为了具体说明矩阵的正定性,让我们举一个简单的 2 x 2 矩阵的例子。
现在的问题是,函数 是否对所有 都是正值,除了它的零点。
举个例子,其中一种情况可能如下。
-
导数为0
-
导数大于0
综上,函数存在最小值。
你可以自己试试。找出满足以下条件的 和 。试试其他方程,看看将数值输入二次函数后结果如何。
如何利用非对称矩阵创建正定矩阵
现在,我希望你已经了解了正定矩阵的一些优点。
问题是,在大多数情况下,矩阵并不总是对称的。当矩阵不对称时,我们能否利用正定性呢?
答案是肯定的!
是正定矩阵,同时对称且是方阵。
二次方形式:
只需将非对称矩阵乘以其转置,乘积就会变成对称、正方形和正定矩阵!
小结
总结
-
检查正定性的测试
只需计算二次型并检查其正定性。
-
什么是二次型以及如何用它来检验正定性
如果二次型大于 0,那么它是正定的。
如果二次函数形式 ≥ 0,那么它是正半定式。
如果二次函数形式 < 0,那么它就是负定式。
-
正定性的几何解释
正定式是一个碗形曲面。正半定是一个鞍面。
-
如何用非对称矩阵做正定矩阵
只需乘以其自身的转置即可。
希望对你有所帮助!下次再见

