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

《机器学习数学基础》补充资料:矩阵的LU分解

本文是对《机器学习数学基础》第2章2.3.3节矩阵LU分解的拓展。

判断是否可LU分解

并非所有矩阵都可以实现LU分解

定理1: n n n 阶可逆矩阵 A \pmb{A} A 可以进行LU分解,则 A \pmb{A} A k k k 阶顺序主子阵(leading principal submatrix) A k \pmb{A}_k Ak 都是可逆的 [ 1 ] ^{[1]} [1]

证明

A = L U \pmb{A}=\pmb{LU} A=LU 用分块矩阵表示:

A = L U = [ L 11 0 L 21 L 22 ] [ U 11 U 12 0 U 22 ] = [ L 11 U 11 L 11 U 12 L 21 U 11 L 21 U 12 + L 22 U 22 ] \pmb{A}=\pmb{LU}=\begin{bmatrix}\pmb{L}_{11}&0\\\pmb{L}_{21}&\pmb{L}_{22}\end{bmatrix}\begin{bmatrix}\pmb{U}_{11}&\pmb{U}_{12}\\0&\pmb{U}_{22}\end{bmatrix}=\begin{bmatrix}\pmb{L}_{11}\pmb{U}_{11}&\pmb{L}_{11}\pmb{U}_{12}\\\pmb{L}_{21}\pmb{U}_{11}&\pmb{L}_{21}\pmb{U}_{12}+\pmb{L}_{22}\pmb{U}_{22}\end{bmatrix} A=LU=[L11L210L22][U110U12U22]=[L11U11L21U11L11U12L21U12+L22U22]

其中 L 11 、 U 11 \pmb{L}_{11}、\pmb{U}_{11} L11U11 k × k k\times k k×k 分块矩阵。

因为 L \pmb{L} L 是单位下三角矩阵,且主对角线元素都是 1 1 1 ,则其分块矩阵 L 11 \pmb{L}_{11} L11 亦为三角矩阵,且主对角线元素非零。同理, U 11 \pmb{U}_{11} U11 亦然。

所以 L 11 \pmb{L}_{11} L11 U 11 \pmb{U}_{11} U11 可逆,则 A k = L 11 U 11 \pmb{A}_k=\pmb{L}_{11}\pmb{U}_{11} Ak=L11U11 可以。

证毕。

A = [ 3 − 1 2 6 − 1 5 − 9 7 3 ] \pmb{A}=\begin{bmatrix}3&-1&2\\6&-1&5\\-9&7&3\end{bmatrix} A= 369117253 的顺序主子阵依次为:

A 1 = [ 3 ] = [ 1 ] [ 3 ] A 2 = [ 3 − 1 6 − 1 ] = [ 1 0 2 1 ] [ 3 − 1 0 1 ] A 3 = A = L U \begin{split}\pmb{A}_1&=[3]=[1][3]\\\pmb{A}_2&=\begin{bmatrix}3&-1\\6&-1\end{bmatrix}=\begin{bmatrix}1&0\\2&1\end{bmatrix}\begin{bmatrix}3&-1\\0&1\end{bmatrix}\\\pmb{A}_3&=\pmb{A}=\pmb{LU}\end{split} A1A2A3=[3]=[1][3]=[3611]=[1201][3011]=A=LU

定理2:(定理1的逆定理)若矩阵 A \pmb{A} A 的所有顺序主子阵 A k \pmb{A}_k Ak 都可逆,则该矩阵存在LU分解。

证明(用归纳法)

k = 1 k=1 k=1 A 1 = [ a 11 ] \pmb{A}_1=[a_{11}] A1=[a11] 可逆,则 a 11 ≠ 0 a_{11}\ne 0 a11=0 ,所以有: A 1 = [ 1 ] [ a 11 ] \pmb{A}_1=[1][a_{11}] A1=[1][a11] ,即为LU分解。

k k k 阶顺序主子阵 A k \pmb{A}_k Ak 可逆,且可LU分解, A k = L k U k \pmb{A}_k=\pmb{L}_k\pmb{U}_k Ak=LkUk

k + 1 k+1 k+1 阶顺序主子阵 A k + 1 \pmb{A}_{k+1} Ak+1 可以表示为:

A k + 1 = [ A k b c T d ] \pmb{A}_{k+1}=\begin{bmatrix}\pmb{A}_k&\pmb{b}\\\pmb{c}^T&d\end{bmatrix} Ak+1=[AkcTbd]

其中 b 、 c \pmb{b}、\pmb{c} bc k k k 维向量, d d d 是标量。则上式可以进一步写成:

A k + 1 = [ A k b c T d ] = [ L k 0 x T 1 ] [ U k y 0 T z ] \pmb{A}_{k+1}=\begin{bmatrix}\pmb{A}_k&\pmb{b}\\\pmb{c}^T&d\end{bmatrix}=\begin{bmatrix}\pmb{L}_k&\pmb{0}\\\pmb{x}^T&1\end{bmatrix}\begin{bmatrix}\pmb{U}_k&\pmb{y}\\\pmb{0}^T&z\end{bmatrix} Ak+1=[AkcTbd]=[LkxT01][Uk0Tyz]

通过对应关系,可知:

b = L k y , c T = x T U k , d = x T y + z \pmb{b}=\pmb{L}_k\pmb{y},\pmb{c}^T=\pmb{x}^T\pmb{U}_k,d=\pmb{x}^T\pmb{y}+z b=Lky,cT=xTUk,d=xTy+z

解得:

y = L k − 1 b , x T = c T U k − 1 , z = d − x T y = d − c T ( U k − 1 L k − 1 ) b = d − c T A − 1 b \pmb{y}=\pmb{L}_k^{-1}\pmb{b},\pmb{x}^T=\pmb{c}^T\pmb{U}_k^{-1},z=d-\pmb{x}^T\pmb{y}=d-\pmb{c}^T(\pmb{U}_k^{-1}\pmb{L}_k^{-1})\pmb{b}=d-\pmb{c}^T\pmb{A}^{-1}\pmb{b} y=Lk1b,xT=cTUk1,z=dxTy=dcT(Uk1Lk1)b=dcTA1b

所以: A k + 1 = L k + 1 U k + 1 \pmb{A}_{k+1}=\pmb{L}_{k+1}\pmb{U}_{k+1} Ak+1=Lk+1Uk+1

其中 L k + 1 = [ L k 0 c T U k − 1 1 ] , U k + 1 = [ U k y 0 T d − c T A − 1 b ] \pmb{L}_{k+1}=\begin{bmatrix}\pmb{L}_k&\pmb{0}\\\pmb{c}^T\pmb{U}_k^{-1}&1\end{bmatrix},\pmb{U}_{k+1}=\begin{bmatrix}\pmb{U}_k&\pmb{y}\\\pmb{0}^T&d-\pmb{c}^T\pmb{A}^{-1}\pmb{b}\end{bmatrix} Lk+1=[LkcTUk101],Uk+1=[Uk0TydcTA1b]

因为 A k + 1 \pmb{A}_{k+1} Ak+1 L k + 1 \pmb{L}_{k+1} Lk+1 可逆,所以 U k + 1 \pmb{U}_{k+1} Uk+1 可逆,则 d − c T A − 1 b ≠ 0 d-\pmb{c}^T\pmb{A}^{-1}\pmb{b}\ne0 dcTA1b=0 。即 A k + 1 \pmb{A}_{k+1} Ak+1 可以分解为 L k + 1 U k + 1 \pmb{L}_{k+1}\pmb{U}_{k+1} Lk+1Uk+1

综上,定理得证。

LU分解的唯一性

对于 A = L U \pmb{A}=\pmb{LU} A=LU 而言, L \pmb{L} L 是单位下三角矩阵,主对角线元素为 1 1 1 。对于 U \pmb{U} U ,以 3 × 3 3\times 3 3×3 为例,可以转化为:

U = [ u 11 u 12 u 13 0 u 22 u 23 0 0 u 33 ] = [ u 11 0 0 0 u 22 0 0 0 u 33 ] [ 1 u 12 u 11 u 13 u 11 0 1 u 23 u 22 0 0 1 ] = D U ′ \pmb{U}=\begin{bmatrix}u_{11}&u_{12}&u_{13}\\0&u_{22}&u_{23}\\0&0&u_{33}\end{bmatrix}=\begin{bmatrix}u_{11}&0&0\\0&u_{22}&0\\0&0&u_{33}\end{bmatrix}\begin{bmatrix}1&\frac{u_{12}}{u_{11}}&\frac{u_{13}}{u_{11}}\\0&1&\frac{u_{23}}{u_{22}}\\0&0&1\end{bmatrix}=\pmb{D}\pmb{U}' U= u1100u12u220u13u23u33 = u11000u22000u33 100u11u1210u11u13u22u231 =DU

所以: A = L D U ′ \pmb{A}=\pmb{LDU}' A=LDU

假设 A = L 1 D 1 U 1 ′ \pmb{A}=\pmb{L}_1\pmb{D}_1\pmb{U}_1' A=L1D1U1 A = L 2 D 2 U 2 ′ \pmb{A}=\pmb{L}_2\pmb{D}_2\pmb{U}_2' A=L2D2U2 ,则:

L 1 D 1 U 1 ′ = L 2 D 2 U 2 ′ \pmb{L}_1\pmb{D}_1\pmb{U}_1'=\pmb{L}_2\pmb{D}_2\pmb{U}_2' L1D1U1=L2D2U2

由因为 L i \pmb{L}_i Li U i ′ \pmb{U}'_i Ui 都可逆,所以:

L 1 − 1 L 1 D 1 U 1 ′ U 2 ′ − 1 = L 1 − 1 L 2 D 2 U 2 ′ U 2 ′ − 1 D 1 U 1 ′ U 2 ′ − 1 = L 1 − 1 L 2 D 2 \begin{split}\pmb{L}_1^{-1}\pmb{L}_1\pmb{D}_1\pmb{U}_1'\pmb{U}_2'^{-1}&=\pmb{L}_1^{-1}\pmb{L}_2\pmb{D}_2\pmb{U}_2'\pmb{U}_2'^{-1}\\\pmb{D}_1\pmb{U}'_1\pmb{U}_2'^{-1}&=\pmb{L}_1^{-1}\pmb{L}_2\pmb{D}_2\end{split} L11L1D1U1U21D1U1U21=L11L2D2U2U21=L11L2D2

继续以 3 3 3 阶方阵为例,将上式等号左右分别用矩阵方式展开,得:

[ ( D 1 ) 11 ∗ ∗ 0 ( D 1 ) 22 ∗ 0 0 ( D 1 ) 33 ] = [ ( D 2 ) 11 0 0 ∗ ( D 2 ) 22 0 ∗ ∗ ( D 2 ) 33 ] \begin{bmatrix}(\pmb{D}_1)_{11}&*&*\\0&(\pmb{D}_1)_{22}&*\\0&0&(\pmb{D}_1)_{33}\end{bmatrix}=\begin{bmatrix}(\pmb{D}_2)_{11}&0&0\\*&(\pmb{D}_2)_{22}&0\\*&*&(\pmb{D}_2)_{33}\end{bmatrix} (D1)1100(D1)220(D1)33 = (D2)110(D2)2200(D2)33

所以: D 1 = D 2 \pmb{D}_1=\pmb{D}_2 D1=D2 ,非主元的值 ∗ = 0 * = 0 =0 ,故 U 1 ′ U 2 ′ − 1 = I , L 1 − 1 L 2 = I \pmb{U}_1'\pmb{U}_2'^{-1}=\pmb{I}, \pmb{L}_1^{-1}\pmb{L}_2=\pmb{I} U1U21=I,L11L2=I

所以: U 1 ′ = U 2 ′ , L 1 = L 2 \pmb{U}_1'=\pmb{U}_2',\pmb{L}_1=\pmb{L}_2 U1=U2,L1=L2 ,即 LU 分解具有唯一性。

证毕。

LU分解的应用

求解线性方程组

此应用在《机器学习数学基础》第2章2.3.3节中有详细介绍,请参阅。

计算行列式

利用LU分解可以手工计算 n n n 阶行列式。

∣ A ∣ = ∣ L U ∣ = ∣ L ∣ ∣ U ∣ |\pmb{A}|=|\pmb{LU}|=|\pmb{L}||\pmb{U}| A=LU=L∣∣U

三角矩阵的行列式等于主对角元乘积。

所以: ∣ L ∣ = 1 |\pmb{L}|=1 L=1 ,则:

∣ A ∣ = ∣ U ∣ = ∏ i = 1 n u i i |\pmb{A}|=|\pmb{U}|=\prod_{i=1}^nu_{ii} A=U=i=1nuii

参考文献

[1]. https://ccjou.wordpress.com/2010/09/01/lu-分解/

相关文章:

《机器学习数学基础》补充资料:矩阵的LU分解

本文是对《机器学习数学基础》第2章2.3.3节矩阵LU分解的拓展。 判断是否可LU分解 并非所有矩阵都可以实现LU分解。 定理1: 若 n n n 阶可逆矩阵 A \pmb{A} A 可以进行LU分解,则 A \pmb{A} A 的 k k k 阶顺序主子阵(leading principal s…...

[笔记.AI]AI知识科普提纲

仅供参考 1.AI基础认知 1.1什么是什么AI 1.2核心概念 1.2.1机器学习、深度学习、神经网络 1.2.2模型:模型、大模型、模型参数 1.2.3多模态 1.2.4生成式AI & 判别式AI 1.3发展与现状 2.大模型 2.1主流大模型 2.1.1分类 2.1.2各…...

Spring Security 如何防止 CSRF 攻击?

目录 一、CSRF 攻击简介二、Spring Security 防止 CSRF 攻击的机制1. 默认启用 CSRF 保护2. CSRF 令牌的生成与验证3. 配置与自定义4. 在请求中包含 CSRF 令牌 三、最佳实践四、总结 一、CSRF 攻击简介 CSRF(Cross-Site Request Forgery)攻击&#xff0…...

使用 Kubeflow 和 Ray 构建机器学习平台

使用 Kubeflow 和 Ray 构建一个稳健的 ML 平台。我们将深入讨论 Kubeflow 和 Ray 的独特功能,以及它们如何互补,共同创建一个强大的 ML 生态系统 集中化 ML 平台的需求 随着企业在 ML 旅程中的成熟,初始 ML 项目的临时性质逐渐让位于对更结构化和可扩展方法的需求。集中化…...

SEO炼金术(4)| Next.js SEO 全攻略

在上一篇文章 SEO炼金术(3)| 深入解析 SEO 关键要素 中,我们深入解析了 SEO 关键要素,包括 meta 标签、robots.txt、canonical、sitemap.xml 和 hreflang,并探讨了它们在搜索引擎优化(SEO)中的作…...

每日十个计算机专有名词 (7)

Metasploit 词源:Meta(超越,超出) exploit(漏洞利用) Metasploit 是一个安全测试框架,用来帮助安全专家(也叫渗透测试人员)发现和利用计算机系统中的漏洞。你可以把它想…...

StarRocks 在爱奇艺大数据场景的实践

作者:林豪,爱奇艺大数据 OLAP 服务负责人 小编导读: 本文整理自爱奇艺工程师在 StarRocks 年度峰会的分享,介绍了爱奇艺 OLAP 引擎演化及引入 StarRocks 后的效果。 在广告业务中,StarRocks 替换 ImpalaKudu 后&#x…...

蓝桥杯好题推荐----高精度乘法

🌈个人主页:羽晨同学 💫个人格言:“成为自己未来的主人~” 题目链接 P1303 A*B Problem - 洛谷https://www.luogu.com.cn/problem/P1303 解题思路 这道题的思路,其实和前面差不多,我们主要说一下最为关键的部分&…...

Linux网络 数据链路层

在Linux网络中,数据链路层位于物理层之上,网络层之下,其主要职责是将网络层的IP数据包封装成帧,并通过物理链路发送到目标设备。同时,它还负责接收来自物理层的帧,并将其解封装为数据包,传递给网…...

量子计算可能改变世界的四种方式

世界各地的组织和政府正将数十亿美元投入到量子研究与开发中,谷歌、微软和英特尔等公司都在竞相实现量子霸权。 这其中的利害关系重大,有这么多重要的参与者,量子计算机的问世可能指日可待。 为做好准备,,我们必须了…...

React 组件基础介绍

基本概念:一个组件就是用户界面的一部分,可以有自己的逻辑和外观,组件之间可以互相嵌套、复用多次。每个组件就是一个首字母大写的函数,内部存放了组件的逻辑和试图UI,渲染组件只需要把组件 当成 标签 书写。App 可以视…...

ETL系列-数据抽取(Extract)

ETL的过程 1、数据抽取:确定数据源,定义数据接口,选择数据抽取方法(主动抽取或由源系统推送)。 2、数据清洗:处理不完整数据、错误数据、重复数据等,确保数据的准确性和一致性。(是…...

java八股文之框架

1.Spring框架中的Bean是否线程安全的 Spring框架中的Bean默认是单例的,不是线程安全的。因为一般在Spring的bean的中都是注入无状态的对象,没有线程安全问题,如果在bean中定义了可修改的成员变量,是要考虑线程安全问题的&#xf…...

【大模型】Ubuntu下 fastgpt 的部署和使用

前言 本次安装的版本为 fastgpt:v4.8.8-fix2。 最新版本fastgpt:v4.8.20-fix2 问答时报错,本着跑通先使用起来,就没有死磕下去,后面bug解了再进行记录。   github连接:https://github.com/labring/FastGPT fastgpt 安装说明&…...

小程序中头像昵称填写

官方文档 参考小程序用户头像昵称获取规则调整公告 新的小程序版本不能通过wx.getUserProfile和wx.getUserInfo获取用户信息 <van-field label"{{Avatar}}" label-class"field-label" right-icon-class"field-right-icon-class"input-class&…...

卷积神经网络(cnn,类似lenet-1,八)

我们第一层用卷积核&#xff0c;前面已经成功&#xff0c;现在我们用两层卷积核&#xff1a; 结构如下&#xff0c;是不是很想lenet-1&#xff0c;其实我们24年就实现了sigmoid版本的&#xff1a; cnn突破九&#xff08;我们的五层卷积核bpnet网络就是lenet-1&#xff09;-CS…...

【NLP 27、文本分类任务 —— 传统机器学习算法】

不要抓着枯叶哭泣&#xff0c;你要等待初春的新芽 —— 25.1.23 一、文本分类任务 定义&#xff1a;预先设定好一个文本类别集合&#xff0c;对于一篇文本&#xff0c;预测其所属的类别 例如&#xff1a; 情感分析&#xff1a; 这家饭店太难吃了 —> 正类 …...

Go红队开发—并发编程

文章目录 并发编程go协程chan通道无缓冲通道有缓冲通道创建⽆缓冲和缓冲通道 等协程sync.WaitGroup同步Runtime包Gosched()Goexit() 区别 同步变量sync.Mutex互斥锁atomic原子变量 SelectTicker定时器控制并发数量核心机制 并发编程阶段练习重要的细节端口扫描股票监控 并发编程…...

Oracle 导出所有表索引的创建语句

在Oracle数据库中&#xff0c;导出所有表的索引创建语句通常涉及到使用数据字典视图来查询索引的定义&#xff0c;然后生成对应的SQL语句。你可以通过查询DBA_INDEXES或USER_INDEXES视图&#xff08;取决于你的权限和需求&#xff09;来获取这些信息。 使用DBA_INDEXES视图 如…...

使用Docker方式一键部署MySQL和Redis数据库详解

一、前言 数据库是现代应用开发中不可或缺的一部分&#xff0c;MySQL和Redis作为两种广泛使用的数据库系统&#xff0c;分别用于关系型数据库和键值存储。本文旨在通过Docker和Docker Compose的方式&#xff0c;提供一个简洁明了的一键部署方案&#xff0c;确保数据库服务的稳…...

论文解读:交大港大上海AI Lab开源论文 | 宇树机器人多姿态起立控制强化学习框架(二)

HoST框架核心实现方法详解 - 论文深度解读(第二部分) 《Learning Humanoid Standing-up Control across Diverse Postures》 系列文章: 论文深度解读 + 算法与代码分析(二) 作者机构: 上海AI Lab, 上海交通大学, 香港大学, 浙江大学, 香港中文大学 论文主题: 人形机器人…...

系统设计 --- MongoDB亿级数据查询优化策略

系统设计 --- MongoDB亿级数据查询分表策略 背景Solution --- 分表 背景 使用audit log实现Audi Trail功能 Audit Trail范围: 六个月数据量: 每秒5-7条audi log&#xff0c;共计7千万 – 1亿条数据需要实现全文检索按照时间倒序因为license问题&#xff0c;不能使用ELK只能使用…...

如何在看板中有效管理突发紧急任务

在看板中有效管理突发紧急任务需要&#xff1a;设立专门的紧急任务通道、重新调整任务优先级、保持适度的WIP&#xff08;Work-in-Progress&#xff09;弹性、优化任务处理流程、提高团队应对突发情况的敏捷性。其中&#xff0c;设立专门的紧急任务通道尤为重要&#xff0c;这能…...

Kubernetes 网络模型深度解析:Pod IP 与 Service 的负载均衡机制,Service到底是什么?

Pod IP 的本质与特性 Pod IP 的定位 纯端点地址&#xff1a;Pod IP 是分配给 Pod 网络命名空间的真实 IP 地址&#xff08;如 10.244.1.2&#xff09;无特殊名称&#xff1a;在 Kubernetes 中&#xff0c;它通常被称为 “Pod IP” 或 “容器 IP”生命周期&#xff1a;与 Pod …...

HTML前端开发:JavaScript 获取元素方法详解

作为前端开发者&#xff0c;高效获取 DOM 元素是必备技能。以下是 JS 中核心的获取元素方法&#xff0c;分为两大系列&#xff1a; 一、getElementBy... 系列 传统方法&#xff0c;直接通过 DOM 接口访问&#xff0c;返回动态集合&#xff08;元素变化会实时更新&#xff09;。…...

第一篇:Liunx环境下搭建PaddlePaddle 3.0基础环境(Liunx Centos8.5安装Python3.10+pip3.10)

第一篇&#xff1a;Liunx环境下搭建PaddlePaddle 3.0基础环境&#xff08;Liunx Centos8.5安装Python3.10pip3.10&#xff09; 一&#xff1a;前言二&#xff1a;安装编译依赖二&#xff1a;安装Python3.10三&#xff1a;安装PIP3.10四&#xff1a;安装Paddlepaddle基础框架4.1…...

土建施工员考试:建筑施工技术重点知识有哪些?

《管理实务》是土建施工员考试中侧重实操应用与管理能力的科目&#xff0c;核心考查施工组织、质量安全、进度成本等现场管理要点。以下是结合考试大纲与高频考点整理的重点内容&#xff0c;附学习方向和应试技巧&#xff1a; 一、施工组织与进度管理 核心目标&#xff1a; 规…...

【iOS】 Block再学习

iOS Block再学习 文章目录 iOS Block再学习前言Block的三种类型__ NSGlobalBlock____ NSMallocBlock____ NSStackBlock__小结 Block底层分析Block的结构捕获自由变量捕获全局(静态)变量捕获静态变量__block修饰符forwarding指针 Block的copy时机block作为函数返回值将block赋给…...

云原生安全实战:API网关Envoy的鉴权与限流详解

&#x1f525;「炎码工坊」技术弹药已装填&#xff01; 点击关注 → 解锁工业级干货【工具实测|项目避坑|源码燃烧指南】 一、基础概念 1. API网关 作为微服务架构的统一入口&#xff0c;负责路由转发、安全控制、流量管理等核心功能。 2. Envoy 由Lyft开源的高性能云原生…...

PydanticAI快速入门示例

参考链接&#xff1a;https://ai.pydantic.dev/#why-use-pydanticai 示例代码 from pydantic_ai import Agent from pydantic_ai.models.openai import OpenAIModel from pydantic_ai.providers.openai import OpenAIProvider# 配置使用阿里云通义千问模型 model OpenAIMode…...