术语表

模型量化

利用模型量化优化人工智能性能。为实际部署减少体积、提高速度和能效。

使用Ultralytics HUB 对YOLO 模型进行简单培训

了解更多

模型量化是机器学习中的一项重要优化技术,用于降低部署人工智能模型的计算和内存成本。它的工作原理是将神经网络的权重和激活值从高精度浮点数(如 32 位浮点数)转换为低精度格式,如 8 位整数。这一过程大大减小了模型大小,加快了推理速度,非常适合在资源有限的设备上部署。

了解模型量化

模型量化背后的核心理念是用更少的比特来表示模型中的数值。大多数深度学习模型都是使用浮点数进行训练和运行的,浮点数精度高,但需要大量的计算能力和内存。量化通过将浮点数值的连续范围映射到一组较小的离散整数值来降低这种需求。这就好比缩小了图像的调色板;虽然可能会丢失一些细节,但基本信息依然存在,文件大小也会大大缩小。

模型量化有多种技术。训练后量化是在模型完全训练完成后进行的,将其权重和激活度转换为较低的精度,而无需进一步训练。这是一种直接的方法,但有时可能会导致精度略有下降。另一方面,量化感知训练(QAT)将量化过程纳入训练阶段本身。这样,模型就能学习并适应较低精度的限制,与训练后量化相比,往往能获得更高的精度。混合精度训练等技术也可用于在训练过程中平衡精度和效率。

模型量化的优势

模型量化具有几个关键优势,特别是在真实世界应用中部署人工智能模型时:

  • 缩小模型尺寸:量化可大大减小模型文件的大小。例如,将模型从 32 位浮点数转换为 8 位整数,可将模型大小缩小四倍。这对于在存储空间有限的设备(如手机或边缘设备)上部署模型尤其有利。
  • 推理速度更快:低精度计算的速度明显更快,尤其是在针对整数运算进行了优化的硬件上。这就减少了推理延迟,提高了实时性能,对于使用Ultralytics YOLO 模型进行实时物体检测等应用至关重要。
  • 计算成本更低:以较低精度进行计算所需的计算能力和能源更少。这对电池供电的设备至关重要,并可减少人工智能应用所需的总体计算资源
  • 提高能效:较低的计算需求转化为较低的能耗,使量化模型更加节能。这对移动和嵌入式系统尤为重要。

实际应用

模型量化对于在各种应用中部署人工智能模型至关重要,尤其是在资源有限或速度至关重要的情况下。下面是几个例子:

  1. 移动设备:智能手机通常利用量化模型来实现设备上的人工智能功能,如图像识别和自然语言处理。量化技术可使这些复杂的模型在移动GPU或专用硬件(如 Raspberry Pi 等设备中的Edge TPU)上高效运行,而不会耗尽电池寿命或导致性能问题。例如,在Android 或iOS 应用程序上运行Ultralytics YOLO 模型,可大大受益于量化技术的实时物体检测。
  2. 边缘计算和物联网设备:在智慧城市或工业自动化等场景中,人工智能模型被部署在众多边缘设备上进行实时数据处理。量化对于在这些处理能力和内存往往有限的设备上实现高效模型服务至关重要。考虑到智能摄像头使用Ultralytics YOLO 用于安防报警系统;量化可确保及时检测和响应,同时最大限度地降低硬件要求。

量化与模型剪枝

虽然模型量化和模型剪枝都是旨在缩小模型规模和提高效率的模型优化技术,但它们的操作方式不同。量化降低了数值表示的精度,而剪枝则通过删除不重要的连接或神经元来减少模型中的参数数量。这两种技术可以单独使用,也可以结合使用,以达到最佳的模型性能和规模。像 TensorRTOpenVINO等工具通常将量化和剪枝作为其优化管道的一部分。

总之,模型量化是一种强大的技术,它通过提高效率而不会明显降低准确性,使人工智能更易于在更广泛的设备和应用中使用和部署。

阅读全部