线性代数是数学中的基础,也是十分重要的数学工具。在接触机器学习之后,我逐渐认识到了线性代数的重要性,矩阵运算,优化求解,都离不开线性代数的知识。同时,我也发现了自己数学基础的严重不足,急需好好重学一遍线性代数,为之后的学习打好基础。因此,“重温线性代数”这个系列就诞生了。或许大家会觉得这个系列的内容稍微基础了点,但学习就是如此,一遍又一遍,脚踏实地,温故知新,每次学习都会有新的收获。

离开了大学的课堂,但还好现在有琳琅满目的网络公开课课程。我选择学习的是网上颇受赞赏的MIT "Introdution to Linear Algebra"课程,由Gilbert Strang主讲。参考书目为Strang编写的《Introduction to Linear Algebra》4th edition。目前为止,我觉得这门课给我提供了不少新的有趣的思路,是我之前学习线性代数的时候没有思考过的,值得一学。

——————————————————————————————————————————————————————————————————

本文涉及的内容是课程视频的前5课,对应的是书中的前两章Introduction to Vectors 和 Solving Linear Equations。由于这两章的内容最为基础,我不会详细地介绍书的内容(我也没看),只是根据课程视频总结一些有趣的points。

这一部分让我印象最深的有两点:

  1. 如何看待矩阵相乘AX:AX 可以看作矩阵A中列向量的组合(各列向量的组合权重即为x中各项的值);
  2. 如何看待消元法:消元法可以看作将矩阵A分解为 A = LU。

以下慢慢道来。

1、线性组合

       我们先来看以下一个简单的包含两个未知数,两个方程的方程组:
       
        该方程组可以通过矩阵表示:AX = b。其中  为系数矩阵,X为包含未知数的向量,b也是一个向量。
        我们可以有两种角度对这个方程组进行几何解释。第一种是按照行的角度来看(Row Picture),即逐个看方程组中的每个方程。对于二元方程组而言,很明显,每一个方程代表着一条直线,而两条直线的角点则是方程组的解。
       值得关注的是另一种解释方式,即以列向量的角度来看(Column Picture)。我们可以将方程组写成以下形式:
        
       
       可以清楚地看到,AX实际上将A中的两列按照x, y的权重进行组合,即AX is a combination of colums of A。因此,求解该方程组,即使在寻找一个合适的权重系数组合,使其组合结果等于右侧向量的值。若用向量图来表示则更加直观:
       线性组合是理解矩阵乘积的新思路,也是课程中老师一直在强调的内容,值得再三回味。

2、置换、转置、逆

       置换(permutation)包括行变换和列变换。对于矩阵思路来说,行变换可以通过对矩阵A左乘一个置换矩阵实现,相对的,列变换可以通过对矩阵A右乘一个置换矩阵实现。置换矩阵P实际上就是一个行(列)重新排列的的单位阵,比如置换矩阵第一行和第三行的置换矩阵为:
         
        置换矩阵有以下有趣的性质:,即

转置的定义相信大家十分清楚。所谓对称矩阵即是其转置等于其本身的矩阵。大家想想有什么方法可以快速得到一个对称矩阵呢?以下提供一种有趣的方法:矩阵  一定是一个对称矩阵,其证明也非常简单。

如果有:,我们则说为矩阵A的逆矩阵。矩阵A的逆矩阵不一定存在,以下便是其中一种特殊情况:如果能够找到一个非零向量x使Ax = 0成立,则矩阵A不可逆。利用反证法,我们将等式两边同时左乘即证明该结论。

求解一个可逆矩阵A的逆矩阵的基本方法是Gauss-Jordan方法,即将矩阵  通过消元法得到 ,则矩阵B则为矩阵A的逆矩阵。证明方法如下:

设消元矩阵为E,则有

因此 ,可得

所以 。   证毕。

一个小性质:

3、消元法

消元法是求解线性方程组的基本方法,通过消元得到一个上三角矩阵(对角线一下元素都为零)U,然后通过回代得到各个未知数的解。消元法的具体方法在此不再叙述,但这里我们用矩阵的思想重新解读一下消元法。

需要注意的是,当使用消元法得到主元为零时(主元即对角线上的元素),消元法将会失效。在某些情况下,我们可以通过行交换消除这种主元为零的情况,这样消元法仍然是有效的。我们先考虑不需要进行行交换,消元法仍然有效的情况。

消元法实际上就是在作行变换:

然而实际上,我们有一种更加合理的方式对此进行理解,即将A进行分解得:

其中L为下三角矩阵,U为上三角矩阵。结合以上两个式子,我们可以看到L其实是E的逆:。通俗的理解该等式,矩阵A可以通过消元得到的上三角阵U通过消元的逆操作L得到。

使用L的好处是:消元时的乘数可以直接反映在L当中(multipliers go directly into L),我们举个例子来充分理解上述问题。我们对以下矩阵进行消元:

按照常规方法,我们需要两步:1、用第二行减去3倍的第一行;2、用第三行减去2倍的第二行。得到上三角矩阵:

采用矩阵的思路,我们可得消元矩阵分别为:

                    

而L矩阵则为:

可见L中只反映了消元乘数3和2,比E更具有合理性。

对于需要作行交换的情况,上述分解式即变为:,其中P为置换矩阵。

4、小结

        本文的内容的确比较基础,也比较简单,但其中的两个重点还是值得玩味的。将矩阵乘法看作矩阵中向量的线性组合,既有着非常直观的几何意义,也揭露了矩阵运算的实质。而利用矩阵分解的思路解释消元法则能够用矩阵的思路对消元操作进行理解。接下来的一章将开始接触到线性代数的“核心”:向量空间和子空间,相信会有更多的收获和更深刻的理解,值得期待!

重温线性代数(1)——线性组合相关推荐

  1. 重温线性代数(3)——正交、投影

    线性代数是数学中的基础,也是十分重要的数学工具.在接触机器学习之后,我逐渐认识到了线性代数的重要性,矩阵运算,优化求解,都离不开线性代数的知识.同时,我也发现了自己数学基础的严重不足,急需好好重学一遍 ...

  2. 【第二章 线性代数之 线性组合、张成的向量空间】3Blue1brown

    文章目录 2.线性组合.张成的向量空间 2.1线性组合 2.2基向量 2.3向量空间 2.3线性相关 2.3向量与点 2.线性组合.张成的向量空间 2.1线性组合 在二维空间中有两个特殊的向量,就是图 ...

  3. 线性代数:线性组合学习笔记

    线性组合 线性系统是否有解,就是看向量b能否由矩阵A中的向量线性组合. 两个非平行的向量,可以组合出平面内任一向量.三个非平行向量不一定能组合出三维空间中的任一向量.三个线性无关的向量可以组合出三维空 ...

  4. 机器学习之重温线性代数

    目录 一.矩阵的基本概念和意义 1.一种线性变换 2.加法与数乘 3.矩阵的乘法 二.矩阵运算在深度学习中的应用(初级) 1.数字图像识别 2.矩阵的迹,矩阵的转置,对称矩阵(协方差矩阵) 1.矩阵的 ...

  5. 【线性代数】线性组合,线性相关与生成子空间(linear combination, linear dependency span)

    首先,几个前提 向量在代数上表示一组数的组合 向量在空间中可以表示一个点 向量在空间中可以表示一个向量 走起! 对于代数方程 Ax=bAx=b\mathbf {Ax} = \mathbf b 而言,我 ...

  6. 线性代数 —— 线性组合与线性表出,线性相关与线性无关

    线性代数入门--线性组合与线性表出,线性相关与线性无关 线性组合与线性表出 相关例题 --"xxx能否由xxx线性表出" 线性相关与线性无关 定义 含义 相关例题 线性组合与线性表 ...

  7. 1.2 二维三维空间向量组的线性组合

    二维三维空间向量组的线性组合 向量的基本运算法则,构成了整个线性代数的基础.在物理学中,特别是求系统平衡时,经常碰到这类问题,给定若干矢量,这些矢量和能与某特定矢量平衡吗?这就需要研究向量组的线性组合 ...

  8. 线性代数1:向量、线性组合、张成的空间和基

    课程地址:[官方双语/合集]线性代数的本质 - 系列合集 目录 一.什么是向量 1. 向量的表达方式 2. 向量的加法 3. 向量的数乘 二.线性组合.张成的空间和基 1. 坐标系的基 2. 线性组合 ...

  9. 【机器学习|数学基础】Mathematics for Machine Learning系列之线性代数(10):向量组及其线性组合

    文章目录 前言 往期文章 4.1 向量组及其线性组合 定义1 定义2 定理1 定义3 定理2 推论 举例 例 1 例2 定理3 小结 结语 前言 Hello!小伙伴! 非常感谢您阅读海轰的文章,倘若文 ...

最新文章

  1. Web前端面试自我介绍对话技巧注意事项
  2. 如何打造BCH使用的刚性需求?
  3. halcon与c#联合编程的方法
  4. java中var是什么意思_js中的var是什么意思
  5. AcWing之从尾到头打印链表
  6. 打通钉钉+WebHook:日志服务告警升级
  7. 详解vue动画的封装
  8. JWT跨域身份验证解决方案
  9. windows下bat批处理实现守护进程
  10. rm: cannot remove ‘malloc.pro/.user.ini‘: Operation not permitted
  11. 16.docker ps
  12. 阿里巴巴JAVA开发手册资源分享
  13. 201912-3 化学方程式 的一种解法
  14. C语言卡路里程序,燃烧app的卡路里--app瘦身之路
  15. 九九乘法表居中c语言,excel图文教程:九九乘法表的制作方法,你会哪种?
  16. Python编程小记:基本语法
  17. 如何使用VLC媒体播放软件下载网页上视频?
  18. 阐明量子力学到底为何物?
  19. 鲜花线上销售管理系统的设计与实现
  20. Word中公式变量解释时破折号对齐方法

热门文章

  1. 音质媲美入耳式耳机,设计时尚续航出色,南卡Runner Pro 4体验
  2. 击穿线程池面试题:3大方法,7大参数,4种拒绝策略
  3. n*n蛇形方阵的输出
  4. inc si指令的作用_亲水作用色谱(HILIC)(二):可选的固定相有哪些?
  5. Win11电脑的色盲模式如何开启?
  6. 鸿蒙系统深度解读(三)
  7. 深入产品线的配置管理
  8. 怎么删除淘宝足迹 淘宝足迹多久才能形成
  9. ARCGIS清晰的地图,底图,道路街景图
  10. python资源管理器安装_Python学习笔记-Python安装