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
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'interfaceorg.apache.spark.ml.Estimator
. Vous pouvez utiliser cet estimateur pour l'entraînement de modèles en SageMaker IA. -
KMeansSageMakerEstimator
,PCASageMakerEstimator
etXGBoostSageMakerEstimator
: étendent la classeSageMakerEstimator
. -
SageMakerModel
: étend la classeorg.apache.spark.ml.Model
. Vous pouvez l'utiliserSageMakerModel
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
Rubriques
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.
-
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 unefeatures
colonne avecorg.apache.spark.ml.linalg.Vector
ofDoubles
et unelabel
colonne facultative avec des valeurs deDouble
type. -
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 objetSageMakerModel
.Note
SageMakerModel
étend le modèleorg.apache.spark.ml.Model
.La méthode
fit
effectue les opérations suivantes :-
Convertit l'entrée
DataFrame
au format protobuf. Pour ce faire, il sélectionne leslabel
colonnesfeatures
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. -
Démarre la formation des modèles en SageMaker IA en envoyant une
CreateTrainingJob
demande 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.
-
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.-
Envoie une
CreateModel
demande à SageMaker AI. -
Envoie une
CreateEndpointConfig
demande à SageMaker AI. -
Envoie une
CreateEndpoint
demande à SageMaker AI, qui lance ensuite les ressources spécifiées et y héberge le modèle.
-
-
-
Vous pouvez obtenir des déductions à partir de votre modèle hébergé dans SageMaker AI avec le
SageMakerModel.transform
.Fournissez un
DataFrame
d'entrée avec des fonctions comme entrée. La méthodetransform
le transforme enDataFrame
contenant des inférences. En interne, latransform
méthode envoie une demande à l'InvokeEndpoint
SageMaker API pour obtenir des déductions. La méthodetransform
ajoute les inférences auDataFrame
d'entrée.