一文读懂矩阵的秩和行列式的意义

作者: AI研习社 2017-07-18 10:38:27

 作为一个工科的学生,我们长期以来会使用比如像是矩阵以及行列式这些在线性代数上的知识,在这篇文章中,我想来聊一聊这些问题,即什么是面积,以及什么是面积的高纬度的推广.

1 什么是面积?

对于什么是面积,大家可能首先就会想到我们生活中常用的长*宽么?真的是这样么,其实在这里我们所谈论的面积,其实是欧几里得空间几何面积的基本的单位:平行四边形的面积.关于平行四边形的面积的定义,几何上所说的就是相邻两边边长乘以他们之间的夹角的正弦.

但是当我们面对到一些更一般的情形和更高维度的数理问题的时候,我们就有必要把这个面积的定义推广开来.首先我们应当要注意的是.面积是作为一个标量,他是来自于相邻的两个边的两个矢量相乘的结果,因此来时,我们需要把面积看作为一种映射的关系.

一文读懂矩阵的秩和行列式的意义

这里的V可以看做一个适量,V*V代表的是两个适量的有序对,那么f自然而然就是所求的面积.

现在我们将来证明这个映射是一个线性的映射,请坐稳扶好:

现在我们举一个最简单的例子,现在我们假设***个矢量是(1.0),第二个矢量是(0,1),也就是说两个矢量分别是X轴和Y轴上的单位为正的单位向量,那么由这两个矢量构成的四边形,这个四边形其实就是一个正方形,根据面积的定义,其实就是*宽=1*1=1

一文读懂矩阵的秩和行列式的意义

因此我们可以得到:

一文读懂矩阵的秩和行列式的意义

现在假设把***个矢量缩放a倍,这个四边形的面积也会变为相对应的a倍,这样的面积也将会变为原来的a倍,把第二个矢量缩放为b倍,这样的面积也会变为原来的b倍,如果这个时候我们同时对两个向量缩放为ab倍,这样的话面积也会变为原来的ab倍,这说明,面积的映射对于其他的两个操作数的矢量的标量积是呈现出各自线性的,如下:

一文读懂矩阵的秩和行列式的意义

其实在实际的情况下,面积的映射对于其操作数(矢量)的矢量加法也是线性的.因为矢量加法的操作本身就是一个线性的,那么他的面积的映射其实也就是一个线性的映射.现在我想通过几个例子,来解释下映射加法线性的一些后果.

一文读懂矩阵的秩和行列式的意义

两个共线矢量所张成的平行四边形是一条线,因此来说这个面积是0.现在假设面积映射是关于一个适量加法的线性映射,那么我们有以下的结果

一文读懂矩阵的秩和行列式的意义

其实这里其实用到了一个理论:

一文读懂矩阵的秩和行列式的意义

也就是说,在交换相互垂直操作数适量的顺序后,面积的映射变成一个负值.到底是正还是负取决于你认为的定义.一般情况下,我们把X轴的矢量放在前边,Y轴的矢量放在后边,从X轴到Y轴张成的一个平行四边形的面积,我们把这个符号一般看作为正号.

2 三维空间里的应用

在三维空间中,我们一般是利用的右手定则进行实验.如果以X轴的正方形为头部,Y轴的正方向为尾部.右手定则告诉我,纸面方向向外的方向是面积的正方向.如果反过来,纸面向内的方向就是该面积的正方向.与所规定的正负号的方向是相反的.现在这样来看正负号的几何的意义就比较明显了

现在我们假设用平面内的任意两个矢量所张成的平行四边形的面积,现在用公式来进行表示:

一文读懂矩阵的秩和行列式的意义

在这里,其实我们不难看到,所谓的面积其实就是一个2*2的矩阵的行列式:

一文读懂矩阵的秩和行列式的意义

就跟下边的图所示的一样:

一文读懂矩阵的秩和行列式的意义

其实我们的***行即使我们的***个行向量(a,b),第二行就是第二个行向量(c,d),再或者是***列是***个列向量(a,b)的转秩,第二个列自然就是第二个列向量(c,d)的转秩.当然这么做还是取决于我们是把矢量写成行向量还是列向量的形式表达.

3 行列式的性质的计算

在上述的推理中,我们可以很容易的发现,行列式的值是把与行列式的矢量写成列向量的横排还是行向量的竖排的方式是无关的.这也就是为什么,在计算行列式的时候,行列的地位是对等的.并且我们还应当注意到,根据上述的分析,交换向量的顺序,面积是负号的原因.这也就是为什么行列式中,交换列向量或者行向量一次,就应当要取一次负号的原因.另外行列式其他的计算的性子,其实都一一反映在面积映射的线性性当中.

所以,综上所述,行列式实际上本身就是一个关于面积的形式的推广.其实就是在给定一组基的情况下,N个向量张成的一个N维定义的广义四边形的体积,其实这就是行列式本质的一个含义.

4 行列式的一个推广

根据上边的结论,我们其实很容易的推广到三维体积的一个计算:

一文读懂矩阵的秩和行列式的意义

在这里我们应该要注意到,行列式的定义,其实是每一行各取一个不同列的元素的一个乘积并且符号和所谓的逆序性有关的.什么是逆虚性?所谓逆序性,其几何意义就是在规定了一个正方向之后(比如从1,2,3,4,5...N这个顺序定义为正号),交换任意一对数都取一次负号。这样的性质我们在上述的面积函数中已经有所看到,实际上体积,更高维度的广义体积,也有正方向之说,只不过已经难以用右手法则(以及叉乘)来形象说明罢了。右手定则的局限性也是将高维面积推广成行列式表达的一个动机之一。

对于这样交换任意一堆指标的操作就可以改变符号的性质,其实我们就叫做反对称性.这个时候,如果你善于思考,你会想为什么要取不同行不同列元素的乘积.因为如果有任意两个元素是同行同列的,那么他们交换他们的列指标,乘积不变但是符号要相反.因此乘积必须要是0,这也就是在行列式值中不予体现的原因之一.

行列式的定义其实是比较的冗杂的,其实就是来自于广大的面积映射的反对称性,其实面积映射是一个2维的,把二维任意拓展到多维,我们其实就可以发现R维的形式和R*R的行列式的形式是完全一致的.

其实在这里,我们可以把各种维度所代表的东西来总结下,二维所代表的是平面内的面积,三维自然而然其实就是三维空间内的体积,四维其实就是四维空间内的超体积.依次类推.在上边的推理中我们发现,这些矢量给定的基坐标写出的矩阵必然是方阵,矩阵的行列式对应的面积或者是体积.这样的推广证明相信在任意一本的线性代数书中都会看到,我只是说了人话而已.

5 行列式和矩阵的逆

我们知道很多定理,比如行列式为0的矩阵,不可逆,行列式不为0的矩阵,可逆,这个时候我们不禁要问,代表面积的行列式,是如何和线性变化的可逆性联合在一起的.

这个时候我们就应该要理解线性变化的几何意义.现在我来陈述一下:

如果我们把空间中一组线性无关的矢量都写成列向量的形式,那么他们所张成的N维体体积不为零,根据上面的分析,其值由行列式给出。向量经过线性变换A变换之后,得到的新向量形式如下:

一文读懂矩阵的秩和行列式的意义

注意到A是一个N*N的矩阵,向量是列向量。

变换前,N维体的体积是:

一文读懂矩阵的秩和行列式的意义

变换之后,N维体的体积是(注意到,第二个等式实际上说明了几何意义是如何定义矩阵乘法的,也就是N*N矩阵A和另外一个N个列向量组成的N*N矩阵的乘法):

一文读懂矩阵的秩和行列式的意义

A的行列式如果不为零,则代表这个变换后,N维体的体积不是NULL。又结合线性无关与体积的性质,我们可以说:

如果A的行列式不为零,那么A可以把一组线性无关的矢量,映射成一组新的,线性无关的矢量;A是可逆的(一对一的映射,保真映射,KERNEL是{0})

如果A的行列式为零,那么A就会把一组线性无关的矢量,映射成一组线性相关的矢量

如果A的行列式为负数,那么A将会改变原N维体体积的朝向。

从线性无关到线性相关,其中丢失了部分信息(例如坍缩成共线或者共面),因此这个变换显然就是不可逆的。线性是否无关和所张成N维体的体积有直接关系,这个体积值又与A的行列式有关。因此我们就建立了A的行列式与其是否可逆的几何关系。

举例说明,我们假设A是一个3维的矩阵。如果映射前,有一组三个线性无关的矢量,我们知道它们张成的体积不是0;经过映射后,他们对应的新矢量也能张成一个平行六面体,那么这个平行六面体的体积就是原体积乘以A的行列式。

显然,如果A的行列式是0,那么变换后的新“平行六面体"的体积将不可避免的也是0。根据上文的结论,我们有:变换后的这一组新矢量线性相关。

结论:

线性变换A的行列式是否为零,就代表了其映射的保真性,也即,能不能把一组线性无关的矢量变换成另一组保持无关性的矢量。

6 秩

但是有的时候,虽然行列式A不能把空间一组数目***的矢量线性无关,但是它能够保证那个一组少数目的矢量让其线性无关,这个数目矢量往往小于线性空间的维度,这个数目就叫做线性变换A的秩

比如:一个秩为2为3*3的矩阵A,因为秩小于3,那么任何一个3维六面体经过他的变化后,体积变为0,退化一个面,但是仍然存在一个面积不为0的面,在变换以后还是一个非零面积的面

所以说所谓的一个线性变换的秩,无非就是变化后,还能保持一个非零体积的几何形状的***的维度.

通过上边理解了秩,行列式,可逆性的几何意义,我们就能随意的构造一个线性变化的A,使得他要么保全所有的几何体,要么降维成为特定维度特定结构的几何体,压缩成为更低维度的几何体,所以说,可以看作为一个”降维打击”

更高维度的推理,希望有兴趣的小伙伴可以自己去证明,不明白的问题亦可以在文章下面评论.希望能够和大家多多交流,多谢指教.

本文转自雷锋网,如需转载请至雷锋网官网申请授权。本文作者夏洪进,原载于作者的个人博客

人工神经网络 矩阵 模型
上一篇:基于 boosting 原理训练深层残差神经网络 下一篇:深度学习训练时 GPU 温度过高?输入这几行命令就能迅速降温
评论
取消
暂无评论,快去成为第一个评论的人吧

更多资讯推荐

机器学习中的模型漂移(Model Drift)

模型漂移的本质意思是指目标变量和自变量之间的关系随时间而变化。由于这种漂移,模型会变得不稳定,并且随着时间的推移预测会不断出错。

不靠谱的猫 ·  2020-05-15 07:47:01
性能不打折,内存占用减少90%,Facebook提出模型压缩方法Quant-Noise

最近,来自 Facebook AI 的研究者提出了一种新的模型量化压缩技术 Quant-Noise,让神经网络在不降低性能的前提下,内存占用减少 90% 以上。

佚名 ·  2020-04-28 15:16:14
机器学习中的召回、精确、准确,究竟是什么指标?

在之前的文章当中我们已经介绍了好几个模型了,有朴素贝叶斯、KNN、KMeans、EM还有线性回归和逻辑回归。今天我们来和大家聊聊该怎么评估这些模型。

承志的算法课堂 ·  2020-04-24 09:35:46
神经正切,5行代码打造无限宽的神经网络模型

本文是对 ICLR 2020 论文《NEURAL TANGENTS: FAST AND EASY INFINITE NEURAL NETWORKS IN PYTHON》的解读,作者来自谷歌。

张大倩 ·  2020-04-20 13:45:32
如何解决机器学习树集成模型的解释性问题

前些天在同行交流群里,有个话题一直在群里热烈地讨论,那就是 如何解释机器学习模型 ,因为在风控领域,一个模型如果不能得到很好的解释一般都不会被通过的,在银行里会特别的常见,所以大多数同行都是会用 LR 来建模。

SAMshare ·  2019-10-22 10:12:45
机器学习转化为生产力,警惕这4个常见陷阱!

几乎每个人都想在他们的业务中引入机器学习,但是这些人也遇到了一个大问题:让模型可持续发展十分困难,尤其是在云架构的基础上。medium上一位博主也指出了这个问题,并提出了将机器学习模型投入生产的4个常见陷阱。

大数据文摘 ·  2019-10-13 16:53:51
常用的模型集成方法介绍:bagging、boosting 、stacking

本文介绍了集成学习的各种概念,并给出了一些必要的关键信息,以便读者能很好地理解和使用相关方法,并且能够在有需要的时候设计出合适的解决方案。

机器之心 ·  2019-05-16 09:28:12
机器学习中如何处理不平衡数据?

准确率高达 96.2% 的模型跑在真实数据上却可能完全无法使用。一个可能的原因是:你所使用的训练数据是不平衡数据集。本文介绍了解决不平衡类分类问题的多种方法。

机器之心 ·  2019-02-25 08:35:22
Copyright©2005-2020 51CTO.COM 版权所有 未经许可 请勿转载