遇见 YOLO26: 下一代视觉 AI。
Ultralytics
返回 Ultralytics 词汇表

Callback

了解回调(callbacks)如何优化 Ultralytics YOLO26 的训练。学习实现提前停止、检查点和自定义日志记录,以增强你的 AI 工作流。

在软件工程和 人工智能 (AI) 领域,回调是指作为参数传递给其他代码的可执行代码片段,该代码随后会在特定时间点执行(回调用)该参数。在 深度学习 (DL) 框架的特定上下文中,回调是重要的工具,允许开发者自定义 模型训练 循环的行为,而无需修改核心训练代码本身。它们充当自动触发器,在训练过程的各个阶段执行特定操作,例如 epoch 的开始或结束、训练批次或整个训练会话。

Link to this section回调在机器学习中的作用#

训练复杂的 神经网络 可能需要数小时甚至数天。如果没有回调,训练过程本质上是一个运行到完成的“黑盒”,通常需要人工监督。回调引入了可观测性和控制力,允许系统根据实时性能指标进行自我调节。

当使用诸如 PyTorchTensorFlow 之类的高级库时,回调提供了一种将逻辑注入 优化算法 的方法。例如,如果模型学习效果良好,回调可以保存当前状态;如果学习停滞,回调可以停止进程以节省资源。这使得 机器学习 (ML) 工作流程更加高效和稳健。

Link to this section常见应用与实际案例#

回调用途广泛,可用于 模型监控 和优化过程中的各种任务。

  • 提前停止 (Early Stopping): 最常见的用途之一是 提前停止。此回调会监控特定的指标,例如 验证数据 的损失值。如果损失在设定的 epoch 数内不再下降,回调就会停止训练。这可以防止 过拟合,确保模型能很好地泛化到新数据,而不是仅仅背诵 训练数据
  • Model Checkpointing: In long training runs, hardware failures can be catastrophic. A checkpointing callback saves the model weights at regular intervals (e.g., every epoch) or only when the model achieves a new "best" score on metrics like accuracy or mean average precision (mAP). This ensures you always have a saved version of the best-performing model.
  • 学习率调度 (Learning Rate Scheduling): 学习率 控制模型在每次更新权重时根据估计误差进行改变的程度。回调可以动态调整此速率,在学习进入平稳期时降低学习率,以帮助模型收敛于最优解,这种技术通常被称为 学习率衰减
  • 日志记录与可视化: 回调经常被用于与 实验跟踪 工具集成。它们将指标流式传输到 TensorBoardMLflow 等仪表板,允许数据科学家实时可视化 损失函数 和性能图表。

Link to this section使用 Ultralytics YOLO 实现回调#

The Ultralytics library supports a robust callback system, allowing users to hook into events during the training of models like YOLO26. This is particularly useful for users managing workflows on the Ultralytics Platform who need custom logging or control logic.

以下是一个简洁的示例,展示了如何使用 Python API 定义并注册一个自定义回调,在每个训练 epoch 结束时打印一条消息:

from ultralytics import YOLO


# Define a custom callback function
def on_train_epoch_end(trainer):
    """Callback function to execute at the end of each training epoch."""
    print(f"Epoch {trainer.epoch + 1} complete. Current Fitness: {trainer.fitness}")


# Load the YOLO26 model (latest generation)
model = YOLO("yolo26n.pt")

# Register the custom callback to the model
model.add_callback("on_train_epoch_end", on_train_epoch_end)

# Train the model with the callback active
model.train(data="coco8.yaml", epochs=3)

Link to this section回调 vs. 钩子 (Hooks)#

While related, it is helpful to distinguish callbacks from hooks. In frameworks like PyTorch, hooks are generally lower-level functions attached to specific tensor operations or neural network layers to inspect or modify gradients and outputs during the forward or backward pass. In contrast, callbacks are typically higher-level abstractions tied to the training loop events (start, end, batch processing) rather than the mathematical computation graph itself.

Link to this section延伸阅读与资源#

对于那些希望加深对如何优化训练工作流程理解的用户,探索 超参数调优 是合乎逻辑的下一步。此外,了解基础的 计算机视觉 (CV) 任务(如 目标检测实例分割)将为你提供关于为何需要通过回调进行精确训练控制的背景知识。对于企业级的流程管理,Ultralytics Platform 提供了集成解决方案,可以自动化许多此类回调驱动的行为。

Explore solutions

Real-time AI that works with your team

机器人技术中的 AI

使用 Ultralytics YOLO 模型为智能机器赋能。机器人技术中的视觉 AI 可推动自主导航、感知、物体跟踪和实时控制。
了解更多
Real-time AI that works with your team

物流中的 AI

使用 Ultralytics YOLO 模型简化物流。视觉 AI 可实现包裹检查、分拣、车辆跟踪和实时仓库安全监控。
了解更多
Real-time AI that works with your team

零售业 AI

使用 Ultralytics YOLO 模型重塑零售业。视觉 AI 推动库存跟踪、货架监控、队列管理和更智能的客户洞察。
了解更多
Real-time AI that works with your team

医疗保健中的 AI

利用 Ultralytics YOLO 模型构建医疗保健解决方案。医疗保健中的视觉 AI 可助力更快速的医学影像分析、更智能的诊断和患者监测。
了解更多
Real-time AI that works with your team

制造业中的 AI

使用 Ultralytics YOLO 模型优化制造业。视觉 AI 推动质量控制、缺陷检测、PPE 合规性和装配线自动化。
了解更多
Real-time AI that works with your operation

汽车中的 AI

将计算机视觉应用于汽车行业,并配合 Ultralytics YOLO 模型。汽车视觉 AI 可提升道路安全、辅助驾驶和车辆自动化,打造更智能的道路。
了解更多
Real-time AI tailored to your operation

农业中的 AI

借助 Ultralytics YOLO 模型,将视觉 AI 引入智慧农业。赋能作物监测、牲畜追踪和精准农业,实现更高、更智能的产量。
了解更多
Real-time AI that works with your team

机器人技术中的 AI

使用 Ultralytics YOLO 模型为智能机器赋能。机器人技术中的视觉 AI 可推动自主导航、感知、物体跟踪和实时控制。
了解更多
Real-time AI that works with your team

物流中的 AI

使用 Ultralytics YOLO 模型简化物流。视觉 AI 可实现包裹检查、分拣、车辆跟踪和实时仓库安全监控。
了解更多
Real-time AI that works with your team

零售业 AI

使用 Ultralytics YOLO 模型重塑零售业。视觉 AI 推动库存跟踪、货架监控、队列管理和更智能的客户洞察。
了解更多
Real-time AI that works with your team

医疗保健中的 AI

利用 Ultralytics YOLO 模型构建医疗保健解决方案。医疗保健中的视觉 AI 可助力更快速的医学影像分析、更智能的诊断和患者监测。
了解更多
Real-time AI that works with your team

制造业中的 AI

使用 Ultralytics YOLO 模型优化制造业。视觉 AI 推动质量控制、缺陷检测、PPE 合规性和装配线自动化。
了解更多
Real-time AI that works with your operation

汽车中的 AI

将计算机视觉应用于汽车行业,并配合 Ultralytics YOLO 模型。汽车视觉 AI 可提升道路安全、辅助驾驶和车辆自动化,打造更智能的道路。
了解更多
Real-time AI tailored to your operation

农业中的 AI

借助 Ultralytics YOLO 模型,将视觉 AI 引入智慧农业。赋能作物监测、牲畜追踪和精准农业,实现更高、更智能的产量。
了解更多
Real-time AI that works with your team

机器人技术中的 AI

使用 Ultralytics YOLO 模型为智能机器赋能。机器人技术中的视觉 AI 可推动自主导航、感知、物体跟踪和实时控制。
了解更多
Real-time AI that works with your team

物流中的 AI

使用 Ultralytics YOLO 模型简化物流。视觉 AI 可实现包裹检查、分拣、车辆跟踪和实时仓库安全监控。
了解更多
Real-time AI that works with your team

零售业 AI

使用 Ultralytics YOLO 模型重塑零售业。视觉 AI 推动库存跟踪、货架监控、队列管理和更智能的客户洞察。
了解更多
Real-time AI that works with your team

医疗保健中的 AI

利用 Ultralytics YOLO 模型构建医疗保健解决方案。医疗保健中的视觉 AI 可助力更快速的医学影像分析、更智能的诊断和患者监测。
了解更多
Real-time AI that works with your team

制造业中的 AI

使用 Ultralytics YOLO 模型优化制造业。视觉 AI 推动质量控制、缺陷检测、PPE 合规性和装配线自动化。
了解更多
Real-time AI that works with your operation

汽车中的 AI

将计算机视觉应用于汽车行业,并配合 Ultralytics YOLO 模型。汽车视觉 AI 可提升道路安全、辅助驾驶和车辆自动化,打造更智能的道路。
了解更多
Real-time AI tailored to your operation

农业中的 AI

借助 Ultralytics YOLO 模型,将视觉 AI 引入智慧农业。赋能作物监测、牲畜追踪和精准农业,实现更高、更智能的产量。
了解更多

让我们一起构建 AI 的未来!

开启你的机器学习未来之旅