【线性代数】【一】1. 1 线性方程组与线性组合

文章目录


前言

有段时间没更新了,准备开个新坑,写点数学基础相关的内容,计划先过一遍线性代数,再扩展到矩阵论,后续可能再写点凸优化的东西,看情况吧哈哈哈。

线性代数应该是理工科本科时期的必修课,到研究生阶段会进一步学习矩阵论。线性代数与概率论是我认为非常重要的两部分数学基础,其中的概念理论广泛存在应用于通信与AI的各个方面。因此学好线性代数是非常重要的。

------本系列参考B站的MIT线性代数视频课。


一、线性方程组的求解

1.1 直线的交点

让我们回到线性代数最初的问题------线性方程组的求解的思考上。对于一个简单的线性方程组,如下所示,由两个未知数两个方程组成:(为了省事,省去大括号了)

2 x + y = 1 2x+y=1 2x+y=1
x − y = 2 x-y =2 x−y=2

初等数学中我们学习过如何理解这个方程组的解,从行来看,可以认为两个方程分别表示了二维平面上的一条直线,那么只要这两个直线不平行,那就必然有交点,那个这个交点就会同时在两个直线上,也就是同时会满足两个直线方程。同时,由于直线只有一个交点,我们也能知道该方程组只有一个解。

现在,我们改变一下,我们可以往这个方程组中再加入几个方程,那解就变成了多条直线的交点,此时便难以直接通过平行关系来判断是否有解了。如果我们更进一步,增加几个新的变量进去,三维我们还有平面,但是更高维度呢?我们没有办法再获取像直线的交点这样形象的理解方式了。

1.2 向量的加权求和

如果我们换一个角度,从列去看这组方程呢?上述方程组会变成这样:(这里简单写成这种形式)

x ⋅ 2 , 1 + y ⋅ 1 , − 1 = 1 , 2 x\cdot2,1+y\cdot1,-1=1,2 x⋅2,1+y⋅1,−1=1,2

我们来看看这个方程的左边,它是对两个向量 2 , 1 , 1 , − 1 2,1,1,-1 2,1,1,−1做了一个加权求和,通过适当选取每个向量的权重 x , y x,y x,y,使得和向量等于右边的向量。这种对向量的加权求和,就称为向量的线性组合

由此,我们就得到了线性方程组的另一种理解,求解线性方程组就是找到一组加权系数------组合系数,用它们来把所有的向量(方程组中的每一列,即列向量)进行组合,使得他们组合的结果可以等于右边的向量。这种解释的好处在于,它是适配于任何情况的,无论增加方程的个数还是未知数的个数,这种解释仍然成立,并且足够直观。(固然用超平面也能解释其意义,但不太直观)

二、线性组合的表示范围

我们回到原本的二元方程组,从直线的交点我们知道有解的等价条件是直线不平行。那么换成列向量的线性组合的话,什么情况下一定有解呢?

高中物理与高中数学,我们都学过向量的基底,我们知道两个不共线的向量可以表示平面上的任意一个向量,这两个向量可以称为一组基底。而这种表示的方法,我们现在知道其实就是对这两个基底向量进行线性组合。那么,我们自然就有该二元方程组有解的等价条件就是两个列向量不共线。(零向量与任意向量共线)

其实我们就是在说这样一件事:这组列向量能够表示二维向量中的任意一个向量,自然也能表示等号右边的这个向量,所有方程组一定有解。而如果两个列向量共线呢?那么其实就相当于两个列向量只能起到一个列向量的效果,此时方程可以改写为:

( x + λ y ) a , b = c , d (x+\lambda y)a,b=c,d (x+λy)a,b=c,d

其中 λ \lambda λ就是两个列向量的之间变换的因子,那么这种情况是不一定有解的,只有刚好右边的向量与左边的向量共线时,才能有解。

三、线性方程组的解的分析

上述分析我们用到了高中的向量知识,如果我们再一次把方程组的未知数与方程数扩大的话,那么列向量的长度和个数也都会变化,此时我们不能再只通过两个向量的共线与否来判断了。这就是我们接下来要继续学习的知识。通过对这些列向量的分析,我们想要知道方程组什么时候有解,什么时候无解,什么时候有无穷多解,什么时候有唯一解。


总结

本文先简单从线性方程组求解的分析中,引入了线性组合的概念,提供了从列去看待线性方程组求解的全新视角。下一篇将具体地去做线性方程组的求解, 所用的便是我们一直以来所学的消元法。

相关推荐
bIo7lyA8v7 分钟前
算法可视化对教学与调试效率的影响分析的技术8
算法
hunterkkk(c++)17 分钟前
优先队列启发式最短路径快速算法(优化SPFA)-HEAP_SPFA算法
算法
SiliconGazer30 分钟前
第15届国赛满分代码解析(下)—— 运动轨迹算法、按键交互与完整状态机
算法·状态机·stc15f2k60s2·浮点运算·蓝桥杯国赛·运动轨迹、·向量分解
Navigator_Z30 分钟前
LeetCode //C - 1096. Brace Expansion II
c语言·算法·leetcode
luj_176832 分钟前
FreeDOS vs MS-DOS PC-DOS 对比解析
服务器·c语言·开发语言·经验分享·算法
笨笨没好名字1 小时前
Leetcode刷题python版第一周
python·算法·leetcode
Cthy_hy1 小时前
斯特林数:组合划分的递归经典,一二两类全解
python·算法·斯特林数
不忘不弃1 小时前
计算pi的近似值
算法
码云骑士1 小时前
12-GIL不是性能杀手(下)-绕过GIL的三种方案与决策树
算法·决策树·机器学习
一只齐刘海的猫1 小时前
【Leetcode】无重复字符的最长子串
算法·leetcode·职场和发展