Обзор модуля Intel для нейронных вычислений 2

Обновлено: 23.11.2024

С какими самыми большими проблемами столкнулись? Поскольку для продукта требуются предварительно обученные модели в формате IR, самой большой проблемой было преобразование пользовательской предварительно обученной модели, которая в настоящее время не поддерживается openVINO. Для этого требуется глубокое знание предварительно обученной модели, что часто бывает не так, если только вы сами не обучили модель с нуля.

Фон

Основы работы с Intel ® Neural Compute Stick 2 (NCS2), начало работы и демонстрационный образец очень хорошо объясняются в документе AI at the Edge: AI Prototyping on the Edge with the Intel ® Neural Compute Stick 2. Статья Benchmarking Edge Computing — еще одна отличная статья для подробного сравнения других продуктов, сопоставимых с NCS2.

Давайте приступим к созданию первого шахматного движка, ускоренного NCS2.

Для этого обзора мы будем использовать проект с открытым исходным кодом CrazyAra. Это шахматный движок, обученный играть в вариант шахмат Lichess под названием Crazyhouse. Существуют различные механизмы вывода, поддерживаемые проектом. Вики проекта очень хорошо документирована для разработчиков и пользователей. Механизм вывода openVINO был интегрирован в него для тестирования NCS2. Это делается в три шага, как описано ниже:

Преобразование модели в формат IR.

Model Optimizer – это кроссплатформенный инструмент командной строки, который упрощает переход между средой обучения и средой развертывания, выполняет анализ статической модели и настраивает модели глубокого обучения для оптимального выполнения на конечных конечных устройствах. Таким образом, используется для преобразования пользовательской модели в формат промежуточного представления (IR) с помощью инструментальных средств DL.

Архитектура модели

Подробности архитектуры модели, использованной в проекте CrazyAra, следующие:

Рабочий стол DL

DL Workbench – это графическая веб-среда, которая позволяет визуализировать, настраивать и сравнивать производительность моделей глубокого обучения на различных конфигурациях архитектуры Intel®, таких как ЦП, Intel® Processor Graphics (GPU), Intel® Movidius™ Neural Compute Stick 2 (NCS 2) и Intel® Vision Accelerator Design с процессорами Intel® Movidius™ VPU». Я использовал метод docker для настройки рабочей среды DL.

В следующей галерее изображений показано, как преобразовать пользовательскую модель в формат IR. Дополнительные сведения см. в тексте изображения вместе с изображением.

Верстак OpenVINO DL

$ sudo ./start_workbench.sh -ENABLE_MYRIAD

Целевая страница OpenVINO DL Workbench

Импорт модели

Добавьте имя входного слоя, детали формы и цветового пространства

Создание конфигурации для преобразования модели в формат IR.

Сводка преобразованной модели

IR-модель и визуализация графика выполнения

Сводка по времени выполнения по слоям

Сводка по эффективности модели

Модель упаковки для развертывания

Преобразованные модели доступны в разветвленном репозитории github.

Интеграция механизма логического вывода openVINO в CrazyAra

Тестирование движка из командной строки:

Запуск логического вывода Chess Engine на NCS2

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

Viso Suite — это платформа компьютерного зрения без написания кода, позволяющая командам создавать, развертывать и использовать реальные приложения.

Viso Suite — это универсальная бизнес-платформа для создания и реализации компьютерного зрения без написания кода. Узнать больше.

В этой статье будет рассмотрен Intel Neural Compute Stick 2 (NCS 2) на базе чипа Intel Movidius Myriad X. Узнайте о преимуществах использования NCS 2 для периферийного ИИ, вычисляя задачи искусственного интеллекта на периферии.

В частности, мы рассмотрим:

  1. Что такое Intel Neural Compute Stick 2
  2. Производительность Movidius Myriad X
  3. Введение в OpenVINO и Myriad Development Kit (MDK)
  4. Преимущества Intel Neural Compute Stick 2

Что такое Intel Neural Compute Stick 2?

Пограничные устройства становятся все более популярным местом для развертывания моделей компьютерного зрения или глубокого обучения. Edge Computing предоставляет такие преимущества, как локальная обработка данных, передача отфильтрованных данных в облако или более быстрое принятие решений.

Intel Neural Compute Stick 2 оснащен процессором Intel Movidius X VPU, который обеспечивает высокую производительность приложений искусственного интеллекта на устройстве при сверхнизком энергопотреблении. Благодаря новым улучшениям производительности Intel Movidius Myriad X VPU представляет собой энергоэффективное решение, основанное на периферийных вычислениях, которое обеспечивает компьютерное зрение и приложения искусственного интеллекта для периферийных устройств, таких как дроны, умные камеры, умный дом, системы безопасности, гарнитуры VR/AR и 360°. -градусные камеры.

NCS 2 – это небольшое безвентиляторное устройство для обучения и развертывания нейронной сети, которое можно использовать для программирования ИИ на периферии.

Ускорители искусственного интеллекта, такие как Intel Stick 2 VPU, полезны для ускорения глубокого обучения с интенсивным использованием данных на периферийных устройствах очень экономичным способом. Эти ускорители работают, помогая компьютерному процессору (ЦП) пограничного устройства, взяв на себя математическую нагрузку, необходимую для запуска моделей глубокого обучения.

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

Movidius Myriad X – высокопроизводительная система компьютерного вывода

Процессор Intel Movidius Myriad X Vision (VPU) — это первый VPU Intel, оснащенный Neural Compute Engine — специализированным аппаратным ускорителем для глубокого вывода нейронных сетей. Movidius Myriad X VPU продается в виде микросхемы, встроенной в Neural Compute Stick (похожей на USB-накопитель), специально созданной для обработки изображений и видеовходов. USB-подключение чипа позволяет легко совместить его с устройством Raspberry Pi или Intel NUC (любой популярной вычислительной архитектурой, такой как ПК с архитектурой x86).

Ядро Intel Movidius Neural Compute Stick представляет собой аппаратную часть в форме микросхемы, предназначенную для запуска глубоких нейронных сетей с высокой скоростью и низким энергопотреблением без ущерба для точности, что позволяет выполнять процессы компьютерного зрения в режиме реального времени.

Этот движок реализован в корпусе USB вместе с Movidius Myriad X. При одновременном использовании нейронный вычислительный движок, 16 мощных ядер SHAVE и структура памяти с высокой пропускной способностью делают накопитель для нейронных вычислений Intel Movidius Myriad X идеальным для обучения и развертывания. глубокие нейронные сети и продукты компьютерного зрения.

Эталонные показатели показывают относительные показатели успешности различных алгоритмов машинного обучения на разных механизмах логического вывода. Для популярного ssd300-CF (бэкэнд Caffe) скорость передачи данных прямо пропорциональна точности, а скорость задержки обратно пропорциональна качеству. Соответственно, ускоритель Movidius обеспечивает более высокую пропускную способность для ssd300-CF, чем любой из Core i3-i9 (за исключением Intel Core i9-10920X). Кроме того, у него более низкая задержка, чем у любого механизма логического вывода, что делает его относительно надежной платформой для запуска моделей компьютерного зрения с искусственным интеллектом.

Вывод компьютерного зрения с обнаружением объектов в реальном времени

OpenVINO с Movidius Neural Compute Stick 2

Распространение Intel OpenVINO (Open Visual Inference and Neural Network) позволяет запускать модели компьютерного зрения, обученные в облаке, на периферии. Набор инструментов разработчика OpenVINO содержит полный набор инструментов для разработки и развертывания, которые лучше всего использовать в сочетании с Movidius Myriad X. Набор инструментов способствует более быстрому выводу моделей глубокого обучения за счет создания экономичных и надежных приложений компьютерного зрения. Если вы хотите узнать больше о наборе инструментов, я рекомендую прочитать наш полный обзор OpenVINO.

Поддерживая множество готовых моделей глубокого обучения, этот набор инструментов ускоряет процесс создания приложений для компьютерного зрения, сокращая время создания и настройки необработанных данных. Предварительно обученные модели, которые варьируются от сред глубокого обучения, таких как YOLO (You Only Look Once), до R-CNN и ResNet, позволяют разработчикам создавать модели, которые выполняют сложные приложения компьютерного зрения, такие как обнаружение лиц, обнаружение людей, обнаружение транспортных средств. и подсчет людей.

Комплект Myriad Development Kit (MDK) также включает в себя необходимые инструменты разработки, платформы и API-интерфейсы для реализации настраиваемых рабочих нагрузок машинного зрения, обработки изображений и глубоких нейронных сетей на чипе. Например, существующие модели сверточной нейронной сети (CNN) можно преобразовать в промежуточное представление OpenVINO (IR), что значительно уменьшает размер модели и одновременно оптимизирует ее для логического вывода.

Обзор Intel Neural Compute Stick 2

Pro’s — оптимизировано для ИИ на периферии
Минусы: что нужно знать
  • Мы считаем, что Neural Computer Stick 2 довольно сложно отлаживать, а количество доступных API-интерфейсов ограничено.
  • Из-за конструкции пассивного охлаждения мы столкнулись с проблемами при использовании NCS2 в местах с ограниченным потоком воздуха и высокой температурой воздуха (выше 50 градусов Цельсия).
  • Несмотря на то, что NCS широко используется профессионалами и новичками, определенно рекомендуется иметь базовые знания в области программирования, чтобы эффективно использовать его, помимо изучения подробных руководств и создания серьезного ИИ-продукта.
  • В тестах обнаружения объектов в реальном времени ускоритель искусственного интеллекта Google Coral по аналогичной цене обеспечивает лучшее время вывода.
  • Для работы с NCS по-прежнему требуется периферийное вычислительное устройство. Если вы готовы потратить немного больше, вы получите полноценный одноплатный компьютер, такой как NVIDIA Jetson Nano.

Как использовать NCS 2

Традиционный способ — научиться самому/прототипирование

Набор инструментов OpenVINO предлагает инструменты разработки для развертывания приложений и решений для компьютерного зрения на оборудовании Intel с помощью Neural Computer Stick 2. Узнайте больше об OpenVINO и о том, как его можно использовать для выполнения выводов глубокого обучения на основе CNN на периферии, с одним или несколькими устройствами NCS для распределения рабочей нагрузки. Intel предлагает обширную документацию по настройке OpenVINO на устройстве, к которому можно подключить одно или несколько устройств NCS.

Платформы компьютерного зрения — готовые к использованию/производство

Скорее всего, самый простой способ использовать Neural Compute Stick и другие устройства VPU для Computer Vision — это платформы AI Low-Code. Вы можете воспользоваться интеграцией OpenVINO и встроенной поддержкой новейших алгоритмов и фреймворков (YOLO, TensorFlow, PyTorch). Платформы упрощают разработку полных приложений ИИ с использованием Neural Compute Stick. Кроме того, вам не нужно начинать с нуля, чтобы выполнять задачи предварительной обработки видео и создавать рабочие процессы для интеграции обработанного вывода со сторонними системами.

Разрабатывайте, настраивайте и развертывайте сверточные нейронные сети (CNN) в приложениях с низким энергопотреблением, требующих логических выводов в реальном времени.

  • Глубокое обучение на периферии
  • Предварительно обученные модели в Open Model Zoo
  • Библиотека функций и предварительно оптимизированные ядра для более быстрого выхода на рынок.
  • Поддержка разнородного выполнения в ускорителях компьютерного зрения — ЦП, ГП, ВП и ПЛИС — с использованием общего API.
  • Поддержка оборудования Raspberry Pi

Новые функции

Изучите последние функции и примечания к выпуску инструментария.

  • Включает инструментальные средства глубокого обучения.
  • Поддерживает вывод нескольких устройств для балансировки нагрузки.
  • Предлагает методы распространения бинарных файлов с помощью менеджеров пакетов и контейнеров Docker*.
  • Предоставляет новые API, ориентированные на механизм логического вывода.
  • Поддерживает сериализованное промежуточное представление FP16
  • Изучите варианты использования машинного перевода, обработки естественного языка и т. д.

Intel® DevCloud для периферии

Проведите виртуальное тестирование с помощью Intel® DevCloud for the Edge. Быстро создавайте прототипы и разрабатывайте приложения ИИ в облаке, используя новейшие аппаратные и программные инструменты Intel®.

Технические характеристики

  • Распространение Intel набора инструментов OpenVINO
  • Поддерживаемые операционные системы:
    • Ubuntu 16.04.3 LTS (64-разрядная версия)
    • CentOS* 7.4 (64-разрядная версия)
    • Windows 10 (64-разрядная версия)
    • macOS 10.14.4 (или новее)
    • Raspbian (только цель)
    • Другое (через дистрибутив OpenVINO™ с открытым исходным кодом)

    Процессор машинного зрения (VPU) Intel® Movidius™ Myriad™ X

    Последнее поколение процессоров Intel® VPU включает 16 мощных вычислительных ядер (называемых ядрами SHAVE) и выделенный аппаратный ускоритель глубокой нейронной сети для высокопроизводительных приложений машинного зрения и логических выводов ИИ — и все это при низком энергопотреблении.

    Искусственный интеллект "включай и работай"

    Создайте прототип с помощью недорогих периферийных устройств, таких как Raspberry Pi* и других хост-устройств Arm*.

    Внедрите передовые технологии искусственного интеллекта и машинного обучения в приложения для ПК с помощью Intel® NUC.

    Распознавание глубины сочетается с определением границ по принципу plug-and-play с помощью искусственного интеллекта с помощью камеры Intel® RealSense™ серии D400.

    Эталонные реализации

    Научитесь создавать решения компьютерного зрения на Intel® NCS2, разрабатывая эти проекты.

    Переведите ИИ от прототипа к производству

    Intel® AI: In Production централизует ресурсы и партнерские предложения, чтобы помочь вам в процессе предоставления решений для ИИ на периферии.

    Документация

    Гарантийная поддержка и нормативная информация

    Проконсультируйтесь со службой поддержки Intel Neural Compute Stick 2, чтобы узнать о первоначальных шагах по устранению неполадок. Если проблема не устранена, следуйте этим инструкциям, чтобы получить гарантийную поддержку:

    • Для покупок, сделанных у дистрибьютора менее чем через 30 дней с момента запроса на гарантийную поддержку, обратитесь к дистрибьютору, у которого была совершена покупка.
    • Для покупок, совершенных непосредственно у Intel или у дистрибьютора более чем через 30 дней с момента запроса на гарантийную поддержку, обратитесь в службу гарантийной поддержки Intel. Примечание. Вам потребуется создать учетную запись службы поддержки, если у вас ее нет.

    Технологии Intel могут потребовать активированного оборудования, программного обеспечения или активации службы. // Ни один продукт или компонент не может быть абсолютно безопасным. // Ваши затраты и результаты могут отличаться. // Производительность зависит от использования, конфигурации и других факторов. // См. наши полные юридические уведомления и отказ от ответственности. // Intel стремится уважать права человека и избегать соучастия в нарушениях прав человека. См. Глобальные принципы прав человека корпорации Intel. Продукты и программное обеспечение Intel предназначены для использования только в приложениях, которые не вызывают и не способствуют нарушению международно признанных прав человека.

    Intel Neural Compute Stick 2 (NCS2) – это USB-накопитель, который предлагает вам доступ к функциям нейронной сети без необходимости использования большого и дорогого оборудования. Он содержит процессор Intel Movidius Myriad X Vision Processing Unit (VPU), позволяющий использовать компьютерное зрение и искусственный интеллект (ИИ) в IoT и периферийных устройствах.

    Настройка программной среды¶

    Чтобы использовать Intel NCS2, сначала выполните установку набора инструментов Intel® Distribution of OpenVINO™ для ODYSSEY — X86J4105 и настройте всю зависимую программную среду.

    Если вы уже прошли обучение, следуйте приведенным ниже инструкциям.

    Настройка Intel® Neural Compute Stick 2¶

    1. Добавьте текущего пользователя Linux в группу пользователей:

    Выйдите из системы и снова войдите, чтобы изменения вступили в силу.

    1. Чтобы выполнить вывод на Intel® Neural Compute Stick 2, установите правила USB следующим образом:

    Примечание. Чтобы изменения вступили в силу, перезагрузите устройство.

    Запуск образцов с помощью VPU NCS2¶

    1. Запустите сценарий проверки классификации изображений с помощью NSC2:

    1. Запустите скрипт проверки Inference Pipeline с помощью NSC2:

    Ищите подобные результаты, указывающие на успешную установку!

    Следующий шаг: Ncapzoo¶

    1. Клонируйте репозиторий github в локальные файлы с помощью следующей команды:
    1. Выполните эту команду в любом приложении/сетевой папке, чтобы проверить зависимости системного программного обеспечения для этого конкретного примера:

    Пример запуска¶

    Есть много примеров, которые можно запустить, например, здесь использовалась демо-версия теста:

    Пример запуска птиц:¶

    Ресурсы¶

    Техническая поддержка¶

    Сообщайте о любых технических проблемах на нашем форуме

    Ядро Linux — это основной компонент операционной системы Linux и основной интерфейс между аппаратным обеспечением компьютера и его процессами.

    Читайте также: