Erstellen einer Modellqualitäts-Baseline - 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.

Erstellen einer Modellqualitäts-Baseline

Erstellen Sie einen Baseline-Job, der Ihre Modellprognosen mitReferenzdatenLabels in einem Baseline-Dataset, das Sie in Amazon S3 gespeichert haben. In der Regel verwenden Sie einen Schulungsdatensatz als Baseline-Dataset. Der Baseline-Job berechnet Metriken für das Modell und schlägt Einschränkungen vor, die zur Überwachung der Modellqualitätsdrift verwendet werden sollen.

Um einen Baseline-Job zu erstellen, benötigen Sie einen Datensatz, der Vorhersagen aus Ihrem Modell sowie Beschriftungen enthält, die die Grundwahrheit für Ihre Daten darstellen.

Um einen Baseline-Job zu erstellen, verwenden Sie dieModelQualityMonitorKlasse zur Verfügung gestellt von der SageMaker Führen Sie die folgenden Schritte aus.

So erstellen Sie einen Baseline-Auftrag für die Modellqualität

  1. Erstellen Sie zunächst eine Instanz desModelQualityMonitor-Klasse. Der folgende Codeausschnitt zeigt, wie das geht.

    from sagemaker import get_execution_role, session, Session from sagemaker.model_monitor import ModelQualityMonitor role = get_execution_role() session = Session() model_quality_monitor = ModelQualityMonitor( role=role, instance_count=1, instance_type='ml.m5.xlarge', volume_size_in_gb=20, max_runtime_in_seconds=1800, sagemaker_session=session )
  2. Rufen Sie jetzt die ansuggest_baseline-Methode derModelQualityMonitor-Objekt zum Ausführen eines Baseline-Jobs. Im folgenden Codeausschnitt wird davon ausgegangen, dass Sie über ein Baseline-Dataset verfügen, das sowohl Vorhersagen als auch Labels enthält, die in Amazon S3 gespeichert sind.

    baseline_job_name = "MyBaseLineJob" job = model_quality_monitor.suggest_baseline( job_name=baseline_job_name, baseline_dataset=baseline_dataset_uri, # The S3 location of the validation dataset. dataset_format=DatasetFormat.csv(header=True), output_s3_uri = baseline_results_uri, # The S3 location to store the results. problem_type='BinaryClassification', inference_attribute= "prediction", # The column in the dataset that contains predictions. probability_attribute= "probability", # The column in the dataset that contains probabilities. ground_truth_attribute= "label" # The column in the dataset that contains ground truth labels. ) job.wait(logs=False)
  3. Nach Abschluss des Baseline-Auftrags werden die Einschränkungen angezeigt, die der Job generiert hat. Rufen Sie zunächst die Ergebnisse des Baseline-Auftrags ab, indem Sie dielatest_baselining_job-Methode derModelQualityMonitor-Objekt.

    baseline_job = model_quality_monitor.latest_baselining_job
  4. Der Baseline-Job schlägt Einschränkungen vor, bei denen es sich um Schwellenwerte für Metriken handelt, die Überwachungsmaßnahmen modellieren. Wenn eine Metrik den vorgeschlagenen Schwellenwert überschreitet, meldet Model Monitor einen Verstoß. Um die Einschränkungen anzuzeigen, die der Baseline-Job generiert hat, rufen Sie diesuggested_constraintsMethode des Baseline-Jobs. Der folgende Codeausschnitt lädt die Beschränkungen für ein binäres Klassifikationsmodell in einen Pandas-Datenrahmen.

    import pandas as pd pd.DataFrame(baseline_job.suggested_constraints().body_dict["binary_classification_constraints"]).T

    Wir empfehlen Ihnen, die generierten Einschränkungen anzuzeigen und sie nach Bedarf zu ändern, bevor Sie sie zur Überwachung verwenden. Wenn eine Einschränkung beispielsweise zu aggressiv ist, erhalten Sie möglicherweise mehr Warnungen für Verstöße, als Sie möchten.

  5. Wenn Sie mit den Einschränkungen zufrieden sind, geben Sie sie alsconstraints-Parameter, wenn Sie einen Überwachungsplan erstellen. Weitere Informationen finden Sie unter Planen Sie Jobs zur Überwachung der Modellqualität.

Die vorgeschlagenen Baseline-Einschränkungen sind in der Datei constraints.json an dem Speicherort enthalten, den Sie mit angebenoutput_s3_uriaus. Weitere Informationen zum Schema für diese Datei finden Sie imSchema für Einschränkungen (Datei constraints.json)aus.