Обучающие ресурсы Azure по построителям моделей

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

Что такое эксперимент Машинного обучения Azure?

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

Эксперимент инкапсулирует конфигурацию и результаты одного или нескольких запусков обучения ML. Эксперименты связаны с определенной рабочей областью. При первом создании эксперимента его имя регистрируется в рабочей области. Все последующие запуски (при использовании одного и того же имени эксперимента) регистрируются как часть одного эксперимента. В противном случае создается новый эксперимент.

Что такое рабочая область Машинного обучения Azure?

Рабочая область — это ресурс Машинного обучения Azure, который является централизованным расположением для всех ресурсов и артефактов Машинного обучения Azure, создаваемых в ходе обучения.

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

  • Имя: имя рабочей области между 3-33 символами. Имена могут содержать только буквы, цифры и дефисы.
  • Регион: географическое расположение центра обработки данных, в котором развернута рабочая область и ресурсы. Рекомендуется выбрать ближайшее к вам или вашим клиентам расположение.
  • Группа ресурсов: контейнер, содержащий все связанные ресурсы для решения Azure.

Что такое вычислительная среда Машинного обучения Azure?

Вычислительная среда Машинного обучения — это облачная виртуальная машина Linux, используемая для обучения.

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

  • Имя. Имя вычислительной среды длиной от 2 до 16 символов. Имена могут содержать только буквы, цифры и дефисы.

  • Объем вычислительных ресурсов

    Построитель моделей может использовать один из следующих типов вычислений, оптимизированных для GPU.

    Размер Виртуальные ЦП Память, ГиБ Временное хранилище (SSD): ГиБ GPU Память GPU: ГиБ Макс. количество дисков данных Макс. количество сетевых адаптеров
    Standard_NC12 12 112 680 2 24 48 2
    Standard_NC24 24 224 1440 4 48 64 4

    Дополнительные сведения о типах вычислений, оптимизированных для GPU, см. в документации по виртуальным машинам Linux серии NC.

  • Приоритет вычислений

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

Обучение

Обучение в Azure доступно только для сценария классификации изображений с помощью построителя моделей. Алгоритм, применяемый для обучения этих моделей, представляет собой глубокую нейронную сеть на основе архитектуры ResNet50. Точная продолжительность обучения зависит от объема данных и выбранных вычислительных ресурсов. Ход выполнения можно отслеживать, щелкнув ссылку "Monitor current run in Azure portal" (Мониторинг текущего выполнения на портале Azure) в Visual Studio.

Результаты

После завершения обучения в решение добавляются два проекта со следующими суффиксами:

  • ConsoleApp: консольное приложение C#, которое предоставляет начальный код для создания конвейера прогнозирования и создания прогнозов.

  • Модель: приложение C# .NET Standard, содержащее модели данных, определяющие схему входных и выходных данных модели, а также следующие ресурсы:

    • bestModel.onnx: сериализованная версия модели в формате Open Neural Network Exchange (ONNX). ONNX — это формат с открытым кодом для моделей ИИ, который поддерживает взаимодействие между такими платформами, как ML.NET, PyTorch и TensorFlow.
    • bestModelMap.json: список категорий, используемых при создании прогнозов для сопоставления выходных данных модели с текстовой категорией.
    • MLModel.zip: сериализованная версия конвейера прогнозирования ML.NET, использующая сериализованную версию модели bestModel.onnx для прогнозирования и сопоставления выходных данных с помощью bestModelMap.json файла.

Использование модели машинного обучения

Классы ModelInput и ModelOutput в проекте Model определяют схему ожидаемых входных и выходных данных модели, соответственно.

В сценарии классификации изображений ModelInput содержит два столбца:

  • ImageSource: строковый путь расположения изображения.
  • Label: фактическая категория, к которой принадлежит изображение. Label используется только в качестве входных данных при обучении и не требуется при создании прогнозов.

ModelOutput содержит два столбца:

  • Prediction: прогнозируемая категория изображения.
  • Score: список вероятностей для всех категорий (самый высокий относится к Prediction).

Устранение неполадок

Невозможно создать вычислительную среду

Если во время создания вычислительной среды Машинного обучения Azure возникает ошибка, возможно, уже существует вычислительный ресурс, который находится в состоянии сбоя. При попытке повторного создания вычислительного ресурса с тем же именем операция завершается неудачей. Чтобы устранить эту ошибку, выполните одно из указанных ниже действий.

  • Создайте новую вычислительную среду с другим именем.
  • Перейдите на портал Azure и удалите исходный вычислительный ресурс.