Logo

向量空间与子空间

1. 向量空间的定义和性质

 1,2 ~1,2~章节的理论是基于 Rn ~\mathbb{R^n}~空间的一些简单的代数性质,这些性质已在 1.3 ~1.3~向量方程一节中进行了简单介绍。这些代数性质不仅适用于 Rn ~\mathbb{R^n}~空间,还广泛存在于其他数学系统中,接下来要引入的向量空间概念,正是对这些相似性质的抽象与统一描述。

我们已经具备了物理学中关于向量加法和数乘等性质的基础,但这些只是向量空间概念的具体实例。向量空间是一个更为抽象的数学结构,它不仅包括这些运算,还将其性质推广到多项式、函数、信号等更广泛的领域。深入理解向量空间,不仅有助于掌握这些实例的内在共性,还为研究线性代数中的更复杂概念,如线性变换、特征值与方程组解法等奠定基础。以下列举了向量空间在不同数学与物理系统中的典型应用。。

2. 向量空间的实例

2.1  Rn ~\mathbb{R^n}~空间

 Rn ~\mathbb{R^n}~空间是一个 n ~n~维的实向量空间,它基于笛卡尔坐标系(Cartesian Coordinate System)(\mathbf{Cartesian~Coordinate~System})描述。每个点或向量由 n ~n~个坐标表示,如 (x1,x2,,xn) ~(x_1,x_2,\dots,x_n)~。这些坐标就像二维或三维空间中的点一样,描述了一个向量的位置或方向。我们将几何对象用数值向量来表达,这其实是一种代数化的几何描述,这种方法可以帮助我们理解超出三维空间的复杂结构。例如在机器学习中, Rn ~\mathbb{R^n}~空间允许我们将高维数据表示为向量,从而使用超平面将不同类别的数据分开,即使这些结构无法在三维空间中直观呈现。例如,支持向量机中的超平面定义为:
w1x1+w2x2++wnxn+b=0w_1 x_1 + w_2 x_2 + \cdots + w_n x_n + b = 0
其中,w=(w1,w2,,wn) \mathbf{w}=(w_1,w_2,\dots,w_n)~是法向量,表示超平面的方向, b ~b~是偏置。这个公式展示了在任意高维空间(如 R1000 ~\mathbb{R^{1000}}~),我们同样可以像在三维空间中那样理解和操作这些复杂结构。

2.2 矢量空间

矢量空间由箭头(矢量)组成,它们表示在三维空间中的方向和大小。该空间在物理建模中用于描述力、速度等向量,突出了向量在没有明确坐标系统的情况下仍然可以通过长度和方向来定义与运算。和 Rn ~\mathbb{R^n}~空间不同的是矢量空间中的向量是几何对象(箭头),不依赖于具体的坐标系,强调向量的长度和方向。它是几何直观的,主要用于物理学中的力和运动描述。

2.3 双向无穷序列空间

双向无限序列空间指的是由无限长的数列构成的向量空间,其元素是一个无穷长的序列,如
{yk}=(,y2,y1,y0,y1,y2,)\{y_k\} = (\dots, y_{-2}, y_{-1}, y_0, y_1, y_2, \dots)
这种序列可以在正负两个方向上无限延展,因此被称为“双向无限序列”。每个位置 k ~k~上都有一个数值 yk ~y_k~(通常是实数或复数),并且这些序列满足向量空间的加法和数乘运算。在离散信号处理(DSP,Digital Signal Processing)(\mathbf{DSP,Digital~Signal~Processing})中,信号被视为在时间轴上采样的数值序列。双向无限序列空间用于表示这些离散时间信号。例如,音频信号可以被离散化为无限长的数列,其中每个元素 yk ~y_k~是在第 k ~k~个时刻的采样值。

双向无限序列空间是一个无限维的向量空间,广泛用于信号处理、时序分析和控制系统中。与 Rn ~\mathbb{R^n}~空间相比,它更适合描述动态变化的信号和系统行为。虽然二者都遵守向量空间的基本规则,但双向无限序列空间更关注时间和信号演变的过程,而 Rn ~\mathbb{R^n}~更侧重于几何和代数的静态分析。

2.4 函数的向量空间

函数的向量空间 (vector space of functions) ~(\mathbf{vector~space~of~functions})~是指一个由函数构成的集合,这些函数在加法和数量乘法运算下满足上面向量空间的十条公理。对于加法运算,给定两个函数 f(t) ~f(t)~ g(t) ~g(t)~,它们的和 (f+g)(t) ~(f+g)(t)~是一个新函数,其值在每个点 t ~t~上定义为两个函数在改点的值的和:
(f+g)(t)=f(t)+g(t)(f+g)(t)=f(t)+g(t)
例如, f(t)=t2 ~f(t)=t^2~ g(t)=sin(t) ~g(t)=sin(t)~,则(f+g)(t)=t2+sin(t)(f+g)(t)=t^2+sin(t)。对于数乘运算,给定一个函数 f(t) ~f(t)~和一个标量 cR ~c \in \mathbb{R}~,它们的数乘 (cf)(t) ~(c\cdot f)(t)~是一个新函数,在每个点 t ~t~上的值定义为原函数值乘以该标量:
(cf)(t)=cf(t)(c\cdot f)(t)=c\cdot f(t)
例如,令 f(t)=t2 ~f(t)=t^2~,标量 c=3 ~c=3~,则有: (3f)(t)=3t2 ~(3\cdot f)(t)=3\cdot t^2~

2.5 多项式空间

多项式空间 (polynomial space) ~\mathbf{(polynomial~space)}~是指由所有次数不超过 n ~n~的多项式构成的向量空间,通常记为 Pn~\mathbb{P}_n(或Pn \mathcal{P}_n~)。其中,多项式的形式如下:
p(t)=a0+a1t+a2t2++antnp(t) = a_0 + a_1 t + a_2 t^2 + \cdots + a_n t^n
其中,系数 a0,a1,,an ~a_0,a_1,\dots,a_n~是来自某个数域(如实数 R ~\mathbb{R}~或复数 C ~\mathbb{C}~)的元素;变量 t ~t~通常代表时间或自变量;零多项式(所有系数为 0 ~0~的多项式)也是这个空间的元素。在多项式空间 Pn ~\mathbb{P}_n~中,加法运算是将两个多项式的对应项系数相加。给定两个多项式:
p(t)=a0+a1t+a2t2++antnq(t)=b0+b1t+b2t2++bntn\begin{aligned} p(t) &= a_0 + a_1 t + a_2 t^2 + \cdots + a_n t^n \\[2ex] q(t) &= b_0 + b_1 t + b_2 t^2 + \cdots + b_n t^n \end{aligned}
它们的和 (p+q)(t) ~(p+q)(t)~定义为:
(p+q)(t)=(a0+b0)+(a1+b1)t+(a2+b2)t2++(an+bn)tn(p + q)(t) = (a_0 + b_0) + (a_1 + b_1) t + (a_2 + b_2) t^2 + \cdots + (a_n + b_n) t^n
加法的结果仍然是一个次数不超过 Pn ~\mathbb{P}_n~的多项式,属于同一空间 Pn ~\mathbb{P}_n~数乘运算是将一个标量(实数或复数)与一个多项式的每一项系数相乘,给定一个多项式
p(t)=a0+a1t+a2t2++antnp(t) = a_0 + a_1 t + a_2 t^2 + \cdots + a_n t^n
和一个标量 cR ~c\in \mathbb{R}~,数乘定义为 cp(t) ~c \cdot p(t)~定义为:
(cp)(t)=(ca0)+(ca1)t+(ca2)t2++(can)tn(c \cdot p)(t) = (c \cdot a_0) + (c \cdot a_1) t + (c \cdot a_2) t^2 + \cdots + (c \cdot a_n) t^n
数乘的结果仍然是一个次数不超过 n ~n~的多项式,属于同一空间 Pn ~\mathbb{P}_n~。多项式空间更适用于动力系统的描述和函数关系的分析,例如数据拟合、信号处理和数值计算。

3. 子空间的定义和性质

在很多实际问题中,为了简化分析和计算,我们不需要处理整个向量空间中的所有元素,而是只关注其中的子集子空间。子空间是一个满足特定条件的向量集合,它继承了原向量空间中的所有结构与规则。有如下定义:

为什么子空间必须包含零向量? 从几何上来解释,在 R2 ~\mathbb{R^2}~ R3 ~\mathbb{R^3}~中,一个子空间必须在原点上“锚定”,否则其加法和数量乘法的封闭性将无法满足(即无法满足公理 5 ~5~)。例如,如果两个在平面上的向量相加,其结果可能需要经过原点,但不经过原点的平面无法满足这个条件。在 R3 ~\mathbb{R^3}~中,如果一个平面不经过原点,那么它就不能成为 R3 ~\mathbb{R^3}~的子空间。同样,在 R2 ~\mathbb{R^2}~中,如果一条直线不通过原点,它也无法成为 R2 ~\mathbb{R^2}~的子空间。

4. 子空间的实例

在高维向量空间 Rn ~\mathbb{R^n}~或其他复杂向量空间中,某些问题可以在较小的维度内得到解决。这些较小维度的部分通常是原向量空间的子空间。通过只关注问题相关的子空间,我们可以降低计算复杂度。接下来介绍一些子空间的实例。

4.1 零空间

零空间由仅包含零向量的集合构成,它是所有向量空间的基本元素,用符号 {0} ~\{ \mathbf{0} \}~表示。零空间在数学中扮演了“检测工具”的角色,它可以帮助我们通过观察零向量的存在性和数量,快速判断线性变换的特性、线性方程组的解结构,以及向量组的相互关系。例如在研究线性变换T:VWT: V \rightarrow W时,零空间(或称核,记为Ker(T)\text{Ker}(T)是所有被映射到零向量的向量组成的集合,即Ker(T)={vVT(v)=0}\text{Ker}(T) = \{ v \in V \mid T(v) = 0 \}。如果零空间仅包含零向量,则说明该线性变换是单射 (injective) ~(\mathbf{injective})~,这也是变换可逆的一个重要条件。

4.2 实值函数的子空间

多项式是一类特殊的实值函数,因此多项式空间构成了实值函数空间的一个子空间。在实值函数空间中,每个元素都是定义在实数域上的实值函数,如:f(x)=sin(x),g(x)=exf(x) = \sin(x), \quad g(x) = e^x等。多项式空间 P ~\mathbb{P}~包含所有实系数多项式,例如,p(x)=x2+3x+1p(x) = x^2 + 3x + 1q(x)=5x32x+4q(x) = 5x^3 - 2x + 4都属于 P ~\mathbb{P}~。由于这些多项式也是实值函数,因此它们也是实值函数空间的元素。

4.3 多项式子空间

对于多项式空间Pn \mathbb{P}_n~,我们可以限定多项式的次数得到子空间。例如:P0 \mathbb{P}_0~子空间表示次数不超过 0 ~0~的多项式集合,也就是常数多项式的集合,例如 P(x)=3 ~P(x)=3~ q(x)=2 ~q(x)=-2~P1 \mathbb{P}_1~表示次数不超过 1 ~1~的多项式集合,也就是一次多项式的集合。例如,P(x)=2x+1 P(x)=2x+1~ q(x)=x+3 ~q(x)=-x+3~都属于 P1 ~\mathbb{P}_1~

4.4 有限支撑时间信号的子空间

有限支撑信号集合 Sf ~S_f~是由那些只有有限多个非零值的信号{yk}\{y_k\}构成的。在这些信号中,绝大多数元素都是零,只有一部分元素为非零。 Sf ~S_f~的零信号表示所有值均为零的信号,并且在加法和标量乘法下保持封闭,因此它属于离散时间信号空间 S ~S~的一个子空间。

4.5  R2 ~\mathbb{R^2}~不是 R3 ~\mathbb{R^3}~的子空间

一个空间要成为另一个空间的子空间,必须满足两个条件:首先,它需要是那个空间的一个子集;其次,它在向量加法和标量乘法下是封闭的,并包含零向量。从集合的角度看,二维向量空间 R2 ~\mathbb{R^2}~并不是三维向量空 R3 ~\mathbb{R^3}~的子集。虽然 R2 ~\mathbb{R^2}~不是 R3 ~\mathbb{R^3}~的子空间,但我们可以定义一个三维向量空间中的集合 H ~H~,它与 R2 ~\mathbb{R^2}~在结构上类似。集合 H ~H~上所有形如
H={[st0]:s 和 t 为实数}H = \left\{ \begin{bmatrix} s \\ t \\ 0 \end{bmatrix} : s \text{ 和 } t \text{ 为实数} \right\}
这个集合的向量第三个分量始终为零,因此在形态上与 R2 ~\mathbb{R^2}~的向量类似(只有两个独立分量), H ~H~ R3 ~\mathbb{R^3}~的子空间。

5. 子空间的生成与张成

线性组合是生成子空间 (spanning subspace) ~(\mathbf{spanning~subspace})~的一种常见方式。给定一组向量{v1,,vp}\{\mathbf{v}_1, \dots, \mathbf{v}_p\},它们的所有线性组合组成的集合被称为它们的生成子空间,记作Span{v1,,vp}\text{Span}\{\mathbf{v}_1, \dots, \mathbf{v}_p\}。这个子空间包含了所有可以由v1,,vp\mathbf{v}_1, \dots, \mathbf{v}_p线性组合得到的向量。生成子空间的过程不仅揭示了子空间的结构,还为我们提供了构造不同维度子空间的工具。例如,在三维空间中,单个非零向量的生成子空间是一个通过原点的直线,而两个线性无关向量的生成子空间则是一个平面。

接下来,我们来展示如何验证由一组向量生成的子空间是否满足向量空间的子空间条件。假设有向量 v1 ~\mathbf{v}_1~ v2 ~\mathbf{v}_2~属于向量空间 V ~V~。令 Span{v1,v2} ~\text{Span} \{\mathbf{v}_1,\mathbf{v}_2\}~,即 H ~H~是由 v1 ~\mathbf{v}_1~ v2 ~\mathbf{v}_2~的所有线性组合构成的集合。下面来证明 H ~H~ V ~V~的子空间,我们只需要证明 H ~H~满足子空间的三个性质即可:

由于 0=0v1+0v2 ~\mathbf{0}=0\mathbf{v}_1 + 0\mathbf{v}_2~ H ~H~中包含零向量。

对于 H ~H~中任意的两个向量 u=s1v1+s2v2 ~\mathbf{u}=s_1\mathbf{v}_1+s_2\mathbf{v}_2~ w=t1v1+t2v2 ~\mathbf{w}=t_1\mathbf{v}_1+t_2\mathbf{v}_2~,它们的和为:
u+w=(s1+t1)v1+(s2+t2)v2\mathbf{u+w}=(s_1+t_1)\mathbf{v}_1+(s_2+t_2)\mathbf{v}_2
结果依然是 v1 ~\mathbf{v}_1~ v2 ~\mathbf{v}_2~的线性组合,因此依然在 H ~H~中,满足加法封闭性。

对于 H ~H~中的任意向量 u=s1v1+s2v2 ~\mathbf{u}=s_1\mathbf{v}_1+s_2\mathbf{v}_2~和任意标量 c ~c~,有
cu=(cs1)v1+(cs2)v2c\mathbf{u}=(cs_1)\mathbf{v}_1+(cs_2)\mathbf{v}_2
结果依然是 v1 ~\mathbf{v}_1~ v2 ~\mathbf{v}_2~的线性组合,因此也在 H ~H~中,满足标量乘法封闭性。

接下来,我们引入一个更为普遍的结论,用于描述生成子空间的条件:

Span{v1,v2,,vp} \text{Span} \{\mathbf{v}_1,\mathbf{v}_2,\dots,\mathbf{v}_p\}~称为由 {v1,v2,,vp} ~\{\mathbf{v}_1,\mathbf{v}_2,\dots, \mathbf{v}_p\}~生成 (spanned) ~(\mathbf{spanned})~的子空间,或称为由该向量集合张成 (generated) ~(\mathbf{generated})~的子空间。其中 {v1,v2,,vp} ~\{\mathbf{v}_1,\mathbf{v}_2,\dots, \mathbf{v}_p\}~被称为生成集 (spanning set) ~(\mathbf{spanning~set})~

6. 生成子空间的具体应用

定理 1 ~1~为我们提供了一个重要的视角,即:我们可以用有限个生成向量的线性组合来描述一个子空间中的所有向量。生成子空间目的是为了把问题简化。某些问题的解向量可能满足特定的线性约束条件,这些条件可能来自物理、经济或几何的实际需求。我们假设有这样一个四维向量集合 H ~H~,它包含所有满足以下形式的向量:
H={(a3b,ba,a,b):a,bR}H=\{(a-3b,b-a,a,b):a,b\in \mathbb{R} \}
我们要从 H ~H~中找到“有限个”关键向量,可以先对 H ~H~分解:
[a3bbaab]=a[1110]+b[3101]\begin{bmatrix} a - 3b \\ b - a \\ a \\ b \end{bmatrix} = a \textcolor{#2196f3}{\begin{bmatrix} 1 \\ -1 \\ 1 \\ 0 \end{bmatrix}} + b \textcolor{#ff8200}{\begin{bmatrix} -3 \\ 1 \\ 0 \\ 1 \end{bmatrix}}
这表示 H ~H~ {v1,v2} ~\{\textcolor{#2196f3}{\mathbf{v}_1},\textcolor{#ff8200}{\mathbf{v}_2}\}~的线性组合的集合。因此,根据定理 1 ~1~,我们可以得出 H=Span{v1,v2} ~H=\text{Span} \{\mathbf{v}_1,\mathbf{v}_2\}~ R4 ~\mathbb{R^4}~的一个子空间。

定理 1 ~1~还有一个用法就是判断一个向量是否位于由一组基向量生成的子空间中。判断一个向量 y ~\mathbf{y}~是否在Span{v1,v2,,vp} \text{Span} \{\mathbf{v}_1,\mathbf{v}_2,\dots,\mathbf{v}_p\}~中,实际上是判断是否存在一组系数 c1,c2,,cp ~c_1,c_2,\dots,c_p~,使得 y=c1v1+c2v2++cpvp ~\mathbf{y}=c_1\mathbf{v}_1+c_2\mathbf{v}_2+\dots+c_p\mathbf{v}_p~。如果这样的系数存在, y ~\mathbf{y}~就位于这个子空间中。请看下面的示例,确定 h ~h~的值,确保向量 y ~\mathbf{y}~ y=c1v1+c2v2++cpvp ~\mathbf{y}=c_1\mathbf{v}_1+c_2\mathbf{v}_2+\dots+c_p\mathbf{v}_p~

开通会员解锁全部动画

观察最后一行的结果 0=h5 ~0=h-5~,只有当 h=5 ~h=5~时,向量 y ~\mathbf{y}~才在由 v1,v2,v3 ~\mathbf{v}_1,\mathbf{v}_2,\mathbf{v}_3~张成的子空间中。