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.
Erstellen einer Algorithmusressource
Sie können eine Algorithmusressource zur Verwendung mit Trainingsjobs in Amazon SageMaker AI erstellen und sie auf AWS Marketplace veröffentlichen. In den folgenden Abschnitten wird erläutert, wie Sie dies mit der AWS-Managementkonsole und der SageMaker-API tun.
Zum Erstellen einer Algorithmusressource geben Sie die folgenden Informationen an:
-
Die Docker-Container mit dem Trainings- und optional dem Inferenzcode.
-
Die Konfiguration der Eingabedaten, die Ihr Algorithmus für das Training erwartet.
-
Die Hyperparameter, die Ihr Algorithmus unterstützt.
-
Metriken, die Ihr Algorithmus während der Trainingsaufträge an Amazon CloudWatch sendet.
-
Die Instance-Typen, die Ihr Algorithmus zu Trainings- und Inferenzzwecken unterstützt, und die Angabe, ob verteilte Trainings über mehrere Instances hinweg unterstützt werden.
-
Validierungsprofile, d. h. Trainingsjobs, die SageMaker AI verwendet, um den Trainingscode Ihres Algorithmus zu testen, und Batch-Transformationsaufträge, die SageMaker AI ausführt, um den Inferenzcode Ihres Algorithmus zu testen
Um sicherzustellen, dass Käufer und Verkäufer sich darauf verlassen können, dass Produkte in SageMaker AI funktionieren, müssen Sie Ihre Algorithmen validieren, bevor Sie in AWS Marketplace aufgelistet werden. Sie können Produkte nur dann in AWS Marketplace anbieten, wenn die Validierung erfolgreich ist. Zum Validieren Ihrer Algorithmen, verwendet SageMaker AI Ihr Validierungsprofil und Ihre Beispieldaten, um die folgenden Validierungsaufgaben durchzuführen:
-
Erstellen Sie einen Trainingsjob in Ihrem Konto, um sicherzustellen, dass Ihr Trainings-Image mit SageMaker AI funktioniert.
-
Wenn Sie Inferenzcode in Ihren Algorithmus einbezogen haben, erstellen Sie ein Modell in Ihrem Konto mithilfe des Inferenz-Image des Algorithmus und der Modellartefakte, die vom Trainingsauftrag generiert wurden.
-
Wenn Sie Inferenzcode in Ihren Algorithmus einbezogen haben, erstellen Sie einen Transformationsauftrag in Ihrem Konto, der das Modell verwendet, um zu überprüfen, ob Ihr Inferenz-Image mit SageMaker AI funktioniert.
Wenn Sie Produkt in AWS Marketplace anbieten, bleiben die Eingaben und Ausgaben dieses Validierungsprozesses dauerhaft als Teil Ihres Produkts erhalten und werden Ihren Käufern zur Verfügung gestellt. Auf diese Weise können Käufer das Produkt verstehen und beurteilen, bevor sie es kaufen. Käufer können z. B. die von Ihnen verwendeten Eingabedaten, die generierten Ausgaben sowie die Protokolle und Metriken, die von Ihrem Code ausgegeben werden, inspizieren. Je umfassender Ihre Validierungsspezifikation ist, desto einfacher ist es für die Kunden, Ihr Produkt zu beurteilen.
Anmerkung
Geben Sie in Ihrem Validierungsprofil nur Daten an, die Sie öffentlich bereitstellen möchten.
Die Validierung kann einige Stunden in Anspruch nehmen. Zum Anzeigen des Status der Aufträge in Ihrem Konto, rufen Sie in der SageMaker-AI-Konsole die Seiten Trainingsjobs und Umwandlungsaufträge auf. Wenn die Validierung fehlschlägt, können Sie die Scan- und Validierungsberichte über die SageMaker-AI-Konsole aufrufen. Wenn Probleme gefunden werden, müssen Sie den Algorithmus erneut erstellen.
Anmerkung
Um Ihren Algorithmus in AWS Marketplace zu veröffentlichen, ist mindestens ein Validierungsprofil erforderlich.
-
Sie können einen Algorithmus entweder über die SageMaker-AI-Konsole oder über die SageMaker AI API erstellen.
Erstellen einer Algorithmusressource (Konsole)
So erstellen Sie eine Algorithmusressource (Konsole)
-
Öffnen Sie die SageMaker-AI-Konsole unter https://console.aws.amazon.com/sagemaker/
. -
Wählen Sie aus dem linken Menü Training aus.
-
Wählen Sie aus dem Dropdown-Menü die Option Algorithmen und dannAlgorithmus erstellen aus.
-
Geben Sie auf der Seite Training specifications (Trainingsspezifikationen) folgende Informationen an:
-
Geben Sie unter Algorithm name (Name des Algorithmus) einen Namen für den Algorithmus ein. Der Name des Algorithmus muss in Ihrem Konto und der AWS-Region eindeutig sein. Der Name muss 1 bis 64 Zeichen enthalten. Gültige Zeichen sind a–z, A-Z, 0–9 und Bindestrich (-).
-
Geben Sie eine Beschreibung für den Algorithmus ein. Diese Beschreibung erscheint in der SageMaker-AI-Konsole und in den AWS Marketplace.
-
Geben Sie unter Trainings-Image den Pfad in Amazon ECR ein, in dem Ihr Trainingscontainer gespeichert ist.
-
Wählen Sie für Support distributed training (Verteilte Trainings unterstützen) die Option Yes (Ja) aus, wenn Ihr Algorithmus Trainings auf mehreren Instances unterstützt. Wählen Sie andernfalls No (Nein) aus.
-
Wählen Sie für Support instance types for training (Instance-Typen für Trainings unterstützen) die Instance-Typen aus, die Ihr Algorithmus unterstützt.
-
Geben Sie für Channel specification (Kanalspezifikation) bis zu 8 Kanäle für Eingabedaten Ihres Algorithmus an. Sie können beispielsweise 3 Eingabekanäle mit dem Namen
train,validationundtestangeben. Geben Sie für jeden Kanal die folgenden Informationen an:-
Geben Sie im Feld Channel name (Kanalname) einen Namen für den Kanal ein. Der Name muss 1 bis 64 Zeichen enthalten. Gültige Zeichen sind a–z, A-Z, 0–9 und Bindestrich (-).
-
Damit der Kanal für Ihren Algorithmus angefordert wird, wählen Sie Channel required (Kanal erforderlich) aus.
-
Geben Sie eine Beschreibung für den Kanal ein.
-
Wählen Sie für Supported input modes (Unterstützte Eingabemodi) die Option Pipe mode (Pipe-Modus) aus, wenn Ihr Algorithmus das Streamen von Eingabedaten unterstützt, und File mode (Dateimodus), wenn Ihr Algorithmus das Herunterladen der Eingabedaten als Datei unterstützt. Sie können beides auswählen.
-
Geben Sie für Supported content types (Unterstützte Inhaltstypen) den MIME-Typ ein, den Ihr Algorithmus für Eingabedaten erwartet.
-
Wählen Sie für Supported compression type (Unterstützter Komprimierungstyp) die Option Gzip aus, wenn Ihr Algorithmus die Gzip-Komprimierung unterstützt. Klicken Sie andernfalls auf None (Keine).
-
Wählen Sie Add (Hinzufügen) zum Hinzufügen einer weiteren Dateneingabe oder Next (Weiter) aus, wenn Sie damit fertig sind.
-
-
-
Geben Sie auf der Seite Tuning specifications (Optimierungsspezifikationen) folgende Informationen an:
-
Geben Sie für Hyperparameter specification (Hyperparameterspezifikation) die Hyperparameter ein, die Ihr Algorithmus durch Bearbeiten des JSON-Objekts unterstützt. Erstellen Sie für jeden von Ihrem Algorithmus unterstützten Hyperparameter einen JSON-Block, der etwa wie folgt aussieht:
{ "DefaultValue": "5", "Description": "The first hyperparameter", "IsRequired": true, "IsTunable": false, "Name": "intRange", "Range": { "IntegerParameterRangeSpecification": { "MaxValue": "10", "MinValue": "1" }, "Type": "Integer" }Geben Sie Folgendes in die JSON ein:
-
Geben Sie für
DefaultValueeinen Standardwert für den Hyperparameter an, falls vorhanden. -
Geben Sie für
Descriptioneine Beschreibung für den Hyperparameter ein. -
Geben Sie für
IsRequiredan, ob der Hyperparameter erforderlich ist. -
Geben Sie für
IsTunabletruean, falls dieser Hyperparameter optimiert werden kann, wenn ein Benutzer einen Hyperparameteroptimierung ausführt, der diesen Algorithmus verwendet. Weitere Informationen finden Sie unter Automatisches Modelloptiming mit KI SageMaker . -
Geben Sie für
Nameeinem Namen für den Hyperparameter ein. -
Geben Sie für
Rangeeinen der folgenden Werte an:-
IntegerParameterRangeSpecification– Die Werte der Hyperparameter sind Ganzzahlen. Geben Sie die Mindest- und Höchstwerte für den Hyperparameter an. -
ContinuousParameterRangeSpecification– Die Werte des Hyperparameters sind Gleitkommawerte. Geben Sie die Mindest- und Höchstwerte für den Hyperparameter an. -
CategoricalParameterRangeSpecification– Die Werte des Hyperparameters sind kategorische Werte. Geben Sie eine Liste aller möglichen Werte an.
-
-
Legen Sie für
Typedie OptionInteger,ContinuousoderCategoricalfest. Der Wert muss dem TypRangeentsprechen, den Sie angegeben haben.
-
-
Geben Sie unter Metrikdefinitionen alle Trainingsmetriken an, die Ihr Algorithmus ausgeben soll. SageMaker AI verwendet den regulären Ausdruck, den Sie angeben, um die Metriken zu finden, indem es die Protokolle Ihres Trainingscontainers während des Trainings analysiert. Benutzer können diese Metriken anzeigen, wenn sie Trainingsaufträge mit Ihrem Algorithmus ausführen, und sie können die Metriken in Amazon CloudWatch überwachen und darstellen. Weitere Informationen finden Sie unter Amazon-CloudWatch-Metriken zur Überwachung und Analyse von Trainingsjobs. Stellen Sie für jede Metrik die folgenden Informationen bereit:
-
Geben Sie für Metric name (Metrikname) einen Namen für die Metrik ein.
-
Geben Sie für
Regexden regulären Ausdruck ein, den SageMaker AI verwendet, um die Trainingsprotokolle zu analysieren, damit es den Metrikwert finden kann. -
Wählen Sie für Objective metric support (Unterstützung für objektive Metrik) die Option Yes (Ja) aus, wenn diese Metrik als objektive Metrik für einen Hyperparameteroptimierungsauftrag verwendet werden kann. Weitere Informationen finden Sie unter Automatisches Modelloptiming mit KI SageMaker .
-
Wählen Sie Add metric (Metrik hinzufügen) zum Hinzufügen einer weiteren Metrik oder Next (Weiter) aus, wenn Sie damit fertig sind.
-
-
-
Geben Sie auf der Seite Inference specifications (Inferenzspezifikationen) die folgenden Informationen ein, wenn Ihr Algorithmus Inferenz unterstützt:
-
Geben Sie bei Speicherort des Inferenz-Image den Pfad in Amazon ECR ein, unter dem Ihr Inferenz-Container gespeichert ist.
-
Geben Sie für Container DNS host name (DNS-Hostname des Containers) den Namen eines DNS-Hosts für Ihr Image ein.
-
Wählen Sie für unterstützte Instance-Typen für Echtzeit-Inferenz die Instance-Typen, die Ihr Algorithmus für Modelle unterstützt, die als gehostete Endpunkte in SageMaker AI eingesetzt werden. Weitere Informationen finden Sie unter Modelle für Inference einsetzen.
-
Wählen Sie für Supported instance types for batch transform jobs (Unterstützte Instance-Typen für Stapelumwandlungsaufträge) die Instance-Typen aus, die Ihr Algorithmus für Stapelumwandlungsaufträge unterstützt. Weitere Informationen finden Sie unter Batch-Transformation für Inferenz mit Amazon AI SageMaker .
-
Geben Sie für Supported content types (Unterstützte Inhaltstypen) den Typ der Eingabedaten ein, den Ihr Algorithmus für Inferenzanforderungen erwartet.
-
Geben Sie für Supported response MIME types (Unterstützte MIME-Antworttypen) die MIME-Typen ein, die Ihr Algorithmus für Inferenzantworten unterstützt.
-
Wählen Sie Weiter aus.
-
-
Geben Sie auf der Seite Validation specifications (Validierungsspezifikationen) folgende Informationen an:
-
Wählen Sie bei Veröffentlichen dieses Algorithmus auf AWS Marketplace die Option Ja, um den Algorithmus auf AWS Marketplace zu veröffentlichen.
-
Wählen Sie für Diese Ressource validieren die Option Ja aus, wenn SageMaker AI Trainingsjobs und/oder Batch-Transformationsaufträge ausführen sollen, die Sie zum Testen des Trainings- und/oder Inferenzcodes Ihres Algorithmus angeben.
Anmerkung
Zum Veröffentlichen Ihres Algorithmus in AWS Marketplace muss Ihr Algorithmus validiert werden.
-
Wählen Sie für IAM-Rolle eine IAM-Rolle aus, die über die erforderlichen Berechtigungen zur Ausführung von Trainingsjobs und Stapelumwandlungsaufträgen in SageMaker AI verfügt, oder wählen Sie Neue Rolle erstellen, damit SageMaker AI eine Rolle erstellen kann, der
AmazonSageMakerFullAccessdie verwaltete Richtlinie zugeordnet ist. Weitere Informationen finden Sie unter Wie verwendet man SageMaker AI-Ausführungsrollen. -
Geben Sie für Validation profile (Validierungsprofil) Folgendes an:
-
Einen Namen für das Validierungsprofil.
-
Eine Training job definition (Trainingsauftragsdefinition). Hierbei handelt es sich um einen JSON-Block, der einen Trainingsauftrag beschreibt. Dieser hat dasselbe Format wie der
TrainingJobDefinition-Eingabeparameter derCreateAlgorithm-API. -
Eine Transform job definition (Umwandlungsauftragsdefinition). Hierbei handelt es sich um einen JSON-Block, der einen Stapelumwandlungsauftrag beschreibt. Dieser hat dasselbe Format wie der
TransformJobDefinition-Eingabeparameter derCreateAlgorithm-API.
-
-
Wählen Sie Create algorithm (Algorithmus erstellen) aus.
-
Erstellen einer Algorithmusressource (API)
Um eine Algorithmusressource mit Hilfe der SageMaker API zu erstellen, rufen Sie die CreateAlgorithm-API auf.