连载|复习线性代数:矩阵

各位童鞋,今天咱们来复习一下数学。数学对于机器学习的重要性,怎么强调都不为过,我以前的某个朋友为了转行做机器学习,天天在推公式。本文将从线性方程组出发,引入矩阵。



不要急着说,“你别讲了,矩阵的一切我都懂!”。先问问自己,是否知道什么是增广矩阵,LU分解,奇异矩阵



从线性方程组谈起


矩阵的一个重要来源是线性方程组。先看一个简单的2元线性方程组。



有两种方式看待线性方程组,即:“行图像”、“列图像”

  1. 行图像。

    每个方程对应一条直线(超平面),即行图像。那么,方程组的解即为交点(当直线平行时则无解;重叠时则无穷解,奇异情况)。行图像并不是很好的思考方式,很难想象超平面的交点。

  2. 列图像。

    线性方程组可以表示成:向量的线性组合。

        

       这样就转化成 col1col2 怎么转化为结果向量c。列图像是一种不错的思考方式,很容易扩充到高维空间。



线性方程组的矩阵形式  

可以将线性方程组写成矩阵形式。其中系数构成一个系数矩阵。




系数矩阵:

未知数向量:

结果向量:

那么线性方程组就写成了“”的形式。


恭喜,其实我们已经引入了矩阵乘法的概念,矩阵-向量乘法可以转化为 col 的线性组合



不难扩展为矩阵乘法(方法一:整列相乘)。


其中:

规则C 的第 j 列可以表示为 A 的各个 col 与 B 的第 j 列的线性组合。


现在我们有两个待解决的问题:

1. 线性方程组如何求解?

2. 线性方程组一定有解?




求解线性方程组



先来解决第一个问题:线性方程组如何求解。思路其实小学就学过,可以采用“消元法”,最开始由高斯大爷发现的, 所以被称为“高斯消元法”。


看一个新例子:



写成矩阵的形式(静态形式):



高斯消元法的主要思想:行变换不影响线性方程组的解


主要分两步进行:消元 + 回代

1. 消元


被称为增广矩阵,消元就是在增广矩阵上不断进行行变换,直到矩阵 A 变为上三角矩阵


行变换,需要每次选定一个主元(pivot),作为参考点,如上图 underline 数字就是 pivot。


2. 回代


通过行变换,最终变为:



还原成方程组的形式就是:



回代过程:利用方程3,得出 z = -2, 将 z = -2 代入方程2,得到 y = 1,再将 yz 代入方程1,得出 x = 2。


一切好像很完美。但是依然会存在问题:

1. 消元时可能会导致主元为0,导致后续无法进行下去,可能你想到交换行就可以了,聪明。

2. 比如方程3 的 的系数改为-4。第 2 步消元后第三个主元不存在,高斯消元法彻底没戏(这种情况下讲会详细讲解)。




行变换的矩阵表示:消元矩阵


介绍之前,从“整行相乘”理解矩阵乘法(方法二:整行相乘)。


扩展之,


其中:

规则C 的第 i 行可以表示为 A 的第 i 行与 B 的各个 row 的线性组合。


可以用矩阵表示:


可以看出只是第 2 行发生了变化,可以看出矩阵可以描述变换(动态特性)



进行进行行变换,得到:



这个过程可以描述成:,其中 U 为 上三角矩阵。由于矩阵乘法满足结合率,进一步写成:


上节说到,消元过程中可能导致主元为0,这时就需要交换(置换)两行。依然可以用矩阵表示。


例如:



补充知识点:初等变换与初等矩阵


定义以下三种变换为初等变换


1. 交换矩阵某两行(列)的位置。对应初等矩阵为:Pij。

2. 用一个非零常数 k 乘以矩阵的某一行(列)。对应初等矩阵为:Eα。

3. 将矩阵的某一行(列)乘以常数 后加到另一行(列)上去。对应初等矩阵为:Eij。


不难理解,每个初等变换都对应变换矩阵,称为初等矩阵。


上面例子,经过 , 已经变成上三角矩阵,但这并不是最简形式,可以继续进行行变换(使用变换2和3,本例中未使用变换1)。



回代,直接就可以得出 x = 2, y = 1, z = -2。


不难发现,经过行变换,最终得到:单位矩阵 I (方阵的最简形式).

用矩阵形式表示这个过程:


这样自然引入方阵的


类比:

ax = b => x = a^-1 b(前提:x≠0)

Ax = b => x = A^-1 b(前提可逆)

这样方程组的解可以直接找到解析解。


方阵的逆



结论:

1. 方矩的左逆和右逆相同。简称方阵的逆矩阵。

2. 初等矩阵肯定有逆矩阵,因为初等矩阵肯定可以通过行变换变为单位矩阵。

3. 并不是所有方阵都有逆矩阵,没有逆矩阵的方阵被称为不可逆矩阵(通常情况方阵都是可逆的,不可逆矩阵是比较少的,所以被称为奇异矩阵)。



如何求解方阵的逆矩阵




方法一:转化为方程组



方法二:Gauss-Jordan 方法


其实和高斯消元法思路差不多。


思想: [ A | I ] → [I | P]。利用 I 跟踪行变换的整个过程,最终变换矩阵就是逆。


A 经过行变换变为 I,用矩阵表示,就是存在一个矩阵P,使得 P A = I,显然 P 就是我们要求的 A 的逆(根据定义)。与此同时,I 经过行变化变为:P I = P(跟踪行变换)。


方阵 LU 分解



作为行变换的副产品。如果 A 经过行变换变为 U。即 P A = U

A = P^-1 U


不难发现,变换过程采用的都是下三角矩阵,所以 P 也是下三角矩阵,P 的逆也是下三角矩阵,记为 L = P-1

这就是传说中的方阵的 LU 分解。 


任何可逆的方阵均可分解为: A = L U 


这个结论有缺陷。就是没有考虑可能需要行交换。这样就引入了置换矩阵的概念。


置换矩阵


定义:单位矩阵进行任意有限次行变换后的矩阵称为置换矩阵,通常记为 P


显然 n 阶矩阵 有 n! 个置换矩阵。比如:3 阶方阵对应如下 6 个置换矩阵。



性质:置换矩阵的逆矩阵是其转置矩阵(自行百度转置)。


LU 分解的完整形式


其中 P 为置换矩阵。


本文转载自我师弟的公众号,在此谢过!


  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值