Ultralytics YOLO27:
返回 Ultralytics 术语表

Half-Precision

了解半精度(FP16)如何加速 AI。了解如何优化 Ultralytics YOLO26,使其在 GPU 和边缘设备上实现更快推理并减少内存占用。

半精度通常表示为 FP16,是一种浮点数据格式,占用 16 位计算机内存,不同于使用 32 位的标准单精度(FP32)格式。在人工智能和机器学习领域,半精度是一种关键的优化技术,用于加速模型训练和推理,同时显著降低内存消耗。通过使用更少的位来存储数值(例如神经网络模型权重和梯度),开发者可以将更大的模型装入 GPU 图形处理器,或让现有模型运行得快得多。这种效率提升对于在资源受限的设备上部署 YOLO26 等现代复杂架构至关重要,同时不会牺牲明显的准确率。

浮点格式的工作原理#

要理解半精度,将其与全精度进行对比会很有帮助。标准的 32 位浮点数(FP32)会为指数和尾数分配更多位,从而提供非常宽的动态范围和很高的数值精度。然而,深度学习模型通常能够很好地适应微小的数值误差。神经网络即使使用 16 位格式所提供的较小动态范围和粒度,通常也能有效学习。

切换到半精度会将内存带宽需求降低一半。这使训练期间能够使用更大的批量大小,从而稳定梯度更新并加快整体训练过程。现代硬件加速器(例如 NVIDIA 的 Tensor Cores)专门针对使用 FP16 执行矩阵乘法进行了优化,其速度显著高于 FP32。

AI 工作流中的主要优势#

采用半精度可为 AI 从业者带来多项切实优势:

  • **减少内存占用:**模型所需的 VRAM(视频内存)减半,使开发者能够在相同硬件上训练更大的网络,或使用更高分辨率的训练数据
  • **更快的推理:**对于自动驾驶车辆或视频分析等实时应用,FP16 可将吞吐量(每秒帧数)提高一倍,从而减少推理延迟
  • **能源效率:**处理更少的位需要更少的能量,这对于边缘 AI设备和移动电话至关重要,因为这些设备的电池续航时间受限。
  • **混合精度训练:**许多现代框架都采用混合精度,即模型为确保稳定性而以 FP32 保留一份权重主副本,但使用 FP16 执行大量计算。这样可以兼顾两者的优势——速度和收敛稳定性。

实际应用#

半精度在生产级 AI 系统中无处不在。以下是两个具体示例:

  1. **边缘设备上的实时目标检测:**考虑一个运行 Ultralytics YOLO26 来检测入侵者的安防摄像头系统。以 FP16 部署模型,可以使其在 NVIDIA Jetson 或 Raspberry Pi AI Kit 等嵌入式芯片上流畅运行。降低后的计算负载可确保系统在实时推理模式下处理视频流而不会出现延迟,这对于及时发出警报至关重要。

  2. **大语言模型(LLM)部署:**生成式 AI 模型(例如 GPT-4 或 Llama 变体)拥有数十亿个参数。以全精度(FP32)加载这些模型需要占用大量服务器内存,而这通常成本高昂,难以承受。通过将这些模型转换为 FP16(甚至更低的格式),云服务提供商可以同时为数千名用户提供基础模型服务,使聊天机器人和自动化内容生成等服务在经济上变得可行。

半精度与量化的对比#

虽然这两种技术都旨在减小模型大小,但区分“半精度”和模型量化非常重要。

  • **半精度(FP16):**将位宽从 32 位降至 16 位,但仍将数据保留为浮点数。它保留了合理的动态范围,通常是 GPU 训练和推理的默认选择。
  • **量化(INT8):**将浮点数转换为整数(通常为 8 位)。这可以带来更高的速度和更多的内存节省,但如果操作不当,有时会导致准确率更加明显地下降(例如未采用量化感知训练时)。FP16 通常更有利于保留模型性能,而 INT8 则用于极致优化。

使用 Ultralytics 实现半精度#

ultralytics 库让半精度的使用变得非常简单。在预测期间,如果硬件支持半精度,模型可以自动切换到半精度,也可以显式请求使用半精度。

以下 Python 示例演示了如何加载 YOLO26 模型并使用半精度执行推理。请注意,以 half=True 运行通常需要支持 CUDA 的 GPU。

import torch
from ultralytics import YOLO

# Check if CUDA (GPU) is available, as FP16 is primarily for GPU acceleration
device = "cuda" if torch.cuda.is_available() else "cpu"

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

# Run inference on an image with half-precision enabled
# The 'half=True' argument tells the engine to use FP16
results = model.predict("https://ultralytics.com/images/bus.jpg", device=device, half=True)

# Print the device and precision status
print(f"Inference device: {results[0].orig_img.shape}, Speed: {results[0].speed}")

对于管理数据集和训练管线的用户,Ultralytics Platform 会在云端自动处理许多此类优化,简化从标注到优化模型部署的过渡。

延伸阅读与资源#

要进一步了解数值格式及其对 AI 的影响,请参阅有关 Tensor Cores 的 NVIDIA 深度学习性能文档。要更广泛地了解这些优化如何融入开发生命周期,请阅读有关机器学习运维(MLOps)的内容。

此外,想了解不同优化策略之间权衡的读者可以研究剪枝,它会移除连接而不是降低位精度;也可以查阅IEEE 浮点算术标准(IEEE 754),了解数字算术的技术规范。在将模型导出为 ONNXTensorRT 等格式以用于生产环境时,理解这些基础知识有助于做出明智的决策。

Explore solutions

用于航拍影像的计算机视觉

用于航拍影像的计算机视觉

使用 Ultralytics YOLO 将无人机和航拍影像转化为针对农业、水产养殖、环境监测、自然保护及地理空间分析的实时洞察。
了解更多
航空航天中的计算机视觉

航空航天中的计算机视觉

借助 Ultralytics YOLO 模型将视觉 AI 引入空中监测。使用计算机视觉解决方案赋能无人机、航空航天工作流、环境保护与地理空间行业。
了解更多

使用 Ultralytics YOLO 模型保护每个站点。视觉 AI 赋能周界监控、威胁检测、车牌识别和工作场所安全。
了解更多
机器人计算机视觉

机器人计算机视觉

借助 Ultralytics YOLO 模型打造更智能的机器。机器人技术中的视觉 AI 可实现自主导航、感知、目标跟踪和实时控制。
了解更多
物流计算机视觉

物流计算机视觉

使用 Ultralytics YOLO 模型提升物流效率。视觉 AI 可实现包裹检测、分拣、车辆跟踪和仓库安全实时监控。
了解更多
零售计算机视觉

零售计算机视觉

使用 Ultralytics YOLO 模型重新构想零售。视觉 AI 为库存跟踪、货架监控、队列管理和更智能的客户洞察提供支持。
了解更多
医疗领域的计算机视觉

医疗领域的计算机视觉

使用 Ultralytics YOLO 模型构建医疗解决方案。医疗领域的视觉 AI 可实现更快的医学影像处理、更智能的诊断和患者监护。
了解更多
制造业中的计算机视觉

制造业中的计算机视觉

使用 Ultralytics YOLO 模型优化制造业。视觉 AI 可推动质量控制、缺陷检测、PPE 合规和装配线自动化。
了解更多
汽车行业中的计算机视觉

汽车行业中的计算机视觉

使用 Ultralytics YOLO 模型在汽车行业应用计算机视觉。视觉 AI 提升道路安全、驾驶辅助和车辆自动化水平,让道路更加智能。
了解更多
农业中的计算机视觉

农业中的计算机视觉

使用 Ultralytics YOLO 模型将视觉 AI 带入智能农业。为作物监测、牲畜追踪和精准农业提供支持,提升产量与智能化水平。
了解更多
用于航拍影像的计算机视觉

用于航拍影像的计算机视觉

使用 Ultralytics YOLO 将无人机和航拍影像转化为针对农业、水产养殖、环境监测、自然保护及地理空间分析的实时洞察。
了解更多
航空航天中的计算机视觉

航空航天中的计算机视觉

借助 Ultralytics YOLO 模型将视觉 AI 引入空中监测。使用计算机视觉解决方案赋能无人机、航空航天工作流、环境保护与地理空间行业。
了解更多

使用 Ultralytics YOLO 模型保护每个站点。视觉 AI 赋能周界监控、威胁检测、车牌识别和工作场所安全。
了解更多
机器人计算机视觉

机器人计算机视觉

借助 Ultralytics YOLO 模型打造更智能的机器。机器人技术中的视觉 AI 可实现自主导航、感知、目标跟踪和实时控制。
了解更多
物流计算机视觉

物流计算机视觉

使用 Ultralytics YOLO 模型提升物流效率。视觉 AI 可实现包裹检测、分拣、车辆跟踪和仓库安全实时监控。
了解更多
零售计算机视觉

零售计算机视觉

使用 Ultralytics YOLO 模型重新构想零售。视觉 AI 为库存跟踪、货架监控、队列管理和更智能的客户洞察提供支持。
了解更多
医疗领域的计算机视觉

医疗领域的计算机视觉

使用 Ultralytics YOLO 模型构建医疗解决方案。医疗领域的视觉 AI 可实现更快的医学影像处理、更智能的诊断和患者监护。
了解更多
制造业中的计算机视觉

制造业中的计算机视觉

使用 Ultralytics YOLO 模型优化制造业。视觉 AI 可推动质量控制、缺陷检测、PPE 合规和装配线自动化。
了解更多
汽车行业中的计算机视觉

汽车行业中的计算机视觉

使用 Ultralytics YOLO 模型在汽车行业应用计算机视觉。视觉 AI 提升道路安全、驾驶辅助和车辆自动化水平,让道路更加智能。
了解更多
农业中的计算机视觉

农业中的计算机视觉

使用 Ultralytics YOLO 模型将视觉 AI 带入智能农业。为作物监测、牲畜追踪和精准农业提供支持,提升产量与智能化水平。
了解更多
用于航拍影像的计算机视觉

用于航拍影像的计算机视觉

使用 Ultralytics YOLO 将无人机和航拍影像转化为针对农业、水产养殖、环境监测、自然保护及地理空间分析的实时洞察。
了解更多
航空航天中的计算机视觉

航空航天中的计算机视觉

借助 Ultralytics YOLO 模型将视觉 AI 引入空中监测。使用计算机视觉解决方案赋能无人机、航空航天工作流、环境保护与地理空间行业。
了解更多

使用 Ultralytics YOLO 模型保护每个站点。视觉 AI 赋能周界监控、威胁检测、车牌识别和工作场所安全。
了解更多
机器人计算机视觉

机器人计算机视觉

借助 Ultralytics YOLO 模型打造更智能的机器。机器人技术中的视觉 AI 可实现自主导航、感知、目标跟踪和实时控制。
了解更多
物流计算机视觉

物流计算机视觉

使用 Ultralytics YOLO 模型提升物流效率。视觉 AI 可实现包裹检测、分拣、车辆跟踪和仓库安全实时监控。
了解更多
零售计算机视觉

零售计算机视觉

使用 Ultralytics YOLO 模型重新构想零售。视觉 AI 为库存跟踪、货架监控、队列管理和更智能的客户洞察提供支持。
了解更多
医疗领域的计算机视觉

医疗领域的计算机视觉

使用 Ultralytics YOLO 模型构建医疗解决方案。医疗领域的视觉 AI 可实现更快的医学影像处理、更智能的诊断和患者监护。
了解更多
制造业中的计算机视觉

制造业中的计算机视觉

使用 Ultralytics YOLO 模型优化制造业。视觉 AI 可推动质量控制、缺陷检测、PPE 合规和装配线自动化。
了解更多
汽车行业中的计算机视觉

汽车行业中的计算机视觉

使用 Ultralytics YOLO 模型在汽车行业应用计算机视觉。视觉 AI 提升道路安全、驾驶辅助和车辆自动化水平,让道路更加智能。
了解更多
农业中的计算机视觉

农业中的计算机视觉

使用 Ultralytics YOLO 模型将视觉 AI 带入智能农业。为作物监测、牲畜追踪和精准农业提供支持,提升产量与智能化水平。
了解更多

让我们共同构建 AI 的未来!

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