【线性代数】【一】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\cdot[2,1]+y\cdot[1,-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 λ就是两个列向量的之间变换的因子,那么这种情况是不一定有解的,只有刚好右边的向量与左边的向量共线时,才能有解。

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

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


总结

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

相关推荐
芒果de香蕉皮21 分钟前
mavlink移植到单片机stm32f103c8t6,实现接收和发送数据
stm32·单片机·嵌入式硬件·算法·无人机
徐子童26 分钟前
二分查找算法专题
数据结构·算法
小王子102433 分钟前
数据结构与算法Python版 二叉查找树
数据结构·python·算法·二叉查找树
灰勒塔德1 小时前
Linux-----进程处理(文件IO资源使用)
linux·运维·算法
xiaoshiguang31 小时前
LeetCode:404.左叶子之和
java·算法·leetcode
计科土狗1 小时前
前缀和与差分
c++·算法
凭君语未可2 小时前
详解归并排序
算法·排序算法
simple_ssn2 小时前
【蓝桥杯】走迷宫
java·算法
simple_ssn2 小时前
【蓝桥杯】奇怪的捐赠
java·算法
云云3212 小时前
云手机:Facebook多账号管理的创新解决方案
服务器·线性代数·安全·智能手机·架构·facebook