当前位置: 首页 > ai >正文

深度学习 必然用到的 微积分知识

带你看懂 微积分 如何驱动深度学习,让模型在海量数据中迭代进化、越练越强

1 导数与微分——深度学习的调音旋钮

导数 衡量函数输出随输入瞬时变化的速度,是“斜率”的推广。训练神经网络时,我们将 损失函数 视作待“调音”曲线:对每个参数 wiw_iwi 加/减一个无穷小扰动 hhh,就能用

∂L∂wi=lim⁡h→0L(wi+h)−L(wi)h \frac{\partial \mathcal L}{\partial w_i}=\lim_{h\to0}\frac{\mathcal L(w_i+h)-\mathcal L(w_i)}{h} wiL=h0limhL(wi+h)L(wi)

得到损失变化率。直观地说,导数告诉我们往哪边拧旋钮能把噪音变小。

深度学习框架(PyTorch、TensorFlow)的 自动微分 引擎正是批量把这一步做掉,生成反向传播图。实战中,只要保证损失关于参数 可微,梯度才存在

2 偏导数——抓住多变量的关键方向

真实网络包含上百万参数,损失 L(w)\mathcal L(\mathbf w)L(w) 是多元函数。固定其他维度,仅改变 wiw_iwi 时的导数就叫 偏导数

∂L∂wi \frac{\partial \mathcal L}{\partial w_i} wiL

它描述在 高维空间 中沿坐标轴方向的坡度。拿 CNN 卷积核举例,偏导决定了每个权重对输出特征图的单独影响;我们可以用热力图直观看到“哪些像素更敏感”。

理解偏导也帮我们调 学习率:若某一层梯度普遍过大/过小,可用 梯度裁剪归一化 保持训练稳定。

3 梯度——损失山谷里的指南针

在这里插入图片描述

📊 多元函数的梯度向量。颜色渐变+黑箭头直观说明梯度永远指向上升最快。梯度的大小 = 坡度的陡峭程度。 梯度的方向 = 变化最快的方向。优化时沿 负梯度方向 更新参数,才能找到损失最小值。

连结一个多元函数对其所有变量的偏导数,以得到该函数的梯度向量。把所有偏导数拼成向量 ∇wL=[∂L/∂w1,… ]\nabla_{\mathbf w}\mathcal L=[\partial \mathcal L/\partial w_1,\dots]wL=[L/w1,] 就得到 梯度,它总是指向函数增长最快的方向。

单变量函数 对于f(x)f(x)f(x),梯度就是导数f′(x)f'(x)f(x)表示函数在当前位置的斜率,如果导数 > 0,函数上升,如果导数 < 0,函数下降
多元函数 对于L(w1,w2,...,wn)L(w_1,w_2,...,w_n)L(w1,w2,...,wn),梯度是对所有自变量求偏导,拼成的 向量

想象 L(w)L(w)L(w) 是一座起伏的山,横轴是参数 www ,纵轴是损失值 LLL 在多维空间,它就是一个复杂地形梯度的方向 = 当下点上升最快的方向下山(最小化损失),就沿着负梯度方向走。

常用优化器:

  • SGDw←w−η∇L\mathbf w \leftarrow \mathbf w-\eta\nabla\mathcal LwwηL 以固定步长沿负梯度方向更新
  • Adam:使用一阶矩(梯度均值)与二阶矩(梯度方差)进行自适应学习率调整。其本质依旧沿负梯度方向,只是动态调整步幅以避免震荡或陷入局部最优。

在这里插入图片描述

📊 左右对照,将输入变量经过函数盒输出标量,再汇总成列向量,把所有偏导数拼成梯度。即对多元函数所有自变量求偏导,拼成的向量。

4 链式法则——搭起复杂模型的桥梁

深度网络是多层复合函数 f(g(h(x)))f(g(h(x)))f(g(h(x)))链式法则 给出分层求导的公式:

dfdx=dfdu⋅dudx \frac{df}{dx}=\frac{df}{du}\cdot\frac{du}{dx} dxdf=dudfdxdu

反向传播正是把输出到输入的梯度逐层“链式”传递,既节省内存又避免重复计算。明白这一点后,残差连接梯度消失/爆炸 的原理便一目了然:梯度在链中连续相乘,若每步 <1 会迅速衰减,>1 则指数放大。使用 BatchNorm、Skip Connection 等手段,就是在修改链上的“传动比”以保持信号稳定。

概念数学定义/公式深度学习作用
导数dydx\dfrac{dy}{dx}dxdy单参数敏感度
偏导数∂f∂xi\dfrac{\partial f}{\partial x_i}xif高维坐标方向梯度
梯度∇f\nabla ff指向最快上升/下降
链式法则dfdx=dfdududx\dfrac{df}{dx}=\dfrac{df}{du}\dfrac{du}{dx}dxdf=dudfdxdu反向传播核心
损失函数L\mathcal LL评价模型好坏
优化器w←w−η∇L\mathbf w\leftarrow\mathbf w-\eta\nabla\mathcal LwwηL更新参数

📊 表格浓缩了微积分四大核心概念及其在深度学习流程中的位置。先理解导数与偏导的局部含义,再把梯度看作整体“方向场”,最后用链式法则把多层网络串联,就能从数学上看清训练过程为何奏效🔥。实践里,通过监控梯度范数与分布,我们能够迅速定位学习率不合适、梯度爆炸等常见坑。

输入数据
损失
模型参数
导数/偏导
梯度 ∇𝓛
优化器SGD/Adam
参数更新

📊 框图展示从数据到梯度再到参数更新的完整闭环。损失函数 像一座地形复杂的山,梯度 是指北针,优化器 决定你以怎样的步幅和惯性下山。调好学习率、批大小等“行走策略”,才能让模型在未见数据上同样表现亮眼 🙂。

新的完整闭环。损失函数 像一座地形复杂的山,梯度 是指北针,优化器 决定你以怎样的步幅和惯性下山。调好学习率、批大小等“行走策略”,才能让模型在未见数据上同样表现亮眼 🙂。

http://www.xdnf.cn/news/14946.html

相关文章:

  • 整合Spring、Spring MVC与MyBatis:构建高效Java Web应用
  • 【实习篇】之Http头部字段之Disposition介绍
  • vue快速上手
  • 解决IDEA缺少Add Framework Support选项的可行性方案
  • 跨平台ROS2视觉数据流:服务器运行IsaacSim+Foxglove本地可视化全攻略
  • 单片机STM32F103:DMA的原理以及应用
  • Python通关秘籍之基础教程(一)
  • 供应链管理-采购:谈判方式、理念、技巧
  • 【C++】第四章—— 函数重载 Function Overloading 笔记
  • android activity生命周期温习
  • JSP数据交互
  • JAVA如何实现Redis同步
  • 软件发布的完整流程梳理
  • 每日mysql
  • Debezium:一款基于CDC的开源数据同步工具
  • 如何使用Pytest进行测试?
  • Ubuntu22.04 设置显示存在双屏却无法双屏显示
  • MS32C001-C单片机,32位ARM M0+内核,宽电压、低功耗、小封装。
  • 【图像处理基石】如何检测到画面中的ppt并对其进行增强?
  • 【问题思考总结】两个向量之和的二范数公式是什么?
  • Shell 脚本0基础教学(一)
  • 景观桥 涵洞 城门等遮挡物对汽车安全性的影响数学建模和计算方法,需要收集那些数据
  • Windows Subsystem for Linux (WSL):现代开发的终极跨平台方案
  • 专题一_双指针_有效三角形的个数
  • 【Linux | 网络】socket编程 - 使用TCP实现服务端向客户端提供简单的服务
  • 通过Tcl脚本命令:set_param labtools.auto_update_hardware 0
  • Spring Cloud服务注册与发现:架构设计与技术实践深度分析
  • VS Code侧边栏的“资源管理器找不到解决办法“、VScode重置视图位置/还原默认视图位置
  • Linux建立本地软件仓库
  • Spring Boot 扩展点深度解析:设计思想、实现细节与最佳实践