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.
Erfassen Sie Daten aus einem Batch-Transformationsauftrag
Die Schritte, die erforderlich sind, um die Datenerfassung für Ihren Batch-Transformationsjob zu aktivieren, sind ähnlich, unabhängig davon, ob Sie Python AWS SDK for Python (Boto) oder SageMaker Python verwendenSDK. Wenn Sie das verwenden AWS SDK, definieren Sie das DataCaptureConfigWörterbuch zusammen mit den erforderlichen Feldern innerhalb der CreateTransformJob
Methode, um die Datenerfassung zu aktivieren. Wenn Sie SageMaker Python verwendenSDK, importieren Sie die BatchDataCaptureConfig
Klasse und initialisieren Sie eine Instanz aus dieser Klasse. Dann übergeben Sie dieses Objekt an den batch_data_capture_config
Parameter Ihrer Transform-Auftrag-Instance.
Um die folgenden Codefragmente zu verwenden, ersetzen Sie das italicized placeholder
text
im Beispielcode durch Ihre eigenen Informationen.
Wie man die Datenerfassung aktiviert
Geben Sie eine Datenerfassungskonfiguration an, wenn Sie einen Transformationsauftrag starten. Unabhängig davon, ob Sie Python AWS SDK for Python (Boto3) oder SageMaker Python verwendenSDK, müssen Sie das DestinationS3Uri
Argument angeben. Dies ist das Verzeichnis, in dem der Transformationsjob die erfassten Daten protokollieren soll. Sie können auch optional die folgenden Parameter angeben:
-
KmsKeyId
: Der AWS KMS Schlüssel, der zum Verschlüsseln der erfassten Daten verwendet wird. -
GenerateInferenceId
: Ein boolesches Flag, das beim Erfassen der Daten angibt, ob der Transformationsauftrag die Inferenz-ID und die Uhrzeit an Ihre Ausgabe anhängen soll. Dies ist nützlich für die Überwachung der Modellqualität, bei der Sie die Ground-Truth-Daten aufnehmen müssen. Die Inferenz-ID und die Zeit helfen dabei, die erfassten Daten mit Ihren Ground-Truth-Daten abzugleichen.
Wie kann ich die erfassten Daten einsehen
Sobald der Transformationsauftrag abgeschlossen ist, werden die erfassten Daten unter DestinationS3Uri
protokolliert, der von mit der Datenerfassungskonfiguration angegeben wurde. Es gibt zwei Unterverzeichnisse unter DestinationS3Uri
, /input
und /output
. Wenn DestinationS3Uri
gleich s3://my-data-capture
ist, erstellt der Transformationsauftrag die folgenden Verzeichnisse:
-
s3://my-data-capture/input
: Die erfassten Eingabedaten für den Transformationsauftrag. -
s3://my-data-capture/output
: Die erfassten Ausgabedaten für den Transformationsauftrag.
Um Datenduplikationen zu vermeiden, handelt es sich bei den erfassten Daten in den beiden vorherigen Verzeichnissen um Manifeste. Jedes Manifest ist eine JSONL Datei, die die Amazon S3 S3-Speicherorte der Quellobjekte enthält. Eine Manifest-Datei könnte wie im folgenden Beispiel aussehen:
# under "/input" directory [ {"prefix":"s3://
input_S3_uri
/"}, "dummy_0.csv", "dummy_1.csv", "dummy_2.csv", ... ] # under "/output" directory [ {"prefix":"s3://output_S3_uri
/"}, "dummy_0.csv.out", "dummy_1.csv.out", "dummy_2.csv.out", ... ]
Der Transformationsjob organisiert und kennzeichnet diese Manifeste mit einem yyyy/mm/dd/hh
Das S3-Präfix gibt an, wann sie erfasst wurden. Dies hilft dem Modellmonitor, den geeigneten Teil der zu analysierenden Daten zu bestimmen. Wenn Sie Ihren Transformationsauftrag beispielsweise am 26.08.2022 um 13 Uhr startenUTC, werden die erfassten Daten mit einer 2022/08/26/13/
Präfixzeichenfolge gekennzeichnet.
InferenceId Generierung
Wenn Sie DataCaptureConfig
für einen Transformationsauftrag konfigurieren, können Sie das boolesche Flag GenerateInferenceId
aktivieren. Dies ist besonders nützlich, wenn Sie Aufgaben zur Überwachung der Modellqualität und der Modellverzerrung ausführen müssen, für die Sie vom Benutzer aufgenommene Ground-Truth-Daten benötigen. Model Monitor verwendet eine Inferenz-ID, um die erfassten Daten mit den Ground-Truth-Daten abzugleichen. Weitere Informationen zur Einnahme von Ground Truth finden Sie unter Investieren Sie Ground Truth Labels und führen Sie sie mit Vorhersagen zusammen. Wenn GenerateInferenceId
diese Option aktiviert ist, hängt die Transformationsausgabe UTC für jeden Datensatz eine Inferenz-ID (zufälligUUID) sowie die Startzeit des Transformationsauftrags an. Sie benötigen diese beiden Werte, um die Überwachung der Modellqualität und der Modellabweichung durchzuführen. Wenn Sie die Ground-Truth-Daten erstellen, müssen Sie dieselbe Inferenz-ID angeben, damit sie mit den Ausgabedaten übereinstimmt. Derzeit unterstützt diese Funktion Transformationsausgaben in den Formaten CSVJSON, undJSONL.
Wenn Ihre Transformationsausgabe im CSV Format vorliegt, sieht die Ausgabedatei wie das folgende Beispiel aus:
0, 1f1d57b1-2e6f-488c-8c30-db4e6d757861,2022-08-30T00:49:15Z 1, 22445434-0c67-45e9-bb4d-bd1bf26561e6,2022-08-30T00:49:15Z ...
Die letzten beiden Spalten enthalten die Inferenz-ID und die Startzeit des Transformationsauftrags. Ändern Sie diese nicht. Die verbleibenden Spalten sind die Ergebnisse Ihrer Transformationsaufträge.
Wenn Ihre Transformationsausgabe im JSON JSONL Oder-Format vorliegt, sieht die Ausgabedatei wie das folgende Beispiel aus:
{"output": 0, "SageMakerInferenceId": "1f1d57b1-2e6f-488c-8c30-db4e6d757861", "SageMakerInferenceTime": "2022-08-30T00:49:15Z"} {"output": 1, "SageMakerInferenceId": "22445434-0c67-45e9-bb4d-bd1bf26561e6", "SageMakerInferenceTime": "2022-08-30T00:49:15Z"} ...
Es gibt zwei angefügte Felder, die reserviert sind, SageMakerInferenceId
und SageMakerInferenceTime
. Ändern Sie diese Felder nicht, wenn Sie die Modellqualität oder die Modellabweichung überwachen müssen – Sie benötigen sie für Zusammenführungsaufträge.