带你重拾线性代数

来源:互联网 发布:可可网络验证破解 编辑:程序博客网 时间:2024/05/02 03:09

声明:

  1. 本文所有内容均来自笔者在学习中所做总结,难免会有错误,谨慎参考;
  2. 本文所有内容的整理逻辑以及应用范围均只局限于机器学习相关内容,请勿延伸至其他领域;
  3. 本文内容会不定期更新,总结,修改,排版,仅根据笔者所遇到的问题进行相关部分的完善;
  4. 若发现错误,还望不吝赐教(留言,邮箱均可);
  5. 文章内容可转载,但请注明出处;

说明:

  1. 文中所有涉及到的矩阵,若未做特殊说明均为方阵

一、向量的表示方法

1.1 引言

在二维平面中,我们都知道可以用有序实数对来表示一个向量,例如:u=4,2。它表示一条从原点出发,到达点(4,2)的有向线段。如下图所示:

这里写图片描述

但是一个向量为什么可以这样表示呢?它到底有着怎样的含义?

1.2 基

从1.1我们知道,一个向量可以表示成如(4,2)这样的形式。但这是怎么来的呢?如上图所示,我们将向量u分别在x轴和y轴上做投影,我们发现此时我们得到了4,2这两个数,这是巧合么?不过这当然不是。其原因是因为默认情况下,我们都选择了i=(1,0)T,j=(0,1)T来当作我们的基向量;而向量u=(4,2)所表示的含义就是,先i的方向移动4个单位,再向j的方向移动2个单位,这样便得到了向量(4,2),如下图:

这里写图片描述

因此,我们称u=(4,2)Ti,j的线性组合,即u=4i+2j。同时,由于i,j的模长为1,且相互垂直,我们称其为标准正交基

但是,如果我们选择其它不同的基向量,又会是怎么样呢?

二、矩阵与矩阵乘法

先给出结论:矩阵的本质是表示某个线性变换的操作步骤,而矩阵的乘法就是实施这个线性变换。

2.1 矩阵的概念

上一章我们谈到了向量,知道向量其实是一组(线性无关)基的线性组合。而我们把由多个向量拼接在一起的m行n列的矩形表格称之为矩阵,若m=n,则称之为n阶矩(方)阵。

2.2 矩阵及矩阵乘法的本质

矩阵的本质是什么?下面我们通过两个例子来说明。

例1.
我们知道在平面直角坐标系中,我们默认用的基向量分别是i=(1,0)T,j=(0,1)T,如下图所示:
这里写图片描述

现有向量α=(32,32),矩阵

U=12121212

则:β=UαT=[0,3]T。我们发现,向量β是向量α逆时针旋转45度之后的结果。那么矩阵U的作用就是将原有的坐标系旋转45度吗?答案是肯定的。
矩阵U告诉我们,他的作用是将原有的坐标系π1逆时针旋转45度,且旋转之后的坐标系π2的基向量,在π1中的表示结果分别为:
i^=(12,12)T,j^=(12,12)

如下图所示:
这里写图片描述

上面说到将坐标系π1旋转45度后,α变成了β,且向量βπ1中的表示方法为(0,3)T,那么在π2中的表示方法又是什么呢?明显,βπ2中,分别向i^,j^投影即可得到表示方式:

i^Tj^T[03]=12121212[03]=3232

总结就是:π1中的向量α,经过线性变换U作用之后,变成了向量β;且变换后的向量βπ1中的表示方法为(0,3)T,在π2中的表示方法为(32,32).

例2.
现有向量α=(1,22)T,矩阵U=101212,w=Uα=(3,2)T,UTw=(3,52),经过变换后的向量为β,则有:

π1中的向量α,经过线性变换U作用之后,变成了向量β;且变换后的向量βπ1中的表示方法为(3,2)T,在π2中的表示方法为(3,52)

注:基向量为单位向量

随便提一句,在PCA中,不就是把α直接投影到π2中么;所以PCA的首先就要求出表示π2的空间U,然后直接将α投影到π2中。

从以上我们可以知道:

(1). 线性变化是操纵空间的一种手段,而这种手段用矩阵来描述;
(2). 你所使用的变换矩阵(U)代表的是变换后的坐标系(π2)的基向量在当前坐标系(π1)下的表示方式;
(3). 矩阵U既是一种对线性变换的描述,(列向量)也是一组基向量

三、行列式

  1. 方阵行列式的绝对值表示原空间经过该变换后空间被压缩的倍数;

  2. 秩表示空间被压缩后剩下的维度(列空间);

四、特征向量与特征值

设A是n阶矩阵,λ是一个数,若存在n维非零列向量ξ,使得

Aξ=λξ(ξ0)(4.1)

则称λ是A的特征值,ξA的对应于λ的特征向量.

有没有觉得奇怪?一个矩阵乘以一个向量,怎么他就等于一个数乘以这个向量了。想要回答这个问题,我们就得回想矩阵的本质了。从前面我们可以知道,矩阵的本质就是表达了一系列线性变换的信息,比如旋转,压缩等等;并且最后通过矩阵的乘法来实现这一线性变换。

而等式(4.1)所表示的含义就是:原空间π1中存在向量ξ,在经过A这个矩阵的线性作用后ξ这个向量仅仅只是在长度上发生了改变,变成了原来的λ倍,所以才有了(4.1)这个等式

下面看个例子:

已知A=[1022],则很容易可以计算出A所对应的坐标系π2(单位化)的基向量为i^=(1,0),j^=(1212),且A的特征值特征向量分别为:

λ1=1,ξ1=(1,0)T;λ2=2,ξ2=(2,1)T

我们先不画图,通过求解出来的信息,我们就能直接得出以下信息:
(1). 坐标系π1下存在两个向量ξ1,ξ2
(2). 这两个向量在通过A线性变换后仅仅只是在长度上发生了变化;
(3). 特征值λ的大小决定向量被拉伸的倍数;
(4). 向量ξ1伸长1倍以后,在π1中的表示依然是(1,0),在π2中的表示为ATξ1=(1,12)
(5). 向量ξ2伸长2倍以后,在π1中的表示是Aξ2=(4,2),在π2中的表示是ATξ2=(4,62)

下面我们通过画图来验证:
这里写图片描述
其中黑色坐标系为π1,红色坐标系为π2

随便说一句:这也就是在PCA中,要选择前K个最大的特征值所对应的特征向量的原因,因为这样被拉伸的长度更大,样本点才会更离散,方差才会更大。

原创粉丝点击