第一讲:线性代数:线性方程组、矩阵、向量空间、线性无关

第一部分:概念

第二部分:矩阵运算

(λA)ij=λ(Aij)

第三部分:向量空间与群

笔记续


第二讲:线性代数:基与秩、线性映射、仿射空间

第一部分:基与秩

第二部分:线性映射

第三部分:基变换和变换矩阵

本节涵盖了将抽象线性映射表示为矩阵以及改变坐标系的机制。

1. 线性映射的变换矩阵

变换矩阵为抽象的线性映射提供了一个具体的计算表示,这是相对于所选基而言的。

2. 基变换矩阵

这是变换矩阵的一个特殊应用,用于在同一个向量空间内将一个向量的坐标从一个基转换到另一个基。这个过程等价于为恒等映射id:VV,其中 id(x)=x)寻找变换矩阵。

3. 线性映射的基变换定理

Change-of-Basis Theorem
该定理提供了一个公式,用于在改变线性映射的定义域和陪域的基(坐标系)时,计算新的变换矩阵。

4. 矩阵等价与相似

这些概念形式化了这样一种思想:不同的矩阵可以表示相同的底层线性映射,只是使用了不同的坐标系。

5. 线性映射的复合

第四部分:仿射空间与仿射子空间

虽然向量空间和子空间是基础,但它们受一个关键要求的限制:必须包含原点。仿射空间将这一思想推广到描述那些不一定穿过原点的几何对象,如直线和平面。

特征 向量子空间 (U) 仿射子空间 (L = p + U)
必须包含原点? (0 ∈ U) ,除非 p ∈ U
加法封闭? 。如果 u₁, u₂ ∈ U,则 u₁ + u₂ ∈ U 。通常,l₁ + l₂ ∉ L
标量乘法封闭? 。如果 u ∈ U,则 cu ∈ U 。通常,cl₁ ∉ L
几何示例 穿过原点的直线/平面。 任何被平移的直线/平面。
线性系统示例 Ax = 0 的解集。 Ax = b 的解集。

第五部分:超平面 (Hyperplanes)

超平面是将在2D空间中的线和3D空间中的平面的概念推广到任意维度向量空间的结果。它是一种极其重要且常见的特殊仿射子空间。

1. 核心直观

它的关键功能是将整个空间“切片”成两个半空间,使其成为分类问题中理想的决策边界

2. 超平面的两个等价定义

超平面可以用两种等价的方式定义:一种是代数的,一种是几何的。

定义1:代数定义(通过单个线性方程)

Rn中的一个超平面 H 是满足单个线性方程的所有点 x 的集合:

a1x1+a2x2++anxn=d

其中 a1,,an 是不全为零的系数,d 是一个常数。

使用向量表示法,这个方程变得更加紧凑:

aTx=d
定义2:几何定义(通过仿射子空间)

n维向量空间 V 中的一个超平面 H 是一个维度为n-1仿射子空间

H=p+U

其中:

3. 定义之间的联系

这两个定义是完全等价的。

4. 机器学习中的超平面

超平面是许多机器学习算法的核心,最著名的是支持向量机 (SVM)

第六部分:仿射映射 (Affine Mappings)

我们已经确定,形式为 φ(x) = Ax 的线性映射总是保持原点不变(即 φ(0) = 0)。然而,许多实际应用,特别是计算机图形学,需要包括平移的变换,这会移动原点。这种更一般的变换类别被称为仿射映射。

1. 核心思想:一个线性映射后跟一个平移

一个仿射映射本质上是一个线性映射和一个平移的复合。

2. 正式定义

从向量空间 V 到向量空间 W 的映射 f: V → W 被称为仿射映射,如果它可以写成以下形式:

f(x)=Ax+b

其中:

与线性映射的区别:

3. 仿射映射的关键性质

虽然仿射映射通常不是线性的(因为 f(x+y) ≠ f(x) + f(y)),但它们保留了几个关键的几何性质。

  1. 直线映射为直线: 仿射映射将一条直线变换为另一条直线(或者在退化情况下,如果直线的方向在 A 的零空间中,则变换为单个点)。

  2. 平行性被保留: 如果两条线是平行的,它们在仿射映射下的像也将是平行的。

  3. 长度比率被保留: 如果点 P 是线段 QR 的中点,那么它的像 f(P) 将是像线段 f(Q)f(R) 的中点。

  4. 仿射组合被保留: 这是仿射映射最基本的代数性质。如果一个点 y 是一组点 xᵢ 的仿射组合(即 y = ΣαᵢxᵢΣαᵢ = 1),那么它的像 f(y) 是像点 f(xᵢ)相同仿射组合

    f(αixi)=αif(xi),前提是αi=1

4. 齐次坐标:统一变换的技巧

在计算机图形学等领域,用单一的矩阵乘法来表示所有变换(包括平移)是非常理想的。标准形式 Ax + b 需要乘法和加法,这对于复合多个变换很不方便。

齐次坐标通过增加一个额外的维度,巧妙地解决了这个问题,有效地将一个仿射映射变成了更高维空间中的一个线性映射。

5. 总结

概念 线性映射 (Ax) 仿射映射 (Ax + b)
本质 旋转 / 缩放 / 剪切 线性变换 + 平移
保留原点? , f(0) = 0 , 通常 f(0) = b
保留线性组合?
保留什么? 直线、平行性、线性组合 直线、平行性、仿射组合
表示法 矩阵 A 矩阵 A 和向量 b
齐次坐标形式 [A00T1] [Ab0T1]

第三讲:解析几何:范数、内积、长度与距离、角度与正交性

第一部分:向量空间上的几何结构

在前面部分,我们建立了向量空间和线性映射的代数框架。现在,我们将为这些空间赋予几何结构,使我们能够形式化向量的长度、向量间的距离以及它们之间的角度等直观概念。这些概念由范数和内积来捕捉。

1. 范数 (Norms)

范数是向量“长度”或“大小”这一直观概念的形式化推广。

2. 内积 (Inner Products)

内积是一个比范数更基本的概念。它是一个函数,不仅允许我们定义欧几里得范数,还允许我们定义向量间的角度和正交性(垂直性)的概念。

3. 桥梁:从内积到几何

内积是向量空间内欧几里得几何的基础。所有关键的几何概念都可以从中导出。

第二部分:向量空间上的几何结构

1. 对称正定 (SPD) 矩阵与内积

在像Rn这样的有限维向量空间中,内积的抽象概念可以通过一类特殊的矩阵——对称正定 (SPD) 矩阵——来具体表示和计算。

第三部分:角度、正交性与正交矩阵

1. 角度与正交性

2. 正交矩阵

第四部分:度量空间与距离的正式定义

度量 (metric) 形式化了任何集合元素之间“距离”的直观概念。

1. 度量函数 (Metric Function)

2. 联系:从内积到度量

3. 为什么度量的概念有用?

它允许我们在远超标准欧几里得几何的背景下测量“距离”。

4. 空间层次总结

内积空间赋范空间度量空间拓扑空间

第五部分:正交投影

正交投影是一种基本操作,用于在给定子空间中找到与给定向量“最接近”的向量。

1. 正交投影的概念

U 是内积空间 V 的一个子空间,xV 是一个向量。x 到子空间 U 上的正交投影 πU(x)U 中与 x “最接近”的唯一向量。

这个投影 p=πU(x) 由两个基本性质定义:

  1. 隶属属性: pU
  2. 正交属性: (xp)U

2. 推导投影公式(法方程)

第1步:用基表示隶属属性
B 是一个以 U 的基向量为列的矩阵。那么存在唯一的系数向量 λ 使得:

p=Bλ

第2步:将正交属性表示为方程
(xp)U 的每个基向量的点积都必须为零,这可以紧凑地写成:

BT(xp)=0

第3步:组合并求解 λ
将第一个方程代入第二个方程:

BT(xBλ)=0

得到法方程 (Normal Equation)

(BTB)λ=BTx

3. 正交投影算法

  1. 找到基: 找到子空间 U 的一个基。
  2. 构成基矩阵 B
  3. 建立法方程: 计算 BᵀBBᵀx
  4. 求解 λ
  5. 计算投影 p 使用公式 p = Bλ

4. 特殊情况:标准正交基

如果 U 的基是标准正交的,那么 B 的列是标准正交的。此时:


第四讲:解析几何:标准正交基、正交补、函数内积、正交投影、旋转

第一部分:标准正交基与正交补

1. 标准正交基

2. 格拉姆-施密特过程:构造标准正交基

格拉姆-施密特过程是一个将任何线性无关向量集(一个基)转换为相同子空间的标准正交基的算法。

3. 正的概念从单个向量推广到整个子空间。

第二部分:函数内积、正交投影与旋转

1. 函数的内积

2. 正交投影

正交投影是解决最小二乘问题的几何基础。

3. 旋转

第三部分:正交投影详解

投影是一类至关重要的线性变换,广泛应用于图形学、编码理论、统计学和机器学习中。

1. 正交投影的重要性与概念

2. 投影的正式定义与性质

3. 投影到一维子空间(直线)

Image/Class/Mathematics-for-AI/5.png
Image/Class/Mathematics-for-AI/6.png
我们从最简单的情况开始推导投影公式:将一个向量投影到一条直线上。除非另有说明,我们都假设使用标准的点积作为内积。

4. 投影到一般子空间

Image/Class/Mathematics-for-AI/7.png
用于一维投影的三步法可以推广到任何 m 维子空间 URn

拓展:子空间之间的投影Projections between Subspaces

5. 核心应用 I:Gram-Schmidt正交化

Gram-Schmidt过程是构造一组标准正交基的经典算法,其核心思想就是反复利用正交投影
Image/Class/Mathematics-for-AI/8.png
Image/Class/Mathematics-for-AI/9.png
Image/Class/Mathematics-for-AI/10.png

拓展:Cholesky分解

6. 核心应用 II:投影到仿射子空间

到目前为止,我们讨论的都是投影到过原点的子空间。现在我们将其推广到不过原点的仿射子空间(例如,不过原点的直线或平面)。

7. 核心应用 III:投影与最小二乘解

Moore Penrose Pseudo inverse
正交投影为求解无解的线性方程组 Ax=b 提供了一个强大的几何框架,这构成了最小二乘法 (Least Squares Method) 的基础。

第四部分:旋转详解 (Rotations)

旋转是继投影之后的另一类重要的线性变换,它在几何学、计算机图形学和机器人学中扮演着核心角色。

1. 旋转的基本概念

2. R² 中的旋转

2.1 R² 旋转矩阵的推导:两种视角

视角一:基变换 (The "Columns are Transformed Basis Vectors" View)

这是从线性变换本质出发的标准推导方法。

视角二:极坐标与三角恒等式 (The "Direct Geometric" View)

这是一个更直接的几何证明,不依赖于基变换的思想。

  1. 表示向量: 将任意向量用极坐标表示:x=rcosϕ,y=rsinϕ
  2. 表示旋转: 将该向量旋转角度 θ,其角度变为 ϕ+θ。新坐标 (x,y) 为:x=rcos(ϕ+θ),y=rsin(ϕ+θ)
  3. 应用和角公式:
    • x=r(cosϕcosθsinϕsinθ)=xcosθysinθ
    • y=r(sinϕcosθ+cosϕsinθ)=xsinθ+ycosθ
  4. 写成矩阵形式:[xy]=[cosθsinθsinθcosθ][xy]

2.2 R² 旋转的应用与注意事项

3. R³ 中的旋转

三维空间中的旋转比二维更复杂,因为它必须围绕一个旋转轴 (axis of rotation) 进行。

3.1 3D旋转的方向约定:右手定则

为了定义“逆时针”旋转,我们使用右手定则 (Right-Hand Rule)

3.2 沿坐标轴的基本旋转

任何复杂的3D旋转都可以分解为沿三个主坐标轴(x, y, z)的一系列基本旋转。

  1. 绕 x 轴 (e1) 旋转 Rx(θ)

    • 描述: x 坐标保持不变,旋转发生在 yz 平面。
    • 矩阵:Rx(θ)=[1000cosθsinθ0sinθcosθ]
  2. 绕 y 轴 (e2) 旋转 Ry(θ)

    • 描述: y 坐标保持不变,旋转发生在 zx 平面。
    • 矩阵:Ry(θ)=[cosθ0sinθ010sinθ0cosθ]
  3. 绕 z 轴 (e3) 旋转 Rz(θ)

    • 描述: z 坐标保持不变,旋转发生在 xy 平面。
    • 矩阵:Rz(θ)=[cosθsinθ0sinθcosθ0001]

3.3 3D基本旋转矩阵的三角证明

3.4 3D序贯旋转 (Sequential Rotations)

4. 高维空间 (Rⁿ) 中的旋转:吉文斯旋转 (Givens Rotation)

5. 旋转的通用性质

第五讲:矩阵分解 (Matrix Decompositions)

第一部分:行列式与迹 (Determinant and Trace)

在深入研究复杂的矩阵分解之前,我们首先需要掌握两个描述方阵特性的基本标量:行列式

1. 行列式 (Determinant)

行列式是线性代数中的一个核心概念,它将一个方阵映射到一个唯一的实数,这个实数蕴含了关于该矩阵和其所代表的线性变换的重要信息。

1.1 行列式、可逆性与秩

行列式最直接、最重要的应用就是判断一个方阵是否可逆,以及它是否是满秩的。这三者是等价的。

1.2 行列式的几何意义:体积与方向

行列式最深刻的几何意义是它代表了由矩阵的列向量(或行向量)所张成的平行多面体 (parallelepiped)有向体积 (signed volume)

1.3 行列式的计算

计算行列式有多种方法,适用于不同类型和阶数的矩阵。


1.4 行列式的重要性质

A,BRn×nλR

1.5 行列式的理论与实践作用

2. 迹 (Trace)

迹是方阵的另一个重要标量,定义比行列式简单得多。

2.1 迹的性质

A,B 为方阵,α 为标量。

3. 特征多项式 (Characteristic Polynomial)

行列式和迹共同构成了定义特征多项式的基础,这是计算矩阵特征值的关键工具。

第二部分:特征值与特征向量 (Eigenvalues and Eigenvectors)

特征值和特征向量(简称“特征分析”)是线性代数中威力最强大的工具之一。它提供了一种全新的视角来理解和刻画一个方阵及其所代表的线性变换,揭示了变换最本质、最核心的特性。

1. 特征值与特征向量的定义与几何意义

1.1 定义

1.2 几何意义:变换下的“不变方向”

1.3 特征向量的非唯一性


2. 特征值的计算

2.1 计算原理与特征方程

如何系统地找到一个矩阵的特征值?这需要我们将特征值方程转化为一个我们熟悉的问题。

2.2 计算步骤示例

给定矩阵 A=(4213),我们来计算其特征值和特征向量。

第一步:求解特征多项式
我们计算特征多项式 pA(λ) 并令其为零:

pA(λ)=det(AλI)=det(4λ213λ)=(4λ)(3λ)21=127λ+λ22=λ27λ+10=(λ2)(λ5)

第二步:计算特征值
pA(λ)=0,我们得到特征方程的根,即矩阵 A 的特征值:

λ1=5,λ2=2

第三步:计算特征向量与特征空间
对于每一个特征值,我们求解方程 (AλI)x=0 来找到对应的特征向量。


3. 特征分析的核心概念

3.1 特征空间 (Eigenspace)

3.2 代数重数与几何重数 (Algebraic and Geometric Multiplicity)

重要关系: 对于任何一个特征值 λ1几何重数代数重数

3.3 特征向量的线性无关性

定理 1: 如果一个 n×n 矩阵 An互不相同的特征值 λ1,,λn,那么它们对应的特征向量 x1,,xn线性无关的。

更一般的定理 (Theorem 2): 如果一个 n×n 矩阵 Am 个不同的特征值 λ1,,λm,那么从每个特征空间中任取一个特征向量 x1,,xm,这组向量是线性无关的。

3.4 谱 (Spectrum)


4. 特征分析的几何直观

特征分析不仅是代数计算,它还提供了强大的几何直观,帮助我们理解线性变换的本质。

4.1 变换的分解:沿特征向量方向的拉伸

假设一个 n×n 矩阵 An 个线性无关的特征向量 v1,,vn(它们构成 Rn 的一个基)。

4.2 示例1:压缩与拉伸 (保积变换)

考虑矩阵 A1=(1/2002)

4.3 示例2:投影 (降维变换)

考虑矩阵 A2=(1111)


5. 亏损矩阵与广义特征向量 (Defective Matrices)

5.1 定义

5.2 广义特征向量 (课程范围外)

当一个矩阵是亏损的,我们无法找到一组由特征向量构成的基。为了处理这种情况,需要引入广义特征向量 (Generalized Eigenvectors) 的概念来构建一个完整的基(称为若尔当基 Jordan Basis)。


6. 总结:线性无关特征向量的数量

对于一个 n×n 的矩阵 A

  1. 如果 An 个不同的特征值

    • 那么它一定有 n 个线性无关的特征向量。
    • 此时 A 不是亏损的。
  2. 如果 A 有重复的特征值 (即不同的特征值数量 m<n):

    • 我们保证至少有 m线性无关的特征向量(每个不同特征值至少贡献一个)。
    • 线性无关特征向量的总数最多为 n
    • 总数是否达到 n,取决于每一个重复特征值的几何重数是否等于其代数重数
    • 如果存在任何一个特征值,其几何重数小于其代数重数,那么矩阵 A 就是亏损的,其线性无关特征向量的总数将严格小于 n

7. 谱定理与对称矩阵

到目前为止,我们讨论了适用于所有方阵的特征分析。然而,当矩阵具有特定结构时,例如对称性,特征分析会展现出非常优美和强大的性质。这些性质由谱定理所概括。

7.1 对称正定/半正定矩阵

在介绍谱定理之前,我们先引入一类非常重要的对称矩阵。

定理: 对于任何矩阵 ARm×n,由 S=AA 构造的矩阵 SRn×n 具有以下性质:

  1. S对称的 (Symmetric)
  2. S半正定的 (Positive Semidefinite)

补充说明: 如果矩阵 A 的列是线性无关的(即 rk(A)=n),那么 S=AA正定的 (Positive Definite)

证明:

7.2 谱定理 (Spectral Theorem)

谱定理: 如果一个矩阵 ARn×n实对称矩阵,那么它具有以下三个核心性质:

  1. 所有特征值都是实数
  2. 存在一个由 A 的特征向量组成的标准正交基 (Orthonormal Basis) 来张成整个空间 Rn
  3. A可正交对角化的 (Orthogonally Diagonalizable)

谱定理的证明要点:

7.3 正交对角化 (Orthogonal Diagonalization)

谱定理的第三点通常以矩阵分解的形式呈现,这是其最重要的应用之一。

谱定理 (矩阵形式): 任何一个实对称矩阵 ARn×n 都可以被分解为:

A=QΛQ

其中:

7.4 谱分解 (Spectral Decomposition)

正交对角化还可以写成一种“求和”形式,称为谱分解。

谱分解: 任何一个实对称矩阵 A 都可以表示为其特征值和特征向量外积的加权和:

A=i=1nλiuiui

其中:

7.5 示例:对称矩阵的正交对角化

考虑对称矩阵 A=(2112)

  1. 求特征值与特征向量:

    • det(AλI)=(2λ)21=λ24λ+3=(λ3)(λ1)=0
    • 特征值为 λ1=3,λ2=1
    • 对应的特征向量为 v1=(11),v2=(11)。(注意它们是正交的)
  2. 单位化特征向量:

    u1=12(11),u2=12(11)
  3. 构造 Q 和 Λ:

    Q=(1/21/21/21/2),Λ=(3001)
  4. 正交对角化: A=QΛQ

  5. 谱分解:

    A=3u1u1+1u2u2=3(1/21/21/21/2)+1(1/21/21/21/2)

8. 特征值与矩阵不变量的关系

特征值与矩阵的两个重要不变量——行列式 (Determinant)迹 (Trace) 之间存在着深刻的联系。

8.1 特征值与行列式

定理: 任何一个方阵 ARn×n行列式等于其所有特征值(包括复数和重根)的乘积

det(A)=i=1nλi

证明思路 (对于可对角化矩阵):

  1. 如果 A 可对角化,则 A=PΛP1
  2. det(A)=det(PΛP1)=det(P)det(Λ)det(P1)
  3. 因为 det(P1)=1/det(P),所以 det(A)=det(Λ)
  4. 对角矩阵 Λ 的行列式就是其对角元素的乘积,即所有特征值的乘积。

几何直观: 行列式描述了线性变换对“体积”(或面积)的缩放比例。特征值则描述了在各个特征方向上的缩放比例。变换对总体积的缩放,等于在各个独立方向上缩放比例的乘积。

8.2 特征值与迹

定理: 任何一个方阵 ARn×n(主对角线元素之和)等于其所有特征值(包括复数和重根)的

tr(A)=i=1nλi

证明思路 (对于可对角化矩阵):

  1. 利用迹的循环性质:tr(ABC)=tr(BCA)=tr(CAB)
  2. tr(A)=tr(PΛP1)
  3. B=P,C=ΛP1,则 tr(A)=tr((ΛP1)P)=tr(Λ)
  4. 对角矩阵 Λ 的迹就是其对角元素的和,即所有特征值的和。

非对称矩阵的补充说明:
尽管非对称矩阵不一定满足谱定理的优美性质(如特征值不一定是实数,特征向量不一定正交),但只要它们是可对角化的,上述关于变换分解、行列式、迹的结论依然成立。对称矩阵的特殊之处在于它保证了可对角化,并且是用一种更稳定、更具几何美感的正交矩阵来实现的。

拓展:鞍点的最速逃离方向 (The fastest escape direction for the stationed point)

9. Cholesky 分解 (Cholesky Decomposition)

Cholesky 分解是另一类重要的矩阵分解,它专门针对对称正定矩阵 (Symmetric Positive Definite, SPD),并且在数值计算和机器学习中因其高效性而被广泛使用。

9.1 定义与动机

对于一个正实数(例如 9),我们可以通过开方运算将其分解为两个相同的部分(9=33)。Cholesky 分解提供了类似的概念,可以看作是对称正定矩阵的“平方根”分解。

它将一个对称正定矩阵 A 分解为一个下三角矩阵 L 和其转置 L 的乘积。这种分解在处理多元高斯分布的协方差矩阵等场景中非常实用。

9.2 Cholesky 分解定理

定理 (Cholesky Decomposition): 任何一个对称正定矩阵 ARn×n 都可以被唯一地分解为:

A=LL

其中:

重要前提: Cholesky 分解仅当矩阵 A对称正定时才存在。

分解结构示例:

[a11a1nan1ann]=[l1100l21l220ln1ln2lnn][l11l21ln10l22ln200lnn]

9.3 计算方法与示例

1. 计算推导 (以 3x3 矩阵为例)

我们希望找到 A=LL 中的 L

[a11a12a13a21a22a23a31a32a33]=[l1100l21l220l31l32l33][l11l21l310l22l3200l33]=[l112l21l11l31l11l21l11l212+l222l31l21+l32l22l31l11l31l21+l32l22l312+l322+l332]

通过逐个对比矩阵两边的元素,我们可以按顺序求解 lij

这是一个递归过程,计算每个 lij 时,仅依赖于 A 中的元素和已经计算出的 l 元素。

2. 数值示例

对以下对称正定矩阵 A 进行 Cholesky 分解:

A=[422220203]
  1. 第一列:
    • l11=a11=4=2
    • l21=a21l11=22=1
    • l31=a31l11=22=1
  2. 第二列:
    • l22=a22l212=212=1=1
    • l32=a32l31l21l22=0(1)(1)1=1
  3. 第三列:
    • l33=a33(l312+l322)=3(12+(1)2)=32=1

最终得到 Cholesky 因子 L:

L=[200110111]

验证: LL=[200110111][211011001]=[422220203]=A

9.4 Cholesky 分解算法 (General Algorithm)

对于一个 n×n 的对称正定矩阵 A,其 Cholesky 因子 L 的元素可以通过以下公式按列或按行计算:

计算流程:
按列进行计算,从 j = 1n:

  1. 首先使用对角元素公式计算 ljj
  2. 然后,对于该列下方的所有元素 (i = j + 1n),使用非对角元素公式计算 lij

9.5 在机器学习中的应用

Cholesky 分解是机器学习中高效数值计算的关键工具,尤其适用于处理协方差矩阵等对称正定矩阵。

10. 特征分解与对角化 (Eigendecomposition and Diagonalization)

特征分解是将一个矩阵分解为由其特征值和特征向量组成的矩阵的过程。如果一个矩阵可以被特征分解,它就可以被对角化 (Diagonalize),这极大地简化了与该矩阵相关的计算。

10.1 可对角化矩阵 (Diagonalizable Matrix)

对角矩阵 (Diagonal Matrix) 是所有非主对角线元素都为零的矩阵。它具有非常优良的计算性质:

可对角化定义: 一个方阵 ARn×n 如果与一个对角矩阵 D 相似 (similar),则称 A可对角化的。也就是说,存在一个可逆矩阵 PRn×n 使得:

D=P1AP

对角化 A 的过程,本质上是为与 A 相关的线性变换找到了一个特殊的基——由 A 的特征向量组成的基。在这个基下,线性变换被简化为简单的缩放操作。

10.2 特征分解定理 (Eigendecomposition Theorem)

核心关系: 矩阵方程 AP=PD 是连接特征值/向量与对角化分解的桥梁。
P=[p1,p2,,pn] 是一个列向量为 pi 的矩阵, D 是一个对角线元素为 λi 的对角矩阵。

因此,AP=PD 等价于 Api=λipi 对所有 i=1,,n 成立。这意味着:P 的列向量必须是 A 的特征向量,D 的对角线元素是与之一一对应的特征值

定理 (特征分解/可对角化定理): 一个 n×n 的方阵 A 可以被分解为

A=PDP1

当且仅当 A 拥有 n线性无关的特征向量
此时,

不可对角化的矩阵: 如果一个 n×n 矩阵没有 n 个线性无关的特征向量,则称其为亏损矩阵 (Defective Matrix),此时它不能被对角化。这种情况通常发生在特征值有重根,且重根对应的线性无关特征向量数量小于其代数重数时。

10.3 谱定理 vs. 特征分解定理

特性 特征分解定理 (一般情况) 谱定理 (特殊情况)
适用对象 任何 n×n 方阵 A 仅限实对称矩阵 (A=A)
分解形式 A=PDP1 A=QΛQ (或 QΛQ1)
分解条件 必须n 个线性无关的特征向量 保证存在
特征值 可能是复数 保证是实数
特征向量矩阵 P 仅需可逆 (列向量线性无关) Q正交矩阵 (列向量标准正交)
关系 谱定理是特征分解定理在一个更强、性质更好的特例。 每个实对称矩阵都可对角化,并且是正交可对角化

10.4 对称矩阵的可对角化性

定理: 任何一个实对称矩阵 ARn×n 总是可以被对角化。

这是谱定理的直接推论。因为谱定理保证了:

  1. 实对称矩阵的所有特征值都是实数。
  2. 实对称矩阵总能找到 n 个线性无关的特征向量,这些特征向量甚至可以被构造成一个标准正交基
  3. 因此,总能找到一个正交矩阵 Q (其列是标准正交的特征向量) 和一个对角矩阵 Λ (其对角元是特征值),使得 A=QΛQ
  4. 由于 Q 是正交的,我们有 Q1=Q,所以分解也符合 A=QΛQ1 的形式,证明了对称矩阵总是可对角化的。

10.5 特征分解的几何解释

特征分解 A=PDP1 为我们提供了一个理解线性变换 xAx 的深刻几何视角。它将复杂的变换过程分解为三个简单的步骤:

  1. 切换到特征基 (Change of Basis): y=P1x

    • P1 将输入向量 x 从标准坐标系转换到由 A 的特征向量构成的“特征坐标系” (eigenbasis) 中,得到新坐标 y
  2. 沿轴缩放 (Scaling): z=Dy

    • 在特征坐标系中,线性变换 A 的作用变得极其简单:它只是将新坐标 y 的每个分量(即沿着每个特征向量方向的分量)乘以对应的特征值 λi。这是一个纯粹的、沿坐标轴的拉伸或压缩。
  3. 切换回标准基 (Change back to Original Basis): Ax=Pz

    • P 将经过缩放后的向量 z 从特征坐标系转换回标准坐标系,得到最终的变换结果 Ax

总结: 特征分解揭示了任何可对角化的线性变换的本质——它无非是在一个特定(特征向量)的坐标系下的**“切换基 → 缩放 → 切换回来”**三部曲。

10.6 非对称矩阵的特征分解示例

我们对一个非对称矩阵 B 进行特征分解,即使它没有对称矩阵的优美性质,但只要它可对角化,分解过程依然适用。

考虑非对称矩阵:

B=[1234]

第一步:计算特征值
求解特征方程 det(BλI)=0

det(1λ234λ)=(1λ)(4λ)(2)(3)=45λ+λ26=λ25λ2=0

利用求根公式,得到特征值:

λ1,2=(5)±(5)24(1)(2)2=5±25+82=5±332

所以,λ1=5+332λ2=5332

第二步:计算特征向量
对每一个特征值 λ,求解方程 (BλI)v=0

第三步:构建 P 和 D 矩阵
将特征向量作为列向量构建矩阵 P,将对应的特征值放入对角矩阵 D

P=[v1,v2]=[21λ121λ211],D=[λ100λ2]

最终,矩阵 B 的特征分解为:

B=PDP1

10.7 谱定理与对角化定理总结

特性 谱定理 (Spectral Theorem) 对角化定理 (Diagonalization Theorem)
适用矩阵 实对称矩阵 (A=A) 任何可对角化的方阵
可对角化性 总是可以对角化 不一定,仅当存在 n 个线性无关的特征向量时
特征值 保证为实数 可能是复数
特征向量 存在一组标准正交 (orthonormal) 的特征向量基 只需要线性无关 (linearly independent),不要求正交
分解形式 A=QΛQ A=PDP1
变换矩阵 Q正交矩阵 (Q1=Q) P 只是一个可逆矩阵

核心区别总结:


11. 特征分解的应用

特征分解之所以重要,不仅因为它揭示了矩阵变换的内在几何结构,还因为它为许多复杂的矩阵运算提供了高效的计算途径。

11.1 矩阵的幂运算 (Matrix Powers)

直接计算一个矩阵的高次幂 Ak 是非常耗时的,需要进行 k1 次矩阵乘法。如果矩阵 A 是可对角化的,即 A=PDP1,我们可以极大地简化这个过程。

Ak=(PDP1)k=(PDP1)(PDP1)(PDP1)

由于矩阵乘法满足结合律,中间的 P1P 项会相互抵消(P1P=I):

Ak=PD(P1P)D(P1P)DP1=PDIDIDP1=PDkP1

因此,我们得到:

Ak=PDkP1

这个公式的威力在于,计算对角矩阵的幂 Dk 非常简单,只需将对角线上的每个元素各自进行 k 次方即可:

Dk=[λ1k000λ2k000λnk]

结论: 计算 Ak 的过程从多次矩阵乘法转变为一次特征分解、一次对角矩阵幂运算和两次矩阵乘法,当 k 很大时,计算效率显著提升。

11.2 行列式计算 (Determinant Calculation)

我们也可以利用特征分解来高效计算行列式,并再次验证行列式与特征值的关系。
假设矩阵 A 可被分解为 A=PDP1,利用行列式的性质 det(XY)=det(X)det(Y)det(P1)=1/det(P)

det(A)=det(PDP1)=det(P)det(D)det(P1)det(A)=det(P)det(D)1det(P)=det(D)

而对角矩阵 D 的行列式就是其对角元素的乘积,即所有特征值的乘积。

det(A)=det(D)=i=1nλi

这再次证明了一个矩阵的行列式等于其所有特征值的乘积

12. 展望:奇异值分解 (Singular Value Decomposition, SVD)

特征分解是一个强大有力的工具,但它有一个根本性的限制:它只适用于方阵

为了将矩阵分解的思想推广到任意形状的非方阵(例如 m×n 矩阵),我们需要一种更通用的分解方法。这就是我们将在下一讲中介绍的奇异值分解 (SVD)。SVD 是线性代数中最重要、应用最广泛的分解之一,可以看作是特征分解对任意矩阵的推广。

第六讲:奇异值分解 (SVD), 矩阵近似

12. 奇异值分解 (Singular Value Decomposition, SVD)

奇异值分解是线性代数中最重要、最普适的矩阵分解方法,有时被称为“线性代数基本定理”。它将特征分解的思想从方阵推广到了任意形状的矩阵。

12.1 SVD 定理

SVD分解过程

对于任何一个 m×n 的实数矩阵 A(秩为 r),它都可以被分解为三个矩阵的乘积:

A=UΣVT

其中:

12.2 SVD 的几何直观解释

SVD 将一个线性变换 A:RnRm 分解为三个基本几何操作:

  1. 输入空间的基变换 (旋转/反射): 矩阵 VT 作用于输入向量。由于 V 是正交矩阵,这对应于一次旋转或反射。它将输入空间的标准基对齐到一组新的、更“合适”的标准正交基(即右奇异向量 V 的列)。
  2. 缩放与维度变换: 伪对角矩阵 Σ 沿着新的坐标轴对向量进行缩放(乘以对应的奇异值 σi),并处理维度的变化(如果 m>n,会增加零维度;如果 m<n,会丢弃一些维度)。
  3. 输出空间的基变换 (旋转/反射): 矩阵 U 作用于变换后的向量。这对应于在输出空间中的一次旋转或反射,将经过缩放和维度变换后的向量对齐到最终的位置。

12.3 SVD 的构造方法

SVD 与特征分解密切相关。构造 SVD 的关键技巧是利用原矩阵 A 构造出对称半正定矩阵,然后利用谱定理。

  1. 构造并分析 ATA (求解 V 和 Σ):

    • ATA 是一个 n×n 的对称半正定矩阵。根据谱定理,它可以被正交对角化:ATA=PDPT
    • 另一方面,如果我们假设 SVD 存在 (A=UΣVT),那么:ATA=V(ΣTΣ)VT
    • 比较这两个表达式,我们得出结论:
      • 右奇异向量 V 就是 ATA特征向量矩阵 P
      • 奇异值 σᵢ 的平方等于 ATA特征值 λᵢ,即 σi2=λiσi=λi
  2. 构造并分析 AAT (求解 U):

    • 类似地,AAT 是一个 m×m 的对称半正定矩阵。
    • 通过与 AAT 的特征分解 SDST 比较,可以得出:
      • 左奇异向量 U 就是 AAT特征向量矩阵 S
  3. 更高效的构造方法与奇异值方程:

    • 在实践中,我们通常只计算一个(比如 ATA)来得到 Vσi
    • 然后,利用奇异值方程 (Singular Value Equation) 来直接计算 U 的列向量:Avi=σiui
    • 因此,对于所有非零奇异值 σi>0ui=1σiAvi
    • 这个方程也揭示了 SVD 的一个深刻联系:A 将它的一个右奇异向量 vi 映射为对应左奇异向量 ui 的一个倍数,缩放因子就是奇异值 σi

重要注记: 这种通过构造 ATA 来计算SVD的方法主要用于理论推导。在实际数值计算中,由于计算 ATA 可能会导致精度损失,通常会采用更直接、更稳健的算法(如 Golub-Reinsch 算法)。


13. 矩阵近似与SVD的应用

SVD 最强大的应用之一是低秩近似 (Low-Rank Approximation),它构成了现代数据压缩、降噪和推荐系统的数学基础。

13.1 SVD作为秩-1矩阵之和

任何一个秩为 r 的矩阵 A 都可以被精确地表示为 r秩-1矩阵的加权和:

A=i=1rσiuiviT

解释:
SVD 将一个复杂的矩阵分解成了若干个简单的、带有权重的“基本模式”的叠加。奇异值的大小代表了每个“基本模式”的重要性。

13.2 最佳低秩近似:Eckart-Young定理

如果我们不加总所有的 r 项,而只取其中最重要的前 k 项(k<r),我们就能得到一个对原矩阵 A秩-k近似矩阵 A^(k)

A^(k)=i=1kσiuiviT

这个近似为什么好?Eckart-Young定理给出了答案。

意义:

  1. 最优性保证: SVD提供了一种构造最佳低秩近似的“配方”。
  2. 误差可控: 我们可以通过观察奇异值的大小来预估近似带来的误差。如果 σk+1 很小,说明这个秩-k近似的质量非常高。
  3. 应用: 这正是SVD被广泛用于数据压缩数据去噪降维(如主成分分析PCA)的理论基础。

13.3 SVD的潜在结构解释能力

第七讲:向量微积分 (Vector Calculus)

讲座主题: 单变量函数微分,偏微分与梯度,向量值函数的梯度,矩阵的梯度,梯度计算实用恒等式


第一部分:从单变量到多变量微积分

本讲座将从最基础的微积分概念开始,逐步推广到处理向量和矩阵的多元微积分,这对于理解和实现机器学习中的优化算法至_关重要。

1. 核心概念回顾

1.1 函数 (Functions)

1.2 梯度在机器学习中的作用


2. 单变量函数的微分 (Differentiation of Univariate Functions)

本节回顾了单变量微积分的基础。


3. 泰勒级数 (Taylor Series)

泰勒级数是微积分中一个极其强大的工具,它允许我们将一个复杂的、可微的函数用一个无穷多项式来表示,从而在局部近似和分析函数的行为。

3.1 泰勒多项式 (Taylor Polynomial)

3.2 泰勒级数与麦克劳林级数

3.3 泰勒级数与幂级数的关系

第二部分:多元函数的微分

现在,我们将微积分的思想从单变量函数推广到处理多个变量的函数,这是向量微积分的核心。

4. 偏导数与梯度

4.1 偏导数 (Partial Derivative)

4.2 梯度 (Gradient)


5. 雅可比矩阵与多元链式法则

5.1 雅可比矩阵 (Jacobian Matrix)

5.2 多元链式法则 (Chain Rule for Multivariate Functions)

5.3 核心求导示例

6. 矩阵的梯度 (Gradients of/with respect to Matrices)

6.1 概念与挑战

6.2 核心示例推导

第三部分:矩阵微积分实用恒等式与证明

直接通过定义计算矩阵和向量的梯度通常非常繁琐。在实践中,我们更多地是依赖于一些已经证明的、可以直接套用的求导恒等式。本节将介绍一些在机器学习和优化中最重要的恒等式。

7. 核心求导恒等式

在下面的公式中,我们假设变量 X 是一个矩阵,x, a, b 是向量。

7.1 涉及转置、迹和行列式的恒等式

7.2 涉及逆矩阵和双线性/二次型的恒等式

这些恒等式构成了矩阵微积分的“公式表”,在推导机器学习算法的梯度时,可以直接引用,从而避免了繁琐的逐元素求导。

8. 核心求导恒等式与证明

8.1 线性形式的梯度 (Gradient of a Linear Form)

8.2 双线性形式的梯度 (Gradient of a Bilinear Form)

8.3 二次型的梯度 (Gradient of a Quadratic Form)

第八讲:反向传播与自动微分,高阶导数,线性化与多元泰勒级数,使用梯度下降进行优化

第一部分:反向传播与自动微分 (Backpropagation and Automatic Differentiation)

机器学习 (Machine Learning)

在机器学习中,我们通过优化算法(如梯度下降)来调整模型参数,而这些算法的核心就是计算目标函数(损失函数)相对于模型参数的梯度。对于深度神经网络这样复杂的复合函数,如何高效、准确地计算梯度,是一个至关重要的问题。

1. 梯度计算的挑战

2. 解决方案:反向传播与自动微分

为了解决这个挑战,我们不直接求解最终的梯度表达式,而是采用更智能的算法。

3. 深度网络中的梯度计算

在这个层层嵌套的结构中,计算最终损失函数相对于任何一层参数(如 Ai1)的梯度,都需要系统性地、从后向前地应用链式法则,这正是反向传播算法所做的事情。

4. 反向传播的核心思想:逐层计算与梯度复用

4.1 训练目标与梯度

4.2 链式法则的系统性应用

下图展示了如何利用链式法则来系统性地计算每一层的梯度。

4.3 反向传播的精髓:梯度复用

观察上面的梯度计算链条,我们可以发现一个极其重要的模式。

关键洞察:
计算 Lθi1 时,其公式中的巨大括号部分 (LfKfi+1fi)与计算 Lθi 时完全一样!

这个括号里的部分,其实就是损失 L 相对于第 i 层输出 fi 的梯度,我们称之为“误差信号”或“上游梯度” Lfi

算法流程 (反向传播):

  1. 从最后一层开始: 计算 LfK
  2. 计算最后一层的参数梯度: LθK=LfKfKθK
  3. 向后传播梯度: 计算损失相对于倒数第二层输出的梯度:LfK1=LfKfKfK1
  4. 计算倒数第二层的参数梯度: LθK1=LfK1fK1θK1
  5. 重复: 不断地将“上游梯度” Lfi 向后乘以一个“本地雅可比矩阵” fifi1,得到新的“上游梯度” Lfi1,然后用它来计算当前层的参数梯度。

结论:
反向传播算法的本质就是高效地复用中间计算结果。通过从后向前逐层计算和传递“误差信号”(即损失对各层输出的梯度),它避免了为每个参数从头开始计算整个链式法则的巨大冗余,从而使得训练深度神经网络在计算上成为可能。

5. 自动微分 (Automatic Differentiation, AD)

自动微分是一套更通用、更底层的技术,而反向传播是它在神经网络中的一种具体实现。

5.1 什么是自动微分?

5.2 计算图 (Computational Graph)

为了系统性地应用链式法则,AD 将一个函数的计算过程表示为一个有向无环图 (DAG),即计算图

5.3 自动微分的两种模式:前向模式 vs. 反向模式

AD 主要有两种不同的计算策略,它们的区别在于应用链式法则的顺序。

结论:
反向模式自动微分(即反向传播)是深度学习能够成功训练拥有海量参数的模型的计算基石。它使得我们能够以仅仅比一次前向传播多一点的计算成本,高效地计算出损失函数相对于所有参数的精确梯度。

6. 反向传播的具体流程:在计算图上应用链式法则

6.1 步骤一:前向传播与局部导数计算

在反向传播开始之前,我们需要完成两件事:

  1. 前向传播 (Forward Pass): 从输入 x 开始,按照计算图的顺序,一步步计算出所有的中间变量 (a, b, c, ...),直到最终的输出 f。在这个过程中,所有中间变量的值都必须被存储下来,因为它们在反向传播时会被用到。

  2. 计算局部导数 (Local Derivatives): 对于计算图中的每一个节点(或说每一个基本运算),我们都可以直接计算出其输出相对于其直接输入的导数。这些被称为“局部导数”。

    • 例如,对于 a = x²,局部导数是 ∂a/∂x = 2x
    • 对于 c = a + b,局部导数是 ∂c/∂a = 1∂c/∂b = 1
    • 这些局部导数非常简单,它们的计算公式是预先知道的。

6.2 步骤二:反向传播梯度

这是反向传播算法的核心。我们从最终的输出 f 开始,从后向前地计算损失(或最终输出)相对于每一个中间变量和输入的梯度。

fd=fffd=11=1fe=fffe=11=1fc=fd12c+fe(sin(c))fb=fc1fa=fbea+fc1fx=fa2x

在每一步,我们都复用了上一步已经计算出的“上游梯度”(如 ∂f/∂c),这正是其高效的原因。

6.3 自动微分的形式化表述

我们可以将这个过程更形式化地描述。

7. 自动微分的计算复杂度

第二部分:高阶导数与海森矩阵 (Higher-Order Derivatives and Hessian Matrix)

在掌握了一阶导数(梯度)之后,我们自然地会想:二阶导数在多元函数中是什么样的?它又有什么用?这就引出了海森矩阵的概念。

7. 高阶偏导数 (Higher-Order Partial Derivatives)

8. 海森矩阵 (Hessian Matrix)

8.1 定义

8.2 对称性:克莱罗定理 (Clairaut's Theorem)

8.3 海森矩阵的重要性与几何意义

用二阶导的优化方法 (The optimization method using the second-order derivative)

海森矩阵为我们提供了超越梯度的“二阶信息”,使我们能够更深入地分析损失函数的几何形状,并设计出更强大的优化算法(如牛顿法)。

第三部分:线性化与多元泰勒级数 (Linearization and Multivariate Taylor Series)

在理解了梯度和海森矩阵之后,我们可以将单变量的泰勒级数思想推广到多变量函数,这为理解和设计更高级的优化算法(如牛顿法)提供了理论基础。

9. 函数的线性化近似 (Linearization)

10. 多元泰勒级数 (Multivariate Taylor Series)

10.1 定义

10.2 高阶导数张量 Dxkf(x0)

Dxkf(x0) 代表了函数 f 在点 x0k 阶(全)导数,它是一个 k 阶张量 (k-th order tensor)

10.3 展开前几项

虽然通项公式使用了抽象的张量表示,但在实际应用中,我们通常只关心到二阶的展开。让我们把前几项写出来,以便更好地理解:

10.4 二阶泰勒展开

将这些项组合起来,我们就得到了在优化中最常用、最重要的二阶多元泰勒展开

f(x)f(x0)+(xf)(x0)(xx0)+12(xx0)TH(x0)(xx0)

这个公式用一个二次函数来近似原函数 f(x)x0 附近的形状,它比单纯的线性近似要精确得多,是牛顿法等二阶优化算法的理论基础。

第四部分:使用梯度下降进行优化 (Optimization Using Gradient Descent)

现在,我们将利用前面建立的微积分工具,特别是梯度和泰勒展开,来正式探讨机器学习中最核心的优化过程。

11. 优化的基本思想

12. 梯度下降法 (Gradient Descent)

梯度下降法是回答“如何确定更新方向”这个问题的最基本、最重要的方法。

12.1 核心思想:最速下降

12.2 更新规则

梯度下降的迭代更新规则如下:

θk+1=θkηθL(θk)

其中:

12.3 学习率 η 的重要性

学习率的选择对优化过程至关重要:

12.4 梯度下降的几何解释:线性近似

梯度下降的更新规则,可以从对损失函数的一阶泰勒展开(线性近似)来理解。在 θk 附近:

L(θ)L(θk)+(L(θk))T(θθk)

为了让 L(θ) 尽可能地小,我们需要让第二项 (L(θk))T(θθk) 尽可能地负。根据柯西-施瓦茨不等式,当位移向量 (θθk) 的方向与梯度向量 L(θk) 的方向正好相反时,这个点积的负值最大。

因此,选择更新方向为 L(θk) 是在局部线性近似下最贪心、最有效的选择。

13. 多元泰勒级数 (Multivariate Taylor Series)

13.1 定义

这个公式看起来很抽象,其中的关键是理解 Dxkf(x0)δk 的含义,以及它们之间如何“相乘”。

13.2 高阶导数张量 Dxkf(x0)

Dxkf(x0) 代表了函数 f 在点 x0k 阶(全)导数,它是一个 k 阶张量 (k-th order tensor)

导数阶数与对象类型的关系总结:

阶数 (Order) 导数对象 (Object) 形状 (Shape) 几何/物理意义
1st 梯度 (Gradient) 向量 (n) 局部最陡峭的斜坡
2nd 海森矩阵 (Hessian) 矩阵 (n×n) 局部斜坡的变化率 (曲率)
3rd 三阶导数张量 三阶张量 (n×n×n) 局部曲率的变化率

13.3 位移向量的张量幂 δk

在单变量泰勒级数中,我们有 (xx0)k 这一项。在多变量中,对应的项是位移向量 δk 次张量积 (k-th tensor power),记为 δk (幻灯片中简化记为 δk)。这是一个 k 阶张量,由向量 δ 的外积构造而成。

13.4 展开前几项 (将张量运算具体化)

现在我们可以理解多元泰勒级数中每一项的真正含义了。每一项都是一个 k 阶导数张量和一个 k 阶位移张量的缩并 (Contraction),结果是一个标量。

D0f(x0)[δ0]=f(x0) D1f(x0)[δ1]=i=1Dfxiδi=(f)Tδ D2f(x0)[δ2]=i=1Dj=1DHijδiδj=δTHδ

Image/Class/Mathematics-for-AI/16.png Image/Class/Mathematics-for-AI/17.png

13.5 完整展开 (Full Series to Order n)

第五部分:连续优化 (Continuous Optimization)

在机器学习中,“训练模型”的本质通常是一个连续优化问题。我们试图找到一组连续变化的参数,使得某个衡量模型好坏的指标(损失函数)达到最优。

14. 优化的基本框架

15. 连续优化的主要分支

16. 全局最小值 vs. 局部最小值

对于非凸函数(如大多数深度学习的损失函数),优化算法通常只能保证找到局部最小值 (local minimum),而不能保证找到全局最小值 (global minimum)

17. 使用梯度下降进行优化 (Optimization Using Gradient Descent)

梯度下降法是解决上述优化问题最基本、也是最重要的迭代算法之一。它是绝大多数现代优化算法的基石。

17.1 梯度下降概览

机器学习 (Machine Learning)#2.3.1 核心优化算法:梯度下降及其变体

17.2 梯度下降算法

Image/Class/Mathematics-for-AI/18.png

17.3 步长/学习率 (Step-Size / Learning Rate) 的选择

机器学习 (Machine Learning)#2.3.2.3 优化再进阶:自适应学习率 (Adaptive Learning Rate)

在梯度下降的更新规则 x_i+1 = x_i - γ_i * g_i 中,步长 γ (通常在机器学习中称为学习率) 的选择至关重要,它直接决定了算法的性能和收敛性。

17.4 调整步长的启发式策略 (Heuristics)

在实践中,有一些简单的启发式方法可以用来动态调整步长 γ

  1. 如果更新后,函数值反而增加了 (f(xi+1)>f(xi)):

    • 问题: 这说明步长 γ 太大了,导致了“矫枉过正”。
    • 策略: 撤销 (undo) 这一步的更新(退回到 xi),然后减小步长 γ(例如,γ = γ / 2),再重新尝试更新。
  2. 如果更新后,函数值减小了 (f(xi+1)<f(xi)):

    • 情况: 这是一个成功的更新步骤。
    • 策略: 我们可以稍微增大步长 γ(例如,γ = γ * 1.1),以期在后续步骤中能更快地收敛。

17.5 示例:用梯度下降求解线性方程组

梯度下降不仅可以用于机器学习中的复杂损失函数,也可以用来求解经典的线性方程组 Ax = b

18. 动量梯度下降法 (Gradient Descent with Momentum)

机器学习 (Machine Learning)#2.3.1.3 动量法 (Momentum)

标准梯度下降法虽然直观,但在某些常见的优化场景下效率低下。动量法是对其一个非常重要且有效的改进。

18.1 引入动量的动机

18.2 动量法的核心思想

18.3 动量法的更新规则

动量法通过维护一个梯度的移动平均值 (moving average) 来实现“记忆”功能。

在每一次迭代 i,更新步骤是当前梯度和之前更新量的线性组合:

动量法的优势:

动量法是现代深度学习优化器(如 SGD with Momentum, Adam)的一个核心组成部分。

19. 随机梯度下降 (Stochastic Gradient Descent, SGD)

机器学习 (Machine Learning)#2.3.1.2 批量大小的选择 (The Choice of Batch Size)

在处理大规模数据集时,标准的(批次)梯度下降法会遇到一个致命的瓶颈:计算成本。随机梯度下降及其变体是解决这个问题的核心方法。

19.1 从批次梯度下降到随机梯度下降

19.2 小批量 (Mini-batch) 与随机梯度下降

1.9.3 批量大小 (Batch Size) 的权衡与实践

第九讲:约束优化与拉格朗日乘子,凸优化

第一部分:约束优化与拉格朗日乘子 (Constrained Optimization and Lagrange Multipliers)

在上一讲中,我们主要讨论了无约束优化,即在整个参数空间中自由地寻找函数的最小值。然而,在许多实际问题中,参数的取值会受到各种约束 (constraints) 的限制。

1. 约束优化问题

2. 处理约束的朴素思想与拉格朗日乘子的动机

3. 拉格朗日函数与拉格朗日乘子

4. 拉格朗日对偶性:原问题与对偶问题

拉格朗日乘子法最强大的地方在于它引入了对偶性 (Duality)。它允许我们将一个原始的、可能很难解决的优化问题(原问题),转化为一个与之相关的、但可能更容易解决的新问题(对偶问题)。

5. 弱对偶性与极小化极大不等式

原问题和对偶问题之间存在一个基本且恒成立的关系,称为弱对偶性 (Weak Duality)

6. 为什么对偶性有用?

  1. 提供下界与最优性证明:

    • 对偶问题提供了一个衡量我们当前解有多好的标尺。原问题的任何一个可行解的目标函数值 f(x) 与对偶问题的任何一个可行解的目标函数值 D(λ) 之间的差 f(x)D(λ),被称为对偶间隙 (duality gap)
    • 这个间隙告诉我们,我们找到的 f(x) 最多比全局最优解 p 大多少。如果这个间隙为零,我们就找到了全局最优解。
  2. 计算上的便利性:

    • 在很多情况下,对偶问题比原问题更容易求解
    • 例如,对偶问题可能会有更少的变量,更好的数学性质(例如,对偶函数总是凹函数,无论原问题是否是凸的),或者具有可以分解为多个子问题的优美结构。
    • 在许多大规模机器学习问题中(如支持向量机 SVM),求解其对偶问题远比直接求解原问题高效。
  3. 强对偶性 (Strong Duality):

    • 在某些“良好”的情况下(特别是对于凸优化问题,并满足一些约束规范,如Slater条件),弱对偶性中的不等号可以取等号,即 p=d
    • 这就是强对偶性。当强对偶性成立时,求解对偶问题就完全等价于求解原问题。我们可以通过解决更容易的对偶问题来获得原问题的最优解。

7. 求解拉格朗日对偶问题 (可微情况)

当我们处理的函数 f(x)gi(x) 都是可微的,我们可以采用一个系统性的步骤来求解对偶问题。

求解流程:

  1. 构造拉格朗日函数:
    写出拉格朗日函数 L(x,λ)=f(x)+i=1mλigi(x)

  2. 求解对偶函数 D(λ):

    • 回忆对偶函数的定义:D(λ)=minxL(x,λ)
    • 这是一个关于 x 的无约束优化问题。为了找到最小值,我们将 Lx 求梯度,并令其为零:xL(x,λ)=0
    • 从这个方程中,解出最优的 x,这个解通常会是 λ 的一个函数,即 x(λ)
  3. 得到对偶函数表达式:

    • 将上一步解出的 x(λ) 代回到拉格朗日函数 L 中,消去 x
    • 得到的结果就是一个只包含对偶变量 λ 的函数,这正是对偶函数 D(λ) 的显式表达式。
  4. 求解对偶问题:

    • 现在我们有了对偶函数 D(λ),我们需要解决对偶问题:maxλD(λ)subject toλ0
    • 这是一个新的、关于 λ 的约束优化问题。我们可以使用梯度上升法或其他优化技术来求解它。

8. 处理等式约束 (Equality Constraints)

到目前为止,我们只考虑了不等式约束 gi(x)0。现在我们将其推广到包含等式约束 hj(x)=0 的情况。

问题形式:

minxf(x)subject togi(x)0,i=1,,mhj(x)=0,j=1,,p

处理方法:
一个等式约束 hj(x)=0 在逻辑上等价于两个不等式约束同时成立:

hj(x)0andhj(x)0

我们可以为这两个不等式分别引入拉格朗日乘子 μj+μj,并要求它们都大于等于零。拉格朗日函数中对应的项为:

+μj+hj(x)+μj(hj(x))=+(μj+μj)hj(x)

现在,我们令 νj=μj+μj。因为 μj+μj 可以是任何非负实数,它们的差 νj 就可以取任何实数值(正、负、零都可以)。

结论与规则总结:
这导出了一个非常重要的规则,用于区分不同类型约束所对应的拉格朗日乘子:

在构造包含两种约束的拉格朗日函数时,这个区别至关重要:

L(x,λ,ν)=f(x)+i=1mλigi(x)+j=1pνjhj(x)

并且在求解对偶问题时,我们需要满足 λi0,而对 νj 没有符号要求。这对于后续推导 KKT 条件是必不可少的一步。

第二部分:凸优化 (Convex Optimization)

在一般性的(非凸)优化问题中,我们通常只能保证找到局部最优解。然而,有一类特殊的优化问题,它具有非常优美的性质,能够保证我们找到的解就是全局最优解。这就是凸优化

9. 凸优化与强对偶性

为了理解凸优化,我们首先需要定义什么是凸集和凸函数。

10. 凸集 (Convex Set)

11. 凸函数 (Convex Function)

12. 连接凸函数与凸集

凸函数和凸集是凸优化的一体两面,它们之间有着紧密的联系。

13. 凸性与导数的关系

对于可微函数,我们可以用其导数来更方便地判断其是否为凸函数。

14. 保持凸性的运算

凸性在很多运算下是封闭的,这使得我们可以通过组合简单的凸函数来构建更复杂的凸函数。

15. 凸优化问题的正式总结

一个约束优化问题:

minxf(x)subject togi(x)0,i=1,,mhj(x)=0,j=1,,p

被称为凸优化问题,如果它满足:

  1. 目标函数 f(x) 是一个凸函数
  2. 所有不等式约束函数 gi(x) 都是凸函数
  3. 所有等式约束函数 hj(x) 都是仿射函数 (affine),即 hj(x)=ajTxbj。(因为只有仿射函数的水平集 hj(x)=0 才能保证是凸集)。

16. 示例

16.1 最小二乘问题

经典的无约束最小二乘问题 (Least Squares Problem) 是一个典型的凸优化问题。

minxRNyAx22

16.2 最小范数问题 (Minimum Norm Problem)

另一个经典的凸优化问题是最小范数问题

问题形式:

minxRNx2subject toAx=y

(最小化 x2 与最小化 x22 是等价的,后者在计算上更方便)

直观解释: 在所有满足线性方程组 Ax=y 的解中,找到那个长度最短的解。

这是一个凸优化问题吗?
根据凸优化问题的定义,我们需要验证两点:

  1. 目标函数 f(x)=x2 是一个凸函数。
  2. 约束定义的可行域 {x|Axy=0} 是一个凸集。

证明 1: 目标函数 f(x)=x2 是凸函数

证明 2: 可行域 {x|Ax=y} 是凸集

最终结论:
由于最小范数问题的目标函数是凸的,且其约束定义的可行域也是一个凸集,因此最小范数问题是一个标准的凸优化问题

第三部分:概率与分布 (Probability and Distributions)

概率论是机器学习的基石,它为我们提供了一套在不确定性下进行推理和建模的数学语言。

17. 概率论的核心概念

  1. 概率空间 (Probability Space): 这是量化概率的基础框架,它由三个部分组成:

    • 样本空间 (Sample Space) Ω: 一个实验 (experiment) 所有可能结果 (outcomes) 的集合。
      • 示例: 抛掷两枚硬币,Ω={hh,ht,th,tt}
    • 事件空间 (Event Space) A: 样本空间 Ω 的子集构成的集合。每一个子集被称为一个事件 (event)
      • 示例: 事件“至少有一次正面朝上”对应于子集 {hh,ht,th}
    • 概率 (Probability) P: 一个函数,它为事件空间中的每一个事件 BA 指派一个数值 P(B),表示事件 B 发生的概率。
  2. 随机变量 (Random Variables):

    • 定义: 一个随机变量 X 是一个函数,它将样本空间 Ω 中的每一个结果映射到一个更方便(通常是数值)的空间 T 中。
    • 作用: 它为我们提供了一种用数字来描述随机实验结果的方式。
    • 示例: 在抛掷两枚硬币的实验中,我们可以定义一个随机变量 X 为“正面朝上的次数”。
      • X(hh)=2
      • X(ht)=1
      • X(th)=1
      • X(tt)=0
      • 这里的目标空间是 T={0,1,2}
  3. 分布/定律 (Distribution/Law):

    • 它描述了与一个随机变量所有可能取值相关联的概率。例如,上面例子中 X 的分布就是 P(X=0),P(X=1),P(X=2) 的值。

18. 事件的关系与概率运算

我们可以使用维恩图 (Venn Diagrams) 来直观地表示事件之间的关系。

19. 离散随机变量与概率质量函数 (PMF)

对于一个取值为离散的随机变量,其分布由概率质量函数 (Probability Mass Function, PMF) 描述。PMF 为该随机变量的每一个可能取值,都指派一个特定的概率。

20. 通过随机变量和原像来理解概率

随机变量 X 为我们提供了一个关键的桥梁,它将原始、可能很复杂的样本空间 Ω 上的概率,与更简洁、更具数学意义的目标空间 T 上的概率联系起来。

21. 随机变量的类型

随机变量的类型由其目标空间 T(即它的取值范围)的性质决定。

22. 描述概率分布的函数

我们使用不同的函数来精确描述不同类型随机变量的分布。

第四部分:离散概率 (Discrete Probabilities)

本部分将重点讨论当存在多个离散随机变量时,我们如何描述和计算它们的概率。

23. 联合概率与边缘概率

当我们的系统涉及多个随机变量时(例如,一个人的身高和体重),我们需要描述它们同时取特定值的概率。

24. 条件概率

25. 符号与归一化

第五部分:连续概率 (Continuous Probabilities)

现在,我们将概率论的思想从离散的、可数的事件,推广到连续的、不可数的事件上。

26. 概率密度函数 (Probability Density Function, PDF)

对于连续随机变量,我们无法讨论它取某个精确值的概率(因为这个概率为零),而是讨论它落入某个区域的概率。概率密度函数 (PDF) 就是用来描述这种概率分布的工具。

27. 累积分布函数 (Cumulative Distribution Function, CDF)

CDF 是另一种描述概率分布的通用工具,它对离散和连续随机变量都适用,并且能很自然地从单维推广到多维。

28. 示例:均匀分布 (Uniform Distribution)

均匀分布是最简单的概率分布之一,它表示在一个给定的区间内,所有事件发生的概率都是均等的。

第六部分:概率论基本定理 (Basic Theorems of Probability)

有三条基本规则构成了概率论的运算基础,它们分别是加法法则、乘法法则和贝叶斯定理。

29. 加法法则 (Sum Rule) / 边缘化 (Marginalization)

加法法则建立了联合概率边缘概率之间的关系。

30. 乘法法则 (Product Rule) / 链式法则

乘法法则描述了如何将一个联合概率分解为条件概率边缘概率的乘积。

31. 贝叶斯定理 (Bayes' Theorem)

贝叶斯定理是概率论中最核心、最重要的定理之一,它为我们提供了一种在观测到新证据后,更新我们已有信念的数学框架。

第七部分:随机变量的函数 (Functions of Random Variables)

32. 基本概念

33. 变换与参数

第八部分:摘要统计量与独立性 (Summary Statistics and Independence)

为了描述和概括一个概率分布的关键特性,我们通常使用一些摘要统计量 (summary statistics),其中最重要的是均值 (mean)(协)方差 ((co)variance)

34. 期望 (Expected Value)

35. 均值、中位数与众数

这些都是描述分布“中心趋势”的指标。

36. 方差与协方差

这些是描述分布“离散程度”或“变量间关系”的指标。

37. 多维随机变量的协方差

当处理的对象是随机向量时,协方差的概念被推广为协方差矩阵

38. 相关性 (Correlation)

协方差的值会受到变量本身尺度的影响,一个值为100的协方差不一定比值为1的协方差代表更强的关系。为了有一个标准化的、与尺度无关的度量,我们使用相关系数

39. 统计独立性 (Statistical Independence)

独立性是概率论中一个非常强大且核心的概念,它极大地简化了多变量概率分布的分析和计算。

40. 独立同分布 (Independent and Identically Distributed, i.i.d.)

在机器学习中,我们最常遇到的假设就是数据是独立同分布 (i.i.d.) 的。
对于一组随机变量 X1,,XN

总结: i.i.d. 假设意味着,我们的每一个数据点都是从同一个未知的“数据生成器”中独立抽取出来的样本。这个假设是许多统计推断和机器学习算法的理论基础。

41. 条件独立性 (Conditional Independence)

这是一个比独立性更微妙、也更普遍的概念。

第九部分:随机变量的和与变换 (Sums and Transformations of Random Variables)

本部分将总结一些关于期望和(协)方差的重要运算性质,特别是在处理随机变量的线性组合和仿射变换时。

42. 期望与方差的基本性质

43. 仿射变换 (Affine Transformation)

在机器学习中,我们经常对数据或参数进行线性变换,这是一个非常重要的场景。

44. 互协方差的变换

第十部分:高斯分布 (Gaussian Distribution)

高斯分布,也称为正态分布 (Normal Distribution),是概率论和统计学中最重要、研究最深入的连续概率分布。

45. 高斯分布的重要性

46. 高斯分布的数学形式

高斯分布完全由其均值协方差矩阵这两个参数所决定。

47. 高斯分布的变换性质

高斯分布一个非常重要的特性是它在仿射变换下是封闭的 (closed),即一个高斯随机变量经过仿射变换后,其结果仍然服从高斯分布。