Apache Spark avec Amazon SageMaker AI - Amazon SageMaker AI

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

Apache Spark avec Amazon SageMaker AI

Amazon SageMaker AI Spark est une bibliothèque Spark open source qui vous aide à créer des pipelines d'apprentissage automatique (ML) Spark avec l' SageMaker IA. Cela simplifie l'intégration des stages Spark ML aux stages d' SageMaker IA, tels que la formation et l'hébergement des modèles. Pour plus d'informations sur SageMaker AI Spark, consultez le GitHub référentiel SageMaker AI Spark. Les rubriques suivantes fournissent des informations pour apprendre à utiliser Apache Spark avec l' SageMaker IA.

La bibliothèque SageMaker AI Spark est disponible en Python et en Scala. Vous pouvez utiliser SageMaker AI Spark pour entraîner des modèles dans l' SageMaker IA à l'aide de trames de org.apache.spark.sql.DataFrame données dans vos clusters Spark. Après la formation du modèle, vous pouvez également héberger le modèle à l'aide des services d'hébergement SageMaker AI.

La bibliothèque SageMaker AI Spark fournitcom.amazonaws.services.sagemaker.sparksdk, entre autres, les classes suivantes :

  • SageMakerEstimator : étend l'interface org.apache.spark.ml.Estimator. Vous pouvez utiliser cet estimateur pour l'entraînement de modèles en SageMaker IA.

  • KMeansSageMakerEstimator, PCASageMakerEstimator et XGBoostSageMakerEstimator : étendent la classe SageMakerEstimator.

  • SageMakerModel : étend la classe org.apache.spark.ml.Model. Vous pouvez l'utiliser SageMakerModel pour héberger des modèles et obtenir des inférences dans l' SageMaker IA.

Vous pouvez télécharger le code source des bibliothèques Python Spark (PySpark) et Scala depuis le GitHub référentiel SageMaker AI Spark.

Pour l'installation et des exemples de la bibliothèque SageMaker AI Spark, consultez SageMaker Exemples d'AI Spark pour Scala ouRessources pour utiliser les exemples d' SageMaker AI Spark pour Python (PySpark).

Si vous utilisez Amazon EMR AWS pour gérer des clusters Spark, consultez Apache Spark. Pour plus d'informations sur l'utilisation d'Amazon EMR dans l' SageMaker IA, consultez. Préparation des données à l'aide d'Amazon EMR

Intégrez votre application Apache Spark à l' SageMaker IA

Voici un résumé détaillé des étapes d'intégration de votre application Apache Spark à l' SageMaker IA.

  1. Poursuivez le prétraitement des données en utilisant la bibliothèque Apache Spark que vous connaissez. Votre ensemble de données demeure un DataFrame dans votre cluster Spark. Chargez vos données dans unDataFrame. Prétraitez-le de manière à avoir une features colonne avec org.apache.spark.ml.linalg.Vector of Doubles et une label colonne facultative avec des valeurs de Double type.

  2. Utilisez l'estimateur de la bibliothèque SageMaker AI Spark pour entraîner votre modèle. Par exemple, si vous choisissez l'algorithme k-means fourni par l' SageMaker IA pour l'entraînement des modèles, appelez la KMeansSageMakerEstimator.fit méthode.

    Fournissez votre DataFrame comme entrée. L'évaluateur renvoie un objet SageMakerModel.

    Note

    SageMakerModel étend le modèle org.apache.spark.ml.Model.

    La méthode fit effectue les opérations suivantes :

    1. Convertit l'entrée DataFrame au format protobuf. Pour ce faire, il sélectionne les label colonnes features et dans l'entréeDataFrame. Il télécharge ensuite les données du protobuf dans un compartiment Amazon S3. Le format protobuf est efficace pour l'entraînement des modèles en SageMaker IA.

    2. Démarre la formation des modèles en SageMaker IA en envoyant une CreateTrainingJobdemande d' SageMaker IA. Une fois l'entraînement du modèle terminé, l' SageMaker IA enregistre les artefacts du modèle dans un compartiment S3.

      SageMaker L'IA assume le rôle IAM que vous avez spécifié pour la formation des modèles afin qu'ils exécutent des tâches en votre nom. Par exemple, il utilise le rôle pour lire les données d'entraînement à partir d'un compartiment S3 et pour écrire des artefacts de modèle sur un compartiment.

    3. Crée et renvoie un objet SageMakerModel. Le constructeur effectue les tâches suivantes, qui sont liées au déploiement de votre modèle sur l' SageMaker IA.

      1. Envoie une CreateModeldemande à SageMaker AI.

      2. Envoie une CreateEndpointConfigdemande à SageMaker AI.

      3. Envoie une CreateEndpointdemande à SageMaker AI, qui lance ensuite les ressources spécifiées et y héberge le modèle.

  3. Vous pouvez obtenir des déductions à partir de votre modèle hébergé dans SageMaker AI avec leSageMakerModel.transform.

    Fournissez unDataFrame d'entrée avec des fonctions comme entrée. La méthode transform le transforme en DataFrame contenant des inférences. En interne, la transform méthode envoie une demande à l'InvokeEndpoint SageMaker API pour obtenir des déductions. La méthode transform ajoute les inférences au DataFrame d'entrée.