第4章 特殊矩阵
上一节我们介绍了一般矩阵的运算,实际上在机器学习或深度学习中,我们还经常遇到一些特殊类型的矩阵,如可逆矩阵、对称矩阵、对角矩阵、单位矩阵、正交矩阵等等。这些特殊矩阵有特殊属性,下面我们逐一进行说明。
4.1可逆矩阵
1)方阵的定义:
如果矩阵的行数与列数相等,则称为方阵。n×n的方阵称为n阶矩阵。
2)逆矩阵的定义:
设A是一个n阶矩阵,若存在另一个n阶矩阵B,使得:AB=BA=E(单位矩阵),则称A可逆,并称B是A的逆矩阵。A的逆矩阵记为。这里
3)逆矩阵的性质:
(1)A与B的地位是平等的,故A、B两矩阵互为逆矩阵,也称A是B的逆矩阵。
(2)单位矩阵E是可逆的,即。
(3)如果A可逆,那么A的逆矩阵是唯一的。
证明:设B、C都是A的逆矩阵,则有B=BE =B(AC)=(BA)C=EC=C
(4)若矩阵A可逆,则也可逆,且
(5)若矩阵A可逆,则也可逆,且
(6)若矩阵A、B可逆,则AB也可逆,且
4)定理
4.2对角矩阵
对角矩阵只有在主对角线上才有非零元素,其余都是0。从形式上来看,如果A为对角
矩阵,当且仅当对所有i≠j,。对角矩阵可以是方阵(行数等于列数)也可以不是方阵,如下矩阵,就是一个对角矩阵。
对角矩阵有非常好的性质,这些性质使很多计算非常高效,在机器学习、深度学习中经常会遇到对角矩阵。
对于对角矩阵为方阵的情况,我们可以把对角矩阵简单记为:
其中是由对角元素组成的向量,现在我们看一下对角矩阵在一些计算方面的奇妙之处。
假设现有向量,则满足:
从上面两个式子可以看到对角矩阵的简洁高效。
4.3对称矩阵
对称矩阵,对于任意一个n阶方阵A,若A满足:成立,则称方阵A为对称矩阵。
对称矩阵的主要性质:
(1)对称矩阵的和、差、数乘还是对称矩阵
(2)n阶实对称矩阵A,一定存在n阶正交矩阵P使:
【说明】因P为正交矩阵,故其逆矩阵等于其转置。
而且对角矩阵中的n个对角元就是A的n个特征值。可用归纳法证明,有情趣的读者可尝试证明一下。
例1:如何将下列对称矩阵正交化为对角矩阵?
特征分解可用Python的线性代数库(linalg)提供的eig函数来实现,函数的输入为需特征分解的矩阵,输出为所有特征值,以及对应的单位化的特征向量。
上面这个计算过程可用python简单实现
1 2 3 4 5 6 |
import numpy as np A=np.array([[0,1,1],[1,0,1],[1,1,0]]) U,V=np.linalg.eig(A) print("特征值构成的向量:",U) print("单位化的特征向量:",V) |
运行结果:
特征值构成的向量: [-1. 2. -1.]
单位化的特征向量: [[-0.81649658 0.57735027 0.19219669]
[ 0.40824829 0.57735027 -0.7833358 ]
[ 0.40824829 0.57735027 0.59113912]]
4.4正交矩阵
对于任意一个n阶方阵A,若矩阵的行向量之间互相正交,且行向量都是单位向量,即满足:
则称矩阵A是一个正交矩阵。由上式可以看出,若A是一个正交矩阵,则可推出。
补充向量正交、单位向量的定义:
单位向量
任意给定的向量ν,若其范数为1,即,则称向量ν为单位向量。
正交向量
假设现有向量,则满足
成立,则称向量v和向量x正交。这里与x表示向量的点积运算。
正交矩阵的性质:
(1)正交矩阵的列/行向量组为标准正交向量组。
(2)正交矩阵的特征值只能为±1。