跳到主要内容 人工智能背后的数学基础:微积分与线性代数(一) | 极客日志
编程语言 AI 算法
人工智能背后的数学基础:微积分与线性代数(一) 系统梳理了人工智能领域所需的数学工具,重点涵盖微积分、线性代数、概率论及最优化理论。内容从导数定义、几何意义、求导公式入手,深入讲解泰勒展开、定积分等核心概念及其在机器学习中的应用,如梯度下降法与牛顿法的推导原理。同时概述了向量矩阵运算、特征值分解、贝叶斯公式等关键知识点,旨在帮助读者建立坚实的数学基础以理解神经网络训练、模型优化及算法收敛性分析。后续将详细讲解线性代数与概率论部分。
晚风叙旧 发布于 2026/2/4 更新于 2026/4/18 4.8K 浏览前言
人工智能的快速发展离不开坚实的数学基础,数学为机器学习、深度学习等领域的算法设计与优化提供了理论支撑。无论是构建神经网络、训练模型,还是分析数据分布、优化参数,都需要掌握一系列核心数学工具。
微积分是理解梯度下降、反向传播等关键概念的基础,线性代数为处理高维数据与矩阵运算提供了框架,概率论与统计学帮助建模不确定性并进行推断,最优化理论则指导如何高效调整模型参数以达到预期目标。这些数学分支相互交织,共同构成了人工智能技术的底层逻辑。
深入掌握相关数学知识,不仅能帮助理解现有算法的原理,更能为创新性研究打下坚实基础。本部分将系统梳理人工智能领域所需的数学工具,从微积分的导数与积分,到线性代数的矩阵分解,再到概率论中的贝叶斯理论,逐步揭示数学在人工智能中的核心作用。
1. 需要哪些数学知识?
1.1 微积分
导数与求导公式
一阶导数与函数的单调性
一元函数极值判定法则
高阶导数
二阶导数与函数的凹凸性
一元导数泰勒展开
[图片]
先说微积分/高等数学。在机器学习中,微积分主要用到了微分部分,作用是求函数的极值,就是很多机器学习库中的求解器(solver)所实现的功能。在机器学习里会用到微积分中的以下知识点:
导数和偏导数的定义与计算方法
梯度向量的定义
极值定理,可导函数在极值点处导数或梯度必须为 0
雅克比矩阵,这是向量到向量映射函数的偏导数构成的矩阵,在求导推导中会用到
Hessian 矩阵,这是 2 阶导数对多元函数的推广,与函数的极值有密切的联系
凸函数的定义与判断方法
泰勒展开公式
拉格朗日乘数法,用于求解带等式约束的极值问题
其中最核心的是记住多元函数的泰勒展开公式,根据它我们可以推导出机器学习中常用的梯度下降法,牛顿法,拟牛顿法等一系列最优化方法。
微积分和线性代数,微积分中会用到大量线性代数的知识,线性代数中也会用到微积分的知识。
1.2 线性代数
向量及其运算
矩阵及其运算
张量
行列式
二次型
特征值与特征向量
[图片]
相比之下,线性代数用的更多。在机器学习的几乎所有地方都有使用,具体用到的知识点有:
向量和它的各种运算,包括加法,减法,数乘,转置,内积
向量和矩阵的范数,L1 范数和 L2 范数
矩阵和它的各种运算,包括加法,减法,乘法,数乘
逆矩阵的定义与性质
行列式的定义与计算方法
二次型的定义
矩阵的正定性
矩阵的特征值与特征向量
矩阵的奇异值分解
线性方程组的数值解法,尤其是共轭梯度法
机器学习算法处理的数据一般都是向量、矩阵或者张量。经典的机器学习算法输入的数据都是特征向量,深度学习算法在处理图像时输入的 2 维的矩阵或者 3 维的张量。掌握这些知识会使你游刃有余。
1.3 其他相关知识
多元函数微分学
高阶偏导数
雅克比矩阵
Hessian 矩阵
多元函数泰勒展开
多元函数极值判定法则
回到线性代数
奇异值分解 SVD
常用的矩阵和向量求导公式
1.4 概率论
随机事件与概率
条件概率和贝叶斯公式
随机变量
随机变量的期望和方差
常用概率分布(正态分布、均匀分布、伯努利二项分布)
随机向量(联合概率密度函数等)
协方差与协方差矩阵
最大似然估计
如果把机器学习所处理的样本数据看作随机变量/向量,我们就可以用概率论的观点对问题进行建模,这代表了机器学习中很大一类方法。在机器学习里用到的概率论知识点有:
随机事件的概念,概率的定义与计算方法
随机变量与概率分布,尤其是连续型随机变量的概率密度函数和分布函数
条件概率与贝叶斯公式
常用的概率分布,包括正态分布,伯努利二项分布,均匀分布
随机变量的均值与方差,协方差
随机变量的独立性
最大似然估计
1.5 最优化
微信扫一扫,关注极客日志 微信公众号「极客日志」,在微信中扫描左侧二维码关注。展示文案:极客日志 zeeklog
相关免费在线工具 加密/解密文本 使用加密算法(如AES、TripleDES、Rabbit或RC4)加密和解密文本明文。 在线工具,加密/解密文本在线工具,online
RSA密钥对生成器 生成新的随机RSA私钥和公钥pem证书。 在线工具,RSA密钥对生成器在线工具,online
Mermaid 预览与可视化编辑 基于 Mermaid.js 实时预览流程图、时序图等图表,支持源码编辑与即时渲染。 在线工具,Mermaid 预览与可视化编辑在线工具,online
Base64 字符串编码/解码 将字符串编码和解码为其 Base64 格式表示形式即可。 在线工具,Base64 字符串编码/解码在线工具,online
Base64 文件转换器 将字符串、文件或图像转换为其 Base64 表示形式。 在线工具,Base64 文件转换器在线工具,online
Markdown转HTML 将 Markdown(GFM)转为 HTML 片段,浏览器内 marked 解析;与 HTML转Markdown 互为补充。 在线工具,Markdown转HTML在线工具,online
最后要说的是最优化,因为几乎所有机器学习算法归根到底都是在求解最优化问题。求解最优化问题的指导思想是在极值点出函数的导数/梯度必须为 0 。因此你必须理解梯度下降法,牛顿法这两种常用的算法,它们的迭代公式都可以从泰勒展开公式中得到。如果能知道坐标下降法、拟牛顿法就更好了。
凸优化是机器学习中经常会提及的一个概念,这是一类特殊的优化问题,它的优化变量的可行域是凸集,目标函数是凸函数。凸优化最好的性质是它的所有局部最优解就是全局最优解,因此求解时不会陷入局部最优解。如果一个问题被证明为是凸优化问题,基本上已经宣告此问题得到了解决。在机器学习中,线性回归、岭回归、支持向量机、logistic 回归等很多算法求解的都是凸优化问题。
拉格朗日对偶为带等式和不等式约束条件的优化问题构造拉格朗日函数,将其变为原问题,这两个问题是等价的。通过这一步变换,将带约束条件的问题转换成不带约束条件的问题。通过变换原始优化变量和拉格朗日乘子的优化次序,进一步将原问题转换为对偶问题,如果满足某种条件,原问题和对偶问题是等价的。这种方法的意义在于可以将一个不易于求解的问题转换成更容易求解的问题。在支持向量机中有拉格朗日对偶的应用。
KKT 条件是拉格朗日乘数法对带不等式约束问题的推广,它给出了带等式和不等式约束的优化问题在极值点处所必须满足的条件。在支持向量机中也有它的应用。如果你没有学过最优化方法这门课也不用担心,这些方法根据微积分和线性代数的基础知识可以很容易推导出来。如果需要系统的学习这方面的知识,可以阅读《凸优化》,《非线性规划》两本经典教材。
1.6 总概 出现频率最高的是优化方法,拉格朗日乘数法,梯度下降法,牛顿法,凸优化。
第二类概率论知识,随机变量,贝叶斯公式,随机变量独立性,正太分布,最大似然估计。
第三类线性代数知识,几乎所有都会涉及到向量、矩阵、张量的计算,包括特征值和特征向量,很多算法都会最终变成求解特征值和特征向量问题。微积分的知识比如链式法则。
除了主体这些数学知识,会用到微分几何中的流行、测地线、测地距离的概念。支持向量机会用到 Mercer 条件、核函数,涉及到泛函分析和识别函数的范畴。再比如说人工神经网络的证明,万能逼近定理会用到泛函分析和识别函数的内容,用来证明这样一个函数可以来逼近任何形式的函数。
离散数学的知识比如图论、树在机器学习里面也会用到,但是用的都是比较简单的。所以说我们只有掌握好微积分、线性代数、概率论还有一些优化的算法,我们就能看懂所有的机器学习算法了。像刚才说的一些相对高深的微分几何、泛函分析和识别函数,它们主要用在一些基础理论证明上面,说白了就是证明一些算法的合理性,你即使看不懂这些证明,它也不影响你理解这些算法的推导、思想和使用。
2. 微积分 导数的定义
$$ f'(x_0) = \lim_{\Delta \tau \to 0} \frac{f(x_0 + \Delta \tau) - f(x_0)}{\Delta \tau} $$
导数:这是微积分里面最核心的概念,当函数的自变量 Δx 趋近于 0 的时候,如果存在式子里面的值,那么函数可导。
极限 limit 认为是高等数学和初等数学的分界线
2.1 左导数与右导数、可导函数 趋近于 0 有两个方向,从左边趋向于 0 是左导数,反之是右导数
下面的绝对值函数的左导数和右导数不相同,一个 -1 一个 +1,0 位置不可导
f(x)=|x|
Relu 函数
max(0,x)
$$ f(x) = \begin{cases} x & x \geq 0 \ 0 & x < 0 \end{cases} $$
2.2 导数的几何意义与物理意义 物理意义,瞬时速度
$$ f'(t) = \lim_{\Delta t \to 0} \frac{\Delta s}{\Delta t} $$
2.3 求导公式 幂函数
$$(x^a)' = ax^{a-1}$$
以 (a) 为底的指数函数
$$(a^x)' = a^x \ln a$$
对数函数
$$(\ln x)' = \frac{1}{x}$$
以任意为底的对数函数
$$(\log_a x)' = \left(\frac{\ln x}{\ln a}\right)' = \frac{1}{\ln a} \cdot \frac{1}{x}$$
第一个重要极限:
$$ \lim_{n \to +\infty} \left( 1 + \frac{1}{n} \right)^n = e $$
第二个重要极限:
$$ \lim_{x \to 0} \frac{\sin x}{x} = 1 $$
三角函数的导数不要管,我们很少会用到它,而且三角函数很讨厌,是周期性函数,而我们的机器学习中很多时候要求是单调的函数,单调增也好,单调减也好,最好不要周期性函数。
导数加减乘除和函数的导数法则:
$$(f(x) + g(x))' = f'(x) + g'(x)$$
积函数的导数法则:
$$(f(x)g(x))' = f'(x)g(x) + f(x)g'(x)$$
商函数的导数法则:
$$\left( \frac{f(x)}{g(x)} \right)' = \frac{f'(x)g(x) - f(x)g'(x)}{g^2(x)}$$
复合函数求导法则
$$(f(g(x)))^{\prime}=f^{\prime}(g)g^{\prime}(x)$$
求极值,往往设导数为 0,这里函数的导函数形式肯定得求
神经网络里面激活函数会用到,其实还是求导数为 0 的情况,只不过是复合函数形式
求导示例:
设 $f(x) = \log(1 + x^2 + e^{2x})$,令 $u = 1 + x^2 + e^{2x}$,则 $f(x) = \log u$。
根据链式法则:
$$ f'(x) = \frac{1}{u} \cdot u'(x) = \frac{1}{1 + x^2 + e^{2x}} \cdot (2x + 2e^{2x}) $$
前面学的是一阶导数,对导数再次求导就是高阶导数,二阶和二阶以上的导数统称为高阶导数。
具体函数的一阶导数:
$$(5x^4)' = 20x^3$$
2.4 导数与函数单调性的关系 增减关系
$f'(x) > 0 \uparrow$
$f'(x) < 0 \downarrow$
函数的导数大于 0,函数是单调增的。函数的导数小于 0,函数是单调减的。
上图函数的导数是 2X,那么就是 x<0 的时候函数单调减,x>0 的时候函数单调增。
导数为我们寻找极值提供依据,对于可导函数而言,因为在极值位置必然有函数的导数等于 0。
极值处函数的导数等于 0,这是必要条件,但不是充分条件,因为极值处的导数必然等于 0,但是导数等于 0 处不代表一定是极值。
函数的二阶导数是和函数的凹凸性是有关系的,凹凸性怎么定义的?
先来做简单的回顾,更多的会在最优化方法里面给大家讲,这里先记住凸函数是向下凸的,反正就是凹的,是否是凸函数可以通过二阶导数,如果二阶导数是大于 0 就是凸函数,
拿 X 的平方举例子,它的二阶导数是 2,大于 0 所以是凸函数。
称之为驻点,驻点是函数增减性的交替点,一侧增一侧减或一侧减一侧增,是函数增减性的交替点。
称之为拐点,拐点是凹凸性的,一侧凹一侧凸或一侧凸一侧凹。
拿 X 的三次方举例子,一阶导是 3X 的平方,二阶导是 6X,这样当 X 小于 0 就是凹函数,X 大于 0 就是凸函数。
2.5 泰勒展开 $$ f(x) = \frac{f(x_0)}{0!} + \frac{f'(x_0)}{1!}(x-x_0) + \frac{f''(x_0)}{2!}(x-x_0)^2 + \cdots + \frac{f^{(n)}(x_0)}{n!}(x-x_0)^n + R_n(x) $$
$$ f(x) = f(x_k) + (x-x_k)f'(x_k) + \frac{1}{2}(x-x_k)^2 f''(x_k) + o^n $$
泰勒展开是通过多项式函数来近似一个可导函数 f(x),在 x=x0 处进行泰勒展开,如果函数 f(x) 是 n 阶可导的。常数项 + 一阶项 + 二阶项 一直加到 n 的阶乘分之一乘以 n 阶导数。
泰勒展开在以前我们学高等数学的时候是非常有用的,它可以用来研究函数某些性质完成很多任务,在机器学习里面,它用来求函数的极值用的,很多时候函数 f(x) 可能会非常复杂,我们去用泰勒展开做一个近似,梯度下降法怎么做的呢?是做一个近似,只保留泰勒展开一阶项,还有牛顿法,牛顿法是保留泰勒展开二阶项,忽略二阶以上的项,用二次函数来进行函数 f(x)。
当 $x \to 0$ 时:
$e^x = 1 + x + o(x)$
$\ln(1+x) = x + o(x)$
只用一阶导数看起来有点不准呀,能不能再利用一些呢?
一阶导数只帮我们定位了下一个点是上升还是下降对之后的趋势就很难把控了。
如果在 x0 点相交
$$ P_n(x_0) = f(x_0) $$
如果有相同的切线
$$ P_n'(x_0) = f'(x_0) $$
如果弯曲方向相同
$$ P_n''(x_0) = f''(x_0) $$
2.6 定积分 当 $| \Delta x | \rightarrow 0$ 时,总和 S 总是趋于确定的极限 I,则称极限 I 为函数 f(x) 在曲线 [a,b] 上的定积分。
积分值和被积函数与积分曲线有关,与积分变量字母无关。 $\int_a^b f(x) dx = \int_a^b f(t) dt = \int_a^b f(u) du$
当函数 $f(x)$ 在区间 [a,b] 上的定积分存在的时候,称 $f(x)$ 在区间 [a,b] 上可积。
面积的正负值:
$$ \begin{aligned} f(x) > 0, &\quad \int_{a}^{v} f(x) dx = A \[6pt] f(x) < 0, &\quad \int_{a}^{b} f(x) dx = -A \end{aligned} $$
第一中值定理 ,积分上限函数 ,牛顿 — 莱布尼茨公式 等一些知识可以下去自己了解了解,这里只简单的概述有关高等数学 的知识。
结语 微积分作为人工智能的核心数学工具之一,贯穿了从模型构建到优化的全过程。左导数与右导数的概念帮助分析函数的局部行为,可导函数的性质为梯度下降等优化算法奠定理论基础。导数的几何意义体现在损失函数曲面的切平面方向,物理意义则类比于系统变化的瞬时速率。
常用求导公式是自动微分技术的基础支撑,导数与函数单调性的关系直接应用于激活函数设计。泰勒展开为非线性模型提供局部线性近似方法,定积分则在概率建模和期望计算中发挥关键作用。掌握这些数学工具,能够更深入地理解神经网络训练动态、正则化机制以及概率图模型的内在原理。
除微积分外,线性代数提供了张量运算和特征分解的工具,概率统计支撑着贝叶斯推理与随机优化,信息论指导着特征选择与模型压缩,优化理论驱动着各类学习算法的收敛性分析。这些数学分支共同构成了人工智能系统的理论基础,使研究者能更精准地描述数据规律、设计高效算法并解释模型行为。持续深化数学理解,将有效提升解决复杂 AI 问题的能力。
有关线性代数 、概率论 和最优化 在后面的文章会进行详细的讲解。