What is Epoch(训练轮次)?
模型微调过程中对整个训练数据集进行的一次完整遍历。
Definition
一个epoch代表对训练数据集中每个样本的一次完整循环。如果数据集包含5,000个样本,模型在训练中处理了所有5,000个,这就构成一个epoch。微调通常运行多个epoch——一般在1到5之间——这样模型会多次看到每个样本,逐步调整权重以更好地拟合训练分布。
epoch数量是一个直接影响模型质量的关键超参数。epoch太少,模型可能无法充分吸收训练数据中的模式(欠拟合)。epoch太多,模型开始记忆特定样本而非学习可泛化的模式(过拟合)。最佳点取决于数据集大小、模型大小、学习率和任务复杂度。对于大多数拥有几千个样本的LLM微调任务,2-4个epoch是常见的起点。
在每个epoch内,数据集通常被打乱并分成批次(由批量大小超参数决定)。模型一次处理一个批次,在每个批次后通过反向传播计算损失并更新权重。监控各epoch的训练损失和验证损失提供了决定何时停止 训练的主要信号——理想的停止点是验证损失趋于平稳或开始上升时。
Why It Matters
正确设置epoch数量对于产生有用的微调模型至关重要。在实践中,大多数微调失败可以追溯到epoch太少(模型没有学会任务)或太多(模型已经在训练数据上过拟合)。理解epoch还帮助从业者估算训练时间和成本:将epoch数量翻倍大约会使所需GPU小时翻倍。对于预算有限的团队来说,这使得epoch选择成为平衡质量与计算成本的关键杠杆。
How It Works
在每个epoch开始时,训练样本被打乱以防止模型学到基于数据顺序的虚假模式。打乱后的数据集按batch-size超参数确定的大小分成小批次。对于每个小批次,模型执行前向传播(生成预测)、计算损失(衡量预测与目标的差距)、执行反向传播(计算梯度),然后更新适配器或模型权重。处理完所有小批次后,该epoch完成。训练循环随后在验证集上评估模型以跟踪泛化性能,然后开始下一个epoch。
Example Use Case
一个团队在3,000个客户支持样本上微调7B模型。1个epoch后,模型有所改善但仍然遗漏细微的回复。3个epoch后,验证准确率达到87%的峰值。5个epoch时,验证损失开始上升——这是过拟合的明确信号。他们选择第3个epoch的检查点作为生产模型,在学习完整性和泛化之间取得平衡。
Key Takeaways
- 一个epoch等于对所有训练样本的一次完整遍历。
- 大多数LLM微调任务使用1-5个epoch,2-4个是常见范围。
- epoch太少导致欠拟合;太多导致过拟合。
- 监控各epoch的验证损失是判断何时停止训练的主要信号。
- epoch数量直接影响训练时间和计算成本。
How Ertas Helps
Ertas Studio在其可视化训练配置面板中将epoch数量作为明确标记的超参数展示。平台提供每个epoch后更新的实时损失图表,使得发现验证损失停止改善的拐点变得容易。Ertas还支持早停机制,在模型停止改善时自动停止训练——节省GPU额度并防止过拟合,无需人工干预。
Related Resources
Batch Size
Fine-Tuning
Learning Rate
Overfitting
Training Data
Getting Started with Ertas: Fine-Tune and Deploy Custom AI Models
Introducing Ertas Studio: A Visual Canvas for Fine-Tuning AI Models
Hugging Face
Ertas for SaaS Product Teams
Ertas for Customer Support
Ship AI that runs on your users' devices.
Early bird pricing starts at $14.50/mo — locked in for life. Plans for builders and agencies.