术语表

量化感知训练(QAT)

利用量化感知训练(QAT)优化边缘设备的人工智能模型,确保在资源有限的环境中实现高精度和高效率。

量化感知训练(QAT)是一种先进的模型优化技术,可为神经网络(NN)的部署准备较低的数值精度。与使用 32 位浮点数 (FP32) 的标准训练不同,QAT 在训练微调过程中模拟 8 位整数 (INT8) 计算的效果。通过让模型 "意识到 "推理过程中可能遇到的量化误差,QAT 允许模型调整权重,以尽量减少潜在的精度损失。这样,一个紧凑、高效的模型就能保持高性能,非常适合部署在资源有限的硬件上。

量化感知训练的工作原理

QAT 流程通常从预先训练好的 FP32 模型开始。在模型结构中插入 "假 "量化节点,模拟将浮点数值转换为低精度整数再返回的效果。然后在训练数据集上对模型进行再训练。在重新训练阶段,模型通过标准的反向传播学会适应量化带来的信息损失。这样,模型就能找到一组对精度降低不那么敏感的更稳健的权重。PyTorchTensorFlow等领先的深度学习框架提供了强大的工具和 API 来实现 QAT 工作流。

QAT 与训练后量化对比

QAT 经常与另一种常见的模型量化方法--训练后量化(PTQ)相比较。两者的主要区别在于何时进行量化。

  • 训练后量化(PTQ):这种方法模型完全训练完成应用。这是一个更简单、更快速的过程,不需要重新训练或访问原始训练数据。不过,这种方法有时会导致模型准确度大幅下降,尤其是对于敏感模型。
  • 量化感知训练(QAT):这种方法将量化整合到训练循环中。虽然它的计算量更大,而且需要访问训练数据,但与 PTQ 相比,QAT 几乎总能使最终量化模型的精度更高。当性能最大化至关重要时,QAT 是首选方法。

QAT 的实际应用

量化感知训练对于在资源有限的环境中部署复杂的人工智能模型至关重要,因为效率是关键所在。

  1. 设备上的计算机视觉:直接在智能手机上运行Ultralytics YOLOv8等复杂的计算机视觉模型,用于增强现实应用中的实时物体检测或照片管理工具中的图像分类等应用。QAT 可使这些模型高效运行,而不会造成严重的电池损耗或延迟。
  2. 汽车和机器人领域的边缘人工智能:自动驾驶汽车中的行人检测或车道保持辅助等任务或机器人技术中的物体操纵部署模型。QAT 可使这些模型在Google Edge TPU 或英伟达 Jetson 等专用硬件上运行,确保关键实时决策的低推理延迟。这对于安全警报系统停车场管理等应用至关重要。

与其他优化技术的关系

QAT 是模型部署优化的几种技术之一,经常与其他技术一起使用,以实现最高效率。

  • 模型修剪包括删除网络中多余或不重要的连接。可先对模型进行剪枝,然后再进行 QAT,以实现更大程度的压缩。
  • 知识蒸馏训练较小的 "学生 "模型来模仿较大的 "教师 "模型。由此产生的学生模型可以使用 QAT 进一步优化。

Ultralytics 支持将模型导出为ONNXTensorRTTFLite 等多种格式,这些格式与 QAT 工作流程兼容,可以在英特尔英伟达等公司的各种硬件上高效部署。您可以使用Ultralytics HUB 等平台管理和部署 QAT 优化模型。在 QAT 之后使用相关指标对模型性能进行评估对于确保满足准确性要求至关重要。

加入 Ultralytics 社区

加入人工智能的未来。与全球创新者联系、合作和成长

立即加入
链接复制到剪贴板