Loading [MathJax]/jax/output/CommonHTML/config.js
前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >【Math for ML】矩阵分解(Matrix Decompositions) (上)

【Math for ML】矩阵分解(Matrix Decompositions) (上)

作者头像
marsggbo
发布于 2018-12-27 08:03:42
发布于 2018-12-27 08:03:42
1.1K0
举报

I. 行列式(Determinants)和迹(Trace)

1. 行列式(Determinants)

为避免和绝对值符号混淆,本文一般使用(det(A))来表示矩阵(A)的行列式。另外这里的(A∈R^{n×n})默认是方阵,因为只有方阵才能计算行列式。

行列式如何计算的就不在这里赘述了,下面简要给出行列式的各种性质和定理。

定理1:当且仅当一个方阵的行列式不为0,则该方阵可逆。 定理2:方阵(A)的行列式可沿着某一行或某一列的元素展开,形式如下:

  • 沿着第(i)行展开:[det(A)=\sum_{k=1}^n(-1)^{k+i}a_{ik}det(A_{i,k})]
  • 沿着第(i)列展开:[det(A)=\sum_{k=1}^n(-1)^{k+i}a_{ki}det(A_{k,i})] 定理3:当且仅当一个方阵为满秩时,该方阵行列式不为0,即可逆。

2. 迹(Trace)

矩阵的迹是矩阵对角元素之和,即 [tr(A)=\sum_{i=1}^na_{ii}]

有如下性质:

  • (tr(A+B)=tr(A)+tr(B))
  • (tr(αA)=\alpha tr(A),\alpha∈R)
  • (tr(I_n)=n)
  • (tr(ABC)=tr(BCA)=tr(=CAB))
  • (tr(AB)=tr(BA), A∈R^{n×m},B∈R^{m×n})

II. 特征值(Eigenvalue)&特征向量(Eigenvector)

1. 特征值与特征向量定义:

对于一个给定的矩阵 (A∈R^{n×n}),它的特征向量(v) 经过这个线性变换之后,得到的新向量仍然与原来的 (v)保持在同一条直线上,但其长度或方向也许会改变。即 [Av=\lambda v] 则(\lambda ∈R)是矩阵(A)的特征值,(v)是对应的特征向量

设(λ=λ_i)是矩阵(A)的一个特征值,则有方程((A-λ_iv)x=0),可求得非零解(x=p_i)即为(λ_i)对应的特征向量。(若(λ_i)为实数,则(p_i)可取实向量;(λ_i)为复数,则(p_i)可取复向量)

  • 推论 设n阶矩阵(A=(a_{ij}))的特征值为(λ_1,...,λ_n),不难证明:
    • 1)(λ_1+..+λ_n=a_{11}+...+a_{nn})
    • 2)(λ_1λ_2...λ_n=|A|)

由2)可知(A)是可逆矩阵的充要条件是它的n个特征值全不为0.

  • 定理 设(λ_1,...,λ_n)是方阵(A)的n个特征值,(p_1,...,p_n)依次是对应的特征向量,如果(λ_1,...,λ_n)各不相等,则(p_1,...,p_n)线性无关。

2. 特征空间(Eigenspace)和特征谱(Eigenspectrum) 定义

由特征值(\lambda)及其对应的特征向量(v)所span的空间称为特征空间 ,用(E_{\lambda})表示。矩阵(A)的特征值集合称为特征谱。

下面给出两个定理,后面内容很多都是基于它们推导出来的。

  • (Hogben(2006)): 一个n阶方阵(A)如果有n个不同的特征值,那么对应的n个特征向量互相线性独立。
  • (Meyer(2000)): 任何n阶对称矩阵都有n个独立且正交的特征向量

3. 图解特征向量和特征值

下面使用二维图像的变换来帮助我们直观理解特征值和特征向量的意义。一共给出了两个示例,最左边表示原数据,中间表示不同特征值对应的特征向量方向(红色表示(λ_1)对应的特征向量,蓝色表示(λ_2)对应的特征向量),最右边表示经过矩阵变换后得到的新的矩阵,该矩阵反应了特征向量和特征值是如何影响变换的。

  • 第一个例子

[ A_1=\left \begin{matrix} 0.5 & 0 \ 0 & 2 \ \end{matrix} \right ]

简单计算后可求出特征值和与之对应的特征向量分别为:

  • (λ_1=0.5:p_1=1,0^T)
  • (λ_2=2\,\,\,\,\,:p_2=0,1^T)
  • (tr(A)=\sum_{i=1}^n \lambda_i)

可以看到最后得到的新的矩阵(A_1x)沿着特征矩阵的方向伸缩,伸缩比例恰巧等于对应特征值大小。

[ A_4=\left \begin{matrix} 1 & -1 \ -1 & 1 \ \end{matrix} \right ]

简单计算后可求出特征值和与之对应的特征向量分别为:

  • (λ_1=0:p_1=1,1^T)
  • (λ_2=2\,\,\,\,\,:p_2=-1,1^T)

可以看到最后得到的新的矩阵(A_1x)沿着特征矩阵的方向伸缩,伸缩比例恰巧等于对应特征值大小。

关于特征值,特征矩阵等概念更直观,更透彻的理解可以参看文末【理解矩阵】系列文章,这系列文章用非常浅显易懂的语言解释了什么是矩阵,行列式和向量。

III. 平方根法(Cholesky decomposition)

一种矩阵运算方法,又叫Cholesky分解。所谓平方根法,就是利用对称正定矩阵的三角分解得到的求解对称正定方程组的一种有效方法。它是把一个对称正定的矩阵表示成一个下三角矩阵L和其转置的乘积的分解。它要求矩阵的所有特征值必须大于零,故分解的下三角矩阵的对角元也是大于零的。公式如下: [ \begin{align} A&=LL^T \notag \ \Leftrightarrow \left \begin{matrix} a_{11} & \cdots &a_{1n} \ \vdots & \ddots &\vdots \ a_{n1} & … &a_{nn} \ \end{matrix} \right &= \left \begin{matrix} l_{11} & \cdots &0 \ \vdots & \ddots &\vdots \ l_{n1} & … &l_{nn} \ \end{matrix} \right \left \begin{matrix} l_{11} & \cdots &l_{n1} \ \vdots & \ddots &\vdots \ 0 & … &l_{nn} \ \end{matrix} \right \notag \end{align} ] 其中(L)又称为Cholesky因子。

这里不会详细介绍该方法的计算方法,简单说明一下该方法会带来哪些好处。

1.求逆矩阵

我们都知道求一个矩阵的逆矩阵是一个非常耗时的过程,而对于一个上(下)三角矩阵而言,求逆矩阵就简单很多。假设我们已经将矩阵(A)分解,那么有

[A^{-1}=(LL^T)^{-1}=(L^{-1})^T(L^{-1})]

2.求行列式

[det(A)=det(L)^2=\prod_i{l_{ii}^2}]

IV. 特征分解(Eigendecomposition)&对角化(Diagonalization)

1. 对角矩阵&相似矩阵

常见的对角矩阵形式如下:

[ \begin{align} D= \left \begin{matrix} c_1 & \cdots & 0 \ \vdots & \ddots & \vdots \ 0 & \cdots & c_n \notag \end{matrix} \right \end{align} ]

注意:对角矩阵不一定是方阵,但是为了方便解释默认用对角方阵来说明。

很明显对角矩阵相对于其他形式的矩阵天然有很多计算上的优势,例如计算逆矩阵,行列式时都非常简单,所以如果能把一个矩阵对角化,那么很多问题就可以解决了。

在介绍矩阵对角化之前简单回复一下相似矩阵(similar matrix) 的概念,即

如果存在一个可逆矩阵(P)使得两个矩阵(A,D)满足(D=P^{-1}AP),那么则称(A,D)相似。

2. 可对角化(Diagnolizable)

  • 定义 所以可对角化(Diagnolizable) 可定义如下: 如果一个矩阵(A)和一个对角矩阵相似,则称(A)可对角化。也就是说如果存在一个可逆矩阵(P)使得两个矩阵(A,D)满足(D=P^{-1}AP),且(D)为对角矩阵,那么则称(A)可对角化。
  • 对角化条件 那么什么时候才能对角化呢?答案在下面的特征值分解/对角化定理中: 当且仅当方阵(A∈R^{n×n})满秩(即有n个独立的特征向量)时,有 [A=PDP^{-1}] 其中(P)是由(A)的特征矩阵组成的可逆矩阵,(D)是由(A)的特征值组成的对角矩阵。
  • 亏损矩阵 基于上面的介绍,很自然地给出亏损矩阵(defective matrix) 的定义: n阶矩阵(A)若有n个线性无关的特征向量(n个特征值也要各不相同),称(A)为非亏损矩阵,即(A)有完备的线性无关的特征向量系。反之称(A)为亏损矩阵
  • 对称矩阵对角化

任何对称矩阵都可以对角化,即 [ \begin{align} S&=PDP^{-1} \notag\ &=PDP^T \notag \end{align} ] 其中(P)是由n个正交特征向量组成的矩阵(此时有(P^{-1}=P^T),证明略),(D)是特征值组成的对角矩阵

下图直观地给出了对称矩阵对角化的过程:

上图可划分成四个部分,按顺时针顺序分别简称为LT(Left-Top),RT(Right-Top),LB(Left-Bottom),RB(Right-Bottom)。

LT的(p_1,p_2)表示矩阵(A∈R^{2×2})的单位特征向量(长度为1)。

  • LT→RT:单位圆按照(A)特征向量的方向伸缩,伸缩比例等于(A)的特征值大小。因为(A)的对称矩阵,所以其特征向量是互相独立且正交的,由图可以清楚地看到(p_1⊥p_2);
  • LT→LB: 因为(A)的对称矩阵,所以有(P^T=P^{-1}),所以可以(P^T)理解成将坐标轴体系由(p_1,p_2)坐标体系逆向还原成传统的(e_1,e_2)坐标体系。所以矩阵的本质其实也可以理解成对坐标轴的变换,这个观点相信你在看了文末给出的【理解矩阵】系列文章后会有更深刻的理解。
  • LB→RB: 如果上面的介绍你理解了,那么这一过程也就很自然地能够理解了。没错,该步骤就表示在将坐标轴还原到传统意义上的坐标轴后对LB的单位圆按照特征值大小进行伸缩。
  • RB→LT: 对坐标轴进行变换。

参考

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2018-12-20 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
【Math for ML】矩阵分解(Matrix Decompositions) (下)
Singular Value Decomposition (SVD)是线性代数中十分重要的矩阵分解方法,被称为“线性代数的基本理论”,因为它不仅可以运用于所有矩阵(不像特征值分解只能用于方阵),而且奇异值总是存在的。
marsggbo
2018/12/28
1.1K0
常见的几种矩阵分解方式
项目github地址:bitcarmanlee easy-algorithm-interview-and-practice 欢迎大家star,留言,一起学习进步
全栈程序员站长
2022/09/02
2.4K0
常见的几种矩阵分解方式
矩阵分解 -2- 特征值分解
线性代数中,特征分解(Eigendecomposition),又称谱分解(Spectral decomposition)是将矩阵分解为由其特征值和特征向量表示的矩阵之积的方法。 定义 线性代数中,特征分解(Eigendecomposition),又称谱分解(Spectral decomposition)是将矩阵分解为由其特征值和特征向量表示的矩阵之积的方法。 基础理论 N 维非零向量 v 是 N×N 的矩阵 A 的特征向量,当且仅当下式成立: {\displaystyle \mathbf {A} \mat
为为为什么
2022/10/05
1.8K0
Deep Learning Chapter01:机器学习中线性代数
好久不见,大家好,我是北山啦。机器学习当中需要用到许多的数学知识,如今博主又要继续踏上深度学习的路程,所以现在在网上总结了相关的考研数学和机器学习中常见相关知识如下,希望对大家有所帮助。
北山啦
2022/10/31
5010
Deep Learning Chapter01:机器学习中线性代数
【读书笔记】之矩阵知识梳理
这篇笔记,主要记录花书第二章关于线性代数知识的回顾。希望把常用的概念和公式都记录下来,同时标记编号(为了方便,标记序号与书中一致),在后续公式推导过程中可以直接关联使用。 梳理成文章,主要
用户1594945
2018/07/20
9100
我的机器学习线性代数篇观点向量矩阵行列式矩阵的初等变换向量组线性方程组特征值和特征向量几个特殊矩阵QR 分解(正交三角分解)奇异值分解向量的导数
前言: 线代知识点多,有点抽象,写的时候尽量把这些知识点串起来,如果不行,那就两串。其包含的几大对象为:向量,行列式,矩阵,方程组。 观点 核心问题是求多元方程组的解,核心知识:内积、秩、矩阵求逆,应用:求解线性回归、最小二乘法用QR分解,奇异值分解SVD,主成分分析(PCA)运用可对角化矩阵 向量 基础 向量:是指具有n个互相独立的性质(维度)的对象的表示,向量常 使用字母+箭头的形式进行表示,也可以使用几何坐标来表示向量。 单位向量:向量的模、模为一的向量为单位向量 内积又叫数量积
DC童生
2018/04/27
1.8K0
我的机器学习线性代数篇观点向量矩阵行列式矩阵的初等变换向量组线性方程组特征值和特征向量几个特殊矩阵QR 分解(正交三角分解)奇异值分解向量的导数
深度学习系列笔记(二)
我们定义一个包含向量中元素索引的集合,然后将集合写在脚标处,表示索引向量中的元素。比如,指定 x_1、x_3、x_6​​ ​,我们定义集合S={1,3,6}​ ,然后写作 x_S​ 。
Marigold
2022/06/17
1.3K0
深度学习系列笔记(二)
线性代数之相似矩阵、二次型
(1)特征值求法:解特征方程; (2)特征向量的求法:求方程组的基础解系。 (3)特征值的性质:
用户11315985
2024/10/16
2110
线性代数之相似矩阵、二次型
博客 | MIT—线性代数(下)
1、 投影矩阵与最小二乘:向量子空间投影在机器学习中的应用最为广泛。就拿最小二乘的线性拟合来说,首先根据抽样特征维度假设线性方程形式,即假设函数。
AI研习社
2018/12/28
1.4K0
博客 | MIT—线性代数(下)
万字长文带你复习线性代数!
课程主页:http://speech.ee.ntu.edu.tw/~tlkagk/courses_LA16.html
石晓文
2018/12/25
1.6K0
万字长文带你复习线性代数!
线性代数(持续更新中)
当 a\times d-b\times c=0 时 A 没有定义,A^{-1}不存在,则 A 是奇异矩阵。
浪漫主义狗
2022/09/28
9010
线性代数(持续更新中)
『 特征降维』PCA原理-Principal Component Analysis
特征降维一般有两类方法:特征选择和特征抽取。特征选择即从高纬度的特征中选择其中的一个子集来作为新的特征;而特征抽取是指将高纬度的特征经过某个函数映射至低纬度作为新的特征。常用的特征抽取方法就是PCA。
百川AI
2021/10/19
1.4K0
线性代数(持续更新中)
当 a\times d-b\times c=0 时 A 没有定义,A^{-1}不存在,则 A 是奇异矩阵。
浪漫主义狗
2023/09/04
3270
线性代数(持续更新中)
SVD分解及其应用
根据文章内容总结的摘要
用户1147754
2018/01/02
2.7K0
SVD分解及其应用
线性代数知识汇总
线性代数是代数学的一个分支,主要处理线性关系问题。线性关系意即数学对象之间的关系是以一次形式来表达的。例如,在解析几何里,平面上直线的方程是二元一次方程;空间平面的方程是三元一次方程,而空间直线视为两个平面相交,由两个三元一次方程所组成的方程组来表示。含有 n个未知量的一次方程称为线性方程。变于关量是一次的函数称为线性函数。线性关系问题简称线性问题。解线性方程组的问题是最简单的线性问题。
章鱼猫先生
2021/10/15
1.5K0
线性代数知识汇总
线性代数的计算与物理意义
$$ \begin{cases} a_{11}x_1&+&a_{12}x_2&+&\cdots&+a_{1n}x_n&=&b_1\\ &&&&\vdots\\ a_{n1}x_1&+&a_{n2}x_2&+&\cdots&+a_{nn}x_n&=&b_n& \end{cases} $$
孔西皮
2021/03/04
1.3K0
贝叶斯决策理论(数学部分)
概率质量函数(Probability Mass Function)是针对离散值而言的,通常用大写字母P表示。假设某个事
刘开心_1266679
2018/07/08
6260
贝叶斯决策理论(数学部分)
【运筹学】线性规划数学模型 ( 求解基矩阵示例 | 矩阵的可逆性 | 线性规划表示为 基矩阵 基向量 非基矩阵 非基向量 形式 )
个矩阵都是可逆矩阵 , 都可以作为基矩阵 , 当选中一个基矩阵时 , 其对应的列向量就是基向量 , 对应的变量 , 就是基变量 , 剩余的变量是非基变量 ;
韩曙亮
2023/03/28
1.5K0
【运筹学】线性规划数学模型 ( 求解基矩阵示例 | 矩阵的可逆性 | 线性规划表示为 基矩阵 基向量 非基矩阵 非基向量 形式 )
深度学习-数学基础
目前主要有两种度量模型深度的方式。第一种方式是基于评估架构所需执行的顺序指令的数目。假设我们将模型表示为给定输入后,计算对应输出的流程图,则可以将这张流程图中的最长路径视为模型的深度。另一种是在深度概率模型中使用的方法,它不是将计算图的深度视为模型深度,而是将描述概念彼此如何关联的图的深度视为模型深度。在这种情况下,计算每个概念表示的计算流程图的深度可能比概念本身的图更深。这是因为系统对较简单概念的理解在给出更复杂概念的信息后可以进一步精细化
范中豪
2019/09/10
8410
深度学习-数学基础
相似矩阵:换个角度看矩阵
有一张地图,可以用不同的坐标系来表示上面的位置。比如,可以用经纬度来表示,也可以用直角坐标系来表示。虽然坐标系不同,但是地图上表示的地理位置是相同的。
云深无际
2024/10/14
910
相似矩阵:换个角度看矩阵
推荐阅读
相关推荐
【Math for ML】矩阵分解(Matrix Decompositions) (下)
更多 >
领券
💥开发者 MCP广场重磅上线!
精选全网热门MCP server,让你的AI更好用 🚀
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档