学习资料
2026 夏季 InfiniTensor 训练营训练系统 1:《训练基础介绍》
发表于:

2026 夏季 InfiniTensor 训练营训练系统 1:《训练基础介绍》

7 月 14 日, 2026 夏季 InfiniTensor 大模型与人工智能系统训练营训练系统方向第一课《训练基础介绍》开讲。
本节课聚焦于训练系统开发视角,深入解析神经网络训练中的核心工程问题。内容涵盖从数学原理到 PyTorch 底层机制的全链路知识,并介绍团队自研训练框架 InfiniTrain 的实战应用。
本课程侧重于训练系统工程实现,不涉及模型调参及结构设计技巧,相关需求请关注大模型系列课程。

神经网络与训练核心原理

1. 神经网络基础回顾

  • 基本定义:模拟人脑信息处理的计算系统,由输入层、隐藏层、输出层组成。
  • 前向传播:数据从左至右逐层计算,最终得到预测值 $hat{y}$。
  • 训练目标:通过数据驱动自动学习映射关系,不断优化神经元权重以拟合真实情况。

2. 梯度下降法

  • 核心算法:梯度下降法(Gradient Descent),沿梯度反方向更新参数以最小化损失函数 $L( heta)$。
  • 更新公式:$ heta = heta - eta cdot
    abla_ heta L$ ($eta$ 为学习率,控制步长大小)。
  • 局部最优问题:SGD 采用随机梯度更新参数,训练过程中可能受到鞍点、平坦区域等因素影响;Adam 等优化器结合动量和自适应学习率机制,通常能够提升收敛速度。
  • 损失函数:衡量预测值与真实标签差距(分类任务用交叉熵,回归任务用均方误差)。

3. 激活函数详解

引入非线性变换以逼近复杂函数,避免多层线性堆叠退化:

函数 特点 优缺点
Sigmoid S 型曲线,输出(0,1) 适用于概率预测;两端梯度消失严重
Tanh S 型曲线,输出(-1,1) 零中心化,表达力更强;仍存在梯度消失
ReLU 正区间恒等映射,负区间为 0 计算高效,缓解梯度消失;存在“死神经元”问题
LeakyReLU 负区间保留微小斜率 解决死神经元问题,训练更鲁棒

反向传播与计算图机制

1. 链式法则(Chain Rule)

  • 串联路径:相邻节点偏导相乘。
  • 分支路径:多条路径偏导之和(如残差连接)。
  • 参数共享:同一参数被多次使用时,需累加所有路径上的偏导数。

2. 反向传播流程

  • 执行逻辑:从 Loss 出发,依据链式法则逐层回传梯度。
  • 显存开销:需缓存前向传播的中间激活值,导致训练显存占用显著高于推理。
  • 关键步骤

3. 数据集划分规范

  • 训练集 (Training Set):直接用于参数更新(通常占 80%)。
  • 验证集开发集 (Validation Set):用于超参选择、早停监控,不参与梯度更新(通常占 10%)。
  • 测试集 (Test Set):评估模型泛化能力,需与验证集同分布(通常占 10%)。

PyTorch AutoGrad 深度解析

1. 自动微分机制

  • 动态建图:前向运算时动态构建有向无环图(DAG),叶子节点为输入,根节点为输出。
  • Function 对象:每个操作对应一个 Function,记录前向结果与反向逻辑。
  • grad_fn 属性:非叶子张量的梯度入口,指向创建该张量的 Function

2. 梯度计算规则

  • 循环引用处理:使用 pack/unpack 机制避免激活值与 grad_fn 之间的循环引用,确保显存正确释放。
  • 不可导点处理:针对 ReLU(0) 等情况,依据凸/凹函数性质定义次梯度或抛出异常。
  • requires_grad 控制:默认情况下,仅叶子节点的 .grad 会累加梯度;中间节点仅用于传递梯度流。

3. 模式与操作约束

  • no_grad vs inferenceno_grad 禁用建图;inference 进一步优化推理且创建的 Tensor 无法重新进入 autograd
  • module.eval() 误区:仅改变 nn.Dropout/nn.BatchNorm2d 等行为模块的状态,不禁用 autograd
  • 原地操作 (In-place) 禁止:会覆盖中间值并破坏计算图版本计数器,导致正确性检查失败报错。

混合精度训练 torch.amp

1. 核心组件

  • autocast:自动将特定算子切换为 FP16 执行,提升吞吐并降低显存。
  • GradScaler:动态缩放 Loss 防止 FP16 梯度下溢,自动调整 scale 因子保证数值稳定性。

2. 优化等级 (APEX 标准)

  • O0:纯 FP32,无优化。
  • O1:按算子采用混合精度计算,存储 FP32(推荐通用策略)。
  • O2:权重/梯度 FP16,仅 Master Weight 为 FP32。
  • O3:全 FP16,极致速度但风险高。

3. 分层混合精度策略

针对不同模块的数值敏感性采用差异化精度:

  • EmbeddingO0 (高精度敏感)
  • AttentionO1
  • FFNO3

自研框架 InfiniTrain 介绍

1. 框架概况

  • 定位:从零搭建的 C++ 训练框架,支持 CPU/CUDA 双后端。
  • 教学版:TinyInfiniTrain(训练营作业载体,需补齐算子与训练流程)。

2. 核心特性

  • 模型支持:Dense 模型(MoE 开发中)。
  • 精度支持:FP32、低精度推理、混合精度训练。
  • 分布式策略:数据并行、张量并行、序列并行、流水并行及其组合。
  • 显存优化:集成多种主流显存节省技术。

加入训练营

📺完整课程内容,请观看直播或查看课程回放:

InfiniTensor 官网: [https://www.infinitensor.com]

B站直播: InfiniTensor 官方直播间

视频号直播: InfiniTensor 视频号预约

答疑交流: 训练营官方社群⬇️

Description

2026 夏季 InfiniTensor 大模型与人工智能系统训练营《训练基础介绍》,深入解析大模型训练系统工程,涵盖神经网络原理、反向传播机制、PyTorch Autograd 底层实现及 AMP 混合精度训练策略。课程聚焦实际工程问题,并介绍自研训练框架 InfiniTrain 的架构与分布式并行技术,助力开发者掌握 AI 基础设施核心开发能力。

关注与交流