在上一节中,我们看到矩阵是表示线性方程组的紧凑工具。然而,矩阵的意义远不止于此。它们不仅可以表示线性方程组,还能代表线性映射 (linear mappings),即空间的变换。矩阵是整个线性代数的核心,是连接具体计算与抽象理论的桥梁。
1. 矩阵的定义#
准确的数学定义 (Definition 2.1)
一个矩阵 (Matrix) \(\boldsymbol{A}\) 是一个由 \(m \times n\) 个实数 \(a_{ij}\) 组成的矩形阵列,其中 \(i\) 代表行号 (\(1, \dots, m\)),\(j\) 代表列号 (\(1, \dots, n\))。
$$ \boldsymbol{A} = \begin{bmatrix} a_{11} & a_{12} & \cdots & a_{1n} \\ a_{21} & a_{22} & \cdots & a_{2n} \\ \vdots & \vdots & \ddots & \vdots \\ a_{m1} & a_{m2} & \cdots & a_{mn} \end{bmatrix} , \quad a_{ij} \in \mathbb{R} $$我们称 \(\boldsymbol{A}\) 为一个 \(m \times n\) 矩阵,记作 \(\boldsymbol{A} \in \mathbb{R}^{m \times n}\)。
- 特殊矩阵:
- 行向量 (Row vector): 只有一行的矩阵 (\(1 \times n\))。
- 列向量 (Column vector): 只有一列的矩阵 (\(m \times 1\))。这是本书中向量的默认形式。
- 方块矩阵 (Square matrix): 行数和列数相等的矩阵 (\(n \times n\))。
理解要点
矩阵不仅仅是数字的排列,它是一个结构化的数学对象。我们可以把它看作是一组列向量的集合,也可以看作是一组行向量的集合。这种多重视角在后续学习中非常关键。
2. 矩阵的基本运算#
2.2.1 矩阵加法与数乘#
这两种运算非常直观,都是按元素 (element-wise) 进行的。
- 矩阵加法: 两个同维度的矩阵 \(\boldsymbol{A}, \boldsymbol{B} \in \mathbb{R}^{m \times n}\) 相加,结果矩阵 \(\boldsymbol{C} = \boldsymbol{A} + \boldsymbol{B}\) 的每个元素是对应元素的和,即 \(c_{ij} = a_{ij} + b_{ij}\)。
- 标量乘法: 矩阵 \(\boldsymbol{A}\) 与标量 \(\lambda \in \mathbb{R}\) 相乘,结果矩阵 \(\boldsymbol{K} = \lambda \boldsymbol{A}\) 的每个元素是原元素的 \(\lambda\) 倍,即 \(k_{ij} = \lambda a_{ij}\)。
2.2.1 矩阵乘法 (Matrix Multiplication)#
矩阵乘法是线性代数中最核心、最不直观但最重要的运算。
数学严谨性: 对于矩阵 \(\boldsymbol{A} \in \mathbb{R}^{m \times n}\) 和 \(\boldsymbol{B} \in \mathbb{R}^{n \times k}\),它们的乘积为一个新矩阵 \(\boldsymbol{C} = \boldsymbol{A}\boldsymbol{B} \in \mathbb{R}^{m \times k}\)。\(\boldsymbol{C}\) 中第 \(i\) 行、第 \(j\) 列的元素 \(c_{ij}\) 的计算方式为:
$$ c_{ij} = \sum_{l=1}^{n} a_{il}b_{lj} = a_{i1}b_{1j} + a_{i2}b_{2j} + \cdots + a_{in}b_{nj} $$直观解释: \(c_{ij}\) 的值是矩阵 \(\boldsymbol{A}\) 的第 \(i\) 个行向量与矩阵 \(\boldsymbol{B}\) 的第 \(j\) 个列向量的点积 (dot product)。
适用条件: 矩阵 \(\boldsymbol{A}\) 和 \(\boldsymbol{B}\) 能够相乘($\boldsymbol{A}\boldsymbol{B}$)的唯一条件是:\(\boldsymbol{A}\) 的列数必须等于 \(\boldsymbol{B}\) 的行数。
$$ \boldsymbol{A}_{m \times \color{red}{n}} \cdot \boldsymbol{B}_{ \color{red}{n}\color{block}{} \times k} = \boldsymbol{C}_{m \times k} $$这个“内维度必须匹配”的规则至关重要。
数值示例
给定 \(\boldsymbol{A} = \begin{bmatrix} 1 & 2 & 3 \\ 3 & 2 & 1 \end{bmatrix} \in \mathbb{R}^{2 \times 3}\) 和 \(\boldsymbol{B} = \begin{bmatrix} 0 & 2 \\ 1 & -1 \\ 0 & 1 \end{bmatrix} \in \mathbb{R}^{3 \times 2}\)。 它们的乘积 \(\boldsymbol{A}\boldsymbol{B}\) 是一个 \(2 \times 2\) 矩阵。
$$ \boldsymbol{AB} = \begin{bmatrix} (1\cdot0 + 2\cdot1 + 3\cdot0) & (1\cdot2 + 2\cdot(-1) + 3\cdot1) \\ (3\cdot0 + 2\cdot1 + 1\cdot0) & (3\cdot2 + 2\cdot(-1) + 1\cdot1) \end{bmatrix} = \begin{bmatrix} 2 & 3 \\ 2 & 5 \end{bmatrix} $$而它们的乘积 \(\boldsymbol{B}\boldsymbol{A}\) 是一个 \(3 \times 3\) 矩阵。
$$ \boldsymbol{BA} = \begin{bmatrix} 0 & 2 \\ 1 & -1 \\ 0 & 1 \end{bmatrix} \begin{bmatrix} 1 & 2 & 3 \\ 3 & 2 & 1 \end{bmatrix} = \begin{bmatrix} 6 & 4 & 2 \\ -2 & 0 & 2 \\ 3 & 2 & 1 \end{bmatrix} $$矩阵乘法的性质与常见错误
不满足交换律: 从上例可见,\(\boldsymbol{A}\boldsymbol{B} \neq \boldsymbol{B}\boldsymbol{A}\)。有时甚至其中一个乘积有定义,另一个则没有。
满足结合律: \((\boldsymbol{A}\boldsymbol{B})\boldsymbol{C} = \boldsymbol{A}(\boldsymbol{B}\boldsymbol{C})\)
满足分配律: \(\boldsymbol{A}(\boldsymbol{B} + \boldsymbol{C}) = \boldsymbol{A}\boldsymbol{B} + \boldsymbol{A}\boldsymbol{C}\)
常见错误: 矩阵乘法不是按元素相乘!
编程语言中,数组的运算符通常执行按元素相乘(称为哈达玛积 (Hadamard product)),这与数学上的矩阵乘法完全不同。务必使用专门的矩阵乘法函数(如 NumPy 中的
np.dot()或@运算符)。
3. 特殊矩阵与相关运算#
单位矩阵 (Identity Matrix)#
单位矩阵 \(\boldsymbol{I}_n \in \mathbb{R}^{n \times n}\) 是一个方块矩阵,其主对角线上的元素为1,其余元素为0。
$$ \boldsymbol{I}_3 = \begin{bmatrix} 1 & 0 & 0 \\ 0 & 1 & 0 \\ 0 & 0 & 1 \end{bmatrix} $$它在矩阵乘法中扮演着数字“1”的角色:对于任何 \(\boldsymbol{A} \in \mathbb{R}^{m \times n}\),都有 \(\boldsymbol{I}_m \boldsymbol{A} = \boldsymbol{A} \boldsymbol{I}_n = \boldsymbol{A}\)。
逆矩阵 (Inverse Matrix)#
对于一个方块矩阵 \(\boldsymbol{A} \in \mathbb{R}^{n \times n}\),如果存在另一个矩阵 \(\boldsymbol{B} \in \mathbb{R}^{n \times n}\) 使得:
$$ \boldsymbol{A}\boldsymbol{B} = \boldsymbol{B}\boldsymbol{A} = \boldsymbol{I}_n $$则称矩阵 \(\boldsymbol{A}\) 是可逆的 (invertible) 或 非奇异的 (non-singular),并称 \(\boldsymbol{B}\) 是 \(\boldsymbol{A}\) 的逆矩阵,记作 \(\boldsymbol{A}^{-1}\)。
- 注意: 不是所有方块矩阵都有逆矩阵。如果一个矩阵不可逆,我们称之为奇异的 (singular)。
2x2 矩阵求逆公式 对于一个 \(2 \times 2\) 矩阵 \(\boldsymbol{A} = \begin{bmatrix} a & b \\ c & d \end{bmatrix}\),它的逆存在当且仅当其行列式 (determinant) \(ad-bc \neq 0\)。此时,逆矩阵为:
$$ \boldsymbol{A}^{-1} = \frac{1}{ad-bc} \begin{bmatrix} d & -b \\ -c & a \end{bmatrix} $$转置矩阵 (Transpose)#
矩阵 \(\boldsymbol{A} \in \mathbb{R}^{m \times n}\) 的转置是一个 \(n \times m\) 矩阵,记作 \(\boldsymbol{A}^T\),其元素满足 \((\boldsymbol{A}^T)_{ij} = a_{ji}\)。简单来说,就是将原矩阵的行变成列,列变成行。
对称矩阵 (Symmetric Matrix)#
如果一个方块矩阵 \(\boldsymbol{A}\) 满足 \(\boldsymbol{A} = \boldsymbol{A}^T\),则称其为对称矩阵。对称矩阵在机器学习中(如协方差矩阵、核矩阵)有极其重要的应用。
4. 重要性质总结#
以下是关于逆和转置的一些重要性质,需要牢记:
- 逆的性质:
- \(\boldsymbol{A}\boldsymbol{A}^{-1} = \boldsymbol{I} = \boldsymbol{A}^{-1}\boldsymbol{A}\)
- \((\boldsymbol{A}\boldsymbol{B})^{-1} = \boldsymbol{B}^{-1}\boldsymbol{A}^{-1}\) (顺序反转,类似穿脱鞋袜)
- \((\boldsymbol{A}^{-1})^{-1} = \boldsymbol{A}\)
- 转置的性质:
- \((\boldsymbol{A}^T)^T = \boldsymbol{A}\)
- \((\boldsymbol{A}+\boldsymbol{B})^T = \boldsymbol{A}^T + \boldsymbol{B}^T\)
- \((\boldsymbol{A}\boldsymbol{B})^T = \boldsymbol{B}^T\boldsymbol{A}^T\) (顺序同样反转)
思考题#
如果 \(\boldsymbol{A}\) 和 \(\boldsymbol{B}\) 都是对称矩阵,它们的和 \(\boldsymbol{A}+\boldsymbol{B}\) 一定是对称的吗?如果 \(\boldsymbol{A}\) 和 \(\boldsymbol{B}\) 都是对称矩阵,它们的积 \(\boldsymbol{A}\boldsymbol{B}\) 一定是对称的吗?为什么?(提示:考虑 \((\boldsymbol{A}\boldsymbol{B})^T\))
对称矩阵的和:总是对称的;对称矩阵的积:不一定对称,只有当两个对称矩阵可交换时,它们的积才是对称的
问题1:对称矩阵的和#
结论:是的,对称矩阵的和一定是对称的。
证明: 设 \(\boldsymbol{A}\) 和 \(\boldsymbol{B}\) 都是 \(n \times n\) 对称矩阵,即 \(\boldsymbol{A}^T = \boldsymbol{A}\) 且 \(\boldsymbol{B}^T = \boldsymbol{B}\)。
我们需要证明 \((\boldsymbol{A} + \boldsymbol{B})^T = \boldsymbol{A} + \boldsymbol{B}\)。
利用转置的性质:
$$ (\boldsymbol{A} + \boldsymbol{B})^T = \boldsymbol{A}^T + \boldsymbol{B}^T = \boldsymbol{A} + \boldsymbol{B} $$因此 \(\boldsymbol{A} + \boldsymbol{B}\) 是对称矩阵。
问题2:对称矩阵的积#
结论:不一定,对称矩阵的积不一定是对称的。
分析: 按照提示,考虑 \((\boldsymbol{A}\boldsymbol{B})^T\):
$$ (\boldsymbol{A}\boldsymbol{B})^T = \boldsymbol{B}^T\boldsymbol{A}^T = \boldsymbol{B}\boldsymbol{A} $$由于 \(\boldsymbol{A}\) 和 \(\boldsymbol{B}\) 都是对称矩阵。
要使 \(\boldsymbol{A}\boldsymbol{B}\) 对称,必须满足:
$$ \boldsymbol{A}\boldsymbol{B} = (\boldsymbol{A}\boldsymbol{B})^T = \boldsymbol{B}\boldsymbol{A} $$即 \(\boldsymbol{A}\) 和 \(\boldsymbol{B}\) 必须可交换。但一般情况下,矩阵乘法不满足交换律。
反例: 考虑两个 \(2 \times 2\) 对称矩阵:
$$ \boldsymbol{A} = \begin{pmatrix} 1 & 1 \\ 1 & 0 \end{pmatrix}, \quad \boldsymbol{B} = \begin{pmatrix} 0 & 1 \\ 1 & 1 \end{pmatrix} $$计算它们的积:
$$ \boldsymbol{A}\boldsymbol{B} = \begin{pmatrix} 1 & 1 \\ 1 & 0 \end{pmatrix}\begin{pmatrix} 0 & 1 \\ 1 & 1 \end{pmatrix} = \begin{pmatrix} 1 & 2 \\ 0 & 1 \end{pmatrix} $$$$ \boldsymbol{B}\boldsymbol{A} = \begin{pmatrix} 0 & 1 \\ 1 & 1 \end{pmatrix}\begin{pmatrix} 1 & 1 \\ 1 & 0 \end{pmatrix} = \begin{pmatrix} 1 & 0 \\ 2 & 1 \end{pmatrix} $$显然 \(\boldsymbol{A}\boldsymbol{B} \neq \boldsymbol{B}\boldsymbol{A}\),且 \(\boldsymbol{A}\boldsymbol{B}\) 不是对称矩阵。
总结#
- 对称矩阵的和:总是对称的
- 对称矩阵的积:不一定对称,只有当两个对称矩阵可交换时,它们的积才是对称的
这说明对称性在加法运算下保持,但在乘法运算下不一定保持。
本节知识点总结#
- 矩阵定义: 行数 \(\times\) 列数的数字矩形阵列。
- 基本运算: 矩阵加法和数乘是按元素的,矩阵乘法是行与列的点积。
- 矩阵乘法要点: 不满足交换律,且内外维度必须匹配。
- 核心特殊矩阵:
- 单位矩阵 \(\boldsymbol{I}\): 乘法中的“1”。
- 逆矩阵 \(\boldsymbol{A}^{-1}\): 使得 \(\boldsymbol{A}\boldsymbol{A}^{-1}=\boldsymbol{I}\),仅方块矩阵可能存在。
- 转置矩阵 \(\boldsymbol{A}^T\): 行列互换。
- 对称矩阵 \(\boldsymbol{A}\): \(\boldsymbol{A}=\boldsymbol{A}^T\),在机器学习中非常重要。
- 重要法则: 乘积的逆和乘积的转置都会导致顺序反转。