跳转至

P2-1.1 数学在 AI 计算中扮演什么角色

Section ID: P2-1.1 Version: v2026.07.20

在 Part 1,我们是从规则、模型、学习、生成、服务结构这张大地图上看 AI 的。从 Part 2 开始,我们要恢复阅读这张地图所需的基础。第一个问题就是:如果要重新学习 AI,到底需要懂多少数学。

这一节的答案并不简单。你不需要把所有数学都证明出来。但如果你完全读不懂数学记号想表达什么,那么在读模型(model)、数据(data)、损失(loss)、概率(probability)、优化(optimization)、嵌入(embedding)时,就会反复卡住。

因此,这里把数学看成的不是为了答对题目的考试科目,而是用来阅读 AI 计算的语言(language)、结构(structure)和压缩记法(notation)。

这里重新看数学的原因,更接近于 恢复阅读 Part 3 和 Part 4 中 X、y、loss、metric 等表达所需的识读能力,而不是 为了考试去做题。一旦这个标准立住,后面也更容易读懂为什么向量、导数、概率、优化会被放进同一个 Part。

这里会重新整理 数学的角色计算语言压缩记法损失优化。在后面的章节真正把各类符号和数学主题分开展开之前,这一节先回答 为什么必须把数学重新读成 AI 计算识读能力的一部分

先抓住的共同场景

Chapter 1 会反复使用一个小型数据场景。假设四名学生的学习时间和小测成绩如下。

学生 学习时间 x 小测分数 y
A 1 小时 55 分
B 2 小时 65 分
C 3 小时 80 分
D 4 小时 90 分

这个场景之后会以多个问题重新出现。

  • 如果计算平均值,就能看到分数的大致中心位置。
  • 如果把 xy 放在一起看,就能读出输入(input)和输出(output)的关系。
  • 如果加上模型(model),就能把它变成一个预测(prediction)问题:学习时间增加时,分数会怎样变化?
  • 如果加上损失(loss),就能用一个数字计算“预测和真实分数差了多少”。

也就是说,这里数学不是一个专门学习困难符号的独立科目,而是把这种小表重新读成 平均值函数误差优化 语言的工具。读者如果不想在后面遇到 sigma、向量、导数时迷路,就需要先抓住这个标准:数学最终是在帮助我们读取、比较和调整这样的数据。

核心判断标准:数学在 AI 计算中扮演什么角色

  • 能从表达和计算的角度,而不是从证明的角度,说明 AI 中为什么需要数学。
  • 能把公式(formula)看成要通过代码和数据重新确认的对象,而不是只靠背诵的对象。
  • 能说明 Part 2 中各类数学主题分别服务于什么目的。
  • 能减轻“我不会数学”的负担,同时理解如果完全跳过数学记号会遇到什么限制。

三个判断标准

这里首先需要的不是证明,而是角色区分。

标准 为什么重要 本节需要达到的理解程度
数学是 计算语言,不是 答案考试 这样即使不能推完所有公式,也还能抓住阅读文档的起点。 理解公式是在压缩计算结构。
数学会解释 数据的形状学习的方向 这会连接起为什么向量、矩阵、损失和梯度会在同一个 Part 里出现。 理解数学在检查“表示了什么”以及“减少或改变了什么”。
公式最终必须通过 代码和结果 再次确认 因为 AI 学习不会停留在读完公式就结束。 理解一个小代码例子是在确认什么计算。

数学会把计算压缩显示出来

在 AI 文档里,数学会把很长的计算过程压缩起来。例如,当数据有很多个时,“求平均值”也可以用日常语言解释。如果把这个过程展开成句子,那就是把所有值相加,再除以值的个数。

公式会把这个过程写得更短。

\[ \mathrm{mean} = \frac{x_1 + x_2 + \cdots + x_n}{n} \]

如果用 sigma,就会压缩得更厉害。

\[ \mathrm{mean} = \frac{1}{n}\sum_{i=1}^{n}x_i \]

这种压缩记法一开始可能会显得陌生。但在 AI 和机器学习文档中,公式大多就是在扮演这个角色。它把长重复计算、很多数据点、很多参数、损失之和、概率之积写成一行人还能读的短式表达。

读公式时,可以用下面几个问题把它拆开。

  • 它接收什么输入?
  • 它在相加或比较什么?
  • 它想减少或增大什么?
  • 在代码里,结果会变成哪个变量?

如果回到前面的学习时间-小测分数表,那么平均分就是把 55、65、80、90 加起来再除以学生人数的计算。公式只是把这种重复简短写下,后面的代码则会把它展开成真实执行步骤。读者在这里真正该抓住的,不是符号本身,而是 一次处理多个值的重复结构

数学会规定数据的形状

AI 模型并不会直接处理原始的句子、图片、声音或表格。它们大多会被转换成数组(array)、向量(vector)、矩阵(matrix)、张量(tensor)这类可计算形式。

句子可以变成 token、数字 ID,再变成向量;图片可以变成像素值数组和张量;表格数据可以变成拥有行和列的矩阵或 DataFrame。

这里,数学解释的是 这些数据是什么形状。向量是值的列表,矩阵是把值按行和列摆放的结构,张量则可以看作拥有更多轴(axis)的数组。

这个视角在重新阅读 Part 1 中的嵌入和向量检索时很重要。所谓“把文本表示成向量”,不是人手工给意义写坐标,而是把文本转换成模型与检索系统都能计算的数值空间表示(representation)。

如果用同样的标准回看前面的表,那么 x 列和 y 列最终也只是数字列表。对人来说,它看起来像“学习时间”和“分数”的故事;但对模型来说,它会被读成 输入向量输出向量,或者一张小型表格数据。没有这种转换感,后面出现的 Xyshapefeaturetarget 就会像一个全新的主题。

数学会解释学习到底改变了什么

在 AI 中,学习(learning)并不是一种模糊的“变聪明过程”。它通常被解释为:通过调整模型参数(parameter)来让损失(loss)下降的过程。如果把这个流程按顺序展开,就是输入数据进入,模型生成输出,再把输出和参考标准比较以计算损失,然后沿着能让损失降低的方向去调整参数,并不断重复。

这个流程会附着上多个数学概念。

  • 函数(function):表达把输入变成输出的关系
  • 损失函数(loss function):用数字表达模型错了多少
  • 导数(derivative)和梯度(gradient):寻找往哪个方向改值会让损失下降
  • 优化(optimization):不断寻找更好的数值
  • 概率(probability)和统计(statistics):处理不确定数据中的模式和误差

这里并不是要立刻把这些概念全算出来,而是先整理:为什么这些概念会一再出现在 AI 学习说明里。

不妨想象一下,在学习时间和分数这张表上贴一条很简单的直线。如果模型预测“学习 1 小时会得几分”,而它和真实分数差得很大,那么损失就会变大。学习就是不断微调这条线的斜率和位置,让差距越来越小。这个小小场景里,输入、输出、预测、误差、损失、优化就都已经出现了。

数学必须和代码一起检查

只读数学记号时,它会显得抽象。代码会把这种抽象表达变成可执行的步骤。尤其像 NumPy 这样的数组计算工具,会让你直接在代码里检查向量与矩阵计算。

问题情境:

  • 即使像平均值(mean)这样熟悉的数学概念,只看公式也可能显得抽象

输入(input):

  • 数字数组 x = [1, 2, 3, 4]

期望输出(output):

  • 平均值 2.5

要确认的概念:

  • 写成公式的平均值计算,也可以在代码中以同样含义执行
  • 小数组例子是把数学记号和真实计算结果连接起来的最简单起点
# 这个例子用 NumPy 数组保存学习时间数据,并检查用于平均值计算的输入值。
import numpy as np

# x 是用来确认平均值的小型数字数组。
x = np.array([1, 2, 3, 4])

# mean 是代表 x 中这些值的平均值。
mean = x.mean()

print(mean)

示例运行结果:

2.5

这段代码是用小数据去检查“平均值”这个数学概念。这里的关键点不是高级库的用法,而是公式、数据、代码其实是在用不同方式表达同一个计算。当读者看到 2.5 的那一刻,就能直接确认:平均值已经从抽象符号回到了真实数值。

  1. 公式会用压缩形式展示计算结构。
  2. 数据提供成为计算对象的数值。
  3. 代码把计算实际执行出来。
  4. 结果让你确认这个计算到底做了什么。

Part 2 会不断把这四者连起来。数学不会被单独留下来作为“必须理解的理论”,而会通过小代码和数据重新被确认。

阅读 AI 计算所需的数学路径

Part 2 并不是按“深度证明数学”的顺序来安排,而是按“恢复阅读 AI 计算”的顺序来安排。

  • 公式记法:重新阅读变量(variable)、函数(function)、表达式(expression)、sigma、极限(limit)
  • 线性代数(linear algebra):从数据表示的角度看标量(scalar)、向量(vector)、矩阵(matrix)、矩阵乘法(matrix multiplication)
  • 导数与梯度:把变化率(rate of change)、斜率(slope)、梯度(gradient)看成学习方向的语言
  • 概率与统计:把不确定性(uncertainty)、分布(distribution)、平均值(mean)、方差(variance)、样本(sample)看成数据解释的语言
  • 优化:把它看成反复寻找能够降低损失的数值的方法
  • Python 与 NumPy:确认公式怎样变成可执行代码

这个顺序不是“先学完数学,再去学 AI”。它是为了给读者建立一条最小路径,使他们在读 AI 文档时遇到的数学记号可以重新被使用。

如何减轻“我不会数学”的负担

很久以前学过的数学,大多会在记忆里变得模糊。尤其是极限、sigma、导数、矩阵这类表达,即使名字听起来熟悉,它们的实际用法也可能不能立刻回想起来。这里不会把这种情况视为失败。

但下面两点必须区分。

  1. 在 Part 2 中,看不懂所有证明是被允许的。
  2. 反过来,如果你完全读不出一个公式到底在算什么,那么在读机器学习和深度学习时就会反复卡住。

因此,目标不是成为一个完整的数学家,而是能够读懂 这个公式在解释数据、模型、损失、学习中的哪一部分

用案例来看

案例 1. 为什么一看到损失函数公式就会立刻卡住

假设一个学习者第一次在机器学习书里看到损失函数(loss function)公式。即使公式里的符号并不多,它也可能让人感到茫然。人很容易把它体验成 必须答对的考试题,但实际上,这种公式往往只是在压缩写下 正在比较什么试图减少什么

例如,把预测值和真实值的差平方后相加的表达,只是把“模型错了多少”聚合成一个数字的计算结构短写出来。这里与其立刻跟着证明走,不如先拆开:输入是什么比较的对象是什么最后试图减少的值是什么

这个案例说明了为什么数学应该被读成计算语言。你不是去死记公式,而是要读懂 这个表达在解释模型计算中的哪一块。只有这样,后面的概率、向量、导数、优化才会继续挂在同一张地图上。

换句话说,数学之所以让人感到负担,不只是因为概念难,而是因为经常试图一次性把压缩记号全读完。Part 2 的目的,就是练习把这种压缩重新拆回数据和代码。

这里先抓住数学在 AI 计算里扮演的位置,至于 sigma 和极限的细节规则,或者向量和导数的正式计算,会在后面的章节里再次收窄处理。

检查清单

  • 能说明在 AI 里,数学主要是用来阅读计算结构的语言,而不主要是证明。
  • 能把公式(formula)、数据(data)、代码(code)、输出(output)连起来看。
  • 能说明向量(vector)、矩阵(matrix)、张量(tensor)表达的是数据可计算的形状。
  • 能把学习(learning)解释成“为了降低损失而调整参数”的过程。
  • 能说明为什么 Part 2 要重新处理线性代数、导数、概率与统计、优化。
  • 能用数学在 AI 中承担 表示比较调整 三项工作这一条线来解释 Part 2。
  • 能说明为什么 sigma、向量与矩阵、导数、概率与统计会一起在同一个 Part 里再次出现。

来源与参考资料