Fonctionnalités de Machine Learning dans Azure Synapse Analytics
Azure Synapse Analytics propose plusieurs fonctionnalités de Machine Learning dans Azure Synapse Analytics. Cet article fournit une vue d’ensemble de la façon dont vous pouvez recourir au Machine Learning dans le contexte d’Azure Synapse.
Cette vue d’ensemble couvre les différentes fonctionnalités de Synapse relatives au Machine Learning, du point de vue du processus de science des données.
Vous connaissez peut-être le déroulement d’un processus typique de science des données. Il s’agit d’un processus bien connu que la plupart des projets de Machine Learning suivent.
À un niveau élevé, le processus reprend les étapes suivantes :
- Présentation de l’entreprise (non abordée dans cet article)
- Acquisition de données et compréhension
- Modélisation
- Déploiement et notation du modèle
Cet article décrit les fonctionnalités d’Azure Synapse Machine Learning dans différents moteurs d’analyse, dans la perspective du processus de science des données. Pour chaque étape du processus de science des données, les fonctionnalités Azure Synapse susceptibles de vous aider sont récapitulées.
Acquisition de données et compréhension
La plupart des projets de Machine Learning impliquent des étapes bien établies, et l’une de celles-ci consiste à accéder aux données et à les comprendre.
Sources de données et pipelines
Grâce à Azure Data Factory, une partie intégrée nativement d’Azure Synapse, vous disposez d’un ensemble puissant d’outils pour l’ingestion des données et les pipelines d’orchestration de données. Cela vous permet de créer facilement des pipelines de données pour accéder aux données et les convertir dans un format qui peut être utilisé pour le Machine Learning. En savoir plus sur les pipelines de données dans Synapse.
Préparation et exploration/visualisation des données
Une partie importante du processus de Machine Learning consiste à comprendre les données grâce à l’exploration et à des visualisations.
Selon l’emplacement de stockage des données, Synapse offre un ensemble d’outils pour les explorer et les préparer pour l’analyse et le Machine Learning. L’une des méthodes les plus rapides pour prendre en main l’exploration des données consiste à utiliser des pools serverless SQL ou Apache Spark, directement sur les données dans le lac de données.
Apache Spark for Azure Synapse offre des fonctionnalités de transformation, de préparation et d’exploration de vos données à grande échelle. Ces pools Spark proposent des outils tels que PySpark/Python, Scala et .NET pour le traitement des données à grande échelle. À l’aide de bibliothèques de visualisation puissantes, l’expérience d’exploration des données peut être améliorée pour mieux comprendre les données. En savoir plus sur l’exploration et la visualisation des données dans Synapse à l’aide de Spark.
Les pools SQL serverless offrent un moyen d’explorer les données à l’aide de TSQL directement sur le lac de données. Les pools SQL serverless proposent également des visualisations intégrées dans Synapse Studio. En savoir plus sur l’exploration des données avec les pools SQL serverless.
Modélisation
Dans Azure Synapse, l’apprentissage de modèles de Machine Learning peut être exécuté sur les pools Apache Spark avec des outils tels que PySpark/Python, Scala ou .NET.
Effectuer l’apprentissage de modèles sur des pools Spark avec MLlib
L’apprentissage des modèles Machine Learning peut être effectué avec différents algorithmes et bibliothèques. Spark MLlib offre des algorithmes Machine Learning évolutifs qui peuvent aider à résoudre la plupart des problèmes de Machine Learning classiques. Pour obtenir un tutoriel sur la façon d’entraîner un modèle avec MLlib dans Synapse, consultez Créer une application de Machine Learning avec Apache Spark MLlib et Azure Synapse Analytics.
En plus de MLlib, les bibliothèques populaires comme Scikit Learn peuvent également servir à développer des modèles. Pour plus d’informations sur l’installation des bibliothèques sur les pools Synapse Spark, consultez Gérer des bibliothèques pour Apache Spark dans Azure Synapse Analytics.
Déploiement et notation du modèle
Les modèles qui ont été formés soit dans Azure Synapse, soit en dehors d’Azure Synapse peuvent être facilement utilisés pour le scoring par lot. Actuellement, dans Synapse, vous pouvez exécuter le scoring par lot de deux manières.
Vous pouvez utiliser la fonction TSQL PREDICT dans des pools Synapse SQL pour exécuter vos prédictions directement là où résident vos données. Cette fonction puissante et évolutive vous permet d’enrichir vos données sans déplacer les données de votre entrepôt de données. Une nouvelle expérience guidée du modèle de Machine Learning dans Synapse Studio a été introduite dans laquelle vous pouvez déployer un modèle ONNX à partir du registre de modèle Azure Machine Learning dans des pools Synapse SQL pour le scoring par lot à l’aide de PREDICT.
Une autre option pour le scoring par lots des modèles Machine Learning dans Azure Synapse consiste à utiliser les pools Apache Spark pour Azure Synapse. Selon les bibliothèques utilisées pour l’apprentissage des modèles, vous pouvez utiliser une expérience de code pour exécuter votre scoring par lot.
SynapseML
SynapseML (anciennement connu sous le nom de MMLSpark) est une bibliothèque open source qui simplifie la création de pipelines d'apprentissage automatique (ML) massivement évolutifs. Il s’agit d’un écosystème d’outils permettant de développer le framework Apache Spark dans plusieurs nouvelles directions. SynapseML réunit plusieurs infrastructures de Machine Learning existantes et de nouveaux algorithmes Microsoft pour former une API unique et évolutive utilisable en Python, R, Scala, .NET et Java. Pour en savoir plus, consultez les principales fonctionnalités de SynapseML.