图解人工智能的数学基础(高数)

本文涉及的产品
RDS DuckDB + QuickBI 企业套餐,8核32GB + QuickBI 专业版
简介: 本文系统讲解微积分核心概念:数列与递推、极限(含无穷小/大)、导数(含中值定理、泰勒公式)、积分(不定/定/变上限/反常)及微分方程,并延伸至多元函数、偏导数、链式法则与二重积分,结合Sigmoid函数、药物衰减等实例及SymPy代码演示,突出其在AI与工程中的应用基础。

 数列

数列与递推关系式

image.gif 编辑

image.gif 编辑

数列极限

    当一个函数的自变量无限接近某个值时,函数本身的值会无限接近于什么。极限的精髓:它

关注的是趋势,而不是特定点的实际值。

image.gif 编辑

累加

image.gif 编辑

极限

当一个函数的自变量无限接近某个值时,函数本身的值会无限接近于什么。极限的精髓:它

关注的是趋势,而不是特定点的实际值。

image.gif 编辑

image.gif 编辑

     红色空心圆:这个圆圈标记了函数在 x=1 处的缺失点。虽然函数在该点没有定义,但从图像上

可以清楚地看到,当 x 从左边或右边无限接近 1 时,函数值无限接近 2。虚线:水平和垂直虚线明

确地指出了这个极限点的位置,即 (1,2)。

     下面将展示一个简单的 Sigmoid 函数的例子,并编写代码,通过数值方法来求解其在 x 趋近于

正无穷和负无穷时的极限,最后将这个过程可视化。对于需要精确的符号解(而不是数值近似)的

情况,我们可以使用像 SymPy 这样的 Python 库。SymPy 可以进行代数运算,它知道极限的数学

规则,可以直接求解。

import sympy as sp
# 定义一个符号变量 x
x = sp.Symbol('x')
# 定义 Sigmoid 函数的符号表达式
sigmoid_expr = 1 / (1 + sp.exp(-x))
# 求解当 x 趋近于正无穷时的极限
limit_pos_inf = sp.limit(sigmoid_expr, x, sp.oo)
# 求解当 x 趋近于负无穷时的极限
limit_neg_inf = sp.limit(sigmoid_expr, x, -sp.oo)
# 打印结果
print(f"当 x 趋近于 +∞ 时,Sigmoid函数的极限是: {limit_pos_inf}")
print(f"当 x 趋近于 -∞ 时,Sigmoid函数的极限是: {limit_neg_inf}")

image.gif

当 x 趋近于 +∞ 时,Sigmoid函数的极限是: 1
当 x 趋近于 -∞ 时,Sigmoid函数的极限是: 0

image.gif

image.gif 编辑

     在人工智能中,链式法则本身就是基于复合函数求导的,而求导的基础就是极限。可以说,反

向传播算法的高效性,完全建立在微积分和极限的严格理论之上。

无穷小

image.gif 编辑

image.gif 编辑

无穷大

image.gif 编辑

image.gif 编辑


函数

一元函数

     一次函数 在数学函数中最基本、最重要的就是一次函数。它它在神经网络的世界里也同样重

要。这个函数可以用下式表示。

image.gif 编辑

多元函数

image.gif 编辑

image.gif 编辑

单位阶跃函数

image.gif 编辑

Sigmoid 函数

image.gif 编辑

应用:

     在 AI 的技术逻辑中,所有智能决策与预测,本质都是 “找一个合适的函数”。无论是让模型识

别猫和 狗,还是预测明天的气温,核心目标都是构建一个能精准描述 “输入数据” 与 “输出结果” 对

应关系的函数。


导数

导数的概念

简单来说:函数在某一点的导数,就是函数图像在这一点切线的斜率

微分:是一个增量,它是在导数的基础上,用来近似函数在自变量微小变化时所产生的增量。

微分就是用导数(斜率)来估算这个小增量。

image.gif 编辑

image.gif 编辑

image.gif 编辑

曲率

image.gif 编辑

image.gif 编辑

image.gif 编辑

image.gif 编辑

image.gif 编辑

三大中值定理

 本质就是:割线的斜率等于切线的斜率

罗尔定理

image.gif 编辑

拉格朗日定理

image.gif 编辑

image.gif 编辑

柯西定理

image.gif 编辑

泰勒公式

image.gif 编辑

image.gif 编辑

image.gif 编辑

image.gif 编辑

image.gif 编辑

为什么这个方法有效?

   泰勒公式的核心在于,它利用了函数在某一点的所有导数信息。这些导数信息包含了函数在这一

点周围的所有局部几何特征:一阶导数:决定了函数的斜率。二阶导数:决定了函数的凹凸性。三

阶及更高阶导数:决定了函数的“弯曲变化”。通过把所有这些局部信息叠加起来,泰勒多项式就能

像一个“整形医生”一样,越来越精确地模仿原始函数的局部形状。

image.gif 编辑

应用

近似计算:在计算机中,计算 ex 或 sinx 这样复杂函数的值时,通常就是使用它们的泰勒级数展开

式,通过有限项求和来得到近似值。

image.gif 编辑

在人工智能领域:假设我们有一个神经网络模型,我们想要通过调整其参数来最小化在训练集上的

损失函数。然而,有时候这个损失函数非常复杂,难以直接求解。这时候,我们可以使用泰勒公式

来近似表示这个复杂的损失函数。我们选择一个适当的点作为展开的中心点,然后计算损失函数在

这个点的值、一阶导数、二阶导数等。我们可以使用泰勒公式将损失函数在这个点附近展开为一个

简单的二次函数。我们可以使用这个简化的二次函数来找到损失函数的最小值。虽然这个最小值可

能不是原始损失函数的真实最小值,但它足够接近,让我们可以通过调整模型参数来得到一个好的

解决方案。


积分

不定积分

不定积分就是寻找一个已知函数求导前的那个原函数 F(x),它代表了一族只相差一个常数的函数。

image.gif 编辑

不定积分的本质是求原函数,导数的本质是关于x点对应切线斜率的函数

image.gif 编辑

求出2x的不定积分

from sympy import symbols, integrate
# 1. 定义符号变量
x = symbols('x')
# 2. 定义被积函数 f(x) = 2x
f_x = 2 * x
# 3. 求解不定积分 (integrate(函数, 变量))
# SymPy 计算符号积分
F_x = integrate(f_x, x)
# 4. 输出结果
print("使用 SymPy 求解 2x 的不定积分:")
# SymPy 返回 x**2,我们必须加上 + C
print(f"∫ 2x dx = {F_x} + C")

image.gif

image.gif 编辑

应用

      不定积分是连接变化率(微分)与物理状态(原函数)的桥梁,是进行运动预测、能量分析和

结构设计的基础数学工具。

定积分

 定积分就是曲线下的面积(Area Under a Curve),它代表一个函数在某一区间内的净累计量

总量

image.gif 编辑

image.gif 编辑

from sympy import symbols, integrate
# 1. 定义符号变量
x = symbols('x')
# 2. 定义被积函数 f(x) = x^2
f_x = x**2
# 3. 求解定积分:integrate(函数, (变量, 下限, 上限))
# (x, 0, 1) 表示对 x 在 [0, 1] 区间上积分
definite_integral = integrate(f_x, (x, 0, 1))
# 4. 输出结果
print("--- 符号计算 (SymPy) ---")
print(f"定积分表达式: ∫[0, 1] x^2 dx")
print(f"精确解析解: {definite_integral}") 
# 结果是 1/3

image.gif

应用

     定积分是进行精确量化性能分析的基础,它将连续的物理量(如速度、流量、功率)累加为

有实际意义的工程总量。

变上限积分

设函数 f(t) 在区间 [a,b] 上连续,则以 x 为上限的变上限积分函数 F(x) 定义为:

image.gif 编辑

我们考虑函数 f(t)=t,并定义一个以 x 为上限,以 0 为下限的变上限积分函数 F(x):

image.gif 编辑

image.gif 编辑

from sympy import symbols, integrate
# 1. 定义符号变量
# t 是积分变量 (dummy variable)
# x 是积分的上限变量 (variable upper limit)
t, x = symbols('t x')
# 2. 定义被积函数 f(t)
f_t = t
# 3. 求解变上限定积分:∫[0, x] t dt
# 格式为 integrate(函数, (积分变量, 下限, 上限))
F_x = integrate(f_t, (t, 0, x))
# 4. 输出结果
print("--- SymPy 求解变上限积分 ---")
print(f"被积函数 f(t) = {f_t}")
print(f"积分区间: [0, x]")
print("-" * 30)
print(f"变上限积分函数 F(x) = {F_x}")

image.gif

应用:

     变上限积分提供了一种强大的函数建模方法,用一个连续变化的函数 F(x) 来描述系统在任意时

刻或任意位置所达到的累计状态。

反常积分

   反常积分是定积分的推广,用于计算积分区间是无穷大或被积函数在积分区间内存在无穷间断

时曲线下的面积。

无穷区间的反常积分

image.gif 编辑

image.gif 编辑

from sympy import symbols, integrate, oo
# 1. 定义符号变量
x = symbols('x')
# 2. 定义被积函数 f(x) = 1/x^2
f_x = 1/x**2
# 3. 求解反常定积分:integrate(函数, (变量, 下限, 上限))
# oo (infinity) 代表无穷大
definite_improper_integral = integrate(f_x, (x, 1, oo))
# 4. 输出结果
print("--- 符号计算 (SymPy) ---")
print(f"反常积分表达式: ∫[1, ∞] 1/x^2 dx")
print(f"精确解析解: {definite_improper_integral}")

image.gif

image.gif 编辑

image.gif 编辑

image.gif 编辑

image.gif 编辑

无界函数的反常积分

image.gif 编辑

image.gif 编辑

image.gif 编辑

image.gif 编辑

应用:在工程中,反常积分主要用于分析那些在时间或空间上无限延伸的系统或现象。

微分方程

  微分方程是包含一个函数及其导数(变化率)的数学方程,用于描述自然界或工程系统中变量

之间的动态关系

      微分方程可以分为常微分方程(Ordinary Differential Equation, ODE)和偏微分方程(Partial

Differential Equation, PDE)两大类。

常微分方程 (ODE) ,只包含一个独立变量及其导数:

image.gif 编辑

偏微分方程 (PDE),包含两个或更多独立变量及其偏导数:

image.gif 编辑

    假设药物以某个恒定速率被身体消除。药物的浓度 C 在时间 t 内的变化率 dt/dC 与当时的药物

浓度 C 成正比。

image.gif 编辑

import numpy as np
from scipy.integrate import odeint
import matplotlib.pyplot as plt
import matplotlib as mpl
# 尝试使用系统中常见的几种中文字体
plt.rcParams['font.sans-serif'] = ['SimHei', 'WenQuanYi Micro Hei', 'Arial Unicode MS', 'Heiti TC'] 
# 解决负号显示为方块的问题
plt.rcParams['axes.unicode_minus'] = False 
# =========================================================
# --- 2. 定义微分方程函数 ---
def drug_decay_model(C, t, k):
    """
    药物浓度衰减微分方程: dC/dt = -k*C
    C: 药物浓度 (mg/L)
    t: 时间 (h)
    k: 消除速率常数 (h^-1)
    """
    dCdt = -k * C
    return dCdt
# --- 3. 参数设定与初始条件 ---
C0 = 100.0  # 初始药物浓度 (mg/L)
k = 0.2     # 消除速率常数 (h^-1)
# 定义时间范围 (从 0 到 24 小时,共 100 个点)
t = np.linspace(0, 24, 100)
# --- 4. 求解微分方程 (数值求解) ---
# 使用 scipy.integrate.odeint 求解
# 传入: (微分方程函数, 初始值, 时间点, 额外参数k)
solution = odeint(drug_decay_model, C0, t, args=(k,))
# 提取浓度 C(t)
C_t = solution[:, 0]
# --- 5. 计算理论值(用于参考) ---
# 解析解: C(t) = C0 * exp(-k*t)
C_t_analytical = C0 * np.exp(-k * t)
# 标记药物半衰期 (理论上 t_half = ln(2)/k)
t_half = np.log(2) / k
C_half = C0 / 2
# --- 6. 可视化结果 ---
FIGSIZE = (10, 6)
plt.close('all')
fig, ax = plt.subplots(figsize=FIGSIZE)
# 绘制数值解曲线
ax.plot(t, C_t, label=f'数值解 C(t) ($k={k}\, h^{{-1}}$)', 
        color='mediumblue', linewidth=3, alpha=0.8)
# 绘制理论解析解曲线(用于验证数值解的准确性)
ax.plot(t, C_t_analytical, label='解析解 ($C_0 e^{{-kt}}$)', 
        color='orange', linestyle='--', linewidth=1.5)
# 绘制初始浓度点
ax.plot(0, C0, 'o', color='red', label=f'初始浓度 $C_0 = {C0}$ mg/L')
# 标记药物半衰期
ax.plot(t_half, C_half, 'x', color='green', markersize=10, markeredgewidth=2,
        label=f'半衰期 $t_{{1/2}} \\approx {t_half:.2f}$ h')
ax.hlines(C_half, 0, t_half, linestyle=':', color='gray', alpha=0.7)
ax.vlines(t_half, 0, C_half, linestyle=':', color='gray', alpha=0.7)
ax.set_title('药物浓度衰减模型 (常微分方程应用)', fontsize=16)
ax.set_xlabel('时间 $t$ (小时)', fontsize=12)
ax.set_ylabel('浓度 $C(t)$ (mg/L)', fontsize=12)
ax.legend(fontsize=10)
ax.set_ylim(bottom=0)
plt.tight_layout()
plt.show()

image.gif

image.gif 编辑


多元函数微分学

多变量函数

image.gif 编辑

image.gif 编辑

偏导数

image.gif 编辑

image.gif 编辑

image.gif 编辑

image.gif 编辑

多变量函数的极值

image.gif 编辑

image.gif 编辑

image.gif 编辑

image.gif 编辑

误差反向传播法必需的链式法则

image.gif 编辑

image.gif 编辑

image.gif 编辑

image.gif 编辑

image.gif 编辑

image.gif 编辑

image.gif 编辑 image.gif 编辑

image.gif 编辑

image.gif 编辑

image.gif 编辑


二重积分

image.gif 编辑

image.gif 编辑

image.gif 编辑


目录
相关文章
|
4天前
|
人工智能 自然语言处理 文字识别
阿里云百炼Qwen3.7-Max简介:能力、优势、支持订阅计划参考
Qwen3.7-Max是阿里云百炼面向智能体时代推出的新一代旗舰模型,对标GPT-5.5、Claude Opus 4.7等闭源旗舰。该模型支持百万级token上下文窗口,具备顶级推理能力、多模态搜索与视觉理解增强、流式输出低延迟响应等核心优势,覆盖编程、办公、长周期自主执行等复杂场景。同时支持OpenAI接口兼容,便于系统快速迁移。用户可通过Token Plan团队或节省计划等订阅方式灵活调用,适合企业级高要求场景使用。
2058 7
阿里云百炼Qwen3.7-Max简介:能力、优势、支持订阅计划参考
|
12天前
|
人工智能 开发工具 iOS开发
Claude Code 新手完全上手指南:安装、国产模型配置与常用命令全解
Claude Code 是一款运行在终端环境中的 AI 编程助手,能够直接在命令行中完成代码生成、项目分析、文件修改、命令执行、Git 管理等开发全流程工作。它最大的特点是**任务驱动、终端原生、轻量高效、多模型兼容**,无需图形界面、不依赖 IDE 插件,能够深度融入开发者日常工作流。
3379 10
|
15天前
|
Shell API 开发工具
Claude Code 快速上手指南(新手友好版)
AI编程工具卷疯啦!Claude Code凭借任务驱动+终端原生的特性,成了开发者的效率搭子。本文从安装、登录、切换国产模型到常用命令,手把手带新手快速上手,全程避坑,30分钟独立用起来。
3435 25
|
8天前
|
人工智能 Linux BI
国内用 Claude Code 终于不用翻墙了:一行命令搞定,自动接 DeepSeek
JeecgBoot AI专题研究 一键脚本:Claude Code + JeecgBoot Skills + DeepSeek 全平台接入 一行命令装好 Claude Code + JeecgBoot Skills + DeepSeek 接入,无需翻墙使用 Claude Code,支持 Wind
2539 5
国内用 Claude Code 终于不用翻墙了:一行命令搞定,自动接 DeepSeek
|
27天前
|
人工智能 JSON 供应链
畅用7个月无影 JVS Claw |手把手教你把JVS改造成「科研与产业地理情报可视化大师」
LucianaiB分享零成本畅用JVS Claw教程(学生认证享7个月使用权),并开源GeoMind项目——将JVS改造为科研与产业地理情报可视化AI助手,支持飞书文档解析、地理编码与腾讯地图可视化,助力产业关系图谱构建。
23606 15
畅用7个月无影 JVS Claw |手把手教你把JVS改造成「科研与产业地理情报可视化大师」
|
6天前
|
人工智能 自然语言处理 安全
Claude Code 全攻略:命令大全+三种模式+记忆体系+实战工作流完整手册
Claude Code 是当前最流行的终端级 AI 编程助手,能够直接在命令行中完成代码生成、项目理解、文件修改、命令执行、错误修复等全流程开发工作。它不依赖图形界面、不占用额外资源,却能深度理解项目结构,自动生成规范代码,大幅提升研发效率。
1094 3
|
13天前
|
存储 Linux iOS开发
【2026最新】MarkText中文版Markdown编辑器使用图解(附安装包)
MarkText是一款免费开源、跨平台的Markdown编辑器,主打所见即所得实时预览,支持Windows/macOS/Linux。内置数学公式、流程图、代码高亮、多主题及PDF/HTML导出,是Typora的轻量免费替代首选。(239字)