Механизм инференса
Узнайте, как механизмы логического вывода (inference engines) поддерживают ИИ, предоставляя прогнозы в реальном времени, оптимизируя модели и обеспечивая кроссплатформенное развертывание.
Механизм логического вывода — это специализированный программный компонент, который выполняет обученную модель машинного обучения для создания прогнозов на основе новых, невиданных данных. После того как модель обучена с использованием такой платформы, как PyTorch или TensorFlow, механизм логического вывода берет на себя задачу эффективного запуска модели в производственной среде. Его основная цель — оптимизировать модель для скорости и использования ресурсов, что позволяет добиться вывода в реальном времени на различных аппаратных платформах, от мощных облачных серверов до периферийных устройств с ограниченными ресурсами.
Роль механизма логического вывода
Основная функция механизма логического вывода (inference engine) — устранение разрыва между обученной моделью и ее применением в реальном мире. Он выполняет несколько критически важных оптимизаций для минимизации задержки логического вывода и максимизации пропускной способности без значительного ущерба для точности.
Ключевые методы оптимизации включают:
- Graph Optimization (оптимизация графа): Механизм анализирует вычислительный граф модели и применяет оптимизации, такие как «слияние слоев», которое объединяет несколько последовательных операций в одну, чтобы уменьшить вычислительные издержки.
- Оптимизация под конкретное оборудование: Он компилирует модель для работы на конкретном оборудовании, таком как ЦП, ГП или специализированные ускорители ИИ, такие как TPU от Google. Это включает в себя использование высокооптимизированных вычислительных ядер, адаптированных к архитектуре оборудования.
- Снижение точности: Такие методы, как квантование модели, используются для преобразования весов модели из 32-битных чисел с плавающей запятой в более эффективные 16-битные или 8-битные целые числа. Это значительно снижает использование памяти и ускоряет вычисления, что особенно важно для периферийных вычислений.
- Обрезание модели: Механизм инференса может облегчить запуск моделей, в которых ненужные веса были удалены посредством обрезания модели, что еще больше уменьшает размер модели и вычислительные требования.
Популярные движки для инференса
Многие организации разработали высокопроизводительные механизмы логического вывода для ускорения работы моделей глубокого обучения. К популярным вариантам относятся:
- NVIDIA TensorRT: Высокопроизводительный оптимизатор и среда выполнения для графических процессоров NVIDIA, обеспечивающая современную скорость инференса. Ultralytics предлагает простую интеграцию с TensorRT для развертывания моделей YOLO.
- Intel OpenVINO: Инструментарий с открытым исходным кодом для оптимизации и развертывания моделей на оборудовании Intel, включая ЦП и интегрированные графические процессоры. Модели Ultralytics можно легко экспортировать в OpenVINO.
- ONNX Runtime: Кроссплатформенный движок, разработанный Microsoft, который может запускать модели в формате ONNX (Open Neural Network Exchange) на широком спектре оборудования.
- TensorFlow Lite (TFLite): Облегченное решение, разработанное специально для развертывания моделей на мобильных и встроенных устройствах, таких как устройства под управлением Android и iOS.
- Apache TVM: Фреймворк компилятора машинного обучения с открытым исходным кодом, который может оптимизировать модели для различных аппаратных бэкендов.
Применение в реальном мире
Механизмы логического вывода являются операционной основой бесчисленных AI-приложений.
- В решениях на основе ИИ для автомобильной промышленности механизм логического вывода работает на бортовом компьютере транспортного средства для обработки данных с камер и датчиков. Он выполняет модель обнаружения объектов, такую как Ultralytics YOLO11, для идентификации пешеходов, дорожных знаков и других транспортных средств за миллисекунды, обеспечивая критически важные функции безопасности.
- Для интеллектуального производства механизм логического вывода на заводе управляет системой компьютерного зрения для контроля качества. Он анализирует изображения с производственной линии в режиме реального времени для обнаружения дефектов, гарантируя, что продукция соответствует стандартам качества с высокой скоростью и надежностью.
Механизм логического вывода и связанные с ним концепции
Полезно отличать механизм логического вывода от других связанных терминов в MLOps.
ML Framework (фреймворк машинного обучения) vs. Inference Engine (движок логического вывода): Фреймворк машинного обучения, такой как PyTorch, представляет собой комплексную библиотеку как для обучения, так и для развертывания моделей. Он включает в себя инструменты для построения нейронных сетей, управления наборами данных и запуска циклов обучения. Движок логического вывода, напротив, является узкоспециализированным инструментом, ориентированным исключительно на этап развертывания. В то время как фреймворк обладает базовыми возможностями логического вывода, специализированный движок логического вывода обеспечивает превосходную производительность благодаря агрессивной аппаратной оптимизации.
Обслуживание моделей vs. Механизм вывода: Обслуживание моделей относится к более широкой инфраструктуре для предоставления модели по сети, которая включает такие компоненты, как конечные точки API, балансировщики нагрузки и инструменты мониторинга. Механизм вывода — это основной компонент в системе обслуживания моделей, который выполняет запросы на прогнозирование. Вы можете изучить различные варианты развертывания моделей, чтобы увидеть, как механизмы вывода вписываются в общую картину. Платформы, такие как Ultralytics HUB, упрощают весь этот процесс, от обучения до оптимизированного развертывания.