8.6 特殊类型的矩阵和向量

来源:互联网 发布:vb if else 编辑:程序博客网 时间:2024/05/23 20:17

  有些特殊类型的矩阵和向量是有特别用处的。
  对角矩阵(diagonal matrix)只在主对角线上含有非零元素,其他位置都是零。形式上,矩阵D是对角矩阵,当且仅当对于所有的ij,Di,j=0。我们已经看到过一个对角矩阵:单位矩阵,其对角元素全部是1.我们用diag(v)表示一个对角元素由向量v中元素给定的对角方阵。对角矩阵受到关注的部分原因是对角矩阵的乘法计算很高效。计算乘法diag(v)x,我们只需要将x中的每个元素xi放大vi倍。换言之,diag(v)x=vx。计算对角方阵的逆矩阵也很高效。对角方阵的逆矩阵存在,当且仅当对角元素都是非零值,在这种情况下,

diag(v)1=diag([1/v1,,1/vn]T)

在很多情况下,我们可以根据任意矩阵导出一些通用的机器学习算法;但通过将一些矩阵限制为对角矩阵,我们可以得到计算代价较低的算法。
  不是所有的对角矩阵都是方阵。长方形的矩阵也有可能是对角矩阵。非方阵的对角矩阵没有逆矩阵,但我们仍然可以高效地计算它们的乘积。对于一个长方形对角矩阵D而言,乘法Dx会涉及到x中每个元素的缩放,如果D是瘦长型矩阵,那么在缩放后的末尾添加一些零;如果D是宽胖型矩阵,那么在缩放后去掉最后一些元素。
  对称(symmetric)矩阵是转置和自己相等的矩阵:
A=AT

当某些不依赖参数顺序的双参数函数生成元素时,对称矩阵经常会出现。例如,如果A是一个距离度量矩阵,Ai,j表示点i到点j的距离,那么Ai,j=Aj,i,因为距离函数是对称的。
  单位向量(unit vector)是具有单位范数(unit norm)的向量:
||x||2=1

  如果xTy=0,那么向量x和向量y互相正交(orthogonal)。如果两个向量都有非零范数,那么这两个向量之间的夹角是90度。在Rn中,至多有n个范数非零向量互相正交。如果这些向量不仅互相正交,并且范数都为1,那么我们称它们是标准正交(orthonormal)
  正交矩阵(orthonormal matrix)是指行向量和列向量是分别标准正交的方阵:
ATA=AAT=I

这意味着
A1=AT

所以正交矩阵受到关注是因为求逆计算代价小。我们需要注意正交矩阵的定义。反直觉地,正交矩阵的行向量不仅是正交的,还是标准正交的。对于行向量或列向量互相正交但不是标准正交的矩阵没有对应的专有术语。