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.
Erweiterte Manifestdateien für Schulungsjobs
Um Metadaten zu Ihrem Datensatz in einem Trainingsauftrag hinzuzufügen, verwenden Sie eine erweiterte Manifestdatei. Wenn Sie eine erweiterte Manifestdatei verwenden, muss Ihr Datensatz im Amazon Simple Storage Service (Amazon S3) gespeichert sein, und Sie müssen Ihren Trainingsauftrag so konfigurieren, dass er den dort gespeicherten Datensatz verwendet. Sie geben den Speicherort und das Format dieses Datensatzes für einen oder mehrere Channel
an. Erweiterte Manifeste können nur den Pipe-Eingabemodus unterstützen. Weitere Informationen Channel
zum Pipe-Eingabemodus finden Sie InputModeim Abschnitt unter.
Bei der Angabe der Parameter eines Kanals geben Sie einen Pfad zu der Datei an, die als S3Uri
bezeichnet wird. Amazon SageMaker AI interpretiert diese URI auf der Grundlage der S3DataType
in S3DataSource
angegebenen. Die Option AugmentedManifestFile
definiert ein Manifestformat, das Metadaten mit den Eingabedaten enthält. Die Verwendung einer erweiterten Manifestdatei ist eine Alternative zur Vorverarbeitung bei bezeichneten Daten. Bei Trainingsaufträgen, die bezeichnete Daten verwenden, müssen Sie den Datensatz vorbereiten, um Eingabedaten vor dem Training mit Metadaten zu kombinieren. Wenn Ihr Trainingsdatensatz sehr groß ist, kann eine Vorverarbeitung zeitaufwendig und kostspielig sein.
Format der erweiterten Manifestdatei
Eine erweiterte Manifestdatei muss im JSON Lines
Während des Trainings analysiert SageMaker KI jede JSON-Zeile und sendet einige oder alle ihrer Attribute an den Trainingsalgorithmus. Mithilfe des Parameters AttributeNames
der CreateTrainingJob
-API legen Sie fest, welche Attributinhalte übergeben werden sollen und in welcher Reihenfolge. Der AttributeNames
Parameter ist eine geordnete Liste von Attributnamen, nach denen SageMaker KI im JSON-Objekt sucht, um sie als Trainingseingabe zu verwenden.
Wenn Sie zum Beispiel ["line", "book"]
als AttributeNames
aufführen, müssen die Eingabedaten die Attributnamen line
und book
in der angegebenen Reihenfolge enthalten. In diesem Beispiel gilt der folgende Inhalt der erweiterten Manifestdatei:
{"author": "Herman Melville", "line": "Call me Ishmael", "book": "Moby Dick"} {"line": "It was love at first sight.", "author": "Joseph Heller", "book": "Catch-22"}
SageMaker AI ignoriert nicht aufgelistete Attributnamen, auch wenn sie den aufgelisteten Attributen vorausgehen, ihnen folgen oder dazwischen liegen.
Bei der Verwendung von erweiterten Manifestdateien gelten die folgenden Richtlinien:
-
Die Reihenfolge der aufgeführten Attribute im Parameter
AttributeNames
bestimmt die Reihenfolge der Attribute, die an den Algorithmus im Trainingsauftrag übergeben werden. -
Die aufgelisteten
AttributeNames
können eine Teilmenge aller Attribute in der JSON-Zeile sein. SageMaker AI ignoriert nicht aufgelistete Attribute in der Datei. -
Sie können jeden beliebigen Datentyp, der vom JSON-Format unterstützt wird, in
AttributeNames
angeben, darunter Text, numerische Daten, Daten-Arrays oder Objekte. -
Um eine S3-URI als Attributnamen hinzuzufügen, hängen Sie das Suffix
-ref
an.
Wenn ein Attributname das Suffix -ref
enthält, muss der Wert des Attributs eine S3-URI für die Datendatei sein, die dem Trainingsauftrag zur Verfügung steht. Wenn beispielsweise AttributeNames
enthält["image-ref", "is-a-cat"]
, zeigt das folgende Beispiel eine gültige erweiterte Manifestdatei:
{"image-ref": "s3://amzn-s3-demo-bucket/sample01/image1.jpg", "is-a-cat": 1} {"image-ref": "s3://amzn-s3-demo-bucket/sample02/image2.jpg", "is-a-cat": 0}
Im Fall der ersten JSON-Zeile dieser Manifestdatei ruft SageMaker AI die image1.jpg
Datei s3://amzn-s3-demo-bucket/sample01/
und die Zeichenkettendarstellung des is-a-cat
Attributs "1"
für die Bildklassifizierung ab.
Tipp
Verwenden Sie Amazon SageMaker Ground Truth und erstellen Sie einen Labeling-Job, um eine erweiterte Manifestdatei zu erstellen. Weitere Informationen über die Ausgabe eines Beschriftungsauftrags finden Sie unter Etikettieren von Job-Ausgabedaten.
Verwenden Sie eine erweiterte Manifestdatei
In den folgenden Abschnitten erfahren Sie, wie Sie erweiterte Manifestdateien in Ihren SageMaker Amazon-Schulungsjobs verwenden, entweder mit der SageMaker AI-Konsole oder programmgesteuert mithilfe des SageMaker Python-SDK.
Verwenden einer erweiterten Manifestdatei (Konsole)
Für diesen Vorgang ist Folgendes erforderlich:
-
Die URL des S3-Buckets, in dem die erweiterte Manifestdatei gespeichert ist.
-
Speichern der Daten, die in der erweiterten Manifestdatei aufgeführt sind, in einem S3-Bucket.
-
Die URL des S3-Buckets, in dem die Ausgabe des Trainingsauftrags gespeichert werden soll.
So verwenden Sie eine erweiterte Manifestdatei in einem Trainingsauftrag (Konsole)
Öffnen Sie die Amazon SageMaker AI-Konsole unter https://console.aws.amazon.com/sagemaker/
. -
Wählen Sie im Navigationsbereich Training (Training) und dann Training jobs (Trainingsaufträge) aus.
-
Wählen Sie Create training job (Trainingsauftrag erstellen) aus.
-
Legen Sie einen Namen für den Trainingsauftrag fest. Der Name muss innerhalb einer AWS Region in einem AWS Konto eindeutig sein. Er kann 1 bis 63 Zeichen umfassen. Gültige Zeichen: a–z, A–Z, 0–9 und . : + = @ _ % – (Bindestrich).
-
Wählen Sie den Algorithmus, den Sie verwenden möchten. Weitere Informationen zu unterstützten integrierten Algorithmen finden Sie unter Integrierte Algorithmen und vortrainierte Modelle in Amazon SageMaker. Wenn Sie einen benutzerdefinierten Algorithmus verwenden möchten, stellen Sie sicher, dass er mit dem Pipe-Modus kompatibel ist.
-
(Optional) Für Resource configuration (Ressourcenkonfiguration) können Sie entweder die Standardwerte übernehmen oder, um die Rechenzeit zu reduzieren, den Ressourcenverbrauch erhöhen.
-
(Optional) Wählen Sie für Instance type (Instance-Typ) den ML-Compute-Instance-Typ, den Sie verwenden möchten. In den meisten Fällen ist ml.m4.xlarge ausreichend.
-
Übernehmen Sie bei Instance count (Instance-Anzahl) den Standardwert
1
. -
(Optional) Wählen Sie unter Additional volume per instance (GB) (Zusätzliches Volume pro Instance (GB)) die Größe des ML-Speicher-Volumes, das Sie bereitstellen möchten. In den meisten Fällen können Sie den Standardwert
1
verwenden. Bei Verwendung eines großen Datensatzes sollten Sie das Volume vergrößern.
-
-
Machen Sie Angaben zu den Eingabedaten für den Trainingsdatensatz.
-
Für Channel name (Kanalname) können Sie entweder den Standardwert (
train
) übernehmen oder einen aussagekräftigeren Namen wählen, z. B.training-augmented-manifest-file
. -
Wählen Sie für InputModePipe.
-
Wählen Sie für den Datenverteilungstyp S3 FullyReplicated. Bei inkrementellen Trainings führt eine vollständige Replikation dazu, dass jede ML-Compute-Instance eine vollständige Kopie des erweiterten Datensatzes nutzt. Wählen Sie für neuronale Algorithmen wie Algorithmus für neuronale Themenmodellierung (NTM) die Option
ShardedByS3Key
. -
Wenn die Daten in der erweiterten Manifestdatei unkomprimiert sind, legen Sie den Compression type (Komprimierungstyp) auf None (Kein) fest. Wenn die Daten mithilfe von gzip komprimiert wurden, legen Sie die Option auf Gzip fest.
-
(Optional) Geben Sie unter Content type (Inhaltstyp) den entsprechenden MIME-Typ an. Der Inhaltstyp ist der MIME-Typ (Multipurpose Internet Mail Extension) der Daten.
-
Wählen Sie für Record wrapper (Datensatz-Wrapper) das Format RecordIO aus, wenn der in der erweiterten Manifestdatei angegebene Datensatz im RecordIO-Format gespeichert wurde. Wenn Ihr Datensatz nicht im RecordIO-Format gespeichert ist, wählen Sie None (Kein).
-
Wählen Sie für den S3-Datentyp AugmentedManifestFile.
-
Geben Sie als S3 location (S3-Speicherort) den Pfad zu dem Bucket ein, in dem die erweiterte Manifestdatei gespeichert ist.
-
Geben Sie für AugmentedManifestFile Attributnamen den Namen eines Attributs an, das Sie verwenden möchten. Der Attributname muss innerhalb der erweiterten Manifestdatei vorhanden sein. Dabei wird zwischen Groß- und Kleinschreibung unterschieden.
-
(Optional) Wenn Sie weitere Attributnamen hinzufügen möchten, wählen Sie Add row (Zeile hinzufügen) und geben Sie einen weiteren Attributnamen für jedes Attribut an.
-
(Optional) Wenn Sie die Reihenfolge der Attributnamen ändern möchten, verwenden Sie die Schaltflächen nach oben oder unten neben den Namen. Bei Verwendung einer erweiterten Manifestdatei spielt die Reihenfolge der angegebenen Attributnamen eine Rolle.
-
Wählen Sie Erledigt aus.
-
-
Geben Sie unter Output data configuration (Ausgabedatenkonfiguration) die folgenden Informationen ein:
-
Geben Sie als S3 location (S3-Speicherort) den Pfad zu dem S3-Bucket ein, in dem Sie die Ausgabedaten speichern möchten.
-
(Optional) Sie können Ihren Verschlüsselungsschlüssel AWS Key Management Service (AWS KMS) verwenden, um die Ausgabedaten im Ruhezustand zu verschlüsseln. Geben Sie unter Encryption key (Verschlüsselungsschlüssel) die Schlüssel-ID oder die entsprechende Amazon-Ressourcennummer (ARN) an. Weitere Informationen finden Sie unter KMS-verwaltete Verschlüsselungsschlüssel.
-
-
(Optional) Fügen Sie unter Tags ein oder mehrere Tags zum Trainingsauftrag hinzu. Ein Tag enthält Metadaten, die Sie definieren und AWS -Ressourcen zuweisen können. In diesem Fall können Sie Tags zur Verwaltung Ihrer Trainingsaufträge verwenden. Ein Tag besteht aus einem Schlüssel und einem Wert, die Sie definieren. Beispielsweise könnten Sie ein Tag mit
Project
als Schlüssel und einem Wert erstellen, der sich auf ein Projekt bezieht, das mit dem Trainingsauftrag zusammenhängt, z. B.Home value forecasts
. -
Wählen Sie Schulungsjob erstellen. SageMaker KI erstellt den Trainingsjob und führt ihn aus.
Nach Abschluss des Trainingsjobs speichert SageMaker AI die Modellartefakte in dem Bucket, dessen Pfad Sie für den S3-Ausgabepfad im Feld Konfiguration der Ausgabedaten angegeben haben. Informationen zum Bereitstellen des Modells für Prognosen finden Sie unter Stellen Sie das Modell auf Amazon bereit EC2.
Verwenden einer erweiterten Manifestdatei (API)
Im Folgenden wird gezeigt, wie ein Modell mit einer erweiterten Manifestdatei mithilfe der SageMaker AI-High-Level-Python-Bibliothek trainiert wird:
import sagemaker # Create a model object set to using "Pipe" mode. model = sagemaker.estimator.Estimator(
training_image
, role, instance_count=1, instance_type='ml.p3.2xlarge', volume_size = 50, max_run = 360000, input_mode = 'Pipe', output_path=s3_output_location
, sagemaker_session=session
) # Create a train data channel with S3_data_type as 'AugmentedManifestFile' and attribute names. train_data = sagemaker.inputs.TrainingInput(your_augmented_manifest_file
, distribution='FullyReplicated', content_type='application/x-recordio', s3_data_type='AugmentedManifestFile', attribute_names=['source-ref'
,'annotations'
], input_mode='Pipe', record_wrapping='RecordIO' ) data_channels = {'train': train_data} # Train a model. model.fit(inputs=data_channels, logs=True)
Nach Abschluss des Trainingsjobs speichert SageMaker AI die Modellartefakte in dem Bucket, dessen Pfad Sie für den S3-Ausgabepfad im Feld Ausgabedatenkonfiguration angegeben haben. Informationen zum Bereitstellen des Modells für Prognosen finden Sie unter Stellen Sie das Modell auf Amazon bereit EC2.