Beispiel für einen RL-Workflow mit Amazon SageMaker AI RL - Amazon SageMaker KI

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.

Beispiel für einen RL-Workflow mit Amazon SageMaker AI RL

Das folgende Beispiel beschreibt die Schritte zur Entwicklung von RL-Modellen mit Amazon SageMaker AI RL.

  1. Formulieren Sie das RL-Problem – Formulieren Sie zunächst das Geschäftsproblem in ein RL-Problem. Beispiel: Auto Scaling ermöglicht es Services, die Kapazität in Abhängigkeit von Bedingungen, die Sie festlegen, dynamisch zu steigern oder zu reduzieren. Aktuell müssen dazu Alarme, Skalierungsrichtlinien, Schwellenwerte und andere manuelle Schritte eingerichtet werden. Um dies mit RL zu lösen, definieren wir die Komponenten des Markow-Entscheidungsprozesses:

    1. Ziel – Skalieren Sie die Instance-Kapazität so, dass sie dem gewünschten Lastprofil entspricht.

    2. Umgebung – Eine benutzerdefinierte Umgebung, die das Lastprofil enthält. Sie generiert eine simulierte Last mit täglichen und wöchentlichen Schwankungen und gelegentlichen Spitzen. Beim simulierten System gibt es eine Verzögerung zwischen dem Zeitpunkt des Anforderns neuer Ressourcen und ihrer Verfügbarkeit für das Verarbeiten von Anforderungen.

    3. Status – Die aktuelle Auslastung, die Anzahl der fehlgeschlagenen Jobs und die Anzahl der aktiven Maschinen.

    4. Aktion – Die gleiche Anzahl von Instances entfernen, hinzufügen oder beibehalten.

    5. Belohnung – Eine positive Belohnung für erfolgreiche Transaktionen und eine hohe Strafe für fehlgeschlagene Transaktionen, die einen bestimmten Schwellenwert überschreiten.

  2. Definieren Sie die RL-Umgebung – Die RL-Umgebung kann die reale Welt sein, in der der RL-Agent interagiert, oder eine Simulation der realen Welt. Sie können Open-Source-Umgebungen und benutzerdefinierte Umgebungen, die mithilfe von Gym-Schnittstellen entwickelt wurden, mit kommerziellen Simulationsumgebungen wie MATLAB Simulink verbinden.

  3. Definieren Sie die Voreinstellungen – Die Voreinstellungen konfigurieren die RL-Trainingsauftrags und definieren die Hyperparameter für die RL-Algorithmen.

  4. Schreiben Sie den Trainingscode — Schreiben Sie den Trainingscode als Python-Skript und übergeben Sie das Skript an einen SageMaker AI-Trainingsjob. Importieren Sie die Umgebungsdateien und Voreinstellungsdateien in Ihren Trainingscode und definieren Sie dann die main()-Funktion.

  5. Trainieren Sie das RL-Modell — Verwenden Sie die SageMaker KI RLEstimator in Amazon SageMaker Python, SDK um einen RL-Trainingsjob zu starten. Im lokalen Modus wird der Trainingsauftrag auf der Notebook-Instance ausgeführt. Wenn Sie SageMaker KI für das Training verwenden, können Sie CPU OR-Instances auswählenGPU. Speichern Sie die Ausgabe des Trainingsjobs in einem lokalen Verzeichnis, wenn Sie im lokalen Modus trainieren, oder auf Amazon S3, wenn Sie SageMaker KI-Training verwenden.

    Der RLEstimator erfordert die folgenden Informationen als Parameter.

    1. Das Quellverzeichnis, in das die Umgebung, Voreinstellungen und der Trainingscode hochgeladen wurden.

    2. Den Pfad zum Trainingsskript.

    3. Das RL-Toolkit und Deep-Learning-Framework, die Sie verwenden möchten. Dies wird automatisch in den ECR Amazon-Pfad für den RL-Container aufgelöst.

    4. Die Trainingsparameter, wie z. B. die Anzahl der Instances, der Auftragsname und der S3-Pfad für die Ausgabe.

    5. Definitionen der Metriken, die in Ihren Protokollen erfasst werden sollen. Diese können auch in CloudWatch und in SageMaker KI-Notebooks visualisiert werden.

  6. Trainingsmetriken und Ergebnisse visualisieren — Nach Abschluss eines Trainingsjobs, der ein RL-Modell verwendet, können Sie die Metriken, die Sie in den Trainingsjobs definiert haben, in, anzeigen. CloudWatch Sie können die Metriken auch mithilfe der Amazon SageMaker SDK Python-Analysebibliothek in einem Notizbuch grafisch darstellen. Durch das Visualisieren der Metriken können Sie nachvollziehen, wie die Leistung des Modells sich gemessen an der Belohnung im Laufe der Zeit verbessert.

    Anmerkung

    Beim Trainieren im lokalen Modus können Sie Metriken nicht in CloudWatch visualisieren.

  7. Evaluieren Sie das Modell – Checkpoint-Daten aus den zuvor trainierten Modellen können zur Auswertung und Inferenz an den Checkpoint-Kanal weitergegeben werden. Im lokalen Modus verwenden Sie das lokale Verzeichnis. Im SageMaker KI-Trainingsmodus müssen Sie die Daten zuerst auf S3 hochladen.

  8. Bereitstellung von RL-Modellen — Stellen Sie abschließend das trainierte Modell auf einem Endpunkt bereit, der auf SageMaker KI-Containern oder auf einem Edge-Gerät gehostet wird, indem Sie AWS IoT Greengrass

Weitere Informationen zu RL mit SageMaker KI finden Sie unter Verwenden von RL mit SageMaker Python SDK.