Suche mit dem Amazon SageMaker Konsole und API - Amazon SageMaker

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.

Suche mit dem Amazon SageMaker Konsole und API

Die Entwicklung eines Machine Learning-Modells erfordert in der Regel umfangreiche Experimente mit unterschiedlichen Datasets, Algorithmen und Hyperparameterwerten. Mit den SageMagers-Modellexperimenten können Sie bis zu Tausende von Machine Learning-Modellexperimenten verwalten.

Sie können SageMaker Search to:

  • Organisieren, suchen und bewerten Sie Schulungsaufträge unter Verwendung von Eigenschaften, Hyperparametern, Leistungsmetriken und anderen Metadaten.

  • Suchen Sie das Modell mit der besten Leistung, indem Sie Schulungsauftrags- und Modellmetriken überprüfen, wie z. B. Schulungsverlust oder Validierungsgenauigkeit.

  • Nachverfolgen der Herkunft eines Modells bis zurück zum Schulungsauftrag und den verwandte Ressourcen, wie z. B. die Schulungs-Datasets nach.

In diesem Thema wird die Suche aus SageMaker -Konsole und das SageMaker API. Weitere Informationen zur Suche in Amazon finden Sie unter SageMaker Studio, sieheExperimente mit Studio suchenaus.

Beispiel-Notebooks für die Verwaltung von ML-Experimenten

Für ein Beispiel-Notebook, das Amazon verwendet SageMaker Modell-Tracking-Fähigkeit zur Verwaltung von ML-Experimenten finden Sie unterVerwalten von ML-Experimenten mit Amazon SageMaker Fähigkeit zur Modellverfolgungaus.

Anweisungen zum Erstellen und Zugreifen auf Jupyter-Notebook-Instances, die Sie verwenden können, um das Beispiel in SageMager auszuführen, finden Sie unterVerwenden von Amazon SageMaker Notebook-Instancesaus. Nachdem Sie eine Notebook-Instance erstellt und geöffnet haben, wählen Sie dieBeispiele für SageMaker-Registerkarte, um eine Liste aller SageMaker -Beispiele Das Notebook für die Verwaltung von ML-Experimenten befindet sich im Abschnitt Advanced Functionality (Erweiterte Funktionalität). Zum Öffnen eines Notebooks wählen Sie die Registerkarte Use (Verwenden) und dann Create copy (Kopie erstellen) aus. Wenn Sie Fragen haben, posten Sie diese im Amazon Machine Learning Developer Forum.

Organisieren, Finden,und AuswertenTrainingsaufträge(Konsole)

Um Schulungsaufträge zu organisieren, weisen Sie ihnen mindestens ein Tag zu.

Um einen bestimmten Schulungsauftrag, ein Modell oder eine Ressource zu finden, verwenden Sie die Modellverfolgung zum Suchen nach Schlüsselwörtern, die durchsuchbaren Elementen zugewiesen sind. Durchsuchbare Artikelumfassen Schulungsaufträge, Modelle, Hyperparameter, Metadaten, Tags und-URLsaus. Um die Verfolgungsergebnisse einzugrenzen, können Sie mehrere Suchkriterien einsetzen.

Um das beste Modell für die Bereitstellung auszuwählen, bewerten Sie, wie alle Modelle gemessen an einer oder mehreren Metriken abschneiden. Sie können die Ergebnisse der Modellverfolgung nutzen, um die Leistung der Modelle in den Experimenten aufzulisten, zu sortieren und zu bewerten.

Verwenden von Tags zum Verfolgen von Schulungsaufträgen (Konsole)

Erstellen Sie Tags mit beschreibendem Schlüssel und Wert, um Schulungsaufträge zu gruppieren. Erstellen Sie beispielsweise Tag-Schlüssel für Projekt, Eigentümer, Kunde und Branche.

Hinzufügen von Tags zu Schulungsaufträgen (Konsole)

  1. Öffnen SieAmazon SageMaker Konsoleaus.

  2. Wählen Sie im Navigationsbereich Training jobs (Schulungsaufträge) und Create training job (Schulungsauftragerstellen) aus.

  3. Scrollen Sie auf der Seite nach unten und geben Sie einen Schlüssel und einen Wert für das Tag ein.

  4. Um ein weiteres Tag hinzuzufügen, wählen Sie Add tag (Tag hinzufügen) und fügen Sie ein weiteres Schlüssel-Wert-Paar hinzu.

Suchen von Schulungsaufträgen (Konsole)

Sie können mit einer Vielzahl von Auftragsattributen nach Schulungsaufträgen suchen. Beachten Sie, dass einige Suchparameter nur angezeigt werden, wenn Sie einen Schulungsauftrag mit diesem Attribut erstellt haben. Tags wird beispielsweise nur angezeigt, wenn Sie ein Tag für einen Schulungsauftrag hinzugefügt haben.

So suchen Sie nach Schulungsaufträgen (Konsole)

  1. Öffnen SieAmazon SageMaker Konsoleaus.

  2. Klicken Sie im Navigationsbereich auf Search (Suchen).

  3. Fügen Sie Parameter hinzu.

    1. Geben Sie einen Parameter in das Suchfeld ein und wählen Sie einen Parametertyp aus, z. B. TrainingJobName.

    2. Wählen Sie eine bedingte Operation aus. Verwenden Sie für numerische Werte Operatoren wie z. B. is equals to (ist gleich), lesser than (kleiner als) oder greater than (größer als). Verwenden Sie für textbasierte Werte Operatoren wie z. B. equals (gleich) oder contains (enthält).

    3. Geben Sie einen Wert für den Parameter ein.

  4. (Optional) Um Ihre Suche zu verfeinern, fügen Sie zusätzliche Suchkriterien hinzu. Wählen Sie Add row (Zeile hinzufügen) aus und geben Sie die Parameterwerte ein.

  5. Wählen Sie Search (Suchen) aus.

AuswertenModelle(Konsole)

Um die Leistung eines Modells zu bewerten, überprüfen Sie seine Metadaten, Hyperparameter und Metriken. Um Metriken hervorzuheben,Passen Sie die Ansicht so an, dass nur Metriken und wichtige Hyperparameter angezeigt werden.

So bewerten SieEin -Modell(Konsole)

  1. Öffnen SieAmazon SageMaker Konsoleaus.

  2. Wählen Sie im Navigationsbereich und dann ausSucheund Searchfür Trainingsaufträge indem Sie relevante Parameter angeben. Die Ergebnisse werden in einer Tabelle angezeigt.

  3. Öffnen SieFenster „Einstellungen“indem Sie dieEinstellungen-SymbolIn der Tabelle mit den Suchergebnissen.

  4. Um einen Hyperparameter oder eine Metrik ein- oder auszublenden, aktivieren oder deaktivieren Sie ihn bzw.wählendHyperparameteroderMetrikaus.

  5. Nehmen Sie die erforderlichen Änderungen vor und wählen Sie dann Update view (Ansicht aktualisieren).

  6. Nachdem Sie Metriken und wichtige Hyperparameter angezeigt haben, können Sie das Ergebnis vergleichen. Anschließend können Sie das beste Modell zum Hosten oder Untersuchen der Modelle auswählen, deren Leistung schwach ist.

Suchen und BewertenTrainingsaufträge (API)

Zum Suchen und Auswerten von Ausbildungsjobs odererhalten Sie Vorschläge für Elemente, die in Experimenten verwendet wurden, die durchsuchbar sind,Sie können dasSearchAPI.

Suchen von Schulungsaufträgen (API)

Zur Suche nach Schulungsaufträgen erstellen Sie einen Suchparameter mit dem Parameter search_params. Verwenden Sie dann die Suchfunktion imsmclient UnterprozessimAWSSDK for Python (Boto3).

FolgendesBeispiel veranschaulichtWie benutzt man dasSearchAPI to Suche nach Trainingsaufträgenaus.

import boto3 search_params={ "MaxResults": 10, "Resource": "TrainingJob", "SearchExpression": { "Filters": [{ "Name": "Tags.Project", "Operator": "Equals", "Value": "Project_Binary_Classifier" }]}, "SortBy": "Metrics.train:binary_classification_accuracy", "SortOrder": "Descending" } smclient = boto3.client(service_name='sagemaker') results = smclient.search(**search_params)

Modelle bewerten (API)

Um Modelle auszuwerten, führen Sie eine Suche aus, wie unterSuchen von Schulungsaufträgen (API), überprüfen Sie dann Modellmetriken, benutze dasAWSSDK for Python (Boto3)Um eine Tabelle zu erstellen und zu plotten.

Das folgende Beispiel zeigt, wie Modelle ausgewertet und die Ergebnisse in einer Tabelle angezeigt werden.

import pandas headers=["Training Job Name", "Training Job Status", "Batch Size", "Binary Classification Accuracy"] rows=[] for result in results['Results']: trainingJob = result['TrainingJob'] metrics = trainingJob['FinalMetricDataList'] rows.append([trainingJob['TrainingJobName'], trainingJob['TrainingJobStatus'], trainingJob['HyperParameters']['mini_batch_size'], metrics[[x['MetricName'] for x in metrics].index('train:binary_classification_accuracy')]['Value'] ]) df = pandas.DataFrame(data=rows,columns=headers) from IPython.display import display, HTMLdisplay(HTML(df.to_html()))

Vorschläge erhalten für eine Suche (API)

Um Vorschläge für eine Suche zu erhalten,Benutze dieGetSearchSuggestionsAPI.

Das folgende Beispiel für AWS SDK for Python (Boto3) ist eine get_search_suggestions-Anforderung für Elemente, die containing linear enthalten.

search_suggestion_params={ "Resource": "TrainingJob", "SuggestionQuery": { "PropertyNameQuery": { "PropertyNameHint": "linear" } } }

Nachfolgend finden Sie eine Beispielantwort für eine get_search_suggestions-Anforderung.

{ 'PropertyNameSuggestions': [{'PropertyName': 'hyperparameters.linear_init_method'}, {'PropertyName': 'hyperparameters.linear_init_value'}, {'PropertyName': 'hyperparameters.linear_init_sigma'}, {'PropertyName': 'hyperparameters.linear_lr'}, {'PropertyName': 'hyperparameters.linear_wd'}] }

Nachdem Sie die Suchvorschläge erhalten haben, können Sie einen der Eigenschaftsnamen in einer Suche verwenden.

Überprüfen der von Ihren Schulungsaufträgen verwendeten Datasets

Sie können die Funktion zur Modellverfolgung verwenden, um zu verifizieren, welche Datasets in Schulungen verwendet wurden und wo die Holdout-Datasets verwendet wurden. Zudem können weitere Details zu Schulungsaufträgen verifiziert werden. Verwenden Sie die Modellnachverfolgungsfunktion beispielsweise, um zu überprüfen, ob ein bestimmtes Dataset in einem Schulungsauftrag für ein Audit verwendet wurde, oder um die Compliance zu überprüfen.

Um zu überprüfen, ob ein bestimmtes Dataset in einem Schulungsauftrag verwendet wurde, suchen Sie im Amazon Simple Storage Service (Amazon S3) nach der URL zu seinem Standort. Die Modellnachverfolgungsfunktion gibt die Schulungsaufträge zurück, die das von Ihnen angegebene Dataset verwendet haben. Wenn Ihre Suche das Dataset nicht zurückgibt (das Ergebnis ist leer), wurde das Dataset in keinem Schulungsauftrag verwendet. Ein leeres Ergebnis bestätigt beispielsweise, dass kein Holdout-Dataset verwendet wurde.

Verfolgen der Herkunft von Modellen

Sie können die Modellverfolgung verwenden, um Informationen über die Herkunft von Schulungsaufträgen und dafür verwendeter Modellressourcen zu verfolgen, einschließlich Dataset, Algorithmus, Hyperparameter und Metriken. Wenn Sie beispielsweise feststellen, dass die Leistung eines gehosteten Modells nachgelassen hat, können Sie seinen Schulungsauftrag und die verwendeten Ressourcen prüfen, um die Ursache des Problems zu ermitteln.

Verfolgen der Herkunft von Modellen (Konsole)

So verfolgen Sie die Herkunft eines Modells (Konsole)

  1. Öffnen SieAmazon SageMaker Konsoleaus.

  2. Wählen Sie im Navigationsbereich Endpoints (Endpunkte) und dann den relevanten Endpunkt aus.

  3. Scrollen Sie zum Abschnitt Endpoint configuration settings (Endpunkt-Konfigurationseinstellungen). In diesem Abschnitt werden alle Modellversionen aufgelistet, die am Endpunkt bereitgestellt werden, mit einem Hyperlink zu dem Schulungsauftrag, durch den sie jeweils erstellt wurden.

Verfolgen der Herkunft von Modellen (API)

Um die Abstammung eines Modells zu verfolgen, get der Name des Modells, dann benutze es um zu suchenfür Trainingsaufträgeaus.

Das folgende Beispiel zeigt, wie Sie die Herkunft eines Modells mithilfe desAPIaus.

# Get the name of model deployed at endpoint endpoint_config = smclient.describe_endpoint_config(EndpointConfigName=endpointName) model_name = endpoint_config['ProductionVariants'][0]['ModelName'] # Get the model's name model = smclient.describe_model(ModelName=model_name) # Search the training job by the location of model artifacts in Amazon S3 search_params={ "MaxResults": 1, "Resource": "TrainingJob", "SearchExpression": { "Filters": [ { "Name": "ModelArtifacts.S3ModelArtifacts", "Operator": "Equals", "Value": model['PrimaryContainer']['ModelDataUrl'] }]}, } results = smclient.search(**search_params)

Nachdem Sie den Ausbildungsjob gefunden haben,Sie können die Ressourcen überprüfen, die verwendet wurden, um das Modell zu schulen.