术语表

纪元

了解机器学习中的纪元--它们如何影响模型训练、防止过拟合,以及利用 Ultralytics YOLO 优化性能。

机器学习(ML)中,一个历元代表整个训练数据集通过学习算法的一次完整传递。它是神经网络(NN)迭代训练过程中的一个基本概念,在这个过程中,模型通过反复查看数据中的示例来学习。历元数是一个关键参数,它决定了模型从整套训练信息中学习的次数,直接影响模型的最终性能和质量。

时代在模型训练中的作用

模型训练的主要目标是让模型从数据中学习模式。实现这一目标的方法是调整模型的内部参数(称为模型权重),使损失函数最小化,损失函数量化了模型预测与实际地面实况之间的误差。在单个epoch期间,模型会处理每个数据样本,而随机梯度下降(SGD)优化算法会更新这些权重。

对模型进行多次历时训练可以不断改进其参数。从理论上讲,无论是图像分类还是物体检测,每次训练后,模型都能更好地完成任务。这一过程可通过PyTorchTensorFlow 等流行的深度学习框架进行管理。

历时 vs. 迭代 vs. 批量

这些术语虽然相互关联,但描述的是培训过程的不同方面,因此经常被混淆。

  • 纪元:一个完整的周期,在这个周期内,模型已看过整个训练数据集。
  • 批量大小:单次迭代中使用的训练样本数量。由于内存限制,一次性处理整个数据集往往不切实际。
  • 迭代:模型权重的一次更新。一次迭代包括处理一批数据,并执行前向和后向传递(反向传播)。

例如,如果一个数据集有 10,000 张图像,而批次大小为 100,那么一个历元将包含 100 次迭代(10,000 张图像/每批 100 张图像)。

确定正确的纪元数

选择正确的历元数是超参数调整的关键部分。它需要找到一个平衡点,以避免两个常见问题:

  • 不合适:当模型没有经过足够的历时训练时,就会出现这种情况。它无法学习数据中的基本模式,在训练和测试数据上的表现都很差。
  • 过度拟合:当模型训练的历时过长时,就会出现这种情况。它开始 "记忆 "训练数据,包括其中的噪声,并失去泛化到新的、未见过的数据的能力。虽然模型在训练集上的准确率可能很高,但在验证数据上的表现就会很差。

对抗过拟合的一种常用技术是提前停止,即一旦模型在验证集上的性能不再提高,就停止训练。可以使用TensorBoard等工具或Ultralytics HUB 等平台来监控训练进度,后者有助于可视化历时训练指标

真实案例

在深度学习应用中,"历时"(epochs)的概念非常普遍。

  1. 自动驾驶自动驾驶汽车物体检测模型是在Argoverse 这样的海量数据集上训练出来的。该模型(如Ultralytics YOLO11)可能要训练 50-100 次。每个epoch后,使用平均精度(mAP)等指标来衡量其在验证集上的性能。工程师将在部署前从历时中选择速度和准确性平衡最好的模型。

  2. 医学图像分析:在专业医学影像数据集上训练脑部扫描肿瘤检测模型。鉴于此类数据集可能较小,该模型可能需要训练几百次。为了防止过拟合,使用了数据增强等技术,并在每个历时后密切监控验证损失。这样就能确保最终模型对新患者的扫描结果具有良好的通用性。遵循既定的模型训练技巧对此类关键应用的成功至关重要。

加入 Ultralytics 社区

加入人工智能的未来。与全球创新者联系、合作和成长

立即加入
链接复制到剪贴板