Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.
Trainieren eines Modells mit Amazon SageMaker
Das folgende Diagramm zeigt, wie Sie ein Modell mit Amazon trainieren und bereitstellen SageMaker. Ihr Schulungscode greift auf Ihre Schulungsdaten zu und gibt Modellartefakte aus einem S3-Bucket aus. Anschließend können Sie Anfragen an einen Modellendpunkt stellen, um Inferenzen auszuführen. Sie können sowohl das Schulungs- als auch das Inferenzcontainer-Image in einer Amazon Elastic Container Registry (ECR) speichern.
Der folgende Leitfaden hebt zwei Komponenten von hervor SageMaker: Modelltraining und Modellbereitstellung.
Um ein Modell in zu trainieren SageMaker, erstellen Sie einen Trainingsauftrag. Der Schulungsauftrag enthält die folgenden Informationen:
-
Der URL des Amazon Simple Storage Service (Amazon S3)-Bucket, in dem die Daten gespeichert wurden.
-
Die Rechenressourcen, die Sie für SageMaker das Modelltraining verwenden möchten. Rechenressourcen sind Machine Learning (ML)-Compute-Instances, die von verwaltet werden SageMaker.
-
Die URL des S3-Buckets, in dem die Ausgabe des Schulungsauftrags gespeichert werden soll.
-
Der Amazon Elastic Container Registry-Pfad, in dem der Schulungscode gespeichert ist. Weitere Informationen finden Sie unter Docker-Registrierungspfade und Beispielcode.
Anmerkung
Ihr Eingabedatensatz muss sich in derselben AWS-Region wie Ihr Schulungsauftrag befinden.
Bei einem Schulungsalgorithmus können Sie aus folgenden Optionen auswählen:
-
Verwenden Sie einen von bereitgestellten Algorithmus SageMaker –SageMaker bietet Dutzende von integrierten Trainingsalgorithmen und Hunderte von vortrainierten Modellen. Wenn eine dieser Anforderungen Ihren Anforderungen entspricht, ist dies eine hervorragende out-of-the-box Lösung für schnelles Modelltraining. Eine Liste der von bereitgestellten Algorithmen SageMakerfinden Sie unter Verwenden SageMaker von integrierten Amazon-Algorithmen oder vortrainierten Modellen. Eine Übung, in der Sie einen Algorithmus von SageMaker ausprobieren können, finden Sie unter Erste Schritte. Sie können auch verwendenSageMaker JumpStart, um Algorithmen und Modelle über die Studio Classic-Benutzeroberfläche zu verwenden.
-
Verwenden Sie SageMaker den Debugger – um Trainingsparameter und -daten während des gesamten Trainingsprozesses zu überprüfen PyTorch, wenn Sie mit der TensorFlow, den Apache-MXNet-Lernframeworks oder dem XGBoost-Algorithmus arbeiten. Debugger erkennt häufig auftretende Fehler, z. B. zu groß oder zu klein werdende Parameterwerte, automatisch und weist Benutzer darauf hin. Weitere Hinweise zur Verwendung von Debugger finden Sie unter Verwenden Sie den Amazon SageMaker Debugger zum Debuggen und Verbessern der Modellleistung. Debugger-Beispiel-Notebooks finden Sie unter Amazon SageMaker Debugger Samples.
-
Verwenden Sie Apache Spark mit SageMaker – SageMaker stellt eine Bibliothek bereit, mit der Sie in Apache Spark Modelle mit trainieren können SageMaker. Die Verwendung der von bereitgestellten Bibliothek SageMaker ähnelt der Verwendung von Apache Spark MLLib . Weitere Informationen finden Sie unter Verwenden von Apache Spark mit Amazon SageMaker.
-
Übermitteln von benutzerdefiniertem Code zum Trainieren mit Deep-Learning-Frameworks – Sie können benutzerdefinierten Python-Code übermitteln TensorFlow PyTorch, der oder Apache MXNet für das Modelltraining verwendet. Weitere Informationen finden Sie unter Verwenden von TensorFlow mit Amazon SageMaker, Verwenden von PyTorch mit Amazon SageMaker und Verwenden von Apache MXNet mit Amazon SageMaker.
-
Verwenden Sie Ihre eigenen benutzerdefinierten Algorithmen – Legen Sie Ihren Code als Docker-Image zusammen und geben Sie den Registrierungspfad des Images in einem SageMaker
CreateTrainingJob
API-Aufruf an. Weitere Informationen finden Sie unter Verwenden Sie Docker-Container, um Modelle zu erstellen. -
Verwenden Sie einen Algorithmus, den Sie in AWS Marketplace abonnieren— eitere Informationen finden Sie unter Finden und Beziehen von Algorithmen und Modellpaketen in AWS Marketplace.
Nachdem Sie den Trainingsauftrag erstellt haben, SageMaker startet die ML-Compute-Instances und verwendet den Trainingscode und den Trainingsdatensatz, um das Modell zu trainieren. Die resultierenden Modellartefakte und andere Ausgaben werden in dem S3-Bucket gespeichert, den Sie dafür angegeben haben.
Sie können einen Trainingsauftrag mit der SageMaker Konsole oder der API erstellen. Informationen zum Erstellen eines Schulungsauftrags mit der API finden Sie in der CreateTrainingJob
-API.
Wenn Sie einen Trainingsauftrag mit der API erstellen, SageMaker repliziert standardmäßig den gesamten Datensatz auf ML-Compute-Instances. Um eine Teilmenge der Daten auf jeder ML-Compute-Instance SageMaker replizieren zu lassen, müssen Sie das S3DataDistributionType
Feld auf setzenShardedByS3Key
. Sie können dieses Feld mithilfe des Low-Level-SDKs festlegen. Weitere Informationen finden Sie unter S3DataDistributionType
in S3DataSource
.
Wichtig
Um zu verhindern, dass Ihr Algorithmus-Container um Arbeitsspeicher konkurriert, reservieren wir Arbeitsspeicher für unsere SageMaker kritischen Systemprozesse auf Ihren ML-Compute-Instances und Sie können daher nicht erwarten, dass der gesamte Arbeitsspeicher für Ihren Instance-Typ angezeigt wird.