### 斯坦福大学机器学习课程中的线性代数复习与参考
#### 一、基本概念与符号
在深入探讨斯坦福大学机器学习课程中提到的线性代数之前,我们首先来了解一下基本的概念和符号。
**线性代数**是处理线性方程组的一种数学方法。它提供了一种紧凑的方式来表示和操作一组线性方程。例如,考虑以下方程组:
\[
4x_1 - 5x_2 = -13 \\
-2x_1 + 3x_2 = 9
\]
这是一个包含两个方程和两个变量的例子。我们知道,在高中代数中,这样的方程组通常有一个唯一解(除非方程之间存在某种退化情况,例如第二个方程是第一个方程的倍数)。
使用矩阵表示法,可以更简洁地表示上述方程组为:
\[
Ax = b
\]
其中,
\[
A = \begin{bmatrix}
4 & -5 \\
-2 & 3
\end{bmatrix}, \quad
b = \begin{bmatrix}
-13 \\
9
\end{bmatrix}.
\]
下面详细介绍线性代数中的基本符号:
1. **矩阵的表示**:用 \(A \in \mathbb{R}^{m \times n}\) 表示一个具有 \(m\) 行 \(n\) 列的矩阵,其中矩阵的元素都是实数。
2. **向量的表示**:用 \(x \in \mathbb{R}^n\) 表示一个具有 \(n\) 个元素的列向量。若要表示行向量,则通常写作 \(x^T\)。
3. **向量元素**:向量 \(x\) 的第 \(i\) 个元素记作 \(x_i\)。
4. **矩阵元素**:矩阵 \(A\) 在第 \(i\) 行第 \(j\) 列的元素记作 \(a_{ij}\) 或 \(A_{ij}\)。
5. **矩阵的列向量**:矩阵 \(A\) 的第 \(j\) 列向量记作 \(a_j\) 或 \(A_{:,j}\)。
6. **矩阵的行向量**:矩阵 \(A\) 的第 \(i\) 行向量记作 \(a_i^T\) 或 \(A_{i,:}\)。
7. **注意**:这些定义可能存在一定的模糊性(例如,\(a_1\) 和 \(a_1^T\) 并不相同)。在实际应用中,应根据上下文理解其含义。
#### 二、矩阵乘法
矩阵乘法是线性代数中的一个核心概念。对于两个矩阵 \(A \in \mathbb{R}^{m \times n}\) 和 \(B \in \mathbb{R}^{n \times p}\),它们的乘积 \(C = AB \in \mathbb{R}^{m \times p}\) 定义为:
\[
C_{ij} = \sum_{k=1}^n A_{ik}B_{kj}
\]
其中,\(C_{ij}\) 是矩阵 \(C\) 在第 \(i\) 行第 \(j\) 列的元素。
为了使矩阵乘法有意义,矩阵 \(A\) 的列数必须等于矩阵 \(B\) 的行数。接下来,我们通过几个特殊情况来进一步理解矩阵乘法。
#### 三、向量-向量乘积
给定两个向量 \(u \in \mathbb{R}^n\) 和 \(v \in \mathbb{R}^n\),我们可以计算它们的点积(内积),即:
\[
u^Tv = \sum_{i=1}^n u_iv_i
\]
这个结果是一个标量值,表示两个向量之间的相似度或夹角。
此外,还有向量-矩阵乘积、矩阵-向量乘积以及矩阵-矩阵乘积等,这些都是线性代数中的基础运算,对于理解和应用机器学习算法至关重要。通过掌握这些基础知识,学生将能够更好地理解斯坦福大学机器学习课程中的核心概念,并为后续的学习打下坚实的基础。