Примечание.
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Внимание
В этой статье содержатся сведения об использовании пакета SDK Azure Machine Learning версии 1. Пакет SDK версии 1 устарел с 31 марта 2025 г. Поддержка будет завершена 30 июня 2026 г. Вы можете установить и использовать пакет SDK версии 1 до этой даты. Существующие рабочие процессы, использующие пакет SDK версии 1, будут продолжать работать после даты окончания поддержки. Однако они могут быть подвержены рискам безопасности или критическим изменениям в случае изменений архитектуры в продукте.
Рекомендуется перейти на пакет SDK версии 2 до 30 июня 2026 г. Дополнительные сведения о SDK версии 2 см. в разделе Что такое Azure Machine Learning CLI и Python SDK v2? и справочнике по SDK версии 2.
Внимание
В некоторых командах Azure CLI в этой статье используется расширение azure-cli-ml или v1 для Azure Machine Learning. Поддержка CLI версии 1 закончилась 30 сентября 2025 г. Корпорация Майкрософт больше не будет предоставлять техническую поддержку или обновления для этой службы. Существующие рабочие процессы, использующие CLI версии 1, будут продолжать работать после даты окончания поддержки. Однако они могут быть подвержены рискам безопасности или критическим изменениям в случае изменений архитектуры в продукте.
Рекомендуется как можно скорее перейти к расширению mlили версии 2. Дополнительные сведения о расширении версии 2 см. в разделе Azure Machine Learning расширение CLI и пакет SDK Python версии 2.
Эта статья относится к первой версии (версии 1) интерфейса командной строки и пакета SDK Azure Machine Learning. Сведения о двух версиях (версия 2) см. в разделе How Azure Machine Learning works (v2).
Узнайте об архитектуре и концепциях Azure Machine Learning. В этой статье приведены общие сведения о компонентах и их взаимодействии между собой в процессе построения, развертывания и поддержки моделей машинного обучения.
Рабочая область
Рабочая область машинного обучения является ресурсом верхнего уровня для Azure Machine Learning.
Используйте рабочую область в качестве централизованного места для:
- управлять ресурсами, используемыми для обучения и развертывания моделей, такими как вычисления;
- Хранение ресурсов, создаваемых при использовании Azure Machine Learning, включая:
Рабочая область включает другие Azure ресурсы, которые он использует:
- Azure Container Registry (ACR): регистрирует контейнеры Docker, используемые во время обучения и при развертывании модели. Чтобы сократить затраты, реестр ACR создается только при создании образов развертывания.
- Учетная запись Azure Storage: служит хранилищем данных по умолчанию для рабочей области. Записные книжки Jupyter, которые вы используете с экземплярами вычислений Azure Machine Learning, также хранятся здесь.
- Azure Application Insights. Хранит сведения о мониторинге моделей.
- Azure Key Vault: хранит секреты, используемые целевыми объектами вычислений и другими конфиденциальными сведениями, необходимыми рабочей области.
Вы можете использовать рабочую область совместно с другими пользователями.
Вычисления
Целевой объект вычислений — это любая машина или набор машин, используемые вами для запуска на них сценария обучения или для размещения развертывания вашей службы. В качестве целевого объекта вычислений можно использовать локальный компьютер или удаленный ресурс вычислений. Используя целевые объекты вычислений, можно начать обучение на локальном компьютере, а затем горизонтально масштабировать его в облако, не меняя сценарий обучения.
Azure Machine Learning представлено две полностью управляемые облачные виртуальные машины, настроенные для задач машинного обучения:
Вычислительный экземпляр: вычислительные экземпляры — это виртуальные машины, которые содержат ряд установленных инструментов и сред для машинного обучения. Используйте вычислительный экземпляр в первую очередь в качестве рабочей станции разработки. Можно начать выполнять примерные блокноты без какой-либо настройки. Используйте вычислительный экземпляр в качестве целевого объекта вычислений для заданий обучения и вывода.
Вычислительные кластеры: вычислительные кластеры — это кластер виртуальных машин с возможностями масштабирования с несколькими узлами. Вычислительные кластеры лучше подходят в качестве целевых объектов вычислений для крупных заданий и рабочей среды. Кластер автоматически масштабируется при отправке задания. Используйте его в качестве целевого объекта вычислений для обучения или для развертываний разработки или тестирования.
Дополнительные сведения о целевых объектах вычислений для обучения см. в разделе Целевые объекты вычислений обучения. Дополнительные сведения о целевых объектах вычислений для развертывания см. в разделе Целевые объекты развертывания.
Наборы данных и хранилища данных
Azure Machine Learning Наборы данных упрощают доступ к данным и облегчают работу с данными. При создании набора данных вы создадите ссылку на расположение источника данных вместе с копией метаданных. Так как данные остаются в существующем расположении, вы не несете дополнительных затрат на хранение, и вы не рискуете целостностью источников данных.
Для получения дополнительной информации см. раздел Создание и регистрация наборов данных Azure Machine Learning. Дополнительные примеры использования наборов данных см. в записных книжках .
Наборы данных используют datastore для безопасного подключения к службам хранилища Azure. Хранилища данных содержат сведения о подключениях, при этом не подвергая риску ваши учетные данные для проверки подлинности и целостность исходного источника данных. Они хранят сведения о подключении, такие как идентификатор подписки и авторизация по токену в Key Vault, связанный с рабочей областью, чтобы обеспечить безопасный доступ к вашему хранилищу данных без необходимости жестко прописывать их в сценарии.
Среды
Рабочая область>Среды
Среда — это инкапсуляция среды, в которой производится обучение или оценка вашей модели машинного обучения. Среда определяет пакеты Python, переменные окружения и настройки программного обеспечения для ваших скриптов обучения и оценки.
Примеры кода см. в разделе "Управление средами" статьи использование сред.
эксперименты;
Рабочая область>Эксперименты
Эксперимент представляет собой совокупность нескольких запусков указанного сценария. Он всегда принадлежит рабочей среде. При отправке запуска укажите имя эксперимента. Сведения о запуске хранятся под этим экспериментом. Если на момент отправки эксперимента имя не существует, автоматически создается новый эксперимент.
Пример использования эксперимента см. в руководстве по обучению первой модели.
Запуски
Рабочая область>Эксперименты>Выполнение
Выполнение — это однократный запуск скрипта обучения. Обычно эксперимент содержит несколько запусков.
Azure Machine Learning записывает все запуски и сохраняет следующие сведения в эксперименте:
- метаданные о запуске (метка времени, длительность и т. д.);
- Метрики, которые логирует ваш скрипт
- Выходные файлы, которые эксперимент автоматически собирает или которые вы явно загружаете
- моментальный снимок каталога, содержащего скрипты, до запуска;
При отправке скрипта для обучения модели создается запуск. Запуск может иметь ноль или более дочерних запусков. Например, запуск верхнего уровня может иметь два дочерних запуска, и каждый из этих дочерних запусков может иметь собственный дочерний запуск.
Конфигурации выполнения
Рабочая область>Эксперименты>Выполнение>Конфигурация запуска
Конфигурация запуска определяет, как запустить скрипт в указанном целевом объекте вычислений. Используйте конфигурацию для указания скрипта, целевого объекта вычислений, среды Azure Machine Learning, любых конфигураций для распределенных заданий и некоторых дополнительных свойств. Дополнительные сведения о полном наборе настраиваемых параметров для запусков см. в описании класса ScriptRunConfig.
Конфигурацию запуска можно сохранить в файле внутри каталога, содержащего скрипт обучения. Кроме того, его можно создать как объект в памяти и использовать его для отправки запуска.
Примеры конфигураций запусков см. в разделе Настройка запуска обучения.
Моментальные снимки
Рабочая область>Эксперименты>Выполнение>Моментальный снимок
При отправке запуска Azure Machine Learning сжимает каталог, содержащий скрипт в виде ZIP-файла, и отправляет его в целевой объект вычислений. Затем zip-файл извлекается, и скрипт запускается там. Azure Machine Learning также сохраняет ZIP-файл в виде моментального снимка в рамках записи выполнения. Любой пользователь с доступом к рабочей области может просмотреть запись о выполнении и загрузить моментальный снимок.
Ведение журнала
Azure Machine Learning автоматически регистрирует стандартные метрики выполнения. Однако можно также использовать пакет SDK Python для регистрации произвольных метрик.
Журналы можно просматривать несколькими способами: отслеживать состояние выполнения в режиме реального времени или просматривать результаты после завершения. Дополнительные сведения см. в статье Мониторинг и просмотр журналов запуска машинного обучения.
Примечание.
Чтобы предотвратить включение ненужных файлов в моментальный снимок, создайте файл игнорирования (.gitignore или .amlignore) в каталоге. Добавьте исключаемые файлы и каталоги в этот файл. Дополнительные сведения о синтаксисе, который будет использоваться в этом файле, см. в разделе синтаксис и шаблоны для .gitignore. Файл .amlignore использует тот же синтаксис.
Если оба файла существуют, используется файл .amlignore, а файл .gitignore не используется.
Отслеживание и интеграция Git
При запуске обучения и установке исходного каталога в локальный репозиторий Git журнал выполнения сохраняет сведения о репозитории. Эта функция работает с запусками, которые вы отправляете с помощью конфигурации выполнения скрипта или конвейера машинного обучения. Он также работает для запусков, которые вы отправляете из SDK или интерфейса командной строки для машинного обучения.
Дополнительные сведения см. в разделе Git integration for Azure Machine Learning.
Рабочий процесс обучения
При запуске эксперимента для обучения модели выполняются следующие действия. На схеме рабочего процесса обучения показаны следующие действия:
Вы вызываете Azure Machine Learning, используя идентификатор, связанный с моментальным снимком кода, который был сохранен в предыдущем разделе.
Azure Machine Learning создает идентификатор выполнения (необязательно) и маркер службы Machine Learning. Целевые объекты вычислений, такие как вычисления машинного обучения и виртуальные машины, используют этот токен для взаимодействия со службой машинного обучения.
Вы выбираете либо управляемую вычислительную цель, например Machine Learning Compute, либо неуправляемую вычислительную цель, как виртуальные машины, чтобы запускать задачи обучения. Ниже приведены потоки данных для обоих сценариев:
- К виртуальным машинам и HDInsight осуществляется доступ с использованием учетных данных SSH, которые хранятся в хранилище ключей службы Microsoft в рамках подписки. Azure Machine Learning выполняет код управления в целевом объекте вычислений, который:
- Подготавливает среду. Docker — это вариант для виртуальных машин и локальных компьютеров. Чтобы понять, как работают эксперименты в контейнерах Docker, ознакомьтесь с следующими шагами по вычислительным ресурсам для машинного обучения.
- Скачивает код.
- Настраивает переменные и конфигурации среды.
- Запускает пользовательские скрипты (моментальный снимок кода, упомянутого в предыдущем разделе).
- Machine Learning Компьютерное обеспечение, доступ осуществляется через удостоверение, управляемое рабочей областью. Так как Machine Learning Compute является управляемым целевым вычислительным ресурсом (под управлением корпорации Майкрософт), он осуществляется в рамках вашей подписки на Microsoft.
- При необходимости запускает удаленную сборку Docker.
- Записывает код управления в общую папку Azure Files пользователя.
- Запускает контейнер с начальной командой. Эта команда — это код управления, описанный на предыдущем шаге.
После завершения выполнения можно запрашивать запуски и метрики. На схеме потоков этот шаг происходит, когда целевой объект вычислений обучения записывает метрики выполнения обратно в Azure Machine Learning из хранилища в базе данных Azure Cosmos DB. Клиенты могут вызывать Azure Machine Learning. Machine Learning извлекает метрики из базы данных Azure Cosmos DB и возвращает их клиенту.
Модели
В простейшем смысле модель представляет собой фрагмент кода, который принимает входные данные и создает выходные данные. Создание модели машинного обучения включает в себя выбор алгоритма, предоставление ему данных и настройку гиперпараметров. Обучение — это итеративный процесс, который создает обученную модель, включающую в себя все, чему модель научилась в процессе обучения.
Вы можете принести модель, обученную за пределами Azure Machine Learning. Вы также можете обучить модель, отправив запускэксперимента в вычислительную цель в Azure Machine Learning. Когда вы получите модель, ее нужно будет зарегистрировать в рабочей области.
Azure Machine Learning не зависит от платформы. Для создания модели можно использовать любую популярную платформу машинного обучения, например Scikit-learn, XGBoost, PyTorch, TensorFlow или Chainer.
Пример обучения модели с помощью Scikit-learn см. в разделе Tutorial: обучение модели классификации изображений с помощью Azure Machine Learning.
Реестр моделей
Рабочая область>Модели
Реестр model позволяет отслеживать все модели в рабочей области Azure Machine Learning.
Модели идентифицируются по имени и версии. При регистрации модели с уже имеющимся именем реестр предполагает, что это новая версия. Версия увеличивается, и новая модель регистрируется под тем же именем.
При регистрации модели вы можете указать дополнительные теги метаданных, а затем использовать эти теги для поиска моделей.
Совет
Зарегистрированная модель — это логический контейнер для одного или нескольких файлов, составляющих эту модель. Например, если у вас есть модель, которая хранится в нескольких файлах, их можно зарегистрировать в качестве одной модели в рабочей области Azure Machine Learning. После регистрации можно скачать или развернуть зарегистрированную модель и получить все зарегистрированные файлы.
Нельзя удалить зарегистрированную модель, которую использует активное развертывание.
Пример регистрации модели см. в разделе Train модель классификации изображений с Azure Machine Learning.
Развертывание
Вы разворачиваете зарегистрированную модель в качестве конечной точки службы. Для этого необходимы следующие компоненты.
- Среда. Среда инкапсулирует зависимости, необходимые для выполнения модели для вывода.
- Код выставления оценки. Этот скрипт принимает запросы, оценивает их с помощью модели и возвращает результаты.
- Конфигурация вывода. Конфигурация вывода определяет среду, сценарий входа и другие компоненты, необходимые для запуска модели в качестве службы.
Дополнительные сведения об этих компонентах см. в разделе Развертывание моделей с использованием Azure Machine Learning.
Конечные точки
Рабочая область>Конечные точки
Конечная точка — это экземпляр вашей модели в виде веб-службы, которую вы размещаете в облаке.
Конечная точка веб-службы
При развертывании модели в качестве веб-службы можно развернуть конечную точку на Azure Container Instances или Azure Kubernetes Service. Вы создаете службу из вашей модели, скрипта и связанных файлов. Эти файлы попадают в базовый образ контейнера, который содержит среду выполнения для модели. На изображении есть конечная точка HTTP с балансировкой нагрузки, которая получает запросы оценки, отправленные веб-службе.
Можно включить телеметрию Application Insights или телеметрию модели, чтобы отслеживать состояние веб-службы. У вас есть эксклюзивный доступ к данным телеметрии. Данные сохраняются в вашем Application Insights и в экземплярах вашей учетной записи хранения. Если включить автоматическое масштабирование, Azure автоматически масштабирует развертывание.
На следующей схеме показан рабочий процесс вывода для модели, развернутой в качестве конечной точки веб-службы.
Ниже приведены сведения:
- Вы регистрируете модель с помощью клиента, например пакета SDK для Azure Machine Learning.
- Изображение создается с помощью модели, файла оценки и других зависимостей модели.
- Вы создаете и сохраняете образ Docker в Azure Container Registry.
- Веб-служба развертывается в целевом объекте вычислений (Container Instances или AKS) с помощью образа, созданного на предыдущем шаге.
- Сведения о запросе оценки хранятся в Application Insights, которое находится в вашей подписке.
- Телеметрия также отправляется в подписку Microsoft Azure.
Пример развертывания модели в качестве веб-службы см. в разделе Учебник. Обучение и развертывание модели.
Конечные точки в реальном времени
При развертывании обученной модели в конструкторе можно развернуть эту модель как конечную точку в реальном времени. Конечная точка реального времени обычно получает один запрос через REST интерфейс и возвращает прогноз мгновенно. Этот подход контрастирует с пакетной обработкой, которая обрабатывает несколько значений одновременно и сохраняет результаты после завершения в хранилище данных.
Конечные точки конвейера
Конечные точки конвейера позволяют программным образом вызывать конвейеры машинного обучения через конечную точку REST. Конечные точки конвейера позволяют автоматизировать рабочие процессы конвейера.
Конечная точка конвейера — это коллекция опубликованных конвейеров. Эта логическая организация позволяет управлять несколькими конвейерами и вызывать их с помощью одной конечной точки. Каждый опубликованный конвейер в конечной точке конвейера имеет несколько версий. Для конечной точки можно выбрать конвейер по умолчанию или указать версию в вызове функции REST.
Автоматизация
интерфейс командной строки Azure Machine Learning
Интерфейс командной строки Azure Machine Learning версии 1 — это расширение Azure CLI, кроссплатформенный интерфейс командной строки для платформы Azure. Это расширение предоставляет команды для автоматизации действий машинного обучения.
Конвейеры машинного обучения
Используйте конвейеры машинного обучения для создания рабочих процессов и управления ими, которые объединяют этапы машинного обучения. Например, конвейер может включать этапы подготовки данных, обучения и развертывания модели, а также вывода и оценки. Каждый этап может охватывать несколько шагов, каждый из которых может автоматически выполняться в различных целевых объектах вычисления.
Шаги конвейера можно использовать повторно, и их можно запускать без повторного выполнения предыдущих шагов, если выходные данные этих шагов не изменились. Например, можно переобучить модель без повторного запуска дорогостоящих шагов подготовки данных, если данные не изменились. Кроме того, конвейеры позволяют специалистам по обработке и анализу данных параллельно работать над разными частями рабочего процесса машинного обучения.
Мониторинг и ведение журналов
Azure Machine Learning предоставляет следующие возможности мониторинга и ведения журнала:
- Специалисты по обработке и анализу данных могут отслеживать эксперименты и регистрировать информацию учебных запусков. Дополнительные сведения см. в следующих статьях:
- Для Administrators можно отслеживать сведения о рабочей области, связанных Azure ресурсах и событиях, таких как создание и удаление ресурсов с помощью Azure Monitor. Дополнительные сведения см. в разделе How to monitor Azure Machine Learning.
- Для DevOps или MLOps можно отслеживать сведения, создаваемые моделями, развернутыми в виде веб-служб, для выявления проблем с развертываниями и сбора данных, передаваемых в службу. Дополнительные сведения см. в разделе "Мониторинг с помощью Application Insights".
Взаимодействие с рабочей областью
Студия
Azure Machine Learning studio предоставляет веб-представление всех артефактов в рабочей области. Можно просматривать результаты и сведения о наборах данных, экспериментах, конвейерах, моделях и конечных точках. Также можно управлять вычислительными ресурсами и хранилищами данных в студии.
Студия также использует интерактивные инструменты, которые являются частью Azure Machine Learning:
- Azure Machine Learning designer для выполнения шагов рабочего процесса без написания кода
- Веб-интерфейс для автоматизированного машинного обучения
- Azure Machine Learning записные книжки для записи и запуска собственного кода на интегрированных серверах записных книжек Jupyter.
- Проекты маркировки данных для создания, управления и мониторинга проектов по маркировке изображений или текста.
Средства программирования
Внимание
Средства, помеченные (предварительная версия) в следующем списке, в настоящее время находятся в общедоступной предварительной версии. Предварительная версия предоставляется без соглашения об уровне обслуживания и не рекомендована для производственных рабочих нагрузок. Некоторые функции могут не поддерживаться или их возможности могут быть ограничены. Дополнительные сведения см. в разделе Supplemental Terms of Use for Microsoft Azure Previews.
- Взаимодействуйте со службой в любой среде Python с пакетом SDK Azure Machine Learning для Python.
- Используйте Azure Machine Learning designer для выполнения шагов рабочего процесса без написания кода.
- Используйте Azure Machine Learning CLI для автоматизации.
Следующие шаги
Чтобы приступить к работе с Azure Machine Learning, ознакомьтесь со следующими сведениями: