当前课程知识点:线性代数(2) > 第六讲:伪逆 > 6.1 伪逆 > 6.1 伪逆
大家好 上节课我们提到
矩阵的奇异值分解可以理解成
从R^n到R^m的线性变换
在不同基底下
矩阵表示
这节课我们利用
矩阵的奇异值分解
来定义矩阵的伪逆
然后再利用矩阵的伪逆
来讨论线性方程组Ax=b
无解时的最小二乘解
我们曾经强调
线性代数的中心问题是
求解线性方程组Ax等于b
最简单的情况是
如果系数矩阵A是n阶的可逆矩阵
那么这时对于任意的n维向量b
线性方程组Ax等于b有唯一的解
这个解是(A^-1) b
那这就启发我们
对于不可逆的矩阵
或者是对于m×n的矩阵
我们来定义它的一个逆矩阵
那么这时候逆矩阵我们叫做伪逆
或者是叫广义逆
而这个定义呢
当A是n阶可逆方阵的时候
它要跟逆矩阵是一致的
这是我们本节的目标
那奇异值分解可以帮助
实现这个目标
首先我们来回忆一下
矩阵的奇异值分解
对于一个m×n的实矩阵A
它的奇异值分解
等于U∑V^T
其中U和V分别是m阶
n阶的正交矩阵∑
是一个m×n的矩阵
它的前r个对角元长的是A的奇异值
那我们注意到
我们是对于R^n和R^m
取了好基底之后
实现矩阵A的奇异值分解的
具体而言在V这个矩阵里头
它长的列向量的前r个
是A的行空间的单位正交基
后n-r个
是A的零空间的单位正交基
从而凑成R^n的n个单位正交基
那么在U这个矩阵里
前r个列向量
长的是A的列空间的单位正交基
后m-r个长的是
A的左零空间的单位正交基
从而构成R^m的
一组单位正交基
并且Av_j=σ_ju_j j从1到r
Av_j等于0
当j从r+1到n的时候
我们说矩阵A是把行空间
给一一地变到A的列空间
那么在特殊的情况
如果矩阵A是可逆
也就是矩阵A的秩等于行标m
等于m等于n等于列标n
那么这时候呢
我们就有Av_j=σ_j u_j
这个j是从1到n的
那这时A^-1的作用
它把u_j给变到1/σ_j v_j
于是对于m×n的矩阵A
我们来令A的伪逆
满足下面的事情
希望它能够满足说
把u_j变成1/σ_j v_j
这个j从1到r
把剩下的m-r个u_j是变到0
也就是说我们说A^+
作用在u_1 … u_r u_(r+1)...u_m上
它等于相应的1/σ_1 v_1
1/σ_r v_r
然后后面这些列向量是变成0
那这时候
这个U是我们的m阶的正交阵
V是n阶的正交阵
于是我们就有(A^+)U=V(∑^+)
这是∑^+
它是一个n×m的矩阵
那么也就是说A的伪逆
等于V(∑^+)U^T
我们可以用它来定义A的伪逆
那么A的伪逆是一个n×m的矩阵
其中这个V是n×n的∑^+
是n×m的
而U^T是一个m乘以m的
我们有了这样的定义
看看是不是满足我们前面的要求
特别地 当A是可逆的时候
r=m=n
那由于奇异值分解
A是等于U∑V^T
所以A^-1
是等于U∑V^T的逆矩阵
那这时候U∑V^T
都是n阶的方阵
求逆矩阵等于V乘以∑的逆矩阵
乘以V^T
那因为这时候r是等于n的
这个∑的逆矩阵
就是刚才定义的∑^+
因此根据我们定义的伪逆的定义
它就等于A的伪逆
于是我们说当A是可逆的时候
我们刚才定义出来的伪逆的定义
与可逆矩阵A的逆矩阵的定义
是一致的
这个达到我们的初衷
那我们来看看一般情况下
定义出来A的伪逆之后
它能满足什么样的性质
我们来看看A和A的伪逆相乘
那根据奇异值分解
A是等于U∑V^T
根据伪逆的定义呢
A的伪逆是等于V乘以∑^+
乘以U的转置
那么根据矩阵乘法的结合律
V^T和V相乘是等于单位阵
因为它是一个方阵
那么我们就变成U∑(∑^+)U^T
那么注意到∑这个矩阵
是一个m×n的矩阵∑^+
是一个n×m的
所以它们乘出来
是一个m×m的矩阵
那∑这个矩阵是σ_1 … σ_r
长在对角元上
当然它是一个m×n的∑^+
是一个n×m的
它的对角线上的元素是1/σ_1 …
1/σ_r 0 n×m
所以它们俩的乘积呢
是这样的一个m阶的矩阵
在左上角这个r×r的这个位置上
是单位阵
其他的位置是等于0
那从A乘以A^+的这个表达式
里头我们可以看出来
它等于U去乘以
m阶的一个对角阵
秩为r的一个对角阵
再乘以U的转置
因此A乘以A^+
一定是一个实对称阵
并且从A乘以A^+的表达式里头
我们如果把U的列向量
记成u_1 … u_r u_(r+1)… u_m
我们把它乘出来发现
这个表达式就可以写成
u_1 u_1^T 一直加到u_r u_r^T
那么注意到
u_1是一个m阶的列向量
所以可以看成是
m乘1的一个矩阵
那u_1^T
就变成1乘以m的一个矩阵
那么u_1乘以u_1^T
是一个m阶的秩为1的矩阵
这是r个秩为1的矩阵的和
好 那么我们来看一下
A乘以A的伪逆
有什么样的几何意义
可以从几个角度上来看
那从这个表达式来看
我们说如果对于
任意的一个m维的向量x
A乘以A的伪逆乘以x
那就把这个表达式代进来
变成u_1 u_1^T加到u_r u_r^T
乘以x
那么代到里头去
u_1^T去乘以x变成一个数
我们可以扔到前面去
那么发现这个表达式不是别的
它标志的是x在u_1到u_r
所张成这个子空间的上的正交投影
可以看成是x和u_1去做内积
乘以u_1
x和u_r作内积再乘以u_r
这些个u_1到u_r
是单位正交的基底
因此这个表达式
它表示的几何意义
就是R^m上的任何一个向量x到u_1
一直到u_r所张成的这个子空间
也就是
A的列空间的正交投影矩阵
那或者呢我们换一个角度上来看
我们说刚才A(A^+)作用在u_j
这个j从1到r
是等于1/σ_j v_j
A作用在v_j上是等于σ_j u_j
因此这个等于u_j
那也就是说当j从1到r
来变动的时候
A(A^+)作用在上面是等于它自己
那也就是A(A^+)作用在u_1到u_r
那么也就是在作用在
A的列空间上
它是等于恒同的
A(A^+)作用在u_j
这个j从r+1到m上面
那么根据刚才的定义
A^+作用在这上面是等于0
因此这个效果是等于0
也就是A(A^+)作用在
A的左零空间上 是对应到0
而A的列空间
和A的左零空间正交直和
等于整个的R^m
那么从这个上面
我们可以看得出来A(A^+)
它是从R^m到
A的列空间的正交投影矩阵
再或者我们换一个角度
我们直接从矩阵的定义上来看
A(A^+)去乘以A(A^+)
那一方面A(A^+)呢我们说
计算出来等于U I_r 0 0
乘以U^T
再来乘一个A(A^+) U I_r 0 0
U^T
那么U^T和U等于m阶的单位阵
那这两个矩阵乘在一起
还是它自己
所以等于U乘以m阶的对角阵
再乘以U^T
这个不是别的 就是A(A^+)
那这样的话来看
首先A(A^+)是一个实对称矩阵
其次A(A^+)的平方
是等于A(A^+)自己
那么这是
投影矩阵的另外的一个定义
从这上面我们也知道
它是一个正交投影矩阵
这样我们得到说
A去乘以A的伪逆是一个对称阵
是一个从R^m
到A的列空间的正交投影矩阵
它写成向量的形式
可以写成u_1乘以u_1^T
一直加到u_r乘以u_r^T
那么特别地
对于一个任意的m维的向量b
如果b有正交分解
b等于p+e
其中呢p是长在A的列空间里
e是长在A的左零空间里
那么A(A^+)去乘以p就等于p
因为它作用在
这个A的列空间是恒同
A(A^+)乘以e就等于0
因为A(A^+)作用在左零空间上
是等于0的
它是到C(A)的一个
正交投影矩阵
这是A乘以A^+的意义
我们作出来的这个伪逆
它和A去相乘 A乘以A^+
它不是一个单位阵
这时候不是一个 一般情况下
不是单位阵
它是一个投影矩阵
同样对于A^+乘以A
根据定义代进去
A正等于V(∑^+)U^T
A等于U∑V^T
那么U^T乘以U是等于
m阶的单位阵
因此A^+乘以A是等于
V(∑^+)∑V^T(∑^+)
是一个n×m的矩阵∑
是m×n的矩阵
它们俩乘起来
等于一个n阶的矩阵
对角线上是有r个1
那么是这个矩阵
由(A^+)A等于V乘以n阶的对角阵
再乘以V^T
我们可以容易看出来
(A^+)A是一个n阶的对称矩阵
那么并且当我们把V的列向量
记成v_1 … v_r v_(r+1) … v_n时
那这个表达式意味着A^+乘以A
可以写成v_1 v_1^T
一直加到v_r v_r^T
这是r个秩为1的矩阵的和
那么从这个表达式里
类似地去分析我们可以看出来
(A^+)A呢它是R^n
到由v_1到v_r所张成的这个子空间
也就是
A的行空间的正交投影矩阵
那么这个正交投影矩阵
在A的行空间上是恒同
在跟它的正交补的空间
也就是A的零空间上作用是等于0
那么特别地
对于任意的一个n维向量x
因为R^n是可以写成
A的行空间正交直和A的零空间
那么x有正交分解
x可以写成x_r加x_n
其中x_r长在A的行空间里
x_n长在A的零空间里
那么(A^+)A作用在x_r上就等于x_r
因为在行空间上它的作用是恒同
那么(A^+)A作用在于在x_n上是等于0
这是由正交投影
可以来说这件事情
好 那我们来看看
它为什么是伪逆
我们看特别的情况
当矩阵的A的秩r是等于n的情况
也就是A是列满秩时
那我们来看A去乘以A的伪逆
是等于U去乘以
一个m阶的对角阵
再乘以U的转置
我们说这时它是R^m到
A的列空间的正交投影矩阵
那A^+去乘以A呢
一般情况下它是V去乘以
这样的一个n阶的矩阵
再乘以V^T
那因为这时候r是等于n的
所以这个矩阵
就变成n阶的单位阵
那么因此A^+乘以A
就变成是V乘以V^T
V是一个正交阵
所以它就等于n阶的单位阵
那么因此呢
我们把A^+叫做A的左逆
在左手边乘以A等于单位阵
当矩阵A列满秩时
我们定义出来的伪逆是A的左逆
当矩阵是行满秩
也就是A的秩等于它的行数
m的时候
和刚才的分析类似
A(A^+)这时候等于UU^T
等于m阶的单位阵
那么(A^+)A呢和刚才一样
它是V去乘以
这样的一个n阶的对角阵
再乘以V^T
它是R^n到
A的行空间的正交投影矩阵
那么从第一个性质里头
我们可以看出来
A去右边乘以A的伪逆之后
等于m阶的单位阵
所以我们此时可以把A的伪逆
叫做A的右逆
那么最特殊的情况
A满秩也就是
A的秩等于它的行数
等于它的列数的时候
那么根据前面的分析
A^+既是它的右逆
又是它的左逆 它是双边逆
就是A的逆矩阵
好 从这样的意义上
我们说定义出来的这个A^+
的确有资格叫做是A的伪逆
那么我们是通过A的奇异值分解
来定义A的伪逆
我们来看几道简单的例题
A是一个这样的3×2的矩阵
我们来求A的伪逆
那么A的伪逆是一个2×3的矩阵
我们首先来看A的奇异值分解
很容易可以做出来
我们稍许回顾一下
我们要求奇异值分解的时候
是求A^TA 容易算出来
1 1 1 1 0 0
1 1 1 1 0 0
是一个2×2的矩阵
那么求A^TA的特征值
这是一个2×2的矩阵
那我们又知道
它一定有一个特征值是等于0的
那么又因为Trace是等于4
所以另一个特征值一定是等于4
那么这个大于0的这个特征值
就是A的奇异值的平方σ_1^2
等于4
因此A的奇异值是等于2
那相应特征值4和0
我们可以求出来A^TA
对应的特征向量
我们求单位的特征向量
v_1等于1/√2 ( 1 1)
然后单位化一下 1/√2
v_2是0所对应的特征向量
1 -1单位化一下
去乘以1/√2
好 我们的u_1 u_2 u_3
是R^m的一组基底
那么它是Av_1去除以σ_1
那么很容易计算出来
是根1/√2 (1 1 0)
那u_2和u_3
分别是0所对应的特征向量
u_2和u_3可以看成是三维空间里头
u_1的正交补
所给出来的单位正交的向量
我们取成是根1/√2 (1 -1 0)
(0 0 1)
那么A的奇异值分解U∑V^T
这是u_1 u_2 u_3作为u的列向量∑
是一个3×2的矩阵
它的这个左上角的位置上
是由A的奇异值给出来
现在A的奇异值是2
那其它的位置上在∑里头是0
而V^T那么是v_1^T v_2 ^T
给出来2×2的矩阵 V^T
好 那么A的伪逆就等于
V(∑^+)U^T
那这是v_1 v_2 这是∑^+
是一个2×3的矩阵
那这个位置上是1/σ_1
其他位置上是等于0
那么这个是u_1^T u_2^T u_3^T
于是我们就可以得到A^+
也就是A的伪逆
这是先来作
一个矩阵的奇异值分解
然后根据定义给出A的伪逆
那我们看看特殊的情形
如果一个矩阵A的秩是等于1的
那么它一定可以写成
列乘行的样子
我们说奇异值是σ
u是一个列向量
v^T的是一个行向量
它一定可以写成这种样子
那么我们就可以定义出来
A的伪逆是1/σ乘以v
再乘以u^T
那么注意到A和A^+相乘
变成u乘以u^T
它是到u所在的
直线的正交投影矩阵
那A的伪逆去乘以A呢
是v去乘以v^T
它是到v所在的
直线的正交投影矩阵
这是对秩为1矩阵的特殊的情况
那么特别地
给一个任意的非零向量x
当然可以看成一个秩为1的矩阵
那么我们说x的伪逆
就是x^T除以x^T x
特别地当x是一个单位向量的话
它的伪逆就是x^T
本来是一个n乘1的矩阵
那么它的伪逆变成它的转置
是1乘n的一个矩阵
再来看特别的情况
这个矩阵A是1 0 0 0
这样的一个矩阵
它是一个秩为1的矩阵
那么很容易通过上面的分析
我们看它的伪逆就是它自己
那么这个矩阵
和刚才的∑那个矩阵是类似
就是在这种位置上取它的倒数
那这个很特殊
所以它的伪逆是它自己
那么B这个矩阵
是一个两行三列的矩阵
它的秩等于1
那么我们说它可以写成
列去乘以行
2×1 1×3 1是它的奇异值
那么伪逆呢
自然的是这个奇异值的倒数还是1 0 1 0
这是相应的v这个矩阵
然后乘以1 0
那么就变成0 0 1 0 0 0
这个不是别的就是B的转置
这是B这个矩阵的伪逆
就等于B的转置
这是在秩为1的情形下
我们给出来特别的例子
我们再来看
之前的这个n阶的Jordan矩阵
在对角线上是0
对角线上的斜上方有一溜1的
这种n阶的矩阵
我们看它的伪逆是什么
我们说它的伪逆
就是这个矩阵的转置矩阵
而这个可以通过
这个Jordan矩阵的奇异值分解
看出来
我们来一起看一下
Jordan矩阵的奇异值分解
那是对J_n^T乘以J_n
那么乘出来呢是0 1 1
这样的一个对角阵
那这个矩阵它的特征值
是由n-1个1 然后有一个0
因此相应Jordan矩阵的奇异值σ_1
到σ_(n-1)是1
还有一个特征值是0
那么相应可以求出来
J^T乘以J的相应特征向量
那么是(0 1 0 … 0)
(0 0 … 1)
而特征值0所对应的特征向量
是(1 0 … 0)这样的一个向量
那这就是我们对应的v_1 v_(n-1) v_n
可以有V这个矩阵
根据求奇异值分解的步骤
我们相应地可以求出u_1到u_n
从而解得J_n的奇异值分解
不是别的东西,是U∑V^T
它是什么呢
这时候这个是单位阵∑
是1 … 1 0
然后V^T是0 1 0 1 1
最下面这一行是1 0 0 0
这种样子的一个矩阵
那J的伪逆等于V(∑^+)V^T
我们代过来
代进去以后你发现是
这个V^T回来 0 0
下面是1
最下面这个位置是这儿有一个1
那么∑^+呢对角线上
是1 1 0的一个矩阵
而U呢,是一个单位阵
U的转置还是单位阵
那么这两个矩阵相乘
就等于对角线上是0
对角线下方有一溜1的这个矩阵
这个不是别的
就是原来Jordan矩阵的转置矩阵
这样我们通过
Jordan矩阵的奇异值分解
看出来它的伪逆就是它的转置
-1.1 实对称矩阵A正定的充要条件
-1.2 典型例题
--1.2 典型例题
-1.3 半正定矩阵及其判别条件
-1.4 二次型
--1.4 二次型
-1.5* 有心二次曲线(central conic)
-1.6* 三维空间中的二次曲面-6类基本的二次曲面
-1.7 二次型的分类
-1.8 矩阵的合同
-1.9* 惯性定理的证明
-1.10 惯性定理的应用 —— 实对称矩阵的特征值与主元符号
--1.10 惯性定理的应用 —— 实对称矩阵的特征值与主元符号
-1.11* 正(负)定矩阵在函数极值问题中的应用
-第一讲:正定矩阵--课后习题
-2.1 引言
--2.1 引言
-2.2 相似矩阵的性质
-2.3 Jordan标准形
-2.4 定理的证明
-2.5 Jordan标准形的应用
-第二讲:相似矩阵--课后习题
-3.1 引言
--3.1 引言
-3.2 奇异值分解(Singular Value Decomposition)
--3.2 奇异值分解(Singular Value Decomposition)
-3.3 例题
--3.3 例题
-3.4 奇异值分解的应用
-第三讲:奇异值分解--课后习题
-4.1 线性变换的定义和性质
-4.2 线性变换的运算
-4.3 线性变换的矩阵表示
-4.4 线性变换与矩阵之间的关系
-第四讲:线性变换 I--课后习题
-5.1 恒同变换与基变换
-5.2 图像压缩——基变换的应用
-5.3 线性变换在不同基下的矩阵
-5.4 矩阵分解与基变换
-5.5 线性变换的核与像
-5.6 不变子空间
-5.7* 幂零变换
-5.8* Jordan标准形
-第五讲:线性变换 II--课后习题
-6.1 伪逆
--6.1 伪逆
-6.2 Moore – Penrose 伪逆
-6.3 最小二乘法
-第六讲:伪逆--课后习题
-7.1 简介
--7.1 简介
-7.2 弹簧模型
--7.2 弹簧模型
-7.3 变量的线性关系
-7.4 刚度矩阵
--7.4 刚度矩阵
-7.5 从离散到连续
-第七讲:工程中的矩阵--课后习题
-8.1 简介
--8.1 简介
-8.2 图和矩阵
--8.2 图和矩阵
-8.3 网络和加权Laplacian矩阵
-8.4 关联矩阵的四个基本子空间
-8.5 注记
--8.5 注记
-第八讲:图与网络--课后习题
-9.1 问题引入
--9.1 问题引入
-9.2 Markov矩阵
-9.3 正Markov矩阵
-9.4 正矩阵
-第九讲:Markov矩阵和正矩阵--课后习题
-10.1 引言
--10.1 引言
-10.2 内积空间
-10.3 傅里叶级数
-10.4 投影
--10.4 投影
-10.5 关于Fourier变换的注记
-第十讲:Fourier级数--课后习题
-11.1 引言
--11.1 引言
-11.2 平移
--11.2 平移
-11.3 伸缩
--11.3 伸缩
-11.4 旋转
--11.4 旋转
-11.5 投影和反射
-第十一讲:计算机图像--课后习题
-12.1 引言
--12.1 引言
-12.2 复矩阵
--12.2 复矩阵
-12.3 复正规阵
-12.4 离散Fourier变换
-12.5 快速Fourier变换
-第十二讲:复数与复矩阵--课后习题
-结课寄语
--结课寄语