线性变换初步

学习泛函的过程中,深感自己的线性代数拖后腿,回过头补线性代数的知识。偶然看到一位台湾教授的网站,https://ccjou.wordpress.com/, 获益匪浅,非常感谢。

我在这篇博客主要介绍线性变换,当然在阅读之前,请先了解向量空间和子空间的知识,这属于线性泛函的范畴。

1. 线性变换

在线性代数中,线性变换(线性映射)是矩阵的一种抽象描述,矩阵则是线性变换的具体实现。

\(T: \mathcal {V} \to \mathcal {W}\) 是一个从向量空间 \(\mathcal {V}\) 映射到向量空间 \(\mathcal {W}\) 的变换。其中 \(\mathcal {V}\) 称为定义域 (domain),\(\mathcal {W}\) 称为到达域 (codomain) 。每一个向量 \(\mathbf {x} \in \mathcal {V}\) 经由 \(T\) 映射至 \(\mathcal {W}\) 的向量 \(T(\mathbf {x})\) ,称为 \(\mathbf {x}\) 的像 (image)。对于任何 \(\mathbf {x}, \mathbf {y} \in \mathcal {V}\) 与标量 \(c\) ,如果 \(T\) 满足: \[
\begin {aligned}
T(\mathbf {x} + \mathbf {y}) &= T(\mathbf {x}) + T(\mathbf {y}) \\
T(c \mathbf {x}) &= c T(\mathbf {x})
\end {aligned}
\]

\(T\) 称为一个线性变换。

需要注意的是,定义于向量空间 \(\mathcal {V}\) 的所有线性变换所形成的集合本身也是一个向量空间

如果 \(S\)\(T\) 是线性变换,定义加法运算为 \(P = S+T\) ,对于任意 \(\mathbf {x} \in \mathcal {V}\)\(S\)\(T\) 之和为 \(P(\mathbf {x}) = S(\mathbf {x}) + T(\mathbf {x})\) ,又定义数乘运算 \(Q = cT\) ,则 \(Q(\mathbf {x}) = c T(\mathbf {x})\) 。此时,线性变换的加法和标量乘法满足向量空间的八个公理

但线性变换的真正价值是它具有移动与联系向量子空间的能力,也就是我们熟知的矩阵乘法运算。

2. 同构和坐标映射

\(\mathcal {U}\)\(\mathcal {V}\) 是分布于相同数系的向量空间,且任何 \(\mathbf {x} \in \mathcal {U}\)\(\mathbf {y} \in \mathcal {V}\) 彼此存在一对一的对应关系,表示为线性变换 \(T\) 使得 \(\mathbf {y} = T(\mathbf {x})\) ,则 \(\mathcal {U}\)\(\mathcal {V}\) 是同构的(isomorphic),换句话说, \(T\) 是保留结构的同构映射(isomorphism)。

请注意并不是每个线性变换都是同构映射。只有满足一对一映射和满射的线性映射才是同构映射。同构的本质会在后面的博客详细解释。

同构映射性质:

  1. \(\mathcal {U} \cong \mathcal {V}\) ,则 \(\dim \mathcal {U} = \dim \mathcal {V}\) ,因为 \(\mathcal {U}\) 的每一组基底都对应 \(\mathcal {V}\) 的一组基底
  2. 分布相同数系(如 \(\mathbb R\) 或者 \(\mathbb C\) )且维度相同的任何向量空间都是同构的
  3. 传递性,如果 \(\mathcal {U} \cong \mathcal {V}\)\(\mathcal {V} \cong \mathcal {W}\) ,则 \(\mathcal {U} \cong \mathcal {W}\)

由此我们得到一个重要结论:

\(n\) 维向量空间 \(\mathcal {V}\)\(\mathbb R^n\) 同构,若 \(\mathcal {V}\) 分布于复数系,则与 \(\mathbb C^n\) 同构

证明:

假设 \(\boldsymbol{\beta} = \lbrace \mathbf {x}_1, \ldots, \mathbf {x}_n \rbrace\) 为向量空间 \(\mathcal {V}\) 的一组基底,则 \(\mathcal {V}\) 中任意向量 \(\mathbf {x}\) ,有且仅有一种以基底向量的线性组合表达 \(\mathbf {x}\) 的方式,如下: \[
\mathbf {x} = c_1 \mathbf {x}_1 + \cdots + c_n \mathbf {x}_n
\]

将有序标量 \((c_1, \ldots, c_n)\) 视为 \(\mathbb R^n\) 空间向量,称为坐标向量,符号记为 \([\mathbf {x}]_{\boldsymbol {\beta}}\)

向量 \(\mathbf {x}\)\([\mathbf {x}]_{\boldsymbol {\beta}}\) 呈现了存在于 \(\mathcal {V}\)\(\mathbb R^n\) 的一对一映射关系:

\[
\mathbf {x} \rightleftharpoons [\mathbf {x}]_{\boldsymbol {\beta}}
\]
表达此映射关系的线性变换称为坐标映射: \[
L(\mathbf {x}) = [\mathbf {x}]_{\boldsymbol {\beta}} =
\begin {bmatrix}
c_1 \\
\vdots \\
c_n
\end {bmatrix}
\]

显然 \(L\) 是可逆的,也就有 \(L^{-1}([\mathbf {x}]_{\boldsymbol {\beta}}) = \mathbf {x}\)

以向量空间 \(\mathcal {P}_{n-1}\) 为例,\(\mathcal {P}_{n-1}\)\(\mathbb R^n\) 是同构的。

考虑 \(\mathcal {P}_{n-1}\) 的标准基底 \(\lbrace1, t, \ldots, t^{n-1} \rbrace\) ,实多项式 \(p(t) = p_0 + p_1 t + \cdots + p_{n-1} t^{n-1}\) 的坐标向量即为 \(p(t)\) 的系数所构成的有序实数标量集 \((p_0, p_1, \ldots, p_{n-1})\) ,故联系 \(\mathcal {P}_{n-1}\)\(\mathbb R^n\) 的坐标映射为 : \[
L(p(t)) = L(p_0 + p_1 t + \cdots + p_{n-1} t^{n-1})=
\begin {bmatrix}
p_0 \\
p_1 \\
\vdots \\
p_{n-1}
\end {bmatrix}
\]

3. 从另一个角度看矩阵乘法

考虑矩阵向量乘法 \(\mathbf {y} = A \mathbf {x}\) ,其中 \(A\)\(m \times n\) 阶矩阵,\(\mathbf x\)\(n\) 维列向量,例如:

算式 \(\mathbf {y} = A \mathbf {x}\) 有两个重要的数学意义: 线性映射 (或称线性变换) 与 线性组合

3.1 线性映射

我们可以证明映射 \(A : \mathbf {x} \to \mathbf {y}\) 对加法和数乘运算封闭,于是映射 \(\mathbf {y} = T(\mathbf {x}) = A \mathbf {x}\) 是线性映射(线性变换)

上面的矩阵 \(A\) 的效果是将平面向量逆时针旋转 \(90^{\circ}\) , 就有: \[
\begin {bmatrix}
2 \\
4
\end {bmatrix}
\xrightarrow [] {~A~}
\begin {bmatrix}
-4 \\
2
\end {bmatrix}
\]
下图展示了矩阵 \(A\) 的实际效果

在实际应用时,复杂的映射过程可以被拆解为数个连续过程, \[
\mathbf {x} \xrightarrow [] {~B~} B \mathbf {x} \xrightarrow [] {~A~} A(B \mathbf {x})
\]
我们可以将两个线性映射合并, \[
\mathbf {x} \xrightarrow [] {~AB~} (AB) \mathbf {x}
\]

3.2 线性组合 – 以列作为计算单元

请理解下面这句话,非常重要:

\(\mathbf {y} = A \mathbf {x}\) 可以将 \(\mathbf {y}\) 视为 \(A\) 的列向量的线性组合,也就是说, \(\mathbf {y}\) 属于 \(A\) 的列空间 \(C(A)\)

\[
\mathbf {y} = A \mathbf {x} =
\begin {bmatrix}
0 & -1 \\
1 & 0
\end {bmatrix}
\begin {bmatrix}
2 \\
4
\end {bmatrix}
= 2 \begin {bmatrix}
0 \\
1
\end {bmatrix}
+ 4 \begin {bmatrix}
-1 \\
0
\end {bmatrix}
\]

向量 \(\mathbf {x}\) 的元为线性组合的权重,这说明 \(\mathbf {y}\) 属于 \(A\) 的列空间 \(C(A)\)

这里 \(A\) 的两个列向量线性独立,可以构成列空间 \(C(A)\) 的一组基底: \[
\mathbf {v}_1 = \begin {bmatrix}
0 \\
1
\end {bmatrix},
\mathbf {v}_2 = \begin {bmatrix}
-1 \\
0
\end {bmatrix}
\]
因此 \(\mathbf {y} = x_1 \mathbf {v}_1 + x_2 \mathbf {v}_2\) 有且仅有唯一的表达方式。

也就是说, 向量 \(\mathbf {y}\) 参考有序基底 \(\mathfrak {B} = \lbrace \mathbf {v}_1, \mathbf {v}_2 \rbrace\)的坐标向量为 \(\mathbf {x} = (x_1, x_2)^T\) ,或记作 \(\mathbf {x} = [\mathbf {y}]_{\mathfrak {B}}\) ,所以 \[
\mathbf {y} = A [\mathbf {y}]_{\mathfrak {B}}
\]

这里 \(A\) 代表有序基底构成的坐标变换矩阵,\(A = [\mathbf {v}_1, \mathbf {v}_2]\)

推广开来, 对 \(m \times n\) 阶矩阵 \(A\) ,我们用列向量表达式 \(A= [\mathbf {a}_1, \ldots, \mathbf {a}_n]\) 同时 \(n\) 维列向量 \(\mathbf {x} = (x_1, \ldots, x_n)^T\) ,则矩阵 \(A\) 和列向量 \(\mathbf {x}\) 的乘法 \(A \mathbf {x}\)\(A\) 的列向量 \(\mathbf {a}_1, \ldots, \mathbf {a}_n\) 的线性组合,\(x_1, \ldots, x_n\) 为组合权重 \[
A \mathbf {x} = [\mathbf {a}_1, \ldots, \mathbf {a}_n] \begin {bmatrix} x_1 \\ \vdots \\ x_n \end {bmatrix} = \mathbf {a}_1 x_1 + \cdots + \mathbf {a}_n x_n
\]
由此可知, \(A \mathbf {x}\) 一定在 \(A\) 的列空间 \(C(A)\)

可以得到一些很好的结论:

  1. \(A \mathbf {x} = \mathbf {0}\) 仅有平凡解 (trivial solution) (\(\mathbf {x} = \mathbf {0}\)),则 \(A\) 有线性独立的列向量
  2. \(A \mathbf {x} = \mathbf {b}\) 有解的充要条件为 \(\mathbf {b}\) 属于 \(A\) 的列空间

总结:

反向推理,如果给出 \(A\)\(\mathbf {y}\) ,求解 \(\mathbf {y} = A \mathbf {x}\) 意义可能就是线性变换 \[
? \xrightarrow [] {~A~} \mathbf {y}
\]
或者线性组合,未知的是基底权重 \([?]_{\mathfrak {B}}\) ,即 \[
A [?]_{\mathfrak {B}} = \mathbf {y}
\]

2 thoughts on “线性变换初步

发表评论

电子邮件地址不会被公开。 必填项已用*标注