线性代数序列算法(机器学习与线性代数)(1)

在线性代数中,有一些特殊的矩阵具有易于分析和操作的特性。它们的特征向量可能具有特定的特征值或特殊关系。还有一些方法可以将一个矩阵分解成这些“更简单”的矩阵。

线性代数序列算法(机器学习与线性代数)(2)

操作复杂性的降低提高了可伸缩性。然而,即使这些矩阵都是特殊的,它们也不是罕见的。在机器学习和许多应用程序中,我们经常需要处理它们。

对角矩阵

对角矩阵S使所有非对角元素等于零。

线性代数序列算法(机器学习与线性代数)(3)

许多分解方法都有一个分解后的矩阵是对角矩阵。由于矩阵只包含对角元素,我们有时用向量来表示它。

线性代数序列算法(机器学习与线性代数)(4)

一般矩阵的逆不容易计算。但是求对角矩阵的逆很简单。我们可以用1/m替换对角线元素。

线性代数序列算法(机器学习与线性代数)(5)

如果其中一个矩阵是对角的,矩阵乘法就简单多了。但是当任何对角元素等于0或者对角矩阵不是方形的时候,它的逆就不存在。但是,在一些方法中,伪逆矩阵(keep the inverse of 0 as 0)可以用作替代。

正交矩阵

正交矩阵Q是满足下列要求的方形矩阵

线性代数序列算法(机器学习与线性代数)(6)

Q中的所有列(v 1 ,...,v 6 ,...)都是正交的,即对于i≠j,vᵢᵀvⱼ= 0,vᵢ都是单位向量。

线性代数序列算法(机器学习与线性代数)(7)

这听起来像是一个严格的要求但是对于一些矩阵,比如对称矩阵,我们可以选择特征向量在分解过程中是正交的。

以下矩阵是正交的。

线性代数序列算法(机器学习与线性代数)(8)

像对角矩阵一样,它的逆也很容易计算 - 正交矩阵的逆是它的转置。这是正交矩阵非常方便的一个关键原因。

线性代数序列算法(机器学习与线性代数)(9)

证明:

线性代数序列算法(机器学习与线性代数)(10)

如果我们用正交矩阵乘以x, x中的误差不会被放大。这种行为对于保持数值稳定性是非常理想的。

线性代数序列算法(机器学习与线性代数)(11)

对称矩阵

如果矩阵的转置等于自身,则矩阵是对称的。

线性代数序列算法(机器学习与线性代数)(12)

例如,

线性代数序列算法(机器学习与线性代数)(13)

对称矩阵是线性代数和机器学习中最重要的矩阵之一。在机器学习(ML),我们经常使用矩阵保存f(vᵢ , vⱼ)。这些函数通常是对称的,f(x, y) = f(y, x),因此对应的矩阵是对称的。例如在机器学习中,f可以测量数据点之间的特征距离,或者计算特征的协方差。

线性代数序列算法(机器学习与线性代数)(14)

对称矩阵属性

对称矩阵S是n×n方形矩阵。

线性代数序列算法(机器学习与线性代数)(15)

线性代数序列算法(机器学习与线性代数)(16)

上面的等式可以改写为

线性代数序列算法(机器学习与线性代数)(17)

其中v是单位向量。因此,特征值项λᵢ主导了上述每个项的重要性。事实上,如果它太小,我们可以完全放弃相应的项λᵢvᵢvᵢᵀ。

该分解特性和“ S具有n个正交特征向量”是对称矩阵的两个重要特性。

正交特征向量

特征向量不是唯一的。但通常,我们可以“选择”一组特征向量来满足某些特定条件。如前所述,对称矩阵的特征向量可以选择为正交。如果S是对称矩阵,则其特征值λ和μ满足以下条件。

线性代数序列算法(机器学习与线性代数)(18)

证明

线性代数序列算法(机器学习与线性代数)(19)

从这种情况来看,如果λ和μ具有不同的值,则等效性迫使内积为零。因此,x和y是正交的,并且很容易将它们归一化为具有单位长度 - 正交。这证明了如果它们的相应特征值不同,我们可以选择S的特征向量是正交的。即使有重复的特征值,对于对称矩阵仍然如此。

证明 - 第2部分(可选)

对于n×n对称矩阵,我们总能找到n个独立的正交特征向量。最大的特征值是

线性代数序列算法(机器学习与线性代数)(20)

为了求最大值,我们令r(x)的导数为0。经过一些处理,得到

线性代数序列算法(机器学习与线性代数)(21)

即,当x是特征向量且特征值最大时,r(x)的比值最大。通过归纳,我们可以推导出我们可以用正交于前一个的特征向量找到下一个最高的特征值。这只是证明的高级描述。

谱定理(Spectral theorem)

让我们总结一下。每个n×n对称矩阵S具有n个实特征值λᵢ,其中有n个正交特征向量vᵢ。

线性代数序列算法(机器学习与线性代数)(22)

这些特征值可以形成对角矩阵Λ as diag(λ)。我们还可以将特征向量vᵢ连接到V,即,

线性代数序列算法(机器学习与线性代数)(23)

我们将V重命名为Q.因为Q是正交的,所以它是可逆的并且Qᵀ= Q-1。因此,对称矩阵S可以分解为

线性代数序列算法(机器学习与线性代数)(24)

这是谱定理。因为找到转置比逆转更容易,所以在线性代数中非常需要对称矩阵。

正定矩阵

正定矩阵具有所有正特征值。它是对称的。这听起来很不寻常,但现实生活中的许多矩阵都是肯定的。下面的术语计算具有状态x的系统的能量(energy)。如果S是正定的,它保证能量保持为正,除非x为零。

线性代数序列算法(机器学习与线性代数)(25)

在许多应用中,我们假设能量是正的,因此,相应的S应该是正定的。

测试正定性有许多等效条件。如果以下任何测试为真,则对称矩阵S为正定的:

1.所有特征值> 0,

线性代数序列算法(机器学习与线性代数)(26)

2.所有左上角的行列式> 0,

线性代数序列算法(机器学习与线性代数)(27)

3.所有pivots > 0,

线性代数序列算法(机器学习与线性代数)(28)

4.能量(energy)> 0,除了x = 0,

线性代数序列算法(机器学习与线性代数)(29)

5. S可以由一个列向量无关的矩阵a构成。

线性代数序列算法(机器学习与线性代数)(30)

验证所有特征值是正的需要很多工作。因此,条件2或3是更常见的测试。例如,正pivots 意味着正特征值(反之亦然)。另一方面,如果我们通过上述测试之一证明矩阵是正定的,我们保证它拥有上述所有属性。

证明

在本节中,我们将证明上面的一些属性。如果S是正定的,则​​所有λ都是正的。因此,相应状态x的计算能量为正(x = 0除外)。

线性代数序列算法(机器学习与线性代数)(31)

如果S由AᵀA组成,则S在能量测试下为正。

线性代数序列算法(机器学习与线性代数)(32)

除了正定,我们还有半正定,负定和半负定。半正定用“≥”替换上面的所有“>”条件(例如,它的特征值是大于或等于0 ),负定和半负定与正定和半正定相反。

Minimum

在微积分中,我们将f的一阶导数设置为零以找到其临界点。然而,这样的点可以是最大值,最小值或鞍点。许多机器学习模型以二次形式xAᵀx表示其成本函数。知道这个函数是否是凸函数是很重要的。因为如果它是凸的,我们知道局部最小值也是全局最小值。如果A是正定的,则​​二次函数是凸的。

线性代数序列算法(机器学习与线性代数)(33)

对于任何函数f,我们计算下面的Hessian矩阵。如果A是正定的,则​​相应的点是局部最小值。

线性代数序列算法(机器学习与线性代数)(34)

协方差矩阵

在机器学习中,我们非常有兴趣找到特征之间的相关性。下图显示了重量和高度之间的正相关关系。

线性代数序列算法(机器学习与线性代数)(35)

在机器学习中,我们用协方差矩阵Σ建模关系。

线性代数序列算法(机器学习与线性代数)(36)

协方差矩阵是半正定的。

,