当前位置: 首页 > news >正文

CR 分解

文章目录

    • 一、CR分解
      • 1.1.CR分解的定义
      • 1.2.CR分解的步骤
      • 1.3.CR分解的详细证明

一、CR分解

在线性代数中,CR分解是一种重要且直观的矩阵分解方法,它将任意一个矩阵 AAA 分解为一个列满秩矩阵 CCC 和一个行满秩矩阵 RRR 的乘积。

1.1.CR分解的定义

对于任意一个 m×nm \times nm×n 的矩阵 AAA,其秩为 rrr,CR分解将其表示为:

A=CRA = CRA=CR

其中:

  • C 是一个 m×rm \times rm×r 的矩阵,它的列由矩阵 AAArrr 个线性无关的列构成。这些列构成了 AAA 的列空间的一组基。
  • R 是一个 r×nr \times nr×n 的矩阵,它由矩阵 AAA 的简化行阶梯形(Reduced Row Echelon Form, RREF)中的 rrr 个非零行构成。这些行构成了 AAA 的行空间的一组基。

CR分解的核心思想是将矩阵 AAA 的所有列表示为其主列(线性无关列)的线性组合,而这个线性组合的系数就存储在矩阵 RRR 中。

1.2.CR分解的步骤

给定一个矩阵 AAA,求解其CR分解的步骤如下:

  1. 行化简与确定主元列: 对矩阵 AAA 进行高斯-若尔当消元法,得到其简化行阶梯形矩阵,我们称之为 ARREFA_{RREF}ARREF。在 ARREFA_{RREF}ARREF 中,主元(pivots,即每行第一个非零元素,通常为1)所在的列被称为主元列。

  2. 构造矩阵C: 矩阵 CCC 由矩阵 AAA 中与 ARREFA_{RREF}ARREF 主元列相对应的原始列向量构成。如果 ARREFA_{RREF}ARREF 的第 j1,j2,…,jrj_1, j_2, \dots, j_rj1,j2,,jr 列是主元列,那么 CCC 就由 AAA 的第 j1,j2,…,jrj_1, j_2, \dots, j_rj1,j2,,jr 列组成。

  3. 构造矩阵R: 矩阵 RRR 直接取自 ARREFA_{RREF}ARREF 的所有非零行。由于 AAA 的秩为 rrr,所以 ARREFA_{RREF}ARREF 将恰好有 rrr 个非零行。事实上,R的每一列即A的每一列在矩阵C列空间作为基下的坐标!。

示例

假设有矩阵 AAA

A=(12342479361013)A = \begin{pmatrix} 1 & 2 & 3 & 4 \\ 2 & 4 & 7 & 9 \\ 3 & 6 & 10 & 13 \end{pmatrix}A=12324637104913

第一步:求简化行阶梯形

AAA 进行行变换:

(12342479361013)→R2−2R1,R3−3R1(123400110011)→R3−R2,R1−3R2(120100110000)\begin{pmatrix} 1 & 2 & 3 & 4 \\ 2 & 4 & 7 & 9 \\ 3 & 6 & 10 & 13 \end{pmatrix} \xrightarrow{R_2 - 2R_1, R_3 - 3R_1} \begin{pmatrix} 1 & 2 & 3 & 4 \\ 0 & 0 & 1 & 1 \\ 0 & 0 & 1 & 1 \end{pmatrix} \xrightarrow{R_3 - R_2, R_1 - 3R_2} \begin{pmatrix} 1 & 2 & 0 & 1 \\ 0 & 0 & 1 & 1 \\ 0 & 0 & 0 & 0 \end{pmatrix}12324637104913R22R1,R33R1100200311411R3R2,R13R2100200010110

因此,ARREF=(120100110000)A_{RREF} = \begin{pmatrix} 1 & 2 & 0 & 1 \\ 0 & 0 & 1 & 1 \\ 0 & 0 & 0 & 0 \end{pmatrix}ARREF=100200010110

主元位于第1列和第3列。

第二步:构造矩阵C

由于主元列是第1列和第3列,我们选取 AAA 的第1列和第3列构成 CCC

C=(1327310)C = \begin{pmatrix} 1 & 3 \\ 2 & 7 \\ 3 & 10 \end{pmatrix}C=1233710

第三步:构造矩阵R

我们取 ARREFA_{RREF}ARREF 的非零行构成 RRR

R=(12010011)R = \begin{pmatrix} 1 & 2 & 0 & 1 \\ 0 & 0 & 1 & 1 \end{pmatrix}R=(10200111)

验证

现在我们来验证 A=CRA=CRA=CR

CR=(1327310)(12010011)=(1(1)+3(0)1(2)+3(0)1(0)+3(1)1(1)+3(1)2(1)+7(0)2(2)+7(0)2(0)+7(1)2(1)+7(1)3(1)+10(0)3(2)+10(0)3(0)+10(1)3(1)+10(1))=(12342479361013)=ACR = \begin{pmatrix} 1 & 3 \\ 2 & 7 \\ 3 & 10 \end{pmatrix} \begin{pmatrix} 1 & 2 & 0 & 1 \\ 0 & 0 & 1 & 1 \end{pmatrix} = \begin{pmatrix} 1(1)+3(0) & 1(2)+3(0) & 1(0)+3(1) & 1(1)+3(1) \\ 2(1)+7(0) & 2(2)+7(0) & 2(0)+7(1) & 2(1)+7(1) \\ 3(1)+10(0) & 3(2)+10(0) & 3(0)+10(1) & 3(1)+10(1) \end{pmatrix} = \begin{pmatrix} 1 & 2 & 3 & 4 \\ 2 & 4 & 7 & 9 \\ 3 & 6 & 10 & 13 \end{pmatrix} = ACR=1233710(10200111)=1(1)+3(0)2(1)+7(0)3(1)+10(0)1(2)+3(0)2(2)+7(0)3(2)+10(0)1(0)+3(1)2(0)+7(1)3(0)+10(1)1(1)+3(1)2(1)+7(1)3(1)+10(1)=12324637104913=A

验证成功。

1.3.CR分解的详细证明

CR分解的存在性可以通过高斯-若尔当消元法来证明。

  1. 行变换与可逆矩阵E: 任何对矩阵 AAA 的初等行变换,都等价于左乘一个相应的初等矩阵。因此,将 AAA 化为简化行阶梯形 ARREFA_{RREF}ARREF 的过程,可以表示为左乘一个可逆矩阵 EEE

    EA=ARREFEA = A_{RREF}EA=ARREF

    由于 EEE 是可逆的,我们有:

    A=E−1ARREFA = E^{-1}A_{RREF}A=E1ARREF

  2. 分块矩阵: 设 AAA 的秩为 rrrARREFA_{RREF}ARREF 将有 m−rm-rmr 个全零行。我们可以将 ARREFA_{RREF}ARREF 分解为只包含非零行的矩阵 RRR 和一些零行。相应地,我们可以对 E−1E^{-1}E1 进行列分块。

    A=E−1(R0)A = E^{-1} \begin{pmatrix} R \\ 0 \end{pmatrix}A=E1(R0)

    其中 RRRr×nr \times nr×n 矩阵,000(m−r)×n(m-r) \times n(mr)×n 的零矩阵。我们将 E−1E^{-1}E1 按列分块为 [CD][C \quad D][CD],其中 CCCm×rm \times rm×r 矩阵,DDDm×(m−r)m \times (m-r)m×(mr) 矩阵。

    A=[CD](R0)=CR+D⋅0=CRA = \begin{bmatrix} C & D \end{bmatrix} \begin{pmatrix} R \\ 0 \end{pmatrix} = CR + D \cdot 0 = CRA=[CD](R0)=CR+D0=CR

  3. 证明C是A的主列: 我们需要证明这样得到的矩阵 CCC 正是由 AAA 的主列构成的。

    • ARREFA_{RREF}ARREF 中,主元列是单位向量 eie_iei(在 rrr 维空间中)。设 AAA 的第 jjjAjA_jAj 是一个主列,其在 ARREFA_{RREF}ARREF 中对应的列是 eke_kek
    • 根据 A=CRA=CRA=CR,我们有 Aj=C⋅RjA_j = C \cdot R_jAj=CRj。而 RjR_jRj 在这里就是 ARREFA_{RREF}ARREF 的第 jjj 列,即 eke_kek
    • 所以,Aj=C⋅ek=CkA_j = C \cdot e_k = C_kAj=Cek=Ck,即 AAA 的第 jjj 个主列恰好是 CCC 的第 kkk 列。
    • 这表明矩阵 CCC 的列就是 AAA 的所有主列。
  4. 证明R是A_{RREF}的非零行:

    • 由行变换的性质可知,矩阵 AAA 的行空间与 ARREFA_{RREF}ARREF 的行空间是相同的。
    • ARREFA_{RREF}ARREF 的非零行是线性无关的,因此它们构成了行空间的一组基。
    • A=CRA=CRA=CR 中,矩阵 AAA 的每一行都是矩阵 RRR 中各行的线性组合。由于 RRR 的行向量构成了 AAA 的行空间的一组基,因此这个 RRR 必须是(或行等价于)从 ARREFA_{RREF}ARREF 中提取的非零行。通过我们的构造方法,它就是 ARREFA_{RREF}ARREF 的非零行本身。

综上所述,任意矩阵 AAA 都可以分解为 A=CRA=CRA=CR 的形式,其中 CCCAAA 的主列构成,RRRAAA 的简化行阶梯形的非零行构成。这一分解直接证明了矩阵的列秩(CCC 的列数)等于行秩(RRR 的行数),均为矩阵的秩 rrr

http://www.dtcms.com/a/474764.html

相关文章:

  • JavaScript 零基础入门:从语法到实战全解析
  • 怎么做付费的小说网站个人网站名字
  • LeetCode讲解篇之2320. 统计放置房子的方式数
  • 基本型电子商务网站成都专业网站建设哪家好
  • 2017年做那个网站致富四川建设信息网
  • 硬盘制为启动盘的过程 操作系统的引导过程
  • 局域网怎么做网站wordpress10款音乐插件
  • 建设企业网站企业网上银行登录官网开放平台登录
  • 【LeetCode】67. 二进制求和
  • 使用Onnxruntime对onnx模型量化介绍
  • 新乡专业做网站多少钱青岛李沧区网站建设
  • 线段树算法详解与实现
  • 前端开发入门:什么是前端?它有什么用?前端开发入门
  • 不开网店怎么做淘宝网站网站seo的主要优化内容
  • 基于 WebSocket 协议的实时弹幕通信机制分析-抖音
  • 做网站推广需要具备哪些条件WordPress已安装主题
  • vector、list、deque的差异
  • 开设网站维护公司个人网页主页
  • devexpress做网站简单门户网站模板
  • 没有注册公司可以建网站吗企业网站开发公司-北京公司
  • 企业级文件共享服务全解析:NFS 和 Samba 搭建指南与 Windows 乱码解决
  • Docker中的无法正常使用os.system
  • 中济建设官方网站慧聪网登录
  • 北京网站建设的网站的设计页面
  • python中mod函数怎么用
  • 996引擎-批量复制图集文件
  • 01、如何学习单片机
  • 【技术文档:Dify 本地 Docker 环境邮件服务排错指南】
  • 安装 Win10/11 系统下 WSL2+Ubuntu20.04
  • 苏州专业做网站比较好的公司汕头百姓网交友