字体大小
第一编 机器学习的数学起点 · 01_第一编_机器学习的数学起点/第1章_人工智能学习与数学建模/chapter.md

第1章 人工智能学习与数学建模

本章核心问题

什么是人工智能中的“学习”,它为什么能够被严格地转化为数学问题?

更进一步地说,本章希望说明:当研究者不再试图把全部知识写成显式规则,而是希望机器从样本中归纳规律时,这一过程究竟在数学上对应什么样的对象、什么样的目标以及什么样的求解机制。

1. 问题背景

人工智能最初并不是以“学习”作为唯一中心而建立起来的。早期的重要路线是规则系统,即由研究者把领域知识写成逻辑规则、条件判断与推理链条,再由机器据此执行演绎过程。在受限、封闭且结构清晰的问题上,这一路线曾经十分成功。例如,在形式逻辑、博弈搜索、定理证明以及某些专家系统中,只要规则足够准确,机器就能够给出高度一致的求解结果。

然而,现实世界中的大多数任务并不满足这种理想条件。视觉识别中的同一对象会呈现尺度、角度、光照和遮挡的变化;语言理解中的同一语义可由多种句法形式表达;医学诊断、金融评估和用户行为分析都伴随噪声、缺失与不确定性。在这类情形下,若仍依赖人工规则,就必须穷举大量例外与边界条件,不仅工作量巨大,而且极难保证规则间的一致性与可维护性。

因此,现代人工智能的核心转向逐渐形成:与其直接手工规定“机器应如何判断”,不如给定数据,让机器在样本中归纳出判断规律。这个转向的意义不只是在方法上引入了统计技术,更重要的是,它把人工智能问题改写成了可以分析的数学问题。系统不再被看成一组静态规则,而被看成一个待确定的映射、一个待估计的条件分布,或者一个待优化的参数化模型。

由此产生的根本问题是:什么叫作“从数据中学习”?如果机器并未直接观察到真实世界的全部结构,只得到有限样本,那么它为何仍有可能在未见样本上作出有效判断?这些问题共同把人工智能带入函数逼近、概率建模、统计推断与优化理论的交汇地带。也正是在这里,“学习”第一次成为现代 AI 的数学起点。

2. 数学原理

2.1 学习问题的基本形式化

设输入空间为 $\mathcal X$,输出空间为 $\mathcal Y$。一个最基本的学习任务,可以写成从输入到输出的映射构造问题:

$$ f:\mathcal X \to \mathcal Y. $$

这里 $\mathcal X$ 表示输入空间,$\mathcal Y$ 表示输出空间,$f$ 表示待学习的映射规则,箭头 $\to$ 表示“从输入映射到输出”。若记 $x\in\mathcal X$ 为一个具体输入,$y\in\mathcal Y$ 为一个具体输出,则 $f(x)$ 表示模型在输入 $x$ 上给出的结果。输入 $x$ 可以是图像、文本、语音、传感器读数、用户特征或环境状态;输出 $y$ 可以是类别标签、连续数值、一个序列、一个概率分布,甚至一个动作。这样一来,分类、回归、翻译、生成与控制等任务,至少在第一层抽象上都可以理解为“从输入得到输出”的问题。

但学习并不等于任意构造一个函数。真正的问题在于,映射关系并不知道,我们只观察到有限样本

$$ \mathcal D_n=\{(x_i,y_i)\}_{i=1}^n. $$

这里 $\mathcal D_n$ 表示大小为 $n$ 的数据集,下标 $n$ 说明样本数为 $n$;花括号中的 $(x_i,y_i)$ 表示第 $i$ 个输入输出样本对;$\{\,\}_{i=1}^n$ 表示把第 $1$ 个到第 $n$ 个样本全部收集起来。因此,学习的目标不是直接获得“真实规律”本身,而是在某个候选函数类 $\mathcal F$ 中选择一个函数 $\hat f$。其中 $\mathcal F$ 表示允许考虑的函数集合,$\hat f$ 上的“帽子”表示它是根据样本估计得到的近似函数,而不是真正未知的规律本身。我们希望它在已有样本上表现良好,并且对未来样本仍然有效。于是,人工智能中的学习天然具有三个层次:

  1. 需要规定允许考虑什么样的函数类 $\mathcal F$;
  2. 需要规定怎样衡量“表现良好”;
  3. 需要规定怎样从数据中求出这样的函数。

这三个层次分别对应模型、目标与算法。它们构成了现代机器学习的基本骨架。

2.2 学习作为函数逼近

把学习视为函数逼近,是最直接的数学理解。若存在某个未知的规律 $f^\star$,则观测输出常可写成

$$ Y = f^\star(X) + \varepsilon, $$

这里使用大写字母 $X$ 和 $Y$,是为了强调它们表示随机变量,而不是某一次观测的具体取值;$f^\star$ 表示潜在的真实规律,其中上标 ${}^\star$ 表示“最理想”或“真实但未知”的对象;$\varepsilon$ 表示噪声项,用来描述测量误差、环境扰动以及模型未能解释的随机性。于是,学习的任务就变成:根据样本,构造一个近似函数 $\hat f$,使得

$$ \hat f(x) \approx f^\star(x). $$

这里 $\hat f(x)$ 表示学习算法得到的模型在输入 $x$ 上的输出,$f^\star(x)$ 表示真实规律在同一输入上的输出,符号 $\approx$ 表示“近似相等”而非严格相等。它提醒我们:学习的目标不是在有限样本上精确复原全部现实机制,而是在可接受误差内逼近未知规律。这种表述的优点在于,它把不同任务统一到了同一个框架中。房价预测是在逼近“房屋特征到价格”的函数,图像分类是在逼近“图像到类别标签”的函数,序列建模是在逼近“上下文到下一个符号”的函数。

然而,函数逼近的说法还不够完整。因为即使在同一个输入 $x$ 下,输出 $y$ 也未必唯一。例如,同一句话可能对应多种合理续写,同一症状组合也可能对应不同疾病风险。因此,我们需要进一步回答:在存在不确定性的情况下,究竟什么样的函数才算“最优”。

这个问题不能只靠直觉回答,而必须借助损失函数。

2.3 损失函数与最优预测的推导

设损失函数为

$$ L(y,f(x)), $$

这里 $L$ 表示损失函数,它把“真实结果 $y$”与“模型输出 $f(x)$”之间的差异映射为一个实数;数值越大,表示预测越差。括号中的第一个变量 $y$ 是真实输出,第二个变量 $f(x)$ 是模型预测。若随机变量对 $(X,Y)$ 服从某个未知分布 $P$,则函数 $f$ 的总体风险定义为

$$ R(f)=\mathbb E_{(X,Y)\sim P}[L(Y,f(X))]. $$

这里 $R(f)$ 表示函数 $f$ 的风险;符号 $\mathbb E$ 表示期望算子,也就是对随机性取平均;下标 $(X,Y)\sim P$ 表示随机变量对 $(X,Y)$ 按照分布 $P$ 取值;$L(Y,f(X))$ 则表示当输入输出随机出现时,模型产生的随机损失。因此,这个式子的含义是:在真实数据分布 $P$ 下,模型 $f$ 的平均损失是多少。这一公式是学习理论的中心对象之一。它表明,一个模型是否“好”,并不是由它在个别样本上的偶然表现决定,而是由它在总体分布意义下的平均损失决定。

为了看清这一点,可以把期望分解为对输入的外层期望与对条件分布的内层期望:

$$ R(f)=\mathbb E_X\Big[\mathbb E_{Y\mid X}\big[L(Y,f(X))\mid X\big]\Big]. $$

这里外层的 $\mathbb E_X$ 表示先对输入随机变量 $X$ 取期望,内层的 $\mathbb E_{Y\mid X}$ 表示在给定输入 $X$ 的条件下,再对输出 $Y$ 的条件分布取期望;竖线符号 $\mid$ 表示“在给定某个条件下”。这个分解说明,总体风险可以理解为“先看每个输入点上的平均损失,再对所有输入点整体平均”。若记

$$ r(x,a)=\mathbb E[L(Y,a)\mid X=x], $$

这里 $r(x,a)$ 表示条件风险函数:当输入被固定为 $x$、预测值被固定为 $a$ 时,平均会产生多大的损失。记号中的 $x$ 是某个具体输入,$a$ 是我们准备输出的候选预测值。则对每个固定的输入 $x$,最优预测实际上是在寻找使条件风险最小的动作 $a$:

$$ f^\star(x)\in \arg\min_{a\in \mathcal Y} r(x,a). $$

这里 $\arg\min$ 表示“使目标函数取到最小值的自变量集合”;$a\in\mathcal Y$ 表示候选预测值在输出空间 $\mathcal Y$ 中选取;符号 $\in$ 表示 $f^\star(x)$ 是这个最小值集合中的一个元素。这一步非常关键。它说明全局最优预测问题可以被分解为一族逐点条件优化问题。不同损失函数给出的“最优预测”并不相同,因此学习目标的数学含义,实际上由损失函数决定。

下面看两个最典型的例子。

2.3.1 平方损失下的条件期望

设输出为实数,损失函数取平方损失

$$ L(y,a)=(y-a)^2. $$

这里 $a$ 不再表示任意动作,而是对输出的一个候选预测值;$(y-a)^2$ 表示真实值与预测值之差的平方,因此距离越大,损失增长越快。此时固定 $X=x$,条件风险为

$$ r(x,a)=\mathbb E[(Y-a)^2\mid X=x]. $$

这里的含义是:在输入已经确定为 $x$ 的条件下,如果我们总是输出同一个值 $a$,那么平均平方误差是多少。将平方项展开,有

$$ \mathbb E[(Y-a)^2\mid X=x]=\mathbb E[Y^2\mid X=x]-2a\,\mathbb E[Y\mid X=x]+a^2. $$

这里第一项 $\mathbb E[Y^2\mid X=x]$ 只依赖于条件分布本身,与预测值 $a$ 无关;第二项和第三项才真正决定不同 $a$ 之间的优劣。因此把上式视为关于 $a$ 的函数,其导数为

$$ \frac{\partial r(x,a)}{\partial a}=-2\mathbb E[Y\mid X=x]+2a. $$

这里 $\frac{\partial r(x,a)}{\partial a}$ 表示对变量 $a$ 的偏导数,用来衡量当预测值 $a$ 发生微小变化时,条件风险如何变化。令导数为零,得到

$$ a=\mathbb E[Y\mid X=x]. $$

这里右边的 $\mathbb E[Y\mid X=x]$ 表示在输入为 $x$ 的条件下,输出随机变量 $Y$ 的条件期望,也就是条件均值。再注意二阶导数恒为 $2>0$,故该点给出极小值。因此,在平方损失下的最优预测函数满足

$$ f^\star(x)=\mathbb E[Y\mid X=x]. $$

这个结论具有基础性意义。它说明回归问题中的“最佳预测”并不是某种模糊的平均意义,而是严格等于条件期望。换言之,只要损失函数选定为平方误差,学习的本质就是估计条件均值函数。

2.3.2 对数损失下的条件分布

若输出是离散标签,且模型给出一个条件分布 $q(\cdot\mid x)$,则常用对数损失

$$ L(y,q)=-\log q(y\mid x). $$

这里 $q(\cdot\mid x)$ 表示模型给出的条件分布;其中符号“$\cdot$”表示这里预留给所有可能的标签取值,$q(y\mid x)$ 则表示在输入 $x$ 下标签取值为 $y$ 的模型概率。对数损失 $-\log q(y\mid x)$ 的含义是:模型给真实标签分配的概率越小,损失越大。固定输入 $x$ 后,其条件风险为

$$ r(x,q)=\mathbb E[-\log q(Y\mid x)\mid X=x] =-\sum_{y} p(y\mid x)\log q(y\mid x). $$

这里 $p(y\mid x)$ 表示真实但未知的条件分布,$\sum_y$ 表示对所有可能标签求和,因此上式是在真实分布 $p$ 下对对数损失取条件期望。这正是条件分布 $p(\cdot\mid x)$ 与模型分布 $q(\cdot\mid x)$ 之间的交叉熵。进一步可写成

$$ r(x,q)=H\big(p(\cdot\mid x)\big)+D_{\mathrm{KL}}\big(p(\cdot\mid x)\|q(\cdot\mid x)\big), $$

这里 $H\big(p(\cdot\mid x)\big)$ 表示真实条件分布的熵,刻画其本身的不确定性;$D_{\mathrm{KL}}(p\|q)$ 表示从真实分布 $p$ 到模型分布 $q$ 的 Kullback-Leibler 散度;符号“$\|$”用于区分两个被比较的分布。第一项与 $q$ 无关,第二项总是不小于零。因此当且仅当

$$ q(\cdot\mid x)=p(\cdot\mid x) $$

时,条件风险取到最小值。于是,在对数损失下,最优学习目标并不是某个单一标签,而是恢复真实的条件分布本身。

这说明“学习作为条件概率估计”并非一句宽泛口号,而是由损失最小化直接推出的数学结论。

2.4 从总体风险到经验风险

虽然总体风险

$$ R(f)=\mathbb E[L(Y,f(X))] $$

给出了学习的真正目标,但在实际问题中,分布 $P(X,Y)$ 是未知的,因此这个期望无法直接计算。机器真正拥有的只是有限样本 $\mathcal D_n$。这时,最自然的替代方式是用样本平均近似总体期望,即定义经验风险

$$ \hat R_n(f)=\frac{1}{n}\sum_{i=1}^n L(y_i,f(x_i)). $$

这里 $\hat R_n(f)$ 上的“帽子”表示这是由样本构造出的经验量,而不是总体量;$\frac{1}{n}\sum_{i=1}^n$ 表示对全部 $n$ 个样本损失求平均;$x_i,y_i$ 是第 $i$ 个样本的输入与输出。这一步并非纯粹出于计算方便,它本身就是一种统计思想:用样本经验分布

$$ \hat P_n=\frac{1}{n}\sum_{i=1}^n \delta_{(x_i,y_i)} $$

替代未知真实分布 $P$。这里 $\hat P_n$ 表示经验分布,$\delta_{(x_i,y_i)}$ 表示集中在样本点 $(x_i,y_i)$ 上的 Dirac 质量,因此经验分布就是把每个样本点都赋予权重 $\frac{1}{n}$。于是经验风险可以写成

$$ \hat R_n(f)=\int L(y,f(x))\,d\hat P_n(x,y), $$

这里积分号 $\int$ 表示对分布进行积分,$d\hat P_n(x,y)$ 表示相对于经验分布积分。它与总体风险

$$ R(f)=\int L(y,f(x))\,dP(x,y) $$

中的 $dP(x,y)$ 表示相对于真实分布积分,具有完全平行的形式。换言之,经验风险最小化的基本逻辑是:既然真实分布不可见,就先在经验分布下进行最优拟合。

于是,最基本的学习原则可写为

$$ \hat f_n \in \arg\min_{f\in\mathcal F}\hat R_n(f). $$

这里 $\hat f_n$ 表示基于 $n$ 个样本得到的学习结果,$\arg\min_{f\in\mathcal F}$ 表示在候选函数类 $\mathcal F$ 中寻找使经验风险最小的函数。这就是经验风险最小化原则。它是现代机器学习几乎所有训练方法的原型。无论后续是线性回归、逻辑回归、支持向量机,还是神经网络与大语言模型,本质上都可以看成是在不同函数类与损失函数下对这一原则的具体实现。

2.5 参数化模型与优化问题

为了使经验风险最小化能够实际求解,通常还要进一步引入参数化模型族。设函数由参数 $\theta$ 决定,记作 $f_\theta$。则学习问题变为

$$ \theta^\star \in \arg\min_{\theta\in\Theta}\hat R_n(f_\theta). $$

这里 $\theta$ 表示模型参数,$\Theta$ 表示参数允许取值的集合;$f_\theta$ 表示由参数 $\theta$ 所确定的函数;$\theta^\star$ 表示使目标最小的理想参数。若考虑模型复杂度控制,可加入正则化项 $\Omega(\theta)$,得到

$$ \theta^\star \in \arg\min_{\theta\in\Theta} \Big[ \hat R_n(f_\theta)+\lambda \Omega(\theta) \Big]. $$

这里 $\Omega(\theta)$ 表示正则化项,用来惩罚过于复杂的参数取值;$\lambda$ 是正则化系数,用来平衡“拟合数据”与“控制复杂度”之间的关系。这样一来,学习就被分解为三个互相联系的数学问题:

  1. 表示问题:选取什么样的函数类 $\{f_\theta\}$;
  2. 统计问题:为什么最小化经验风险能逼近最小化真实风险;
  3. 计算问题:怎样有效求解这个优化问题。

这三个问题分别通向后续不同章节。第2章将首先处理支撑这些表达的数学工具,第3章将把经验风险最小化组织为监督学习框架,而后续各章则不断改变函数类、损失形式与优化结构,推动人工智能从线性模型发展到深层模型、序列模型、大语言模型与决策系统。

2.6 预测、推断与决策的区别

虽然上述形式化已经足够一般,但不同 AI 任务的目标仍有重要差别。

预测问题关注的是由输入直接给出输出估计。例如给定房屋特征预测价格,给定图像预测类别。其核心是学习 $x\mapsto y$ 的稳定映射。

推断问题则更强调不可观测结构的恢复。例如给定观测变量,希望推断潜在主题、隐状态或低维表示。在这种情形下,系统所学习的并不只是一个外部输出,更是某种解释观测数据的内部结构。

决策问题进一步要求输出对环境产生作用。若记策略为 $\pi(a\mid s)$,则系统不仅要根据状态 $s$ 选择动作 $a$,还要考虑动作如何改变未来状态分布与长期收益。这里的学习目标不再只是瞬时误差,而会涉及累积回报、状态转移和反馈闭环。

因此,从预测到推断再到决策,AI 的数学对象在逐步扩展:先是静态映射,再是隐变量结构,最后是与环境耦合的动态系统。全书后续的发展主线,正是沿着这一扩展链条展开的。

3. 代表模型或算法

3.1 规则系统与数据驱动模型的比较

规则系统可以抽象为一组显式判断:

$$ \text{if } C_1,\dots,C_k \text{ then } y. $$

其优势在于结构清楚、局部可解释且容易进行形式推理。但它默认研究者能够事先写出足够全面的条件 $C_1,\dots,C_k$。一旦输入空间维度很高、边界复杂、噪声显著,这种假设便很难成立。

数据驱动模型则采取另一种思想:先规定一个可调函数类 $f_\theta$,再通过样本更新参数 $\theta$,使预测误差逐步下降。若用最简单的梯度下降来表述,其更新形式可以写成

$$ \theta_{t+1}=\theta_t-\eta \nabla_\theta \hat R_n(f_{\theta_t}), $$

这里 $\theta_t$ 表示第 $t$ 次迭代时的参数,$\theta_{t+1}$ 表示更新后的参数;$\eta$ 为学习率,控制每一步更新的幅度;$\nabla_\theta$ 表示对参数 $\theta$ 求梯度;$\hat R_n(f_{\theta_t})$ 表示当前参数下的经验风险。这一表达式意味着,系统不再依赖人工手写规则,而是在目标函数的引导下自动修正自身参数。

从数学上看,这一转变极其深刻。规则系统把“智能”理解为知识编码问题,数据驱动模型则把“学习”理解为目标函数最优化问题。现代 AI 的绝大多数方法,都是在这一框架内展开的。

3.2 最简单的监督学习原型

监督学习是数据驱动路线中最基本的形式。给定样本集 $\mathcal D_n=\{(x_i,y_i)\}_{i=1}^n$,其基本流程可以概括为:

  1. 选择输入表示与输出形式;
  2. 选择模型族 $f_\theta$;
  3. 选择损失函数 $L$;
  4. 构造经验风险 $\hat R_n(f_\theta)$;
  5. 通过优化求得参数 $\hat\theta$;
  6. 用 $f_{\hat\theta}$ 对新样本作预测。

这个流程虽然简洁,却已经包含现代机器学习的全部原型结构。其关键不在于具体用了哪种模型,而在于它确立了一种统一范式:从样本到目标函数,再从目标函数到参数求解,最后从参数求解回到对未知样本的预测。

4. 典型应用

手写数字识别是学习范式优于人工规则的典型例子。数字“3”与“8”的区分并不能依赖几条固定规则完成,因为笔迹粗细、倾斜程度、连笔方式与局部缺损都会造成巨大变化。学习方法则可以通过大量标注样本去逼近“图像到标签”的映射。

垃圾邮件分类进一步说明了统计学习的必要性。垃圾邮件的措辞与格式会不断变化,任何固定规则库都容易迅速过时。相反,若系统能够持续利用新样本更新参数,就可以通过经验风险最小化不断调整分类边界。

房价预测则展示了回归问题的数学自然性。输入是房屋特征向量,输出是连续价格,学习目标就是估计条件均值或更一般的条件分布。这类任务几乎天然适合用函数逼近与风险最小化来描述。

搜索排序与推荐系统则让问题更进一步。系统不仅要判断“对错”,还要估计相关性、偏好强度以及可能的长期收益。此时条件概率建模、排序损失以及后续的决策反馈都会进入框架之中,体现出现代 AI 从静态预测走向动态系统的趋势。

5. 局限性与历史转折

本章说明了人工智能中的学习可以被转化为严格的数学问题,但这还只是起点,而不是完成。

第一,本章给出了学习的形式化框架,却还没有系统整理支撑这一框架的数学语言。输入表示为何常写成向量与矩阵,概率模型为何能够处理不确定性,梯度为何能指导参数更新,正则化为何能影响模型复杂度,这些都需要更基础的线性代数、概率论、微积分与最优化知识来支撑。因此,下一章必须转向机器学习的数学基础。

第二,本章虽然引入了总体风险与经验风险,但尚未回答它们之间为何能够建立稳定联系。经验风险最小化在什么条件下可以逼近真实风险?有限样本为何可能支持未见样本上的预测?这些问题将把讨论推进到监督学习和统计学习理论中的泛化问题。

第三,本章讨论的是极一般的学习形式,还没有触及具体模型历史上为何先从线性形式发展起来。事实上,最早成熟的学习方法往往来自可解析、可计算且便于解释的模型族,而更复杂的非线性与深层结构则需要后续数学与计算条件的积累。

因此,本章的作用是确立出发点:现代 AI 的核心不再是规则枚举,而是从数据中建模、估计并优化。后续全部历史演进,都将在这一数学框架上继续展开。

6. 本章小结

本章从人工智能的发展转折出发,说明了为何“学习”成为现代 AI 的核心范式。其根本原因在于,现实世界中的任务往往具有高维性、噪声性与不确定性,难以被有限规则完全覆盖,而从样本中估计规律则提供了更一般的处理方式。

在数学上,学习首先可以理解为从输入空间到输出空间的映射构造问题;进一步地,在损失函数给定后,它又可以理解为最小化总体风险的问题。通过对平方损失和对数损失的推导可以看到,不同学习任务中的“最优预测”并不是含混的经验概念,而是分别对应条件期望与条件分布这样的严格数学对象。

但由于真实分布不可见,学习必须借助经验风险最小化原则,把总体优化转化为样本上的可计算问题;再通过参数化模型与优化算法,把统计目标转化为可执行的训练过程。由此,建模、估计与优化便共同构成了现代机器学习的数学起点。

关键公式

$$ f:\mathcal X\to\mathcal Y $$
$$ R(f)=\mathbb E_{(X,Y)\sim P}[L(Y,f(X))] $$
$$ f^\star(x)\in \arg\min_{a\in\mathcal Y}\mathbb E[L(Y,a)\mid X=x] $$
$$ f^\star(x)=\mathbb E[Y\mid X=x] \quad \text{(平方损失下)} $$
$$ \hat R_n(f)=\frac{1}{n}\sum_{i=1}^n L(y_i,f(x_i)) $$
$$ \theta_{t+1}=\theta_t-\eta \nabla_\theta \hat R_n(f_{\theta_t}) $$

关键概念

  • 人工智能
  • 学习
  • 数学建模
  • 函数逼近
  • 条件概率建模
  • 风险函数
  • 经验风险
  • 参数化模型