欧几里得
转载自 http://zhangpengfei.tech/2018/11/19/hello-2015/
线性代数(Linear Algebra)
本科的时候也学过线性代数,但是当时只是学了一遍,或者说只是为了考试学了一遍,当时从来没有问过学来干嘛,不过当我开始系统地学习PCA(Principal component Analysis)
及SVD(Singular Value Decomposition)之后,我才发现,喔,原来线性代数还可以这么用, 有的时候,通过一些简单的转换,就可以以量级地减少某些应用的计算量。这篇博客主要参考了一下这些资料:
- Inner Product Spaces – A Primer
- Introduction to Linear Algebra
在这篇博客中,我们重点要搞清楚两个概念,一个是线性变换,一个是欧式空间。
线性变换
一直以来,对向量 v做线性变换(linear transformation), 我都简单地认为是在 v左边乘以一个矩阵,Mv。
事实上线性变化其实是有一个非常严格的定义的,现在有一个变换,T,当输入一个向量v,输出一个值T(v),
这个输出可以是一个向量,也可以是一个标量。只要变换T满足以下这些条件:
对于任意向量 v 和w, 以及任意实数c,
T(v+w)=T(v)+T(w)
T(cv)=cT(v)
并且如果向量v=0,那么T(v) 必须等于0(当然这个可以从第一个条件推导出来)。
现在我们需要问一个问题:是不是所有的从向量空间 V=Rn 到向量空间 W=Rm 的线性变换都是通过矩阵得来的,如w=Av? 当一个线性变换T被描述为旋转,投影等,其后是否总是存在着一个矩阵。答案是yes,所以我一开始的理解其实是正确的,至少在一般情况是这样。
现在假设某个线性转换T将一个n维的向量空间V转换到一个m维的向量空间W。其中空间V的基向量是v1,v2,v3,...,vn, 空间W的基向量是w1,w2,w3,...,wm。 我们必然可以用一个矩阵A来来表示这个转换,那么如何求解这个矩阵? 为了找到矩阵M的第一列,我们通过转换T 将v1转换为T(v1),因为T(v1) 存在于m维向量空间W中,所以可以用以下形式表示T(v1):
T(v1)=a11w1+...+am1wm
a11,a21,...,am1 即矩阵A的第一列,同理,我们亦可以求出A的其他列。从A的求解过程中,我们也可以看出矩阵A取决于基向量{vi}i=0n和{wi}i=0m。
欧式空间
现在对于欧式空间的定义有很多种,但这些定义之间只有非常细微的差别。在这里我们选取一种最简单并且满足我们要求的定义:
设V是实数域R上的一个有限维向量空间。如果对于V中任意一对向量v,w, 有一个确定的记做<v,w>的实数与它们对应,叫做向量v与w的内积(标量积),并且下列条件被满足:
<v,w>=<w,v>
<cx,y>=c<x,y>
<v+w,z>=<v,z>+<w,z>
⟨v,v⟩>0, if v̸=0;
这里v,w,z是V中的任意向量,c是任意实数,那么V叫作对这个内积的欧式空间。其中有很多种不同的映射<x,y>满足上述条件,其中有一种最为有名:
<x,y>=i=1∑nxiyi
我们将此称为标准内积。这里,我们将关于标准内积的,以向量(1,0,...,0),(0,1,...,0),(0,0,...,0,1$ 为基的欧式空间称为标准欧式空间。
现在,从任意欧式空间V中,我们定义V上的范数(norm)为 一个 V→R 的映射,
∥x∥=<x,x>, x∈V
这里我们可以简单地将欧几里得空间中的向量x的范数看成是该向量到原点的距离。并且,任意范数为1的向量,都被称为单位向量。接下来我们看当欧式空中向量x,y之间满足<x,y>=0时,会有什么有趣的事发生。
标准正交基
当向量 x,y∈V, V是欧式空间,且满足<x,y>=0, 那么我们称向量x,y正交。当欧式空间中某个向量集S中的向量两两正交时,则我们称该向量集为正交向量集,更进一步如果该向量集中的每个向量都是单位向量,那么我们称该向量集为标准正交向量集。在关于标准内积的欧式空间中最简单的正交向量集是标准基,(1,0,...,0),(0,1,...,0),(0,0,...0,1)。
从某种意义上说,欧式空间中的内积<x,y>基本给出了向量x在向量y上投影的长度,这里我们给出向量x在向量y上投影的定义:
向量x在向量y上的投影,py(x),是V→V的映射,定义为py(x)=<x,y>∥y∥2y。很容易证明向量x−py(x)与向量py(x)正交,即⟨x−py(x),py(x)⟩=0。同时我们可以很容易地将欧式空间中的一个向量v分解为两个正交的向量,即 v=(v−pw(v))+Pw(v)。
我们知道除了两两相互正交之外,标准基中的每个向量的范数都为1。 我们称这样类似于标准基的向量基为标准正交基。我们常常将标准正交基表示为(e1,e2,...,en)。给定欧式空间V的标准正交基,我们可以将该空间中的任意向量v分解为:
v=pe1(v)+pe2(v)+...+pen(v)=⟨v,e1⟩e1+...+⟨v,en⟩en
同时,因为一个向量在线性空间中可以表示为基向量的线性组合,所以我们可以知道这些内积⟨v,ei⟩就是那些相关的参数。正因为这个事实把我们导向一个非常有用的定理,不过在介绍这个定理之前,我们先需要说清楚一个定义:
在两个欧式空间V,W,如果存在线性同构,f:V→W, 对于任意x,y∈V 满足 ⟨x,y⟩V=⟨f(x),f(y)⟩W,那么我们说V,W等距同构。
然而,两个向量空间之间如果存在线性同构,那么这两个向量空间是完全相同的。所以如果两个欧式空间等距同构,那么这两个欧式空间有相同的测度,拓扑及几何结构,可能仅仅是所采用的基不同。
所以我们有以下这个定理,任意一个n维欧式空间都与n维标准欧式空间等距同构。不过在证明这个定理之前,我们需要先证明,任意一个有限维的欧式空间都有一组标准正交基。
(Gram-Schmidt):有限维欧式空间中任意一组基都可以转换为一组标准正交积。这个定理被称为Gram-Schmidt定理。
证明:给定一个基(x_1,x_2, …, x_n),我们得到下面这个算法:
1:
e1=∥x1∥x1
2:
For i = 2, …, n:
zi=j=1∑i−1pej(xi)ei=∥xi−zi∥xi−zi
我们可以从几何的角度来阐述上述算法,每一个zi都是xi在(e1,e2,...,ei−1)为基的子向量空间中的投影。而xi−zi正交于v∈(e1,e2,...,ei−1), 而这里我们有可以保证xi−zi̸=0, 因为基(x1,x2,...,xn)的线性不相关性。最后我们将 xi−zi 除以∥xi−zi∥归一化后得到ei。
接下来我们需要证明这篇文章最重要的一个定理:任意一个n维欧式空间都与n维标准欧式空间等距同构。 这里,因为每个n维欧式空间W都有一个标准正交基(e_1, e_2, …, e_n), 已知标准欧式空间为E,令映射f: E\to W为f((x_1, x_2, …, x_n)) = x_1e_1 + x_2e_2 + … + x_ne_n,由此我们可以看到:
⟨f((a1,a2,...,an)),f((b1,b2,...,bn))⟩=⟨a1e1+...+anen,b1e1+b2e2+...+bnen⟩=i=1∑nai⟨ei,b1e1+b2e2+...+bnen⟩=j=1∑ni=1∑naibj⟨ei,ej⟩=a1b1+...+anbn=⟨(a1,b1,...,bn),(b1,b2,...,bn)⟩
由此可证,f:E→W为线性同构,因此,W与E线性同构。