张芷铭的个人博客

机器学习训练是"数据驱动下迭代优化参数、最小化损失"的过程,核心概念包括 Epoch、Step 和 Batch Size。

通用训练流程

步骤内容
数据准备划分、清洗、特征工程、封装 DataLoader
模型初始化搭建结构、初始化参数
前向传播计算预测值
损失计算量化预测偏差
反向传播计算梯度
参数更新优化器调整参数
迭代训练多轮 Epoch 直到收敛

核心概念

概念定义
Epoch遍历全量训练数据一次
Step一次参数更新(前向→损失→反向→更新)
Batch Size每次输入模型的样本数

关系:$1 \text{ Epoch 的 Step 数} = \text{总样本数} \div \text{Batch Size}$

训练流程详解

数据准备

  • 划分:Train/Eval/Test(如 7:2:1)
  • 预处理:归一化、编码、缺失值处理

前向传播:输入经过模型得到预测,损失函数量化偏差。

反向传播:链式法则计算每个参数对损失的梯度。

参数更新:优化器(SGD、Adam)根据梯度调整参数,学习率控制步长。

传统模型 vs 深度网络

特点传统模型深度网络
参数量百万至亿级
梯度计算简单多层链式法则
求解方式可有解析解必须迭代训练
硬件需求CPUGPU 加速

监控与调优

训练监控

  • 训练损失下降:模型在学习
  • 验证损失先降后稳:收敛
  • 验证损失上升:过拟合

调优方向:数据质量、特征工程、模型结构、超参数(学习率、Batch Size、Epoch 数)。

Comments