Развертывание вычислений искусственного интеллекта и машинного обучения в локальной среде и на пограничных устройствах

Реестр контейнеров Azure
Azure IoT Edge
Машинное обучение Azure
Azure Stack Edge

Эта эталонная архитектура иллюстрирует использование Azure Stack Edge для расширения быстрого вывода машинного обучения из облака в локальные или пограничные сценарии. Azure Stack Hub предоставляет такие возможности Azure, как вычисления, хранилище, сеть и аппаратное ускорение машинного обучения в любом пограничном расположении.

Архитектура

Architecture diagram: on-premises data training a model in Azure Machine Learning, with model deployed back to the edge for inference.

Скачайте файл Visio для этой архитектуры.

Workflow

Архитектура состоит из следующих шагов:

  • Машинное обучение Azure. Машинное обучение позволяет создавать, обучать, развертывать и управлять моделями машинного обучения в облачной среде. Затем эти модели могут развертываться в службах Azure, включая Экземпляры контейнеров Azure ,Служба Azure Kubernetes (AKS) и Функции Azure.
  • Реестр контейнеров Azure. Реестр контейнеров — это служба, которая создает реестр Docker и управляет ими. Реестр контейнеров создает, хранит и управляет образами контейнеров Docker и может хранить контейнерные модели машинного обучения.
  • Azure Stack Edge. Azure Stack Edge — это пограничное вычислительное устройство, предназначенное для вывода машинного обучения на границе. Данные предварительно обработаются на границе перед передачей в Azure. Azure Stack Edge включает оборудование для ускорения вычислений, предназначенное для повышения производительности вывода искусственного интеллекта на границе.
  • Локальные данные. Локальные данные ссылались на все данные, используемые в обучении модели машинного обучения. Данные могут находиться в любом локальном решении хранилища, включая развертывания Azure Arc.

Компоненты

Подробности сценария

Потенциальные варианты использования

Это решение идеально подходит для телекоммуникационной отрасли. Типичные варианты использования для расширения вывода включаются в следующие действия:

  • Запустите локальное, быстрое вывод машинного обучения по мере приема данных, и у вас есть значительное локальное оборудование.
  • Создание долгосрочных решений для исследований, в которых существующие локальные данные очищаются и используются для создания модели. Затем модель используется как локально, так и в облаке; он регулярно обучается по мере поступления новых данных.
  • Создавайте приложения программного обеспечения, которые должны делать вывод о пользователях, как в физическом расположении, так и в интернете.

Рекомендации

Прием, преобразование и передача данных, хранящихся локально

Azure Stack Edge может преобразовать данные из локального хранилища перед передачей данных в Azure. Это преобразование выполняется устройством Azure IoT Edge , развернутым на устройстве Azure Stack Edge. Эти устройства IoT Edge связаны с ресурсом Центр Интернета вещей Azure на облачной платформе Azure.

Каждый модуль IoT Edge — это контейнер Docker, который выполняет определенную задачу в процессе приема, преобразования и передачи рабочего процесса. Например, модуль IoT Edge может собирать данные из локальной общей папки Azure Stack Edge и преобразовывать данные в формат, готовый для машинного обучения. Затем модуль передает преобразованные данные в облачную папку Azure Stack Edge. Вы можете добавлять пользовательские или встроенные модули на устройство IoT Edge или разрабатывать пользовательские модули IoT Edge..

Примечание.

Модули IoT Edge регистрируются как образы контейнеров Docker в реестре контейнеров.

В ресурсе Azure Stack Edge на облачной платформе Azure общая облачная папка поддерживается ресурсом учетной записи хранения BLOB-объектов Azure. Все данные в облачной общей папке автоматически отправляются в связанную учетную запись хранения. Вы можете проверить преобразование данных и передать их, включив локальную или облачную общую папку или перейдя по учетной записи служба хранилища Azure.

Обучение и развертывание модели

После подготовки и хранения данных в хранилище BLOB-объектов можно создать Машинное обучение набор данных, который подключается к служба хранилища Azure. Набор данных представляет одну копию данных в хранилище, на которое ссылается непосредственно Машинное обучение.

Вы можете использовать интерфейс командной строки Машинное обучение, пакет SDK R, пакет SDK для Python, конструктор или Visual Studio Code для создания скриптов, необходимых для обучения модели.

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

Примечание.

Для этой эталонной архитектуры модель развертывается в Azure Stack Edge, чтобы сделать модель доступной для вывода в локальной среде. Модель также развертывается в реестре контейнеров, чтобы убедиться, что модель доступна для вывода в самых разных службах Azure.

Вывод с недавно развернутой моделью

Azure Stack Edge может быстро запускать модели машинного обучения локально в локальной среде с помощью встроенного аппаратного обеспечения ускорения вычислений. Это вычисление выполняется полностью на краю. Результатом является быстрая аналитика данных с помощью оборудования, близкого к источнику данных, чем общедоступный облачный регион.

Кроме того, Azure Stack Edge продолжает передавать данные в Машинное обучение для непрерывного переобучения и улучшения с помощью конвейера машинного обучения, связанного с моделью, которая уже работает с данными, хранящимися локально.

Рекомендации

Эти рекомендации реализуют основные принципы платформы Azure Well-Architected Framework, которая является набором руководящих принципов, которые можно использовать для улучшения качества рабочей нагрузки. Дополнительные сведения см. в статье Microsoft Azure Well-Architected Framework.

Доступность

  • Рассмотрите возможность размещения ресурса Azure Stack Edge в том же регионе Azure, что и другие службы Azure, к которым он будет обращаться. Чтобы оптимизировать производительность отправки, рассмотрите возможность размещения учетной записи хранения BLOB-объектов Azure в регионе, где (модуль) имеет лучшее сетевое подключение.
  • Рассмотрим Azure ExpressRoute для стабильного, избыточного подключения между устройством и Azure.

Управляемость

  • Администратор istrator может проверить правильность передачи источника данных из локального хранилища в ресурс Azure Stack Edge. Они могут проверить, подключив общую папку "Блок сообщений сервера" (S МБ)/Сетевая файловая система (NFS) или подключившись к связанной учетной записи хранения BLOB-объектов с помощью служба хранилища Azure Обозреватель.
  • Используйте Машинное обучение наборы данных для ссылки на данные в хранилище BLOB-объектов при обучении модели. Ссылка на хранилище устраняет необходимость внедрения секретов, путей данных или строка подключения в скрипты обучения.
  • В рабочей области Машинное обучение регистрируйте и отслеживайте модели машинного обучения для отслеживания различий между моделями в разные моменты времени. Вы также можете зеркало метаданные управления версиями и отслеживанием в тегах, используемых для образов контейнеров Docker, которые развертываются в реестре контейнеров.

DevOps

  • Ознакомьтесь с подходом к управлению жизненным циклом MLOps для Машинное обучение. Например, используйте GitHub или Azure Pipelines для создания процесса непрерывной интеграции, который автоматически обучает и переобувает модель. Обучение можно активировать либо при заполнении нового набора данных, либо изменения в скриптах обучения.
  • Рабочая область Машинное обучение Azure автоматически регистрирует образы контейнеров Docker и управляет ими для моделей машинного обучения и модулей IoT Edge.

Оптимизация затрат

Оптимизация затрат заключается в поиске способов уменьшения ненужных расходов и повышения эффективности работы. Дополнительные сведения см. в разделе Обзор критерия "Оптимизация затрат".

Следующие шаги

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

Модули Microsoft Learn.