Votre premier modèle SynapseML
Ce tutoriel fournit une brève introduction à la création de votre premier modèle Machine Learning à l’aide de SynapseML, montrant comment SynapseML facilite l’effectuer des tâches de Machine Learning complexes. Nous utilisons SynapseML pour créer un petit pipeline d’entraînement ML avec une étape de caractérisation et une phase de régression LightGBM pour prédire des évaluations basées sur le texte de révision d’un jeu de données contenant des révisions de livres provenant d’Amazon. Enfin, nous présentons comment SynapseML facilite l’utilisation de modèles prédéfinis pour résoudre les problèmes sans avoir à les résoudre vous-même.
Prérequis
- Joignez votre bloc-notes à un lakehouse. Sur le côté gauche, sélectionnez Ajouter pour ajouter un lakehouse existant ou créer un lakehouse.
- Clé Cognitive Services. Pour obtenir une clé Cognitive Services, suivez le guide de démarrage rapide.
Configurer votre environnement
Importez des bibliothèques SynapseML et initialisez votre session Spark.
from pyspark.sql import SparkSession
from synapse.ml.core.platform import *
spark = SparkSession.builder.getOrCreate()
Charger un jeu de données
Chargez votre jeu de données et fractionnez-le en groupes d’apprentissage et de test.
train, test = (
spark.read.parquet(
"wasbs://publicwasb@mmlspark.blob.core.windows.net/BookReviewsFromAmazon10K.parquet"
)
.limit(1000)
.cache()
.randomSplit([0.8, 0.2])
)
display(train)
Créer notre modèle
Créez un pipeline simple pour exploituriser les données à l’aide TextFeaturizer
de synapse.ml.featurize.text
et dérivez une évaluation à partir de .LightGBMRegressor
from pyspark.ml import Pipeline
from synapse.ml.featurize.text import TextFeaturizer
from synapse.ml.lightgbm import LightGBMRegressor
model = Pipeline(
stages=[
TextFeaturizer(inputCol="text", outputCol="features"),
LightGBMRegressor(featuresCol="features", labelCol="rating"),
]
).fit(train)
Prédire
appelez la transform
fonction sur le modèle pour prédire et afficher le dataframe de sortie !
display(model.transform(test))
Autre itinéraire : laissez Cognitive Services le gérer !
Pour des tâches comme celle-ci qui ont une solution prédéfinie, essayez d’utiliser l’intégration de SynapseML à Cognitive Services pour transformer vos données en une seule étape.
from synapse.ml.cognitive import TextSentiment
from synapse.ml.core.platform import find_secret
model = TextSentiment(
textCol="text",
outputCol="sentiment",
subscriptionKey=find_secret("cognitive-api-key"), # Replace it with your cognitive service key, check prerequisites for more details
).setLocation("eastus")
display(model.transform(test))