深圳Yolo 视觉
深圳
立即加入

如何使用Ultralytics YOLO 模型进行训练、验证、预测、输出和基准测试

Nuvola Ladi

3 分钟阅读

2024年7月24日

了解如何使用Ultralytics YOLO 模型进行训练、验证、预测、输出和基准测试!

让我们进入Ultralytics 的世界,探索不同YOLO 模型的不同模式。无论您是在训练自定义对象检测模型还是在进行分割,了解这些模式都是至关重要的一步。让我们直接进入主题!

通过Ultralytics 文档,你会发现有几种模式可以用于你的模型,无论是训练验证 预测输出基准还是 track.每种模式都有其独特的作用,可以帮助你优化模型的性能和部署。

训练模式

首先,让我们来看看训练模式。您可以在此构建和优化您的模型。您可以在文档中找到详细的说明和视频指南,从而轻松开始训练您的自定义模型。

模型训练包括为模型提供新的数据集,让它学习各种模式。一旦训练完成,模型就可以实时用于detect 它所训练过的新对象。在开始训练过程之前,必须以YOLO 格式注释数据集。

验证模式

接下来,让我们进入验证模式。验证对于调整超参数和确保模型运行良好至关重要。Ultralytics 提供了多种验证选项,包括自动设置、多参数支持以及与Python API 的兼容性。你甚至可以通过下面的命令行界面CLI)直接运行验证。

为什么要验证?

验证对于以下情况至关重要:

  • 精确率: 确保您的模型准确地检测到对象。
  • 便利性:简化验证过程。
  • 灵活性:提供多种验证方法。
  • 超参数调优: 优化您的模型以获得更好的性能。

Ultralytics 还提供了用户示例,用户可以将其复制并粘贴到Python 脚本中。这些示例包括图像大小、批量大小、设备CPU 或GPU)和联合交叉IoU)等参数。

预测模式

一旦模型经过训练和验证,就可以进行预测了。预测模式允许您在新数据上运行推理,并查看模型的运行情况。该模式非常适合在实际数据上测试模型的性能。

通过下面的python 代码片段,您就可以在图像上运行预测!

导出模式

验证和预测之后,您可能想要部署模型。通过导出模式,您可以将模型转换成ONNX 或TensorRT 等各种格式,从而更方便地在不同平台上部署。

基准测试模式

最后,我们有基准测试模式。基准测试对于评估模型在各种场景中的性能至关重要。此模式可帮助您就资源分配、优化和成本效益做出明智的决策。

如何进行基准测试

要运行基准测试,可以使用文档中提供的用户示例。这些示例涵盖了关键指标和导出格式,包括ONNX 和TensorRT。您还可以指定整数量化 (INT8) 或浮点量化 (FP16) 等参数,了解不同设置对性能的影响。

真实场景基准测试示例

让我们来看一个实际的基准测试例子。当我们对PyTorch 模型进行基准测试时,我们发现在 RTX 3070GPU 上的推理速度为 68 毫秒。导出到TorchScript 后,推理速度下降到 4 毫秒,显示了显著的改进。

对于ONNX 模型,我们的推理速度为 21 毫秒。在CPU (Intel i9 第 13 代处理器)上测试这些模型时,我们看到了不同的结果。TorchScript 的运行速度为 115 毫秒,而ONNX 的运行速度更快,为 84 毫秒。最后,针对Intel 硬件优化的OpenVINO 的运行速度达到了惊人的 23 毫秒。

__wf_reserved_inherit
图 1.Nicolai Nielsen演示如何使用Ultralytics YOLO 模型进行基准测试。

基准测试的重要性

基准测试展示了不同的硬件和导出格式如何影响模型的性能。对模型进行基准测试至关重要,尤其是在计划将它们部署在自定义硬件或边缘设备上时。此过程可确保您的模型针对目标环境进行优化,从而提供最佳性能。

结论

总之,Ultralytics 文档中的模式是训练、验证、预测、输出和基准测试YOLO 模型的强大工具。每种模式都在优化模型和准备部署模型方面发挥着重要作用。

不要忘记探索并加入我们的社区,并在你的项目中尝试我们提供的代码片段。有了这些工具,你可以创建高性能的模型,并确保它们在任何环境中都能高效运行。

让我们一起构建人工智能的未来!

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

免费开始