Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.
Usa algoritmi personalizzati per l'addestramento e l'hosting dei modelli su Amazon SageMaker con Apache Spark
InSageMaker Esempi di Spark per Scala, usi il kMeansSageMakerEstimator
perché l'esempio utilizza l'algoritmo k-means fornito da Amazon SageMaker per l'addestramento dei modelli. Per l’addestramento del modello, puoi anche scegliere di utilizzare un algoritmo personalizzato. Presupponendo che tu abbia già creato un immagine Docker, puoi creare un oggetto SageMakerEstimator
personalizzato e specificare il percorso Amazon Elastic Container Registry per l'immagine personalizzata.
Il seguente esempio mostra come creare KMeansSageMakerEstimator
da SageMakerEstimator
. Nel nuovo strumento di valutazione, devi specificare in modo esplicito il percorso di registro Docker per le immagini del codice di addestramento e interferenza.
import com.amazonaws.services.sagemaker.sparksdk.IAMRole import com.amazonaws.services.sagemaker.sparksdk.SageMakerEstimator import com.amazonaws.services.sagemaker.sparksdk.transformation.serializers.ProtobufRequestRowSerializer import com.amazonaws.services.sagemaker.sparksdk.transformation.deserializers.KMeansProtobufResponseRowDeserializer val estimator = new SageMakerEstimator( trainingImage = "811284229777.dkr.ecr.us-east-1.amazonaws.com/kmeans:1", modelImage = "811284229777.dkr.ecr.us-east-1.amazonaws.com/kmeans:1", requestRowSerializer = new ProtobufRequestRowSerializer(), responseRowDeserializer = new KMeansProtobufResponseRowDeserializer(), hyperParameters = Map("k" -> "10", "feature_dim" -> "784"), sagemakerRole = IAMRole(roleArn), trainingInstanceType = "ml.p2.xlarge", trainingInstanceCount = 1, endpointInstanceType = "ml.c4.xlarge", endpointInitialInstanceCount = 1, trainingSparkDataFormat = "sagemaker")
Nel codice, i parametri nel costruttore SageMakerEstimator
includono:
-
trainingImage
: individua il percorso di registro Docker dell'immagine di addestramento contente il codice personalizzato. -
modelImage
: individua il percorso di registro Docker dell'immagine contente il codice di interferenza. -
requestRowSerializer
: implementacom.amazonaws.services.sagemaker.sparksdk.transformation.RequestRowSerializer
.Questo parametro serializza le righe nell'input
DataFrame
per inviarle al modello ospitato su per l'inferenza. SageMaker -
responseRowDeserializer
: implementacom.amazonaws.services.sagemaker.sparksdk.transformation.ResponseRowDeserializer
.Questo parametro deserializza le risposte dal modello, ospitato in, nuovamente in un. SageMaker
DataFrame
-
trainingSparkDataFormat
: specifica il formato dei dati utilizzato da Spark durante il caricamento dei dati di addestramento da unDataFrame
in S3. Ad esempio, per il formato protobuf,"sagemaker"
per i valori separati da virgole e"csv"
per il formato Lib."libsvm"
SVM
Puoi implementare valori personalizzati per RequestRowSerializer
e ResponseRowDeserializer
per serializzare e deserializzare le righe da un formato dei dati supportato dal codice di inferenza, come libsvm o .csv.