Interpretieren von Ergebnissen - 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.

Interpretieren von Ergebnissen

Nachdem Sie einen Baseline-Verarbeitungsauftrag ausgeführt und Statistiken und Einschränkungen für Ihren Datensatz erhalten haben, können Sie Überwachungsaufträge ausführen, die Statistiken berechnen und alle Verstöße gegen die Baseline-Einschränkungen auflisten. CloudWatch Amazon-Metriken werden standardmäßig auch in Ihrem Konto gemeldet. Informationen zum Anzeigen der Überwachungsergebnisse in Amazon SageMaker Studio finden Sie unterVisualisieren Sie Ergebnisse für Echtzeit-Endgeräte in Amazon Studio SageMaker .

Auflisten von Hinrichtungen

Der Zeitplan startet die Überwachung von Aufträgen in den angegebenen Intervallen. Der folgende Code listet die letzten fünf Ausführungen auf. Wenn Sie diesen Code ausführen, nachdem Sie den Stundenplan aufgestellt haben, sind möglicherweise keine Ausführungen vorhanden, und Sie müssen möglicherweise warten, bis die Stundengrenze (in UTC) überschritten ist, damit Ausführungen zu sehen sind. Der folgende Code enthält die Logik zum Warten.

mon_executions = my_default_monitor.list_executions() print("We created a hourly schedule above and it will kick off executions ON the hour (plus 0 - 20 min buffer.\nWe will have to wait till we hit the hour...") while len(mon_executions) == 0: print("Waiting for the 1st execution to happen...") time.sleep(60) mon_executions = my_default_monitor.list_executions()

Untersuchen Sie eine bestimmte Ausführung

Im vorherigen Schritt haben Sie die letzte abgeschlossene oder fehlgeschlagene geplante Ausführung übernommen. Sie können erkunden, was richtig oder falsch gelaufen ist. Die Terminalzustände sind:

  • Completed – Die Überwachungsausführung wurde abgeschlossen, und es wurden keine Probleme im Bericht der Verstöße gefunden.

  • CompletedWithViolations – Die Ausführung wurde abgeschlossen, aber es wurden Einschränkungsverstöße erkannt.

  • Failed – Die Überwachungsausführung ist fehlgeschlagen, möglicherweise aufgrund von Clientfehlern (z. B. Rollenproblemen) oder Infrastrukturproblemen. Informationen zur Identifizierung der Ursache finden Sie unter FailureReason und ExitMessage.

latest_execution = mon_executions[-1] # latest execution's index is -1, previous is -2 and so on.. time.sleep(60) latest_execution.wait(logs=False) print("Latest execution status: {}".format(latest_execution.describe()['ProcessingJobStatus'])) print("Latest execution result: {}".format(latest_execution.describe()['ExitMessage'])) latest_job = latest_execution.describe() if (latest_job['ProcessingJobStatus'] != 'Completed'): print("====STOP==== \n No completed executions to inspect further. Please wait till an execution completes or investigate previously reported failures.")
report_uri=latest_execution.output.destination print('Report Uri: {}'.format(report_uri))

Generierte Berichte auflisten

Verwenden Sie den folgenden Code, um die generierten Berichte aufzulisten.

from urllib.parse import urlparse s3uri = urlparse(report_uri) report_bucket = s3uri.netloc report_key = s3uri.path.lstrip('/') print('Report bucket: {}'.format(report_bucket)) print('Report key: {}'.format(report_key)) s3_client = boto3.Session().client('s3') result = s3_client.list_objects(Bucket=report_bucket, Prefix=report_key) report_files = [report_file.get("Key") for report_file in result.get('Contents')] print("Found Report Files:") print("\n ".join(report_files))

Verstöße melden

Wenn es Verstöße gegen die Basislinie gibt, werden diese im Verstoßbericht aufgeführt. Verwenden Sie den folgenden Code, um die Verstöße aufzulisten.

violations = my_default_monitor.latest_monitoring_constraint_violations() pd.set_option('display.max_colwidth', -1) constraints_df = pd.io.json.json_normalize(violations.body_dict["violations"]) constraints_df.head(10)

Dies gilt nur für Datensätze, die tabellarische Daten enthalten. Die folgenden Schemadateien geben die berechneten Statistiken und die überwachten Verletzungen an.

Ausgabedateien für Tabellendatensätze
Dateiname Beschreibung
statistics.json

Enthält spaltenförmige Statistiken für jede Funktion im Datensatz, die analysiert wird. Das Schema dieser Datei finden Sie im nächsten Thema.

Anmerkung

Diese Datei wurde nur für die Überwachung der Datenqualität erstellt.

constraint_violations.json

Enthält eine Liste der Verstöße, die in diesem aktuellen Datensatz verglichen mit der in den Pfaden baseline_constaints und baseline_statistics angegebenen Datei der Baseline-Statistiken und Einschränkungen gefunden wurden.

Das Vorgefertigter Amazon SageMaker Model Monitor-Container speichert standardmäßig eine Reihe von CloudWatch Amazon-Metriken für jede Funktion.

Der Container-Code kann CloudWatch Metriken an diesem Ort ausgeben:/opt/ml/output/metrics/cloudwatch.