Прунинг и квантование в компьютерном зрении: Краткое руководство
Узнай, почему прунинг (pruning) и квантование (quantization) критически важны для оптимизации моделей компьютерного зрения и ускорения их работы на граничных устройствах (edge devices).

Периферийные устройства становятся все более распространенными по мере развития технологий. От смарт-часов, отслеживающих твой пульс, до дронов, наблюдающих за улицами, периферийные системы могут обрабатывать данные в реальном времени непосредственно на самом устройстве.
Этот метод часто работает быстрее и безопаснее, чем отправка данных в облако, особенно для приложений, связанных с обработкой личных данных, таких как распознавание номерных знаков или отслеживание жестов. Это примеры computer vision, направления искусственного интеллекта (ИИ), которое позволяет машинам интерпретировать и понимать визуальную информацию.

Рис. 1. Пример распознавания номерных знаков. (Source)
Однако важным соображением является то, что такие приложения требуют моделей компьютерного зрения ИИ, способных справляться с большими вычислениями, использовать минимум ресурсов и работать автономно. Большинство computer vision models разработаны для высокопроизводительных систем, что делает их менее подходящими для прямого развертывания на периферийных устройствах.
Чтобы преодолеть этот разрыв, разработчики часто применяют целевые оптимизации, которые адаптируют модель для эффективной работы на менее мощном оборудовании. Эти корректировки критически важны для реального периферийного развертывания, где объем памяти и вычислительная мощность ограничены.
Интересно, что модели компьютерного зрения, такие как Ultralytics YOLO11, изначально создаются с расчетом на эффективность на периферийных устройствах, что делает их отличными для задач в реальном времени. Тем не менее их производительность можно еще больше повысить с помощью методов оптимизации моделей, таких как прунинг и квантование, что обеспечивает еще более быстрый вывод и меньшее потребление ресурсов на устройствах с ограниченными возможностями.
В этой статье мы подробнее рассмотрим, что такое прунинг и квантование, как они работают и как они могут помочь моделям YOLO работать в условиях реального периферийного развертывания. Давай начнем!
Прунинг и квантование: основные методы оптимизации моделей#
При подготовке ИИ-моделей компьютерного зрения к развертыванию на периферийных устройствах одной из главных целей является создание легкой и надежной модели без потери производительности. Это часто предполагает уменьшение размера модели и вычислительных требований, чтобы она могла эффективно работать на оборудовании с ограниченным объемом памяти, питанием или вычислительной мощностью. Два распространенных способа достичь этого — прунинг и квантование.
Прунинг — это техника model optimization ИИ, которая помогает сделать нейронные сети меньше и эффективнее. Во многих случаях части модели, такие как определенные соединения или узлы, не вносят большого вклада в ее окончательные предсказания. Прунинг работает путем выявления и удаления этих менее важных частей, что уменьшает размер модели и ускоряет ее работу.
С другой стороны, квантование — это метод оптимизации, который уменьшает точность чисел, используемых моделью. Вместо того чтобы полагаться на высокоточные 32-битные числа с плавающей запятой, модель переключается на более мелкие и эффективные форматы, такие как 8-битные целые числа. Это изменение помогает снизить использование памяти и ускорить инференс — процесс, в ходе которого модель делает предсказания.

Рис. 2. Обзор прунинга и квантования. (Source)
Как работают прунинг и квантование#
Теперь, когда у нас есть лучшее понимание того, что такое pruning и квантование, давай разберем, как они работают.
Прунинг выполняется с использованием процесса, известного как анализ чувствительности. Он выявляет, какие части моделей нейронных сетей, такие как определенные веса, нейроны или каналы, вносят наименьший вклад в итоговый результат предсказания. Эти части могут быть удалены с минимальным влиянием на точность. После прунинга модель обычно дообучается для тонкой настройки её производительности. Этот цикл можно повторять для поиска правильного баланса между размером и точностью.
Между тем, model quantization фокусируется на том, как модель обрабатывает данные. Процесс начинается с калибровки, в ходе которой модель запускается на тестовых данных, чтобы определить диапазон значений, которые ей необходимо обрабатывать. Затем эти значения преобразуются из 32-битной плавающей запятой в форматы с более низкой точностью, такие как 8-битные целые числа.

Рис. 3. Квантование помогает уменьшить размер и сложность модели. (Source)
Существует несколько инструментов, которые облегчают использование прунинга и квантования в реальных ИИ-проектах. Большинство фреймворков ИИ, таких как PyTorch и TensorFlow, включают встроенную поддержку этих методов оптимизации, позволяя разработчикам интегрировать их непосредственно в процесс развертывания модели.
После оптимизации модели такие инструменты, как ONNX Runtime, могут помочь эффективно запускать её на различных аппаратных платформах, таких как серверы, настольные компьютеры и периферийные устройства. Кроме того, Ultralytics предлагает интеграции, которые позволяют экспортировать модели YOLO в форматы, подходящие для квантования, что упрощает уменьшение размера модели и повышение производительности.
Обзор оптимизации моделей Ultralytics YOLO#
Модели Ultralytics YOLO, такие как YOLO11, широко известны своим быстрым одношаговым обнаружением объектов, что делает их идеальными для vision AI tasks в реальном времени. Они изначально спроектированы так, чтобы быть легковесными и достаточно эффективными для развертывания на периферии. Тем не менее слои, отвечающие за обработку визуальных признаков, называемые сверточными слоями, все еще могут требовать значительных вычислительных мощностей во время вывода.
Ты можешь задаться вопросом: если Ultralytics YOLO11 уже оптимизирован для использования на периферии, зачем ему нужна дальнейшая оптимизация? Проще говоря, не все периферийные устройства одинаковы. Некоторые работают на минимальном железе, например на крошечных встраиваемых процессорах, которые потребляют меньше энергии, чем стандартная светодиодная лампочка.
В таких случаях даже оптимизированная модель, такая как Ultralytics YOLO11, требует дополнительной оптимизации для гарантии плавной и надежной работы. Такие методы, как прунинг и квантование, помогают уменьшить размер модели и ускорить инференс без существенного влияния на точность, что делает их идеальными для столь ограниченных сред.
Чтобы упростить применение этих методов оптимизации, Ultralytics поддерживает различные integrations, которые можно использовать для экспорта моделей YOLO в несколько форматов, таких как ONNX, TensorRT, OpenVINO, CoreML и PaddlePaddle. Каждый формат разработан для эффективной работы с определенными типами оборудования и средами развертывания.
Например, ONNX часто используется в процессах квантования из-за совместимости с широким спектром инструментов и платформ. TensorRT, с другой стороны, высоко оптимизирован для устройств NVIDIA и поддерживает низкоточный инференс с использованием INT8, что делает его идеальным для высокоскоростного развертывания на периферийных GPU.
Эффективные варианты использования оптимизации моделей Ultralytics YOLO#
Поскольку компьютерное зрение продолжает проникать в различные реальные приложения, оптимизированные модели YOLO позволяют выполнять такие задачи, как обнаружение объектов, сегментация экземпляров и отслеживание объектов на меньшем и более быстром оборудовании. Далее давай обсудим пару сценариев использования, где прунинг и квантование делают эти задачи компьютерного зрения более эффективными и практическими.
Умное видеонаблюдение на базе Ultralytics YOLO11#
Многие промышленные пространства, а также общественные места зависят от мониторинга в реальном времени для обеспечения безопасности. Такие места, как транспортные узлы, производственные площадки и крупные открытые объекты, нуждаются в системах компьютерного зрения, которые могут быстро и точно обнаруживать людей или транспортные средства. Часто такие объекты работают в условиях ограниченного подключения и аппаратных ограничений, что затрудняет развертывание больших моделей.
В таких случаях оптимизированная модель компьютерного зрения, такая как Ultralytics YOLO11, — отличное решение. Её компактный размер и высокая скорость работы делают её идеальной для запуска на маломощных периферийных устройствах, таких как embedded cameras или умные датчики. Эти модели могут обрабатывать визуальные данные прямо на устройстве, обеспечивая обнаружение в реальном времени нарушений техники безопасности, несанкционированного доступа или аномальной активности без необходимости постоянного подключения к облаку.

Рис. 4. Ultralytics YOLO11 можно использовать для мониторинга общественных мест, таких как станции метро.
Повышение безопасности на строительных площадках с помощью Ultralytics YOLO11#
Construction sites — это динамичные и непредсказуемые среды, наполненные тяжелой техникой, работающими людьми и постоянной активностью. Условия могут быстро меняться из-за сдвигов в графике, перемещения оборудования или даже резких изменений погоды. В такой динамичной обстановке безопасность рабочих может ощущаться как постоянная проблема.
Мониторинг в реальном времени играет ключевую роль, но традиционные системы часто зависят от облачного доступа или дорогого оборудования, что не всегда удобно на объекте. Именно здесь модели вроде Ultralytics YOLO11 могут проявить себя. YOLO11 можно оптимизировать для работы на компактных и эффективных периферийных устройствах прямо на объекте без подключения к интернету.
Например, представь крупную строительную площадку, такую как расширение шоссе площадью в несколько акров. В таких условиях вручную отслеживать каждое транспортное средство или единицу оборудования может быть сложно и затратно по времени. Дрон, оснащенный камерой и оптимизированной моделью Ultralytics YOLO11, может помочь, автоматически обнаруживая и отслеживая транспортные средства, контролируя транспортный поток и выявляя проблемы безопасности, такие как несанкционированный доступ или опасное вождение.

Рис. 5. Анализ снимков с дрона со строительной площадки. (Source)
Плюсы и минусы прунинга и квантования в компьютерном зрении#
Вот несколько ключевых преимуществ, которые предлагают методы оптимизации моделей компьютерного зрения, такие как прунинг и квантование:
- Экономически эффективное развертывание: Меньшие и более эффективные модели могут снизить потребность в дорогостоящем высококлассном оборудовании, делая ИИ более доступным и масштабируемым для различных сценариев использования.
- Снижение задержки: За счет упрощения архитектуры модели и уменьшения вычислительных затрат эти методы помогают достичь более быстрого времени отклика в приложениях реального времени.
- Энергоэффективность: Снижение вычислительной нагрузки также уменьшает потребление энергии, что особенно полезно для систем с питанием от батарей или мобильных систем.
Хотя прунинг и квантование предлагают множество преимуществ, они также сопровождаются определенными компромиссами, которые разработчикам следует учитывать при оптимизации моделей. Вот некоторые ограничения, которые стоит иметь в виду:
- Компромиссы Accuracy: Если прунинг проводится слишком агрессивно или используется квантование с очень низкой битностью, точность модели, измеряемая такими метриками, как mAP, может упасть.
- Аппаратные ограничения: Не все устройства одинаково хорошо поддерживают форматы с пониженной точностью, такие как INT8. Это может ограничивать места и способы развертывания оптимизированной модели.
- Сложность реализации: Достижение хороших результатов часто требует тщательной, специфичной для модели настройки. Разработчикам может потребоваться дообучить модель и провести обширное тестирование, чтобы сохранить производительность при повышении эффективности.
Основные выводы#
Прунинг и квантование — это полезные методы, которые помогают моделям YOLO работать лучше на периферийных устройствах. Они уменьшают размер модели, снижают её вычислительные потребности и ускоряют предсказания, причем все это без заметной потери точности.
Эти методы оптимизации также дают разработчикам гибкость в настройке моделей для различных типов оборудования без необходимости полной пересборки. Благодаря некоторой настройке и тестированию становится проще применять компьютерное зрение в реальных условиях.
Присоединяйся к нашему растущему community! Изучи наш GitHub repository, чтобы узнать больше об ИИ. Готов начать свои проекты по компьютерному зрителю? Ознакомься с нашими licensing options. Узнай про AI in agriculture и компьютерное зрение ИИ в здравоохранении, посетив наши страницы решений!






