

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.

# Batch-Transformation für Inferenz mit Amazon AI SageMaker
<a name="batch-transform"></a>

Verwenden Sie die Stapeltransformation, wenn Sie folgende Aufgaben ausführen möchten: 
+ Vorverarbeitung von Datensätzen, um Rauschen oder Bias, das das Training oder Inferenz beeinträchtigt, aus Ihrem Datensatz zu entfernen.
+ Abrufen von Inferenzen aus großen Datensätzen.
+ Ausführen der Inferenz, wenn Sie keinen persistenten Endpunkt benötigen.
+ Verknüpfen von Eingabedatensätzen mit Inferenzen, um die Interpretation der Ergebnisse zu unterstützen

Informationen zum Filtern von Eingabedaten vor dem Ausführen von Inferenzen oder zum Zuweisen von Eingabedatensätzen zu Inferenzen über diese Datensätze finden Sie unter [Zuordnen von Voraussageergebnissen zu Eingabedatensätzen](batch-transform-data-processing.md). Sie können beispielsweise Eingabedaten filtern, um Kontext für das Erstellen und Interpretieren von Berichten zu den Ausgabedaten bereitzustellen.

**Topics**
+ [Verwenden der Batch-Transformation zum Abrufen von Inferenzen aus großen Datensätzen](#batch-transform-large-datasets)
+ [Beschleunigen eines Stapeltransformationsauftrags](#batch-transform-reduce-time)
+ [Verwenden der Stapeltransformation zum Testen von Produktionsvarianten](#batch-transform-test-variants)
+ [Beispiel-Notebooks für Stapeltransformationen](#batch-transform-notebooks)
+ [Zuordnen von Voraussageergebnissen zu Eingabedatensätzen](batch-transform-data-processing.md)
+ [Speichern in Stapeltransformation](batch-transform-storage.md)
+ [Fehlerbehebung](batch-transform-errors.md)

## Verwenden der Batch-Transformation zum Abrufen von Inferenzen aus großen Datensätzen
<a name="batch-transform-large-datasets"></a>

Die Stapeltransformation verwaltet automatisch die Verarbeitung von großen Datensätzen innerhalb der angegebenen Parameter. Nehmen wir beispielsweise an, Sie haben eine Datensatz-Datei `input1.csv`, die in einem S3-Bucket gespeichert ist. Der Inhalt der Eingabedatei könnte wie das nachfolgende Beispiel aussehen:

```
Record1-Attribute1, Record1-Attribute2, Record1-Attribute3, ..., Record1-AttributeM
Record2-Attribute1, Record2-Attribute2, Record2-Attribute3, ..., Record2-AttributeM
Record3-Attribute1, Record3-Attribute2, Record3-Attribute3, ..., Record3-AttributeM
...
RecordN-Attribute1, RecordN-Attribute2, RecordN-Attribute3, ..., RecordN-AttributeM
```

Wenn ein Batch-Transformationsjob gestartet wird, startet SageMaker KI Recheninstanzen und verteilt die Inferenz- oder Vorverarbeitungs-Workload zwischen ihnen. Die Stapeltransformation partitioniert Amazon S3-Objekte in der Eingabe nach Schlüssel und ordnet Amazon S3-Objekte den Instances zu. Wenn Sie mehrere Dateien haben, verarbeitet eine Instance z. B. `input1.csv` und eine andere Instance möglicherweise die Datei mit dem Namen `input2.csv`. Wenn Sie über eine Eingabedatei verfügen, aber mehrere Rechen-Instances initialisieren, verarbeitet nur eine Instance die Eingabedatei. Die übrigen Instances befinden sich im Leerlauf.

Sie können Eingabedateien auch in Mini-Batches aufteilen. Sie können z. B. einen Ministapel aus `input1.csv` erstellen, indem Sie nur zwei der Dateien einschließen.

```
Record3-Attribute1, Record3-Attribute2, Record3-Attribute3, ..., Record3-AttributeM
Record4-Attribute1, Record4-Attribute2, Record4-Attribute3, ..., Record4-AttributeM
```

**Anmerkung**  
SageMaker AI verarbeitet jede Eingabedatei separat. Ministapel aus verschiedenen Eingabedateien werden nicht kombiniert, um das [https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateTransformJob.html#SageMaker-CreateTransformJob-request-MaxPayloadInMB               ](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateTransformJob.html#SageMaker-CreateTransformJob-request-MaxPayloadInMB               )-Limit einzuhalten.

Um Eingabedateien bei der Erstellung eines Batch-Transformationsauftrags in Mini-Batches aufzuteilen, setzen Sie den [https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_TransformInput.html#SageMaker-Type-TransformInput-SplitType             ](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_TransformInput.html#SageMaker-Type-TransformInput-SplitType             )Parameterwert auf. `Line` SageMaker AI verwendet die gesamte Eingabedatei in einer einzigen Anforderung, wenn:
+ `SplitType` auf `None` gesetzt wird.
+ Eine Eingabedatei kann nicht in Mini-Batches aufgeteilt werden.

Beachten Sie, dass Stapeltransformation keine CSV-formatierte Eingabe unterstützt, die eingebettete Zeilenumbruchzeichen enthält. Sie können die Größe der Mini-Batches mithilfe der Parameter `[BatchStrategy](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateTransformJob.html#sagemaker-CreateTransformJob-request-BatchStrategy)` und `[MaxPayloadInMB](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateTransformJob.html#sagemaker-CreateTransformJob-request-MaxPayloadInMB)` steuern. `MaxPayloadInMB` darf nicht größer als 100 MB sein. Wenn Sie den optionalen `[MaxConcurrentTransforms](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateTransformJob.html#sagemaker-CreateTransformJob-request-MaxConcurrentTransforms)` Parameter angeben, darf der Wert von `(MaxConcurrentTransforms * MaxPayloadInMB)` ebenfalls 100 MB nicht überschreiten.

Wenn der Stapeltransformationsauftrag alle Datensätze in einer Eingabedatei erfolgreich verarbeitet, wird eine Ausgabedatei erstellt. Die Ausgabedatei hat denselben Namen und die Dateierweiterung `.out`. Bei mehreren Eingabedateien, wie z. B. `input1.csv` und `input2.csv`, erhalten die Ausgabedateien die Namen `input1.csv.out` und `input2.csv.out`. Der Stapeltransformationsauftrag speichert die Ausgabedateien am angegebenen Speicherort in Amazon S3, z. B. unter `s3://amzn-s3-demo-bucket/output/`. 

Die Prognosen in einer Ausgabedatei werden in der gleichen Reihenfolge aufgelistet wie die entsprechenden Datensätze in der Eingabedatei. Die Ausgabedatei `input1.csv.out` würde basierend auf der zuvor gezeigten Eingabedatei wie folgt aussehen.

```
Inference1-Attribute1, Inference1-Attribute2, Inference1-Attribute3, ..., Inference1-AttributeM
Inference2-Attribute1, Inference2-Attribute2, Inference2-Attribute3, ..., Inference2-AttributeM
Inference3-Attribute1, Inference3-Attribute2, Inference3-Attribute3, ..., Inference3-AttributeM
...
InferenceN-Attribute1, InferenceN-Attribute2, InferenceN-Attribute3, ..., InferenceN-AttributeM
```

Wenn Sie [https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_TransformInput.html#SageMaker-Type-TransformInput-SplitType             ](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_TransformInput.html#SageMaker-Type-TransformInput-SplitType             ) auf `Line` festlegen, können Sie den Parameter [https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_TransformOutput.html#SageMaker-Type-TransformOutput-AssembleWith             ](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_TransformOutput.html#SageMaker-Type-TransformOutput-AssembleWith             ) auf `Line` setzen, um die Ausgabedatensätze mit einem Zeilentrennzeichen zu verketten. Dies ändert nichts an der Anzahl der Ausgabedateien. Die Anzahl der Ausgabedateien entspricht der Anzahl der Eingabedateien, und bei der Verwendung von `AssembleWith` werden keine Dateien zusammengeführt. Wenn Sie den Parameter `AssembleWith` nicht angeben, werden die Ausgabedatensätze standardmäßig in einem Binärformat verkettet.

Wenn die Eingabedaten sehr groß sind und mit HTTP-Abschnittscodierung übertragen werden, um die Daten an den Algorithmus zu streamen, legen Sie [https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateTransformJob.html#SageMaker-CreateTransformJob-request-MaxPayloadInMB](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateTransformJob.html#SageMaker-CreateTransformJob-request-MaxPayloadInMB) auf `0` fest. Die integrierten Algorithmen von Amazon SageMaker AI unterstützen diese Funktion nicht.

Weitere Informationen über das Erstellen eines Stapeltransformationsauftrags mithilfe der API finden Sie unter [https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateTransformJob.html](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateTransformJob.html)-API. Weitere Informationen zur Beziehung zwischen Eingabe- und Ausgabeobjekten bei der Stapeltransformation erhalten Sie unter [https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_OutputDataConfig.html](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_OutputDataConfig.html). Ein Beispiel zur Verwendung der Stapeltransformation finden Sie unter [(Optional) Vorhersagen mit Batch-Transformation treffen](ex1-model-deployment.md#ex1-batch-transform).

## Beschleunigen eines Stapeltransformationsauftrags
<a name="batch-transform-reduce-time"></a>

Wenn Sie die [https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateTransformJob.html](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateTransformJob.html)-API verwenden, können Sie die Stapeltransformationsaufträge schneller abschließen, indem Sie optimale Werte für Parameter verwenden. Dazu gehören Parameter wie [https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateTransformJob.html#SageMaker-CreateTransformJob-request-MaxPayloadInMB](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateTransformJob.html#SageMaker-CreateTransformJob-request-MaxPayloadInMB), [https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateTransformJob.html#SageMaker-CreateTransformJob-request-MaxConcurrentTransforms](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateTransformJob.html#SageMaker-CreateTransformJob-request-MaxConcurrentTransforms) oder [https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateTransformJob.html#SageMaker-CreateTransformJob-request-BatchStrategy](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateTransformJob.html#SageMaker-CreateTransformJob-request-BatchStrategy). Der ideale Wert für `MaxConcurrentTransforms` entspricht der Anzahl der Compute Worker im Stapeltransformationsauftrag. 

Wenn Sie die SageMaker AI-Konsole verwenden, geben Sie diese optimalen Parameterwerte im Abschnitt **Zusätzliche Konfiguration der Konfigurationsseite** **für Batch-Transformationsjobs** an. SageMaker KI findet automatisch die optimalen Parametereinstellungen für integrierte Algorithmen. Für benutzerdefinierte Algorithmen müssen Sie diese Werte über einen [execution-parameters](https://docs.aws.amazon.com/sagemaker/latest/dg/your-algorithms-batch-code.html#your-algorithms-batch-code-how-containe-serves-requests)-Endpunkt angeben.

## Verwenden der Stapeltransformation zum Testen von Produktionsvarianten
<a name="batch-transform-test-variants"></a>

Zum Testen verschiedener Modelle oder Hyperparametereinstellungen erstellen Sie eine separate Transformationsaufgabe für jede neue Modellvariante und verwenden einen Validierungsdatensatz. Geben Sie für jeden Transformationsauftrag einen eindeutigen Namen und einen Speicherort in Amazon S3 für die Ausgabedatei an. Beachten Sie bei der Analyse der Ergebnisse das Thema [Protokolle und Metriken der Inferenz-Pipeline](inference-pipeline-logs-metrics.md).

## Beispiel-Notebooks für Stapeltransformationen
<a name="batch-transform-notebooks"></a>

Ein Beispiel-Notebook, das die Batch-Transformation verwendet, finden Sie unter [Batch-Transformation mit PCA- und DBSCAN-Movie-Clustern](https://sagemaker-examples.readthedocs.io/en/latest/sagemaker_batch_transform/introduction_to_batch_transform/batch_transform_pca_dbscan_movie_clusters.html). In diesem Notebook wird eine Batch-Transformation mit einem Modell der Hauptkomponentenanalyse (PCA, Principal Component Analysis) verwendet, um die Daten in einer Bewertungsmatrix für Benutzerelemente zu reduzieren. Anschließend wird die Anwendung eines Algorithmus zum dichtebasierten räumlichen Clustering von Anwendungen mit Rauschen (DBSCAN) zum Clustering von Filmen gezeigt.

 Anweisungen zum Erstellen und Zugreifen auf Jupyter-Notebook-Instanzen, mit denen Sie das Beispiel in SageMaker KI ausführen können, finden Sie unter. [SageMaker Amazon-Notebook-Instanzen](nbi.md) Nachdem Sie eine Notebook-Instanz erstellt und geöffnet haben, wählen Sie den Tab **SageMakerBeispiele**, um eine Liste aller KI-Beispiele zu sehen. SageMaker Die Beispiel-Notebooks zum Thema Modellierung, die die NTM-Algorithmen verwenden, befinden sich im Abschnitt **Erweiterte Funktionen**. Zum Öffnen eines Notebooks wählen Sie die Registerkarte **Use (Verwenden)** und dann **Create copy (Kopie erstellen)**.