Что такое служба "Машинное обучение Microsoft Azure"?
Машинное обучение Azure — это облачная служба для ускорения жизненного цикла проекта машинного обучения и управления ими. Специалисты по машинному обучению, специалисты по обработке и анализу данных и инженеры могут использовать его в своих повседневных рабочих процессах для обучения и развертывания моделей и управления операциями машинного обучения (MLOps).
Модель можно создать в Машинное обучение или использовать модель, созданную на основе платформы с открытым исходным кодом, например PyTorch, TensorFlow или scikit-learn. Средства MLOps помогают отслеживать, переучивать и повторно развертывать модели.
Совет
Бесплатная пробная версия! Если у вас нет подписки Azure, создайте бесплатную учетную запись, прежде чем приступить к работе. Попробуйте бесплатную или платную версию Машинного обучения Azure. Вы получаете кредиты, которые можно потратить на службы Azure. После того, как кредиты израсходованы, ваша учетная запись не исчезнет. Вы сможете использовать ее для работы с бесплатными службами Azure. С вашей кредитной карты не будет взиматься плата, если вы явно не измените параметры и не попросите снимать плату.
Для кого предназначено Машинное обучение Azure?
Машинное обучение предназначен для отдельных лиц и команд, реализующих MLOps в организации, для внедрения моделей машинного обучения в рабочую среду с безопасным и аудитом.
Специалисты по обработке и анализу данных и инженеры машинного обучения могут использовать средства для ускорения и автоматизации повседневных рабочих процессов. Разработчики приложений могут использовать средства для интеграции моделей в приложения или службы. Разработчики платформы могут использовать надежный набор средств, поддерживаемых устойчивыми API Azure Resource Manager, для создания расширенных инструментов машинного обучения.
Предприятия, работающие в облаке Microsoft Azure, могут использовать знакомые средства управления доступом на основе ролей для инфраструктуры. Вы можете настроить проект для запрета доступа к защищенным данным и операциям выбора.
Производительность для всех пользователей в команде
Для проектов машинного обучения часто требуется команда с различным набором навыков для создания и обслуживания. Машинное обучение имеет средства, которые помогут вам:
Совместная работа с командой с помощью общих записных книжек, вычислительных ресурсов, бессерверных вычислений, данных и сред
Разработка моделей для справедливости и объяснимости, отслеживания и аудита для выполнения требований к происхождению и аудиту
Быстрое и легкое развертывание моделей машинного обучения и управление ими с помощью MLOps
Выполнение рабочих нагрузок машинного обучения в любом месте с помощью встроенного управления, безопасности и соответствия требованиям
Кросс-совместимые средства платформы, соответствующие вашим потребностям
Любой пользователь в команде машинного обучения может использовать свои предпочитаемые инструменты для выполнения работы. Независимо от того, выполняются ли быстрые эксперименты, гиперпараметр-настройка, сборка конвейеров или управление выводами, можно использовать знакомые интерфейсы, в том числе:
- Студия машинного обучения Azure
- Пакет SDK для Python (версия 2)
- Azure CLI (версия 2)
- REST API Azure Resource Manager
По мере уточнения модели и совместной работы с другими пользователями в остальной части цикла разработки Машинное обучение вы можете совместно использовать ресурсы, ресурсы и метрики для проектов в пользовательском интерфейсе Машинное обучение Studio.
Студия
Машинное обучение Studio предлагает несколько возможностей разработки в зависимости от типа проекта и уровня прошлого опыта машинного обучения, не устанавливая ничего.
Записные книжки: запись и запуск собственного кода на управляемых серверах Jupyter Notebook, которые непосредственно интегрированы в студию. Также откройте записные книжки в VS Code, в Интернете или на рабочем столе.
Визуализировать метрики выполнения: анализировать и оптимизировать эксперименты с помощью визуализации.
Машинное обучение Azure конструктор: используйте конструктор для обучения и развертывания моделей машинного обучения без написания кода. Чтобы создать конвейеры машинного обучения, перетащите наборы данных и компоненты.
Пользовательский интерфейс автоматизированного машинного обучения. Узнайте, как создавать автоматизированные эксперименты машинного обучения с помощью удобного интерфейса.
Маркировка данных: используйте Машинное обучение метки данных для эффективной координации меток изображений или проектов по маркировке текста.
Работа с LLMs и генерируемым искусственным интеллектом
Машинное обучение Azure включает средства для создания приложений сгенерированного ИИ на основе крупных языковых моделей (LLM). Это решение включает в себя каталог моделей, поток запросов и набор инструментов для упрощения цикла разработки приложений ИИ.
Как Машинное обучение Azure Studio, так и Azure AI Studio, позволяют работать с LLM. Используйте это руководство, чтобы определить , какую студию следует использовать.
Каталог моделей
Каталог моделей в Студия машинного обучения Azure — это центр для обнаружения и использования широкого спектра моделей, позволяющих создавать приложения сгенерируемым искусственным интеллектом. Каталог моделей содержит сотни моделей от поставщиков моделей, таких как служба Azure OpenAI, Mistral, Meta, Cohere, Nvidia, Hugging Face, включая модели, обученные корпорацией Майкрософт. Модели от поставщиков, отличных от корпорации Майкрософт, являются продуктами, отличными от Майкрософт, как определено в условиях продукта Майкрософт, и соответствуют условиям, предоставленным моделью.
Поток запроса
Машинное обучение Azure поток запросов — это средство разработки, предназначенное для упрощения всего цикла разработки приложений искусственного интеллекта на основе крупных языковых моделей (LLM). Поток запросов предоставляет комплексное решение, которое упрощает процесс создания прототипов, экспериментов, итераций и развертывания приложений ИИ.
Готовность к работе и безопасность в масштабах предприятия
Машинное обучение интегрируется с облачной платформой Azure для добавления безопасности в проекты машинного обучения.
Интеграция в области безопасности:
- Azure виртуальная сеть с группами безопасности сети.
- Azure Key Vault, где можно сохранить секреты безопасности, такие как сведения о доступе для учетных записей хранения.
- Реестр контейнеров Azure настроена за виртуальной сетью.
Дополнительные сведения см. в руководстве по настройке безопасной рабочей области.
Интеграции Azure для комплексных решений
Другие интеграции со службами Azure поддерживают проект машинного обучения от конца до конца. К ним относятся:
- Azure Synapse Analytics, который используется для обработки и потоковой передачи данных с помощью Spark.
- Azure Arc, где можно запускать службы Azure в среде Kubernetes.
- Параметры хранилища и базы данных, такие как База данных SQL Azure и Хранилище BLOB-объектов Azure.
- служба приложение Azure, которую можно использовать для развертывания приложений с поддержкой машинного обучения и управления ими.
- Microsoft Purview, который позволяет обнаруживать и каталогизировать ресурсы данных в вашей организации.
Внимание
Машинное обучение Azure не сохраняет и не обрабатывает данные за пределами региона, в котором выполняется развертывание.
Рабочий процесс проекта машинного обучения
Как правило, модели разрабатываются в рамках проекта с целью и целями. Над проектами часто работает несколько человек. При эксперименте с данными, алгоритмами и моделями разработка является итеративной.
Жизненный цикл проекта
Жизненный цикл проекта может отличаться по проекту, но он часто выглядит следующим образом.
Рабочая область организует проект и обеспечивает совместную работу многих пользователей, объединенных общей целью. Пользователи в рабочей области могут легко обмениваться результатами выполнения из экспериментов в пользовательском интерфейсе студии. Кроме того, они могут использовать версии ресурсов для таких заданий, как среды и ссылки на хранилище.
Дополнительные сведения см. в статье Управление рабочей областью Машинного обучения Azure.
Когда проект готов к эксплуатации, работа пользователей может быть автоматизирована в конвейере машинного обучения и активирована в расписании или HTTPS-запросе.
Модели можно развернуть в управляемом решении вывода как в режиме реального времени, так и для пакетных развертываний, абстрагируя управление инфраструктурой, обычно необходимое для развертывания моделей.
Обучение моделей
В Машинном обучении Azure можно запустить сценарий обучения в облаке или создать модель с нуля. Клиенты часто приносят модели, которые они создали и обучили в платформах с открытым кодом, чтобы они могли работать с ними в облаке.
Открытость и совместимость
Специалисты по обработке и анализу данных могут использовать в Машинном обучении Azure модели, созданные на обычных платформах Python, например:
- PyTorch
- TensorFlow
- scikit-learn
- XGBoost
- LightGBM
Поддерживаются и другие языки и платформы:
- R
- .NET
Дополнительные сведения см. в статье интеграции с открытым исходным кодом с Машинное обучение Azure.
Автоматическое выделение признаков и выбор алгоритма
В повторяющемся, потребляющем много времени, в классическом машинном обучении специалисты по обработке и анализу данных используют предыдущий опыт и интуицию для выбора правильных признаков данных и алгоритма для обучения. Автоматическое машинное обучение (AutoML) ускоряет этот процесс. Его можно использовать с помощью пользовательского интерфейса студии Машинное обучение или пакета SDK для Python.
Дополнительные сведения см. в статье "Что такое автоматизированное машинное обучение?".
Оптимизация гиперпараметров
Оптимизация гиперпараметров, или настройка гиперпараметров, может требовать много усилий. Машинное обучение может автоматизировать эту задачу для произвольных параметризованных команд с небольшими изменениями в определении задания. Результаты выводятся в студии.
Дополнительные сведения см. в разделе "Настройка гиперпараметров".
Обучение с распределением по нескольким узлам
Эффективность обучения для заданий по глубокому обучению, а иногда и классическому обучению можно значительно улучшить с помощью распределения по нескольким узлам. Машинное обучение Azure вычислительных кластеров и бессерверных вычислений предоставляют последние варианты GPU.
Поддерживается с помощью Машинное обучение Azure Kubernetes, Машинное обучение Azure вычислительных кластеров и бессерверных вычислений:
- PyTorch
- TensorFlow
- MPI
Вы можете использовать распределение MPI для horovod или пользовательской логики с несколькими узлами. Apache Spark поддерживается с помощью бессерверных вычислений Spark и присоединенного пула Synapse Spark, используюющего кластеры Spark Azure Synapse Analytics.
Дополнительные сведения см. в разделе "Распределенное обучение с помощью Машинное обучение Azure".
Чрезвычайно параллельное обучение
Масштабирование проекта машинного обучения может потребоваться смущать параллельное обучение модели. Этот шаблон распространен для таких сценариев, как прогнозирование спроса, где модель может быть обучена для многих магазинов.
Развертывание моделей
Чтобы перенести модель в рабочую среду, необходимо развернуть модель. Управляемые конечные точки Машинное обучение Azure абстрагируют необходимую инфраструктуру для оценки модели пакетной или в режиме реального времени (в режиме реального времени).
Оценка в режиме реального времени и пакетный вывод
Пакетная оценка, или пакетный вывод, включает вызов конечной точки со ссылкой на данные. Конечная точка пакетной службы асинхронно запускает задания для параллельной обработки данных на вычислительных кластерах и хранит данные для дальнейшего анализа.
Оценка в режиме реального времени или онлайн-вывод включает вызов конечной точки с одним или несколькими развертываниями модели и получение ответа практически в реальном времени через HTTPS. Трафик можно разделить между несколькими развертываниями, что позволяет тестировать новые версии модели путем отвлечения некоторого количества трафика изначально и увеличения после установления доверия к новой модели.
Дополнительные сведения см. в разделе:
- Развертывание модели с управляемой конечной точкой в реальном времени
- Использование конечных точек пакетной службы для пакетной оценки
MLOps: DevOps для машинного обучения
DevOps для моделей машинного обучения, часто называемых MLOps, — это процесс разработки моделей для рабочей среды. Жизненный цикл модели от обучения до развертывания должен быть доступен для аудита, даже если его нельзя воспроизвести.
Жизненный цикл модели машинного обучения
См. дополнительные сведения о MLOps в Машинном обучении Azure.
Интеграция с включением MLOps
Машинное обучение создается с учетом жизненного цикла модели. Жизненный цикл модели можно проследить до определенной фиксации и среды.
Ключевые функции, поддерживающие MLOps:
- Интеграция с
git
. - Интеграция MLflow.
- Планирование конвейера машинного обучения.
- Сетка событий Azure интеграцию для пользовательских триггеров.
- Простота использования с инструментами CI/CD, такими как GitHub Actions или Azure DevOps.
Машинное обучение также включает функции для мониторинга и аудита:
- Артефакты заданий, такие как моментальные снимки кода, журналы и другие выходные данные.
- Происхождение между заданиями и ресурсами, такими как контейнеры, данные и вычислительные ресурсы.
Если вы используете Apache Airflow, пакет airflow-provider-azure-machinelearning является поставщиком, который позволяет отправлять рабочие процессы в Машинное обучение Azure из Apache AirFlow.
Связанный контент
Начните использовать Машинное обучение Azure: