了解模型量化如何优化适用于边缘AI的Ultralytics YOLO26。探索如何减少内存、降低延迟,并导出INT8模型以实现更快的推理。
模型量化是一种精密的模型优化技术,用于降低深度学习模型运行时的计算和内存成本。在标准训练工作流中,神经网络通常使用32位浮点数(FP32)存储参数(weights and biases)和激活图。虽然这种高精度确保了训练期间的计算准确性,但对于推理而言通常是不必要的。量化将这些值转换为低精度格式,例如16位浮点数(FP16)或8位整数(INT8),从而有效缩小模型大小并加速执行速度,同时不显著影响准确性。
量化的主要驱动因素是在资源受限的硬件上部署强大的AI。随着计算机视觉模型(如YOLO26)变得越来越复杂,其计算需求也随之增加。量化解决了三个关键瓶颈:
区分量化与其他优化技术至关重要,因为它们以不同的方式修改模型:
量化使得计算机视觉和AI能够在效率至关重要的各个行业中得到应用。
Ultralytics库简化了导出过程,允许开发者将尖端的YOLO26等模型转换为量化格式。Ultralytics Platform还提供了无缝管理这些部署的工具。
以下示例演示了如何将模型导出到启用INT8量化的TFLite。此过程涉及一个校准步骤,其中模型观察样本数据以确定量化值的最佳动态范围。
from ultralytics import YOLO
# Load a standard YOLO26 model
model = YOLO("yolo26n.pt")
# Export to TFLite format with INT8 quantization
# The 'int8' argument triggers Post-Training Quantization
# 'data' provides the calibration dataset needed for mapping values
model.export(format="tflite", int8=True, data="coco8.yaml")
优化后的模型通常使用ONNX等可互操作标准或OpenVINO等高性能推理引擎进行部署,确保在不同硬件生态系统中的广泛兼容性。
开启您的机器学习未来之旅