

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.

# Nutzung von inkrementellen Schulungen in AWS Clean Rooms ML
<a name="use-incremental-training"></a>

Voraussetzungen: 
+ Und AWS-Konto mit Zugriff auf AWS Clean Rooms
+ Ein vorhandenes trainiertes Modell in einer Zusammenarbeit 
+ Ein neuer oder aktualisierter Datensatz für inkrementelles Training 
+ Entsprechende Berechtigungen zum Erstellen und Verwalten von ML-Modellen in der Zusammenarbeit
+ Vertrautheit mit den Hyperparametern und der Konfiguration des vorhandenen Modells 

Beim inkrementellen Training können Sie die Artefakte eines vorhandenen Modells und eines aktualisierten Datensatzes verwenden, um ein neues Modell zu trainieren. Durch das inkrementelle Training sparen Sie sowohl Zeit als auch Ressourcen.

Mit dem inkrementellen Training haben Sie folgende Möglichkeiten:
+ Trainieren Sie ein neues Modell mithilfe eines erweiterten Datensatzes, dem ein Muster zugrunde liegt, das im vorherigen Training nicht berücksichtigt wurde.
+ Trainieren Sie mehrere Varianten eines Modells, entweder mit unterschiedlichen Hyperparametern oder mit unterschiedlichen Datensätzen.

------
#### [ Console ]

**Um einen inkrementellen Trainingsjob auszuführen (Konsole)**

1. Melden Sie sich bei [https://console.aws.amazon.com/cleanrooms](https://console.aws.amazon.com/cleanrooms/home) an AWS-Managementkonsole und öffnen Sie die AWS Clean Rooms Konsole.

1. **Wählen Sie im linken Navigationsbereich Collaborations aus.**

1. Wählen Sie auf der Seite **Kollaborationen** die Kollaboration aus, in der die Modellartefakte vorhanden sind, die Sie für das inkrementelle Training verwenden möchten.

1. Wählen Sie nach dem Öffnen der Kollaboration die Registerkarte **ML-Modelle** aus.

1. Wählen Sie unter **Benutzerdefinierte ML-Modelle** im Abschnitt **Trainierte Modelle** das Optionsfeld neben dem trainierten Modell aus, das Sie inkrementell trainieren möchten.

1. Auf der **Übersichtsseite** unter **Versionen** 

   1. Wählen Sie das Optionsfeld neben dem trainierten Modell aus, das Sie schrittweise trainieren möchten.

   1. Wählen Sie „**Aus Version trainieren**“. 

1. Wählen Sie auf der Seite **Trainiertes Modell aus Version erstellen** für **Trainierte Modellversion** die Version aus.

   Die Basismodellversion wird automatisch ausgewählt. Sie können diese Version ändern, falls andere Versionen existieren.

1. Geben Sie für **Details zum trainierten Modell** Folgendes ein:

   1. Geben Sie unter **Name** einen eindeutigen Namen für das Modell in der Kollaboration ein.

   1. (Optional) Geben Sie unter **Beschreibung** eine Beschreibung des trainierten Modells ein.

   1. Wählen Sie für **den Eingabemodus Trainingsdaten** eine der folgenden Optionen:
      + Wählen Sie **Datei** aus, wenn Sie über einen kleineren Datensatz verfügen, der auf das ML-Speichervolumen passt, und Sie für Ihr Trainingsskript den herkömmlichen Dateisystemzugriff bevorzugen.
      + Wählen Sie **Pipe** für große Datensätze, um Daten direkt aus S3 zu streamen, sodass Sie nicht alles auf die Festplatte herunterladen müssen, was die Trainingsgeschwindigkeit verbessern und den Speicherbedarf reduzieren kann.
      + Wählen Sie aus, **FastFile**ob Sie die Vorteile des Streamings von S3 mit dem Dateisystemzugriff kombinieren möchten, insbesondere für sequentiell gelesene Daten oder wenn Sie mit weniger Dateien arbeiten müssen, um die Startzeiten zu verkürzen.

   1. Geben Sie unter Name des **inkrementellen Trainingskanals einen Namen** für den inkrementellen Trainingskanal ein 
**Anmerkung**  
Wenn Sie den **Namen des inkrementellen Trainingskanals** ohne Versions-ID angeben, verwendet das System das Basismodell für das inkrementelle Training. 

1. Gehen Sie wie folgt vor, um **Details zum ML-Eingangskanal** zu erhalten: 

   1. Geben Sie für den **ML-Eingangskanal** den ML-Eingangskanal an, der Daten für den Modellalgorithmus bereitstellt. 

      Um einen weiteren Kanal hinzuzufügen, wählen Sie „**Weiteren ML-Eingangskanal hinzufügen**“. Sie können bis zu 19 zusätzliche ML-Eingangskanäle hinzufügen. 

   1. Geben Sie **als Kanalname** den Namen des ML-Eingangskanals ein.

   1. Wählen Sie für den **Amazon S3 S3-Datenverteilungstyp** eine der folgenden Optionen:
      + Wählen Sie **Vollständig repliziert** aus, um jeder Trainingsinstanz eine vollständige Kopie Ihres Datensatzes zu geben. Dies funktioniert am besten, wenn Ihr Datensatz klein genug ist, um in den Arbeitsspeicher zu passen, oder wenn jede Instanz Zugriff auf alle Daten benötigt.
      + Wählen Sie **Sharded by S3 Key** aus, um Ihren Datensatz anhand von S3-Schlüsseln auf Trainingsinstanzen aufzuteilen. Jede Instanz empfängt etwa 1/n der gesamten S3-Objekte, wobei 'n' für die Anzahl der Instanzen steht. Dies funktioniert am besten für große Datensätze, die Sie parallel verarbeiten möchten.
**Anmerkung**  
Berücksichtigen Sie bei der Auswahl eines Verteilungstyps Ihre Datensatzgröße und Ihre Trainingsanforderungen. **Vollständig repliziert** bietet vollständigen Datenzugriff, benötigt jedoch mehr Speicherplatz, während **Sharded by S3 Key** die verteilte Verarbeitung großer Datensätze ermöglicht.

1. Wählen Sie für **Maximale Trainingsdauer** die maximale Dauer aus, für die Sie Ihr Modell trainieren möchten.

1. Geben Sie für **Hyperparameter** alle algorithmusspezifischen Parameter und ihre beabsichtigten Werte an. Hyperparameter sind spezifisch für das trainierte Modell und werden zur Feinabstimmung des Modelltrainings verwendet.

1. Geben Sie für **Umgebungsvariablen** alle algorithmusspezifischen Variablen und ihre beabsichtigten Werte an. Umgebungsvariablen werden im Docker-Container festgelegt.

1. Um eine benutzerdefinierte **Verschlüsselung** zu verwenden AWS KMS key, aktivieren Sie das Kontrollkästchen **Geheimnis mit einem benutzerdefinierten KMS-Schlüssel verschlüsseln**.

1. Geben Sie für die **EC2-Ressourcenkonfiguration** Informationen zu den Rechenressourcen an, die für das Modelltraining verwendet werden. 

   1. Wählen Sie unter **Instanztyp** den Instanztyp aus, den Sie ausführen möchten.

   1. Geben Sie **unter Anzahl** der Instanzen die Anzahl der Instanzen ein.

   1. Geben Sie für **Volumengröße in GB** die Größe des ML-Speichervolumens ein.

1. Wählen Sie **Trainiertes Modell aus Version erstellen** aus. 

------
#### [ API ]

Um einen inkrementellen Trainingsjob (API) auszuführen

Führen Sie den folgenden Code mit Ihren spezifischen Parametern aus:

```
import boto3 
acr_ml_client= boto3.client('cleanroomsml')
 
acr_ml_client.create_trained_model(
    membershipIdentifier= '{{membership_id}}',
    configuredModelAlgorithmAssociationArn = 'arn:aws:cleanrooms-ml:{{region:account:membership}}/membershipIdentifier/configured-model-algorithm-association/{{identifier}}',
    name='{{trained_model_name}}',
    resourceConfig={
        'instanceType': 'ml.m5.xlarge',
        'volumeSizeInGB': 1
    },
    incrementalTrainingDataChannels=[
        {
            'trainedModelArn': trained_model_arn,
            'channelName': '{{channel_name}}'
        },
    ]
    dataChannels=[
        {
            'mlInputChannelArn': channel_arn_1,
            'channelName': '{{channel_name}}'
        },
        {
            'mlInputChannelArn': channel_arn_2,
            'channelName': '{{channel_name}}'
        }
    ]
)
```

**Anmerkung**  
Limit: Insgesamt maximal 20 Kanäle (einschließlich `dataChannels` sowohl als auch`incrementalTrainingDataChannels`).

------

**Anmerkung**  
Nachdem das trainierte Modell erstellt wurde, können Sie es nicht mehr bearbeiten. Um Änderungen vorzunehmen, löschen Sie das trainierte Modell und erstellen Sie ein neues.