Erzielen Sie mit Fiddler PlatoBlockchain Data Intelligence eine Überwachung auf Unternehmensniveau für Ihre Amazon SageMaker-Modelle. Vertikale Suche. Ai.

Erzielen Sie mit Fiddler eine Überwachung auf Unternehmensniveau für Ihre Amazon SageMaker-Modelle

Dies ist ein Gastblogbeitrag von Danny Brock, Rajeev Govindan und Krishnaram Kenthapadi bei Fiddler AI.

Ihr Amazon Sage Maker Modelle sind live. Sie verarbeiten jeden Tag Millionen von Inferenzen und erzielen bessere Geschäftsergebnisse für Ihr Unternehmen. Sie funktionieren genau so gut wie am Tag ihrer Markteinführung.

Äh, warte. Sind sie? Vielleicht. Vielleicht nicht.

Ohne Enterprise-Klasse Modellüberwachung, Ihre Modelle verfallen möglicherweise in Stille. Ihre Teams für maschinelles Lernen (ML) werden möglicherweise nie erfahren, dass sich diese Modelle tatsächlich von Wundern der Umsatzgenerierung zu Verbindlichkeiten gewandelt haben, die falsche Entscheidungen treffen, die Ihr Unternehmen Zeit und Geld kosten.

Ärgern Sie sich nicht. Die Lösung ist näher als Sie denken.

Fiedler, eine Model Performance Management-Lösung der Enterprise-Klasse, die auf der verfügbar ist AWS-Marktplatz, bietet Modellüberwachung und erklärbare KI, um ML-Teams bei der Untersuchung und Behebung einer umfassenden Reihe von Modellproblemen zu unterstützen. Durch Modellüberwachung, Modellerklärbarkeit, Analysen und Bias-Erkennung bietet Fiddler Ihrem Unternehmen eine benutzerfreundliche zentrale Oberfläche, um sicherzustellen, dass sich Ihre Modelle so verhalten, wie sie sollten. Und wenn dies nicht der Fall ist, bietet Fiddler auch Funktionen, mit denen Sie Ihre Modelle untersuchen können, um die zugrunde liegenden Ursachen für den Leistungsabfall zu finden.

Dieser Beitrag zeigt, wie Ihr MLOps Team kann die Produktivität von Data Scientists verbessern und die Zeit verkürzen, um Probleme für Ihre in SageMaker bereitgestellten Modelle zu erkennen, indem es in wenigen einfachen Schritten in die Fiddler Model Performance Management Platform integriert wird.

Lösungsüberblick

Die folgende Referenzarchitektur hebt die wichtigsten Integrationspunkte hervor. Fiddler existiert als „Sidecar“ für Ihren bestehenden SageMaker ML-Workflow.

Der Rest dieses Beitrags führt Sie durch die Schritte zur Integration Ihres SageMaker-Modells in Fiddler's Model Performance Management-Plattform:

  1. Stellen Sie sicher, dass für Ihr Modell die Datenerfassung aktiviert ist.
  2. Erstellen Sie eine Fiddler-Testumgebung.
  3. Registrieren Sie Informationen zu Ihrem Modell in Ihrer Fiddler-Umgebung.
  4. Erstellen Sie ein AWS Lambda Funktion zum Veröffentlichen von SageMaker-Inferenzen für Fiddler.
  5. Erkunden Sie die Überwachungsfunktionen von Fiddler in Ihrer Fiddler-Testumgebung.

Voraussetzungen:

Dieser Beitrag geht davon aus, dass Sie SageMaker eingerichtet und einen Modellendpunkt bereitgestellt haben. Informationen zum Konfigurieren von SageMaker für die Modellbereitstellung finden Sie unter Modelle für Inferenz bereitstellen. Einige Beispiele sind auch auf der verfügbar GitHub Repo.

Stellen Sie sicher, dass für Ihr Modell die Datenerfassung aktiviert ist

Navigieren Sie in der SageMaker-Konsole zum Serving-Endpunkt Ihres Modells und vergewissern Sie sich, dass Sie ihn aktiviert haben Datenerfassung In ein Amazon Simple Storage-Service (Amazon S3) Eimer. Dies speichert die Schlussfolgerungen (Anfragen und Antworten), die Ihr Modell jeden Tag macht JSON-Zeilendateien (.jsonl) in Amazon S3.

Erzielen Sie mit Fiddler PlatoBlockchain Data Intelligence eine Überwachung auf Unternehmensniveau für Ihre Amazon SageMaker-Modelle. Vertikale Suche. Ai.

Erstellen Sie eine Fiddler-Testumgebung

Von dem Geiger.ai Website können Sie eine kostenlose Testversion anfordern. Nachdem Sie ein kurzes Formular ausgefüllt haben, wird sich Fiddler mit Ihnen in Verbindung setzen, um die Besonderheiten Ihrer Modellleistungsverwaltungsanforderungen zu verstehen, und wird in wenigen Stunden eine Testumgebung für Sie bereithalten. Es erwartet Sie eine dedizierte Umgebung wie z https://yourcompany.try.fiddler.ai.

Erzielen Sie mit Fiddler PlatoBlockchain Data Intelligence eine Überwachung auf Unternehmensniveau für Ihre Amazon SageMaker-Modelle. Vertikale Suche. Ai.

Registrieren Sie Informationen zu Ihrem Modell in Ihrer Fiddler-Umgebung

Bevor Sie mit dem Veröffentlichen von Ereignissen aus Ihrem von SageMaker gehosteten Modell in Fiddler beginnen können, müssen Sie ein Projekt in Ihrer Fiddler-Testumgebung erstellen und Fiddler Details zu Ihrem Modell über einen Schritt namens bereitstellen Modellregistrierung. Wenn Sie ein vorkonfiguriertes Notebook von innen verwenden möchten Amazon SageMaker-Studio Anstatt die folgenden Codeausschnitte zu kopieren und einzufügen, können Sie auf das Fiddler-Schnellstart-Notebook verweisen GitHub. Studio bietet eine einzige webbasierte visuelle Oberfläche, auf der Sie alle ML-Entwicklungsschritte ausführen können.

Zuerst müssen Sie die installieren Fiddler-Python-Client in Ihrem SageMaker-Notebook und instanziieren Sie den Fiddler-Client. Sie können die bekommen AUTH_TOKEN von dem Einstellungen Seite in Ihrer Fiddler-Testumgebung.

# Install the fiddler client
!pip install fiddler-client

# Connect to the Fiddler Trial Environment
import fiddler as fdl
import pandas as pd

fdl.__version__

URL = 'https://yourcompany.try.fiddler.ai'
ORG_ID = 'yourcompany'
AUTH_TOKEN = 'UUID-Token-Here-Found-In-Your-Fiddler-Env-Settings-Page'

client = fdl.FiddlerApi(URL, ORG_ID, AUTH_TOKEN)

Erstellen Sie als Nächstes ein Projekt in Ihrer Fiddler-Testumgebung:

# Create Project
PROJECT_ID = 'credit_default'  # update this with your project name
DATASET_ID = f'{PROJECT_ID}_dataset'
MODEL_ID = f'{PROJECT_ID}_model'

client.create_project(PROJECT_ID)

Laden Sie nun Ihren Trainingsdatensatz hoch. Das Notebook bietet auch ein Beispieldataset zum Ausführen von Fiddler's Erklärbarkeit Algorithmen und als Grundlage für die Überwachung von Metriken. Das Dataset wird auch verwendet, um das Schema für dieses Modell in Fiddler zu generieren.

# Upload Baseline Dataset
df_baseline = pd.read_csv(‘<your-training-file.csv>')

dataset_info = fdl.DatasetInfo.from_dataframe(df_baseline, max_inferred_cardinality=1000)

upload_result = client.upload_dataset(PROJECT_ID,
                                      dataset={'baseline': df_baseline},
                                      dataset_id=DATASET_ID,
                                      info=dataset_info)

Bevor Sie mit der Veröffentlichung von Rückschlüssen in Fiddler zur Überwachung, Ursachenanalyse und Erläuterungen beginnen können, müssen Sie schließlich Ihr Modell registrieren. Lassen Sie uns zuerst eine erstellen model_info Objekt, das die Metadaten zu Ihrem Modell enthält:

# Update task from the list below if your model task is not binary classification
model_task = 'binary' 

if model_task == 'regression':
    model_task_fdl = fdl.ModelTask.REGRESSION
    
elif model_task == 'binary':
    model_task_fdl = fdl.ModelTask.BINARY_CLASSIFICATION

elif model_task == 'multiclass':
    model_task_fdl = fdl.ModelTask.MULTICLASS_CLASSIFICATION

elif model_task == 'ranking':
    model_task_fdl = fdl.ModelTask.RANKING

    
# Specify column types|
target = 'TARGET'
outputs = ['prediction']  # change this to your target variable
features = [‘<add your feature list here>’]
     
# Generate ModelInfo
model_info = fdl.ModelInfo.from_dataset_info(
    dataset_info=dataset_info,
    dataset_id=DATASET_ID,
    model_task=model_task_fdl,
    target=target,
    outputs=outputs,
    features=features,
    binary_classification_threshold=.125,  # update this if your task is not a binary classification
    description='<model-description>',
    display_name='<model-display-name>'
)
model_info

Dann können Sie das Modell mit Ihrem neuen registrieren model_info Objekt:

# Register Info about your model with Fiddler
client.register_model(
    project_id=PROJECT_ID,
    dataset_id=DATASET_ID,
    model_id=MODEL_ID,
    model_info=model_info
)

Groß! Jetzt können Sie einige Ereignisse in Fiddler veröffentlichen, um die Leistung des Modells zu beobachten.

Erstellen Sie eine Lambda-Funktion, um SageMaker-Inferenzen für Fiddler zu veröffentlichen

Mit der einfach bereitzustellenden serverlosen Architektur von Lambda können Sie schnell den Mechanismus erstellen, der erforderlich ist, um Ihre Inferenzen aus dem S3-Bucket, den Sie zuvor eingerichtet haben, in Ihre neu bereitgestellte Fiddler-Testumgebung zu verschieben. Diese Lambda-Funktion ist dafür verantwortlich, alle neuen JSONL-Ereignisprotokolldateien im S3-Bucket Ihres Modells zu öffnen, den JSONL-Inhalt in einen Datenrahmen zu analysieren und zu formatieren und diesen Datenrahmen von Ereignissen dann in Ihrer Fiddler-Testumgebung zu veröffentlichen. Der folgende Screenshot zeigt die Codedetails unserer Funktion.

Erzielen Sie mit Fiddler PlatoBlockchain Data Intelligence eine Überwachung auf Unternehmensniveau für Ihre Amazon SageMaker-Modelle. Vertikale Suche. Ai.

Die Lambda-Funktion muss konfiguriert werden, um neu erstellte Dateien in Ihrem S3-Bucket auszulösen. Folgende Lernprogramm führt Sie durch die Erstellung einer Amazon EventBridge Trigger, der die Lambda-Funktion aufruft, wenn eine Datei auf Amazon S3 hochgeladen wird. Der folgende Screenshot zeigt die Triggerkonfiguration unserer Funktion. Dadurch kann einfach sichergestellt werden, dass jedes Mal, wenn Ihr Modell neue Rückschlüsse zieht, diese in Amazon S3 gespeicherten Ereignisse in Fiddler geladen werden, um die Beobachtbarkeit des Modells zu steuern, die Ihr Unternehmen benötigt.

Um dies weiter zu vereinfachen, ist der Code für diese Lambda-Funktion öffentlich verfügbar unter Dokumentationsseite von Fiddler. Dieses Codebeispiel funktioniert derzeit für binäre Klassifizierungsmodelle mit strukturierten Eingaben. Wenn Sie Modelltypen mit unterschiedlichen Funktionen oder Aufgaben haben, wenden Sie sich bitte an Fiddler, um Unterstützung bei geringfügigen Änderungen am Code zu erhalten.

Die Lambda-Funktion muss auf den Fiddler-Python-Client verweisen. Fiddler hat eine öffentlich verfügbare Lambda-Ebene erstellt, auf die Sie verweisen können, um sicherzustellen, dass die import fiddler as fdl Schritt funktioniert reibungslos. Sie können auf diese Ebene über einen ARN in der Region us-west-2 verweisen: arn:aws:lambda:us-west-2:079310353266:layer:fiddler-client-0814:1, wie im folgenden Screenshot gezeigt.

Erzielen Sie mit Fiddler PlatoBlockchain Data Intelligence eine Überwachung auf Unternehmensniveau für Ihre Amazon SageMaker-Modelle. Vertikale Suche. Ai.

Sie müssen auch Lambda-Umgebungsvariablen angeben, damit die Lambda-Funktion weiß, wie sie eine Verbindung zu Ihrer Fiddler-Testumgebung herstellt und welche Eingaben und Ausgaben in den .jsonl-Dateien enthalten sind, die von Ihrem Modell erfasst werden. Der folgende Screenshot zeigt eine Liste der erforderlichen Umgebungsvariablen, die auch aktiviert sind Dokumentationsseite von Fiddler. Aktualisieren Sie die Werte für die Umgebungsvariablen so, dass sie mit Ihrem Modell und Dataset übereinstimmen.

Erzielen Sie mit Fiddler PlatoBlockchain Data Intelligence eine Überwachung auf Unternehmensniveau für Ihre Amazon SageMaker-Modelle. Vertikale Suche. Ai.

Erkunden Sie die Überwachungsfunktionen von Fiddler in Ihrer Fiddler-Testumgebung

Du hast es geschafft! Mit Ihren Ausgangsdaten, Ihrem Modell und dem verbundenen Datenverkehr können Sie es jetzt erklären Datendrift, Ausreißer, Modellverzerrung, Datenprobleme und Leistungsausfälle und teilen Sie Dashboards mit anderen. Beenden Sie Ihre Reise durch eine Demo ansehen über die Model Performance Management-Funktionen, die Sie in Ihrem Unternehmen eingeführt haben.

Die Beispiel-Screenshots unten geben einen Einblick in Modelleinblicke wie Drift, Ausreißererkennung, lokale Punkterklärungen und Modellanalysen, die in Ihrer Fiddler-Testumgebung zu finden sind.

Erzielen Sie mit Fiddler PlatoBlockchain Data Intelligence eine Überwachung auf Unternehmensniveau für Ihre Amazon SageMaker-Modelle. Vertikale Suche. Ai.

Zusammenfassung

In diesem Beitrag wurde die Notwendigkeit einer Enterprise-Klasse hervorgehoben Modellüberwachung und zeigte, wie Sie Ihre in SageMaker bereitgestellten Modelle mit dem integrieren können Fiddler Model Performance Management-Plattform in nur wenigen Schritten. Fiddler bietet Funktionen für die Modellüberwachung, erklärbare KI, Bias-Erkennung und Ursachenanalyse und ist auf der verfügbar AWS-Marktplatz. Durch die Bereitstellung Ihrer MLOps Team mit einer benutzerfreundlichen zentralen Oberfläche, um sicherzustellen, dass sich Ihre Modelle wie erwartet verhalten, und um die zugrunde liegenden Ursachen für Leistungseinbußen zu identifizieren, kann Fiddler dazu beitragen, die Produktivität von Data Scientists zu verbessern und die Zeit zum Erkennen und Beheben von Problemen zu verkürzen.

Wenn Sie mehr über Fiddler erfahren möchten, besuchen Sie bitte Geiger.ai oder wenn Sie es vorziehen, eine personalisierte Demo- und technische Diskussions-E-Mail einzurichten sales@fiddler.ai.


Über die Autoren

Erzielen Sie mit Fiddler PlatoBlockchain Data Intelligence eine Überwachung auf Unternehmensniveau für Ihre Amazon SageMaker-Modelle. Vertikale Suche. Ai.Danny Rock ist Senior Solutions Engineer bei Fiddler AI. Danny ist seit langem im Analytics- und ML-Bereich tätig und leitet Pre-Sales- und Post-Sales-Teams für Startups wie Endeca und Incorta. 2012 gründete er sein eigenes Beratungsunternehmen für Big-Data-Analysen, Branchbird.

Erzielen Sie mit Fiddler PlatoBlockchain Data Intelligence eine Überwachung auf Unternehmensniveau für Ihre Amazon SageMaker-Modelle. Vertikale Suche. Ai.Rajeev Govindan ist Senior Solutions Engineer bei Fiddler AI. Rajeev verfügt über umfangreiche Erfahrung in den Bereichen Sales Engineering und Softwareentwicklung bei mehreren Unternehmen, darunter AppDynamics.

Erzielen Sie mit Fiddler PlatoBlockchain Data Intelligence eine Überwachung auf Unternehmensniveau für Ihre Amazon SageMaker-Modelle. Vertikale Suche. Ai.Krishnaram Kenthapadi ist der Chefwissenschaftler von Fiddler AI. Zuvor war er Principal Scientist bei Amazon AWS AI, wo er die Initiativen zu Fairness, Erklärbarkeit, Datenschutz und Modellverständnis in der Amazon AI-Plattform leitete, und davor hatte er Positionen bei LinkedIn AI und Microsoft Research inne. Krishnaram promovierte 2006 in Informatik an der Stanford University.

Zeitstempel:

Mehr von AWS Maschinelles Lernen