Nutzung von inkrementellen Schulungen in AWS Clean Rooms ML - AWS Clean Rooms

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

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 an AWS Management Console und öffnen Sie die AWS Clean Rooms Konsole.

  2. Wählen Sie im linken Navigationsbereich Collaborations aus.

  3. 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.

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

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

  6. Auf der Übersichtsseite unter Versionen

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

    2. Wählen Sie „Aus Version trainieren“.

  7. 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.

  8. 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.

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

    3. 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, FastFileob 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.

    4. 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.

  9. 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.

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

    3. 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.

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

  11. 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.

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

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

  14. Geben Sie unter 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.

    2. Geben Sie unter Anzahl der Instanzen die Anzahl der Instanzen ein.

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

  15. 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 auchincrementalTrainingDataChannels).

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.