Führen Sie erweiterte Analysen mit Amazon Redshift ML durch - AWS Prescriptive Guidance

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.

Führen Sie erweiterte Analysen mit Amazon Redshift ML durch

Erstellt von Po Hong (AWS) und Chyanna Antonio (AWS)

Umgebung: PoC oder Pilot

Technologien: Analytik; Maschinelles Lernen und KI

Arbeitslast: Alle anderen Workloads

AWS-Dienste: Amazon Redshift; Amazon SageMaker

Übersicht

In der Amazon Web Services (AWS) -Cloud können Sie Amazon Redshift Machine Learning (Amazon Redshift ML) verwenden, um ML-Analysen für Daten durchzuführen, die entweder in einem Amazon Redshift Redshift-Cluster oder in Amazon Simple Storage Service (Amazon S3) gespeichert sind. Amazon Redshift ML unterstützt überwachtes Lernen, das in der Regel für erweiterte Analysen verwendet wird. Zu den Anwendungsfällen für Amazon Redshift ML gehören Umsatzprognosen, Erkennung von Kreditkartenbetrug und Prognosen zum Customer Lifetime Value (CLV) oder zur Kundenabwanderung.

Amazon Redshift ML macht es Datenbankbenutzern leicht, ML-Modelle mithilfe von Standard-SQL-Befehlen zu erstellen, zu trainieren und bereitzustellen. Amazon Redshift ML verwendet Amazon SageMaker Autopilot, um anhand Ihrer Daten automatisch die besten ML-Modelle für die Klassifizierung oder Regression zu trainieren und zu optimieren, während Sie die Kontrolle und Transparenz behalten.

Alle Interaktionen zwischen Amazon Redshift, Amazon S3 und Amazon SageMaker werden abstrahiert und automatisiert. Nachdem das ML-Modell trainiert und bereitgestellt wurde, ist es als benutzerdefinierte Funktion (UDF) in Amazon Redshift verfügbar und kann in SQL-Abfragen verwendet werden.  

Dieses Muster ergänzt die Lernprogramme Erstellen, Trainieren und Bereitstellen von ML-Modellen in Amazon Redshift mithilfe von SQL mit Amazon Redshift ML aus dem AWS-Blog und das SageMaker Tutorial Erstellen, Trainieren und Bereitstellen eines ML-Modells mit Amazon aus dem Getting Started Resource Center.

Voraussetzungen und Einschränkungen

Voraussetzungen

  • Ein aktives AWS-Konto

  • Bestehende Daten in einer Amazon Redshift Redshift-Tabelle

Fähigkeiten

  • Vertrautheit mit den von Amazon Redshift ML verwendeten Begriffen und Konzepten, einschließlich maschinellem Lernen, Training und Prognose. Weitere Informationen dazu finden Sie unter Training ML-Modelle in der Dokumentation zu Amazon Machine Learning (Amazon ML).

  • Erfahrung mit der Benutzereinrichtung von Amazon Redshift, der Zugriffsverwaltung und der Standard-SQL-Syntax. Weitere Informationen dazu finden Sie unter Erste Schritte mit Amazon Redshift in der Amazon Redshift Redshift-Dokumentation.

  • Wissen und Erfahrung mit Amazon S3 und AWS Identity and Access Management (IAM). 

  • Erfahrung mit der Ausführung von Befehlen in der AWS-Befehlszeilenschnittstelle (AWS CLI) ist ebenfalls von Vorteil, aber nicht erforderlich.

Einschränkungen

  • Der Amazon Redshift Redshift-Cluster und der S3-Bucket müssen sich in derselben AWS-Region befinden.

  • Der Ansatz dieses Musters unterstützt nur Modelle des überwachten Lernens wie Regression, binäre Klassifizierung und Mehrklassenklassifizierung. 

Architektur

Der Workflow zeigt, wie Amazon Redshift ML beim Erstellen SageMaker , Trainieren und Bereitstellen eines ML-Modells zusammenarbeitet.

In den folgenden Schritten wird erklärt, wie Amazon Redshift ML beim Erstellen SageMaker , Trainieren und Bereitstellen eines ML-Modells zusammenarbeitet: 

  1. Amazon Redshift exportiert Trainingsdaten in einen S3-Bucket.

  2. SageMaker Autopilot verarbeitet die Trainingsdaten automatisch vor.

  3. Nachdem die CREATE MODEL Anweisung aufgerufen wurde, verwendet Amazon Redshift ML sie SageMaker für das Training.

  4. SageMaker Autopilot sucht nach dem ML-Algorithmus und den optimalen Hyperparametern, die die Bewertungsmetriken optimieren, und empfiehlt diese.

  5. Amazon Redshift ML registriert das Ausgabe-ML-Modell als SQL-Funktion im Amazon Redshift Redshift-Cluster.

  6. Die Funktion des ML-Modells kann in einer SQL-Anweisung verwendet werden. 

Technologie-Stack

  • Amazon-Redshift

  • SageMaker

  • Amazon S3

Tools

  • Amazon Redshift — Amazon Redshift ist ein vollständig verwalteter Data-Warehousing-Service auf Unternehmensebene im Petabyte-Bereich.

  • Amazon Redshift ML — Amazon Redshift Machine Learning (Amazon Redshift ML) ist ein robuster, cloudbasierter Service, der es Analysten und Datenwissenschaftlern aller Qualifikationsstufen leicht macht, ML-Technologie zu nutzen.

  • Amazon S3 — Amazon Simple Storage Service (Amazon S3) ist ein Speicher für das Internet. 

  • Amazon SageMaker — SageMaker ist ein vollständig verwalteter ML-Service. 

  • Amazon SageMaker Autopilot — SageMaker Autopilot ist ein Funktionsumfang, der wichtige Aufgaben eines automatischen maschinellen Lernprozesses (AutoML) automatisiert.

Code

Sie können ein überwachtes ML-Modell in Amazon Redshift erstellen, indem Sie den folgenden Code verwenden:

“CREATE MODEL customer_churn_auto_model FROM (SELECT state, account_length, area_code, total_charge/account_length AS average_daily_spend, cust_serv_calls/account_length AS average_daily_cases, churn FROM customer_activity WHERE record_date < '2020-01-01' ) TARGET churn FUNCTION ml_fn_customer_churn_auto IAM_ROLE 'arn:aws:iam::XXXXXXXXXXXX:role/Redshift-ML' SETTINGS ( S3_BUCKET 'your-bucket' );”)

Hinweis: Der SELECT Status kann sich auf reguläre Amazon Redshift-Tabellen, externe Amazon Redshift Spectrum-Tabellen oder auf beide beziehen.

Epen

AufgabeBeschreibungErforderliche Fähigkeiten

Bereiten Sie einen Trainings- und Testdatensatz vor.

Melden Sie sich bei der AWS-Managementkonsole an und öffnen Sie die SageMaker Amazon-Konsole. Folgen Sie den Anweisungen im Tutorial Ein Modell für maschinelles Lernen erstellen, trainieren und bereitstellen, um eine .csv- oder Apache Parquet-Datei zu erstellen, die eine Labelspalte (betreutes Training) und keinen Header enthält. 

Hinweis: Wir empfehlen, den Rohdatensatz zu mischen und in einen Trainingssatz für das Training des Modells (70 Prozent) und einen Testsatz für die Leistungsbewertung des Modells (30 Prozent) aufzuteilen.

Data Scientist
AufgabeBeschreibungErforderliche Fähigkeiten

Erstellen und konfigurieren Sie einen Amazon Redshift Redshift-Cluster.

Erstellen Sie auf der Amazon Redshift Redshift-Konsole einen Cluster gemäß Ihren Anforderungen. Weitere Informationen dazu finden Sie unter Create a cluster in der Amazon Redshift Redshift-Dokumentation.  

Wichtig: Amazon Redshift Redshift-Cluster müssen zusammen mit dem SQL_PREVIEW Maintenance Track erstellt werden. Weitere Informationen zu Vorschau-Tracks finden Sie unter Cluster-Wartungsspuren auswählen in der Amazon Redshift Redshift-Dokumentation.

DBA, Cloud-Architekt

Erstellen Sie einen S3-Bucket zum Speichern von Trainingsdaten und Modellartefakten.

Erstellen Sie auf der Amazon S3 S3-Konsole einen S3-Bucket für die Trainings- und Testdaten. Weitere Informationen zum Erstellen eines S3-Buckets finden Sie unter Erstellen eines S3-Buckets über AWS Quick Starts. 

Wichtig: Stellen Sie sicher, dass sich Ihr Amazon Redshift Redshift-Cluster und Ihr S3-Bucket in derselben Region befinden. 

DBA, Cloud-Architekt

Erstellen Sie eine IAM-Richtlinie und fügen Sie sie dem Amazon Redshift Redshift-Cluster hinzu.

Erstellen Sie eine IAM-Richtlinie, um dem Amazon Redshift Redshift-Cluster den Zugriff auf Amazon S3 SageMaker zu ermöglichen. Anweisungen und Schritte finden Sie unter Cluster-Setup für die Verwendung von Amazon Redshift ML in der Amazon Redshift Redshift-Dokumentation.

DBA, Cloud-Architekt

Erlauben Sie Amazon Redshift Redshift-Benutzern und -Gruppen den Zugriff auf Schemas und Tabellen.

Erteilen Sie Berechtigungen, um Benutzern und Gruppen in Amazon Redshift den Zugriff auf interne und externe Schemas und Tabellen zu ermöglichen. Schritte und Anweisungen finden Sie unter Berechtigungen und Besitz verwalten in der Amazon Redshift Redshift-Dokumentation.

DBA
AufgabeBeschreibungErforderliche Fähigkeiten

Erstellen und trainieren Sie das ML-Modell in Amazon Redshift.

Erstellen und trainieren Sie Ihr ML-Modell in Amazon Redshift ML. Weitere Informationen finden Sie in der CREATE MODEL Erklärung in der Amazon Redshift Redshift-Dokumentation.

Entwickler, Datenwissenschaftler
AufgabeBeschreibungErforderliche Fähigkeiten

Führen Sie die Inferenz mithilfe der generierten ML-Modellfunktion durch.

Weitere Informationen zur Durchführung von Inferenzen mithilfe der generierten ML-Modellfunktion finden Sie unter Vorhersage in der Amazon Redshift Redshift-Dokumentation.

Datenwissenschaftler, Business Intelligence-Benutzer

Zugehörige Ressourcen

Bereiten Sie einen Trainings- und Testdatensatz vor

Bereiten Sie den Technologie-Stack vor und konfigurieren Sie ihn

Erstellen und trainieren Sie das ML-Modell in Amazon Redshift

Führen Sie Batch-Inferenz und Vorhersage in Amazon Redshift durch

Sonstige Ressourcen