3.4 特殊的矩阵与向量
本节将对几种特殊的矩阵与向量进行讲解,通常任意矩阵都可以由以下几种特殊矩阵组合而成。
1.对角矩阵(diagonal matrix)
对角矩阵除了主对角线上含有非零元素,其他位置都是0。假设存在矩阵D∈Ri×j,当且仅当对于所有的i≠j,Di,j=0时,矩阵D为对角矩阵。其实本章前面提到的单位矩阵就是对角矩阵。值得注意的是,对角矩阵不一定是方阵,只要i≠j的位置元素值为0即可。
主对角元素从左上角到右下角的次序常常记为一个列向量:
以上述列向量为主对角元素的方阵就可以记为diag(λ):
用diag(λ)表示一个对角元素由向量λ中元素给定的对角方阵。对角矩阵受到关注,部分原因是对角矩阵的乘法计算很高效。计算乘法diag(λ)x,只需要将x中的每个元素xi放大λi倍。换言之,,其中表示向量的点积运算。计算对角矩阵的逆矩阵也很高效。当且仅当对角元素都是非零值时,对角矩阵的逆矩阵存在,在这种情况下,diag(λ)-1=。
在大部分情况下,可以根据任意矩阵导出一些通用的机器学习算法,但通过将一些矩阵限制为对角矩阵,可以得到计算代价较低的(并且描述语言较少的)算法。长方形的矩阵也有可能是对角矩阵。长方形对角矩阵没有逆矩阵,但仍然可以很快地计算它们的乘法。
2.对称矩阵(symmetric matrix)
对称矩阵是其转置与自己相等的矩阵:
A=AT
当某些不依赖参数顺序的双参数函数生成元素时,对称矩阵经常会出现。例如,如果A是一个表示距离的矩阵,Ai,j表示点i到点j的距离,那么Ai,j=Aj,i,因为距离函数是对称的。
3.单位向量(unit vector)
单位向量是具有单位范数(unit norm)的向量,即满足向量的欧氏范数值为1:
‖x‖2=1
上式中向量x即为单位向量。
4.正交向量(orthogonal vector)
假设现有向量v=[v1,v2,…,vn]T,x=[x1,x2,…,xn]T,正交向量满足:
由于vTx=0,因此向量x和向量v互相正交(orthogonal)。如果两个向量都有非零范数,那么这两个向量之间的夹角是90°。如果这两个向量不仅互相正交,并且范数都为1,便可以称它们是标准正交(orthonormal)。
5.正交矩阵(orthogonal matrix)
正交矩阵是指行向量是标准正交的,列向量是标准正交的方阵:
ATA=AAT=I
由此可得A-1=AT。
正交矩阵的优点之一是求逆计算代价小。需要注意正交矩阵的定义,正交矩阵的行向量不仅是正交的,还是标准正交的。对于行向量或列向量互相正交但不是标准正交的矩阵没有对应的专有术语。