通过Ultralytics YOLO 了解机器学习中的历元--它们如何影响模型训练、防止过度拟合并优化性能。
在机器学习(ML)中,尤其是在训练深度学习模型时,一个纪元代表整个训练数据集通过学习算法的一次完整传递。训练模型是一个迭代过程,模型通过反复处理数据来学习模式。历元是一个基本的超参数,它定义了算法通过整个数据集的次数,允许模型多次从数据中的每个示例中学习。
在训练过程中,模型的内部参数或权重会根据其预测误差进行调整。这种调整通常使用梯度下降或其变体(如亚当优化器)等优化算法进行。一个历元意味着训练数据集中的每个样本都有机会更新一次模型的内部参数。对于大型数据集来说,一次性处理整个数据集的计算成本很高,因此通常会将数据分成较小的块,称为批次。
重要的是要将一个时代与相关术语区分开来:
把它想象成阅读一本书:整本书就是数据集,一个章节就是一批数据,阅读一个章节就是一次迭代,而阅读整本书的封面到封底就是一个纪元。
历元数是一个关键的超参数,因为它决定了模型从完整数据集中学习的次数。
找到适当的平衡点是实现良好模型性能和泛化的关键。这通常需要在训练过程中监控模型在单独验证数据集上的表现。
没有单一的 "正确 "历元数;最佳值取决于数据的复杂性、数据集的大小、模型架构和学习率。常见的方法包括
纪元是大多数深度学习框架的标准参数:
fit
方法。epochs是ML迭代学习的基石,它可以在充分接触数据的需求与过度拟合的风险之间取得平衡。正如斯坦福大学 CS231n 课程或 "机器学习大师 "博客等资源中讨论的那样,选择正确的历元数通常需要通过仔细的实验和监控,这是构建有效模型的关键。您可以在Google 机器学习词汇表等资源中找到更多定义。