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

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

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

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

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

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

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









