您的位置:首页 > 其它

【ML学习笔记】10:机器学习中的数学基础7(张集,秩,维度,行阶梯形)

2017-12-10 19:18 471 查看
对线代的很多知识理解仍很浅薄,继续恶补。

向量的本质

在线代里,我们习惯说的向量都是指列向量。向量虽然是一列数,但是因为有次序,所以每个数在其所处的位置也会携带信息,可以理解为向量是有n个独立维度的数学对象

在线性空间(即向量空间)中,向量就是从原点出发,沿着每个维度走其数值上的距离,最终所指代的那个点,所以向量可以表示线性空间中对象的位置

空间的本质

空间是定义了某些概念,并满足某些性质的集合。空间的本质是容纳运动,这里的运动是从空间上一处到另一处的跳变,而不是我们平时说的连续的移动。

所以空间是容纳运动的对象集合,变换即是对运动的描述,线性变换也就是在描述线性空间(向量空间)中对象的运动。



矩阵的本质

根据使用的途径不同,或者关注的角度不同,矩阵也会有不同的意义。如矩阵可以表示图像,可以表示图(邻接矩阵),可以是一堆列向量组合在一起。更多的时候,在线性代数中,我们认为矩阵代表一个线性变换



上式表示一个m行n列的矩阵所表示的线性变换可以把n维线性空间中的向量变换到m维线性空间中去,映射到其中的一个向量。

在确定的线性空间中只要选定了一组确定的,那么线性空间中的每个点都可以用这组基的线性组合来表示,线性组合的权重也就是向量的每个维度上的数值。如果对象在这个线性空间中,从一个位置移动到了另一个位置,那么也就是从一个向量变换到了另一个向量,一定可以用矩阵来表示这一确定的线性变换。

显然对于不同的基,同样的运动(线性变换)将以不同的矩阵来表示,即线性变换->矩阵是一对多的关系:



即所有这些矩阵都可以表示这个线性变换,但又不是这个线性变换本身。

从另一个角度,同样的矩阵在不同的基下对应着不同的线性变换,即矩阵->线性变换也是一对多的关系:



即所有这些线性变换都可以用这个矩阵表示,但又不是这个矩阵本身。

综上,在确定好基的线性空间中,向量描述对象的位置,矩阵描述对象的运动,若要对某个已知位置的对象施加运动,则将其位置列向量左乘在该组基下代表该线性变换的矩阵。

相似矩阵

对于只在线性空间内的线性变换,也就是说如果是从n维线性空间里变换,那么变换完之后还是在n维线性空间里,代表这样的线性变换的矩阵一定是个方阵

而相似矩阵就是说两个在同一线性空间内的线性变换,根据基的选取不同而表现为不同的矩阵,矩阵A和矩阵B相似记为A~B。如果A~B,那么一定存在非奇异矩阵P,使得:



这样的变换称为相似变换,称这个可逆矩阵P是相似变换矩阵

因为这两个矩阵A和B本质表示的是同一个线性变换,只是选取的基不同而已,回顾一下特征值的定义:



显然这两个矩阵一定有同样的特征值λ,因为对特征向量的变换仅仅是在做缩放λ倍这件事,而和选取的基是哪些没什么关系!从相似变换式子上也能证明,即:



线性空间的张集

张集是给定线性空间内的一些向量组成的集合,设{v1,v2,…,vk}是线性空间V中的一些向量,那么由这些向量线性组合得到向量们,构成的V的子空间可以表示成:



称这个子空间是由这些向量张成的,称这些向量组成的集合{v1,v2,…,vk}是V的一个张集。而那个子空间内的向量全部都可以由张集内的向量线性表出,不在那个子空间内的向量,即便是在V里也不能被张集内的向量线性表出。

矩阵的列空间和行空间

m行n列的矩阵可以视为m个行向量,也可以视为n个列向量:



列空间

把所有列向量作为张集张成的子空间,即:



行空间

把所有行向量转置后作为张集张成的子空间,即:



总是记为矩阵转置后的列空间。

秩rank和维度dimension

矩阵的列秩是线性无关的列向量的最大数目,行秩是线性无关的行向量的最大数目。矩阵的行秩和列秩总是相等,故可以称为矩阵的。显然对于m行n列的矩阵,秩最大可能达到m和n中的较小者:



如果上面那个式子划等号,那么称矩阵A是满秩的。

维度

向量空间的维度,是其任一组基里面向量的个数,也就是能从向量空间中找出的极大无关组有多少个向量。

秩和维度的关系

矩阵的秩等于行秩也等于列秩,实际上也就是行/列向量张成的子空间的维度:



矩阵的行阶梯形

行阶梯形的概念

把矩阵看成一个个行向量,通过矩阵的初等行变换

①倍法变换:某行乘以一个数

②消法变换:把倍法变换后的行向量加到另一行上去

③换法变换:交换两行

化成像阶梯一样的矩阵,具体来说:

①全0行都集中在下面,非0行都集中在上面

②从左往右看,任一行第一个非零元素(若有)是1,且这个1所在列的其它元素都是0

③下面行的左边连续0的个数严格多于上面的每一行(注意,如果等于则需做消法变换)

一个例子

不妨先看第一列各个数,找一个容易做因子的那行,把其它行的第一列消成0:



然后尽可能让每行消出更多的头0:



继续:



继续,有没用的倍数关系的可以缩小了:



没用倍数关系的可以试着用消法构造再缩小:



看看每行的头1所在列有没有非0的数,把这些数消去:



最后按照头1出现的先后重排一下行,就完成了:



像一个阶梯一样,A的行阶梯型矩阵R记为:



行阶梯形的性质

因为对矩阵A的进行行初等变换,即行向量做权非0的线性组合,这种变换是可逆的线性变换,之前能被这些行向量线性表出的向量变换后也可以,而之前不能的变换后也不能。即这些行向量张成的子空间和之前能张成的子空间是一样的,所以行初等变换保持了矩阵的行空间



而列空间显然是不保持的:



初等行变换的矩阵表达

对A的初等行变换,实际上相当于左乘了一个可逆矩阵,之前说了方阵可以表示在同一线性空间内的线性变换,左乘这个方阵则方阵的阶就是A的行数:



可以从图中理解到,左乘的这个方阵里的每个数相当于初等变换的一个权(倍法变换的权),权ij对应着”最终变换到第i行时,要从原矩阵A的第j行乘多少拿出来”。

因此,不管对A做了什么样的初等行变换,包括变换到行阶梯形或者别的什么,其实都相当于对A左乘一个可逆矩阵P:



而P的逆矩阵可以把变换后的矩阵K变回之前的A,也是左乘,相当于做了之前那一套初等行变换的逆变换。从数学上去看其实是矩阵和逆矩阵的标准乘积是单位矩阵,而这个单位矩阵左乘A其实也就相当于对A做了”什么都没做”的初等行变换!
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐