关于矩形矩阵条件数cond(A)=||A||·||A†||的推导问询
关于矩形矩阵条件数$cond(\textbf{A})=||\textbf{A}||\cdot||\textbf{A}^{\dagger}||$的推导问询
嘿,你这个观察真的很敏锐!确实,当$\textbf{A}$是可逆方阵时,$\textbf{b}=\textbf{Ax}$是完全成立的——毕竟每个$\textbf{b}$都能找到唯一对应的$\textbf{x}$,所以维基百科里的推导直接替换毫无问题。但换成矩形矩阵的话,情况就复杂多了:矩形矩阵要么列数多于行数(欠定系统),要么行数多于列数(超定系统),这时候$\textbf{Ax}=\textbf{b}$可能无解,或者解不唯一,自然没法直接照搬方阵的那套替换逻辑。
那该怎么推导矩形矩阵的条件数$cond(\textbf{A})=||\textbf{A}||\cdot||\textbf{A}{\dagger}||$呢?其实我们得先明确矩形矩阵条件数的核心定义:它衡量的是**当$\textbf{b}$出现微小扰动时,对应的最优解(超定系统用最小二乘解,欠定系统用最小范数解)$\textbf{x}$的相对变化幅度有多大**,而伪逆$\textbf{A}{\dagger}$恰好就是用来给出这类最优解的工具。
具体的推导步骤可以拆解成这几步:
- 首先,对于线性系统$\textbf{Ax}=\textbf{b}$,当$\textbf{b}$有扰动$\delta\textbf{b}$时,对应的最优解是$\textbf{x}+\delta\textbf{x}=\textbf{A}{\dagger}(\textbf{b}+\delta\textbf{b})$,因此扰动项$\delta\textbf{x}=\textbf{A}{\dagger}\delta\textbf{b}$。根据范数的次乘性,我们可以得到:$||\delta\textbf{x}|| \leq ||\textbf{A}^{\dagger}|| \cdot ||\delta\textbf{b}||$。
- 接下来看原系统的关系:对于超定系统,$\textbf{b}$不一定在$\textbf{A}$的列空间里,这时候$\textbf{A}\textbf{A}^{\dagger}\textbf{b}$是$\textbf{b}$在$\textbf{A}$列空间上的投影(也就是能被$\textbf{Ax}$表示的部分)。根据范数的性质,$||\textbf{b}|| \geq ||\textbf{A}\textbf{A}^{\dagger}\textbf{b}|| \geq ||\textbf{A}|| \cdot ||\textbf{A}{\dagger}\textbf{b}||$,而因为$\textbf{x}=\textbf{A}{\dagger}\textbf{b}$,所以这个式子可以转化为$||\textbf{b}|| \geq ||\textbf{A}|| \cdot ||\textbf{x}||$,也就是$\frac{1}{||\textbf{x}||} \geq \frac{||\textbf{A}||}{||\textbf{b}||}$。
- 把上面两个结果结合起来,就能得到解的相对变化和$\textbf{b}$的相对变化的关系:$\frac{||\delta\textbf{x}||}{||\textbf{x}||} \leq ||\textbf{A}^{\dagger}|| \cdot ||\textbf{A}|| \cdot \frac{||\delta\textbf{b}||}{||\textbf{b}||}$。这意味着相对解变化的幅度不会超过$||\textbf{A}||\cdot||\textbf{A}^{\dagger}||$乘以相对$\textbf{b}$的变化幅度。
- 最后,我们还能找到特定的$\delta\textbf{b}$和$\textbf{b}$,使得这个上界能够被达到,这就证明了$||\textbf{A}||\cdot||\textbf{A}^{\dagger}||$确实是这个相对变化的最大值,也就是矩形矩阵条件数的定义。
总结一下,核心思路就是把方阵里“解存在且唯一”的前提,替换成“最优解由伪逆给出”,然后从最优解的扰动出发,结合范数的基本性质一步步推导,最终得到这个乘积形式的条件数。
备注:内容来源于stack exchange,提问作者tyrela
相关产品推荐
相关产品推荐

