数学 - 线性代数导论 - #7 向量空间的两种构成方式:列空间与零空间

本文主要是介绍数学 - 线性代数导论 - #7 向量空间的两种构成方式:列空间与零空间,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

线性代数导论 - #7 向量空间的两种构成方式:列空间与零空间

 

在#6中,我们介绍了向量空间的概念,提及了列空间的定义。本节课中,我们将通过对两种特殊向量空间——列空间与零空间的介绍,理解向量空间的两种构成方式。

首先是列空间C(A)。

C(A)指的是由矩阵A中的列向量的线性组合构成的空间。

C(A)是向量空间吗?显然是,因为这个空间构筑的方式就是向量的线性组合,它“天生”就符合向量空间的定义。

这个向量空间C(A)是Rn的子空间,其中n是维数也即每一个列向量的元素数目也即矩阵A的行数。

C(A)有什么用处呢?C(A)与向量b之间的关系可以说明Ax=b的解的存在性。

在#1我们就已经提及,列空间是我们从几何视角研究“Ax=b”的解x的一个基础性概念。所有的解x,也即对A进行线性组合的系数集合,应该能使组合的结果为预设的b。

换言之,对于特定的A,不是任意的b都能使Ax=b有解。只有当向量b包含于C(A)时,Ax=b才有解。

我自己原有的想法中有一个谬误:对于一个含有m个方程n个未知数的线性方程组,只要m<=n,方程组就一定有解?

显然不一定,各个方程之间不能够“相互冲突”。

翻译为线性代数的语言,A中的每一列必须“线性无关”。

线性相关的定义在高数(上)中已经提到了,不再赘述。从列空间的角度来看,如果去掉某一列之后,列空间不发生变化,也即这一列在构筑列空间的过程中没有“贡献”,那么这一列与其它列中的某一列(可能直接成倍数关系)或某两列(可能为两列的和或其它线性组合)线性相关。

矩阵A中的n列线性相关时,C(A)会比相同列数、线性无关的矩阵的列空间更小(也就是列空间无法充满Rn),换言之,使方程有解的b的数量也就更少(Rn中的b不一定位于子空间C(A)中)。故这种情况下对于任意的b方程组不一定有解。

 

其次是零空间N(A)。

N(A)是所有满足“Ax=0”的向量构成的空间。

N(A)是向量空间吗?我们使用封闭性检验来检查。

从N(A)中任取两个元素向量v和向量w,已知Av=Aw=0。

对于数乘结果kv,Akv=kAV=0,故kv仍在N(A)中;

对于加法结果v+w,A(v+w)=Av+Aw=0,故v+w仍在N(A)中。

综上,N(A)是向量空间。

N(A)使用消元算法求得,具体步骤将在之后的学习中介绍。

 

列空间和零空间都是向量空间。但是,这两种向量空间是从相反的方向生成的:

1.列空间:已有向量的线性衍生,这也是上一课#6中我们的思路;

2.零空间:求解出所有符合线性关系式的向量再进行合并,这将是我们进一步讨论Ax=b的思路之一。

它们又是统一的。所谓的向量空间,可以抽象为通过线性关系联系的集合。符合关系与否,等价于在空间内与否。

事实上,抛开向量空间的限定,所有由向量构成的空间,都具有这两种构成思路。

比如,我们讨论所有满足Ax=b的向量x构成的空间。

它是向量空间吗?如果b不是零向量,那显然不是。

那它是什么空间呢?这个问题也将在之后的学习中介绍。

 

线性代数的学习逐渐进入深水区,附上Prof. Strang的金句供君一笑:

转载于:https://www.cnblogs.com/samaritan-z/p/8385639.html

这篇关于数学 - 线性代数导论 - #7 向量空间的两种构成方式:列空间与零空间的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/279432

相关文章

Python实现终端清屏的几种方式详解

《Python实现终端清屏的几种方式详解》在使用Python进行终端交互式编程时,我们经常需要清空当前终端屏幕的内容,本文为大家整理了几种常见的实现方法,有需要的小伙伴可以参考下... 目录方法一:使用 `os` 模块调用系统命令方法二:使用 `subprocess` 模块执行命令方法三:打印多个换行符模拟

RabbitMQ消息总线方式刷新配置服务全过程

《RabbitMQ消息总线方式刷新配置服务全过程》SpringCloudBus通过消息总线与MQ实现微服务配置统一刷新,结合GitWebhooks自动触发更新,避免手动重启,提升效率与可靠性,适用于配... 目录前言介绍环境准备代码示例测试验证总结前言介绍在微服务架构中,为了更方便的向微服务实例广播消息,

SpringBoot中六种批量更新Mysql的方式效率对比分析

《SpringBoot中六种批量更新Mysql的方式效率对比分析》文章比较了MySQL大数据量批量更新的多种方法,指出REPLACEINTO和ONDUPLICATEKEY效率最高但存在数据风险,MyB... 目录效率比较测试结构数据库初始化测试数据批量修改方案第一种 for第二种 case when第三种

Linux线程之线程的创建、属性、回收、退出、取消方式

《Linux线程之线程的创建、属性、回收、退出、取消方式》文章总结了线程管理核心知识:线程号唯一、创建方式、属性设置(如分离状态与栈大小)、回收机制(join/detach)、退出方法(返回/pthr... 目录1. 线程号2. 线程的创建3. 线程属性4. 线程的回收5. 线程的退出6. 线程的取消7.

golang程序打包成脚本部署到Linux系统方式

《golang程序打包成脚本部署到Linux系统方式》Golang程序通过本地编译(设置GOOS为linux生成无后缀二进制文件),上传至Linux服务器后赋权执行,使用nohup命令实现后台运行,完... 目录本地编译golang程序上传Golang二进制文件到linux服务器总结本地编译Golang程序

Linux下删除乱码文件和目录的实现方式

《Linux下删除乱码文件和目录的实现方式》:本文主要介绍Linux下删除乱码文件和目录的实现方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录linux下删除乱码文件和目录方法1方法2总结Linux下删除乱码文件和目录方法1使用ls -i命令找到文件或目录

Linux在线解压jar包的实现方式

《Linux在线解压jar包的实现方式》:本文主要介绍Linux在线解压jar包的实现方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录linux在线解压jar包解压 jar包的步骤总结Linux在线解压jar包在 Centos 中解压 jar 包可以使用 u

Jenkins分布式集群配置方式

《Jenkins分布式集群配置方式》:本文主要介绍Jenkins分布式集群配置方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录1.安装jenkins2.配置集群总结Jenkins是一个开源项目,它提供了一个容易使用的持续集成系统,并且提供了大量的plugin满

Java通过驱动包(jar包)连接MySQL数据库的步骤总结及验证方式

《Java通过驱动包(jar包)连接MySQL数据库的步骤总结及验证方式》本文详细介绍如何使用Java通过JDBC连接MySQL数据库,包括下载驱动、配置Eclipse环境、检测数据库连接等关键步骤,... 目录一、下载驱动包二、放jar包三、检测数据库连接JavaJava 如何使用 JDBC 连接 mys

Ubuntu如何分配​​未使用的空间

《Ubuntu如何分配​​未使用的空间》Ubuntu磁盘空间不足,实际未分配空间8.2G因LVM卷组名称格式差异(双破折号误写)导致无法扩展,确认正确卷组名后,使用lvextend和resize2fs... 目录1:原因2:操作3:报错5:解决问题:确认卷组名称​6:再次操作7:验证扩展是否成功8:问题已解