Примечание.
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Apache Spark в Azure Synapse Analytics позволяет выполнять машинное обучение с помощью больших данных, предоставляя возможность получить ценные сведения из больших объемов структурированных, неструктурированных и быстро меняющихся данных.
В этом разделе приведены общие сведения и учебники по рабочим процессам машинного обучения, в том числе разведочном анализе данных, конструированию признаков, обучению модели, оценке модели и развертыванию.
Среда выполнения Synapse
Среда выполнения Synapse — это курированная среда, оптимизированная для обработки и анализа данных и машинного обучения. Среда выполнения Synapse предлагает по умолчанию ряд популярных библиотек с открытым кодом и сборок в пакете SDK для Машинного обучения Azure. Среда выполнения Synapse также включает множество внешних библиотек, в том числе PyTorch, Scikit-Learn, XGBoost и другие.
Дополнительные сведения о доступных библиотеках и соответствующих версиях см. в статье о среде выполнения Azure Synapse Analytics.
Разведочный анализ данных
При использовании Apache Spark в Azure Synapse Analytics доступны различные встроенные параметры, которые помогут вам визуализировать данные, в том числе параметры диаграммы записной книжки Synapse, доступ к популярным библиотекам с открытым кодом, например Seaborn и Matplotlib, а также интеграция с Synapse SQL и Power BI.
Дополнительные сведения о возможностях визуализации и анализа данных см. в статье о том, как визуализировать данные с помощью записных книжек Azure Synapse.
Инженерия признаков
По умолчанию среда выполнения Synapse включает набор библиотек, которые обычно используются для конструирования признаков. Для конструирования признаков в больших наборах данных можно использовать Spark SQL, MLlib и Koalas. Для небольших наборов данных сторонние библиотеки, такие как NumPy, Pandas и Scikit-learn, также предоставляют полезные методы для этих сценариев.
Тренируйте модели
Существует несколько вариантов, которые можно использовать для обучения моделей машинного обучения с помощью Azure Spark в Azure Synapse Analytics: Apache Spark MLlib, Машинное обучение Azure и большое количество других библиотек с исходным кодом.
Дополнительные сведения о возможностях машинного обучения см. в статье как обучать модели в Azure Synapse Analytics.
SparkM и MLlib
Возможности распределенного вычисления в памяти Spark отлично подходят для итеративных алгоритмов, используемых в машинном обучении и графовых вычислениях.
spark.ml предоставляет универсальный набор высокоуровневых API, которые помогают пользователям создавать и настраивать конвейеры машинного обучения. Чтобы получить дополнительную информацию о spark.ml, вы можете обратиться к руководству по программированию Apache Spark ML.
Библиотеки с открытым кодом
Каждый пул Apache Spark в Azure Synapse Analytics поставляется с набором предварительно загруженных популярных библиотек машинного обучения. Ниже перечислен ряд актуальных библиотек машинного обучения, которые включены в этот набор по умолчанию.
Scikit-learn — это одна из самых популярных библиотек машинного обучения с одним узлом для классических алгоритмов машинного обучения. Scikit-learn поддерживает большинство контролируемых и неконтролируемых алгоритмов обучения и может также использоваться для интеллектуального анализа данных и обработки данных.
XGBoost — это популярная библиотека машинного обучения с оптимизированными алгоритмами для обучения деревьев принятия решений и случайных лесов.
PyTorch и TensorFlow — это мощные библиотеки глубокого обучения Python. В пуле Apache Spark в Azure Synapse Analytics вы можете использовать эти библиотеки для создания моделей с одним компьютером, установив для количества исполнителей в пуле нулевое значение. Несмотря на то, что Apache Spark не работает с этой конфигурацией, это простой и экономичный способ создания моделей с одним компьютером.
Отслеживание разработки модели
MLflow — это библиотека с открытым кодом для управления жизненным циклом экспериментов машинного обучения. MLFlow Tracking — это компонент MLflow, который осуществляет мониторинг и ведение журнала метрик выполнения обучения и артефактов моделей. Дополнительные сведения об использовании MLFlow Tracking в Azure Synapse Analytics и службе "Машинное обучение Azure" см. в этом учебнике по использованию MLFlow.
Оценка модели
Оценка модели или вывод — это этап, на котором модель используется для создания прогнозов. Для оценки модели с помощью SparkML или MLLib можно использовать собственные методы Spark для выполнения вывода непосредственно в Spark DataFrame. Для других библиотек с открытым исходным кодом и типов моделей вы можете создать UDF Spark, чтобы обеспечить масштабирование процесса инференса на больших наборах данных. Для небольших наборов данных можно также использовать собственные методы вывода модели, предоставляемые библиотекой.
Регистрация и обслуживание моделей
Регистрация модели позволяет хранить, отменять и записывать метаданные о моделях в рабочей области. По завершении обучения модель можно зарегистрировать в реестре моделей Машинного обучения Azure. После регистрации модели ONNX можно также использовать для обогащения данных хранящихся в выделенных пулах SQL.
Следующие шаги
Чтобы приступить к работе с машинным обучением в Azure Synapse Analytics, ознакомьтесь со следующими учебниками: