Настраивайтесь на YOLO Vision 2025!
25 сентября 2025 г.
10:00 — 18:00 BST
Гибридное мероприятие
Yolo Vision 2024
Глоссарий

Квантование с учетом обучения (QAT)

Оптимизируйте модели ИИ для периферийных устройств с помощью Quantization-Aware Training (QAT), обеспечивая высокую точность и эффективность в средах с ограниченными ресурсами.

Quantization-Aware Training (QAT) — это продвинутый метод оптимизации моделей, который подготавливает нейронную сеть (NN) к развертыванию с более низкой числовой точностью. В отличие от стандартного обучения, в котором используются 32-битные числа с плавающей запятой (FP32), QAT имитирует эффекты 8-битных целочисленных (INT8) вычислений во время процесса обучения или тонкой настройки. Делая модель «осведомленной» о погрешностях квантования, с которыми она столкнется во время инференса, QAT позволяет модели корректировать свои веса, чтобы минимизировать потенциальную потерю точности. В результате получается компактная, эффективная модель, которая поддерживает высокую производительность, что делает ее идеальной для развертывания на оборудовании с ограниченными ресурсами.

Как работает обучение с учетом квантования

Процесс QAT обычно начинается с предварительно обученной модели FP32. В архитектуру модели вставляются «фальшивые» узлы квантования, которые имитируют эффект преобразования значений с плавающей запятой в целые числа с меньшей точностью и обратно. Затем модель повторно обучается на наборе обучающих данных. Во время этого этапа повторного обучения модель учится адаптироваться к потере информации, связанной с квантованием, посредством стандартного обратного распространения ошибки. Это позволяет модели найти более надежный набор весов, которые менее чувствительны к сниженной точности. Ведущие фреймворки глубокого обучения, такие как PyTorch и TensorFlow, предлагают надежные инструменты и API для реализации рабочих процессов QAT.

QAT против квантования после обучения

QAT часто сравнивают с Post-Training Quantization (PTQ), другим распространенным методом квантования моделей. Ключевое различие заключается в том, когда применяется квантование.

  • Квантование после обучения (PTQ): Этот метод применяется после того, как модель была полностью обучена. Это более простой и быстрый процесс, который не требует переобучения или доступа к исходным данным обучения. Однако это иногда может привести к значительному снижению точности модели, особенно для чувствительных моделей.
  • Квантование с учетом обучения (QAT): Этот метод интегрирует квантование в цикл обучения. Хотя он требует больших вычислительных затрат и доступа к данным обучения, QAT почти всегда приводит к более высокой точности для окончательной квантованной модели по сравнению с PTQ. Это предпочтительный метод, когда критически важно максимизировать производительность.

Реальные примеры использования QAT

Квантование с учетом обучения жизненно важно для развертывания сложных моделей ИИ в средах с ограниченными ресурсами, где эффективность является ключевым фактором.

  1. Компьютерное зрение на устройстве: Запуск сложных моделей компьютерного зрения, таких как Ultralytics YOLOv8, непосредственно на смартфонах для таких приложений, как обнаружение объектов в реальном времени в приложениях дополненной реальности или классификация изображений в инструментах управления фотографиями. QAT позволяет этим моделям эффективно работать без значительного разряда батареи или задержки.
  2. Edge AI в автомобильной промышленности и робототехнике: Развертывание моделей для таких задач, как обнаружение пешеходов или помощь в удержании полосы движения в автономных транспортных средствах, или для манипулирования объектами в робототехнике. QAT позволяет этим моделям работать на специализированном оборудовании, таком как Google Edge TPU или NVIDIA Jetson, обеспечивая низкую задержку вывода для принятия критически важных решений в реальном времени. Это имеет решающее значение для таких приложений, как системы охранной сигнализации или системы управления парковкой.

Связь с другими методами оптимизации

QAT — один из нескольких методов оптимизации развертывания моделей и часто используется вместе с другими для достижения максимальной эффективности.

  • Обрезание модели: Включает удаление из сети избыточных или неважных связей. Модель можно сначала обрезать, а затем подвергнуть QAT для достижения еще большей степени сжатия.
  • Дистилляция знаний: Обучает меньшую модель-"ученика" имитировать большую модель-"учителя". Полученная модель-ученик может быть дополнительно оптимизирована с использованием QAT.

Ultralytics поддерживает экспорт моделей в различные форматы, такие как ONNX, TensorRT и TFLite, которые совместимы с рабочими процессами QAT, обеспечивая эффективное развертывание на различном оборудовании от таких компаний, как Intel и NVIDIA. Вы можете управлять и развертывать свои QAT-оптимизированные модели с помощью таких платформ, как Ultralytics HUB. Оценка производительности модели с использованием соответствующих метрик после QAT имеет важное значение для обеспечения соответствия требованиям к точности.

Присоединяйтесь к сообществу Ultralytics

Присоединяйтесь к будущему ИИ. Общайтесь, сотрудничайте и развивайтесь вместе с мировыми новаторами

Присоединиться сейчас
Ссылка скопирована в буфер обмена