Checkpointing aktivieren - Amazon SageMaker

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.

Checkpointing aktivieren

Nachdem Sie Checkpointing aktiviert haben, werden Checkpoints in Amazon S3 SageMaker gespeichert und Ihr Trainingsjob mit dem Checkpoint S3-Bucket synchronisiert. Sie können entweder S3-Allzweck-Buckets oder S3-Verzeichnis-Buckets für Ihren Checkpoint S3-Bucket verwenden.

Architekturdiagramm des Schreibens von Checkpoints während des Trainings.

Das folgende Beispiel zeigt, wie Sie Checkpoint-Pfade konfigurieren, wenn Sie einen Schätzer erstellen. SageMaker Um Checkpointing zu aktivieren, fügen Sie Ihrem Schätzer die Parameter checkpoint_s3_uri und checkpoint_local_path hinzu.

Die folgende Beispielvorlage zeigt, wie Sie einen generischen SageMaker Schätzer erstellen und Checkpointing aktivieren. Sie können diese Vorlage für die unterstützten Algorithmen verwenden, indem Sie den image_uri-Parameter angeben. Das Docker-Image URIs für Algorithmen mit Checkpointing, die von unterstützt werden SageMaker, finden Sie unter Docker-Registrierungspfade und Beispielcode. Sie können estimator und Estimator auch durch übergeordnete Schätzerklassen und SageMaker Schätzerklassen anderer Frameworks ersetzen, z. B.,, und. TensorFlow PyTorch MXNet HuggingFace XGBoost

import sagemaker from sagemaker.estimator import Estimator bucket=sagemaker.Session().default_bucket() base_job_name="sagemaker-checkpoint-test" checkpoint_in_bucket="checkpoints" # The S3 URI to store the checkpoints checkpoint_s3_bucket="s3://{}/{}/{}".format(bucket, base_job_name, checkpoint_in_bucket) # The local path where the model will save its checkpoints in the training container checkpoint_local_path="/opt/ml/checkpoints" estimator = Estimator( ... image_uri="<ecr_path>/<algorithm-name>:<tag>" # Specify to use built-in algorithms output_path=bucket, base_job_name=base_job_name, # Parameters required to enable checkpointing checkpoint_s3_uri=checkpoint_s3_bucket, checkpoint_local_path=checkpoint_local_path )

Die folgenden beiden Parameter spezifizieren Pfade für Checkpoints:

  • checkpoint_local_path– Geben Sie den lokalen Pfad an, unter dem das Modell die Checkpoints regelmäßig in einem Trainingscontainer speichert. Der Standardpfad ist auf '/opt/ml/checkpoints' gesetzt. Wenn Sie andere Frameworks verwenden oder Ihren eigenen Trainingscontainer mitbringen, stellen Sie sicher, dass die Checkpoint-Konfiguration Ihres Trainingsskripts den Pfad zu '/opt/ml/checkpoints' angibt.

    Anmerkung

    Wir empfehlen, die lokalen Pfade anzugeben, damit sie mit den '/opt/ml/checkpoints' standardmäßigen Checkpoint-Einstellungen konsistent sind. SageMaker Wenn Sie es vorziehen, Ihren eigenen lokalen Pfad anzugeben, stellen Sie sicher, dass Sie den Checkpoint-Speicherpfad in Ihrem Trainingsskript mit den checkpoint_local_path Parametern der SageMaker Schätzer übereinstimmen.

  • checkpoint_s3_uri— Der URI zu einem S3-Bucket, in dem die Checkpoints in Echtzeit gespeichert werden. Sie können entweder einen S3-Bucket für allgemeine Zwecke oder einen S3-Verzeichnis-Bucket zum Speichern Ihrer Checkpoints angeben. Weitere Informationen zu S3-Verzeichnis-Buckets finden Sie unter Directory-Buckets im Amazon Simple Storage Service-Benutzerhandbuch.

Eine vollständige Liste der SageMaker Schätzparameter finden Sie unter Estimator API in der Amazon SageMaker SDK Python-Dokumentation.