Esegui analisi avanzate con Amazon Redshift ML - Prontuario AWS

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

Esegui analisi avanzate con Amazon Redshift ML

Ambiente: PoC o pilota

Tecnologie: analisi, apprendimento automatico e intelligenza artificiale

Carico di lavoro: tutti gli altri carichi di lavoro

Servizi AWS: Amazon Redshift; Amazon SageMaker

Riepilogo

Sul cloud Amazon Web Services (AWS), puoi utilizzare l'apprendimento automatico di Amazon Redshift (Amazon Redshift ML) per eseguire analisi ML sui dati archiviati in un cluster Amazon Redshift o su Amazon Simple Storage Service (Amazon S3). Amazon Redshift ML supporta l'apprendimento supervisionato, che viene in genere utilizzato per analisi avanzate. I casi d'uso di Amazon Redshift ML includono la previsione dei ricavi, il rilevamento delle frodi con carte di credito e il Customer Lifetime Value (CLV) o le previsioni del tasso di abbandono dei clienti.

Amazon Redshift ML semplifica per gli utenti del database la creazione, il training e la distribuzione di modelli ML utilizzando comandi SQL standard. Amazon Redshift ML utilizza Amazon SageMaker Autopilot per addestrare e ottimizzare automaticamente i migliori modelli ML per la classificazione o la regressione in base ai dati, mantenendo il controllo e la visibilità.

Tutte le interazioni tra Amazon Redshift, Amazon S3 e SageMaker Amazon sono astratte e automatizzate. Una volta addestrato e distribuito, il modello ML diventa disponibile come funzione definita dall'utente (UDF) in Amazon Redshift e può essere utilizzato nelle query SQL.  

Questo modello integra i modelli di creazione, addestramento e distribuzione di modelli ML in Amazon Redshift utilizzando SQL con Amazon Redshift ML dal blog AWS e il tutorial Build, train and deploy a ML SageMaker with Amazon dal Getting Started Resource Center.

Prerequisiti e limitazioni

Prerequisiti

  • Un account AWS attivo

  • Dati esistenti in una tabella Amazon Redshift

Competenze

  • Familiarità con i termini e i concetti utilizzati da Amazon Redshift ML, tra cui apprendimento automatico, formazione e previsioni. Per ulteriori informazioni su questo argomento, consulta i modelli di Training ML nella documentazione di Amazon Machine Learning (Amazon ML).

  • Esperienza con la configurazione degli utenti, la gestione degli accessi e la sintassi SQL standard di Amazon Redshift. Per ulteriori informazioni su questo argomento, consulta la sezione Guida introduttiva ad Amazon Redshift nella documentazione di Amazon Redshift.

  • Conoscenza ed esperienza con Amazon S3 e AWS Identity and Access Management (IAM). 

  • Anche l'esperienza nell'esecuzione di comandi in AWS Command Line Interface (AWS CLI) è utile ma non obbligatoria.

Limitazioni

  • Il cluster Amazon Redshift e il bucket S3 devono trovarsi nella stessa regione AWS.

  • L'approccio di questo modello supporta solo modelli di apprendimento supervisionato come regressione, classificazione binaria e classificazione multiclasse. 

Architettura

I passaggi seguenti spiegano come funziona Amazon Redshift ML SageMaker per creare, addestrare e distribuire un modello di machine learning: 

  1. Amazon Redshift esporta i dati di formazione in un bucket S3.

  2. SageMaker Autopilot preelabora automaticamente i dati di allenamento.

  3. Dopo aver richiamato l'CREATE MODEListruzione, Amazon Redshift ML la SageMaker utilizza per la formazione.

  4. SageMaker Autopilot cerca e consiglia l'algoritmo ML e gli iperparametri ottimali che ottimizzano le metriche di valutazione.

  5. Amazon Redshift ML registra il modello ML di output come funzione SQL nel cluster Amazon Redshift.

  6. La funzione del modello ML può essere utilizzata in un'istruzione SQL. 

Stack tecnologico

  • Amazon Redshift

  • SageMaker

  • Amazon S3

Strumenti

  • Amazon Redshift — Amazon Redshift è un servizio di data warehousing di livello aziendale, su scala petabyte, completamente gestito.

  • Amazon Redshift ML — Amazon Redshift Machine Learning (Amazon Redshift ML) è un robusto servizio basato sul cloud che semplifica l'utilizzo della tecnologia ML da parte di analisti e data scientist di tutti i livelli.

  • Amazon S3 — Amazon Simple Storage Service (Amazon S3) è uno storage per Internet. 

  • Amazon SageMaker: SageMaker è un servizio di machine learning completamente gestito. 

  • Amazon SageMaker Autopilot — SageMaker Autopilot è un set di funzionalità che automatizza le attività chiave di un processo di apprendimento automatico (AutoML).

Codice

Puoi creare un modello di machine learning supervisionato in Amazon Redshift utilizzando il seguente codice:

“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' );”)

Nota: lo SELECT stato può fare riferimento alle tabelle normali di Amazon Redshift, alle tabelle esterne di Amazon Redshift Spectrum o a entrambe.

Epiche

AttivitàDescrizioneCompetenze richieste
Preparare un set di dati di addestramento e test.

Accedi alla Console di gestione AWS e apri la SageMaker console Amazon. Segui le istruzioni del tutorial Build, train and deploy a machine learning model per creare un file.csv o Apache Parquet con una colonna di etichette (formazione supervisionata) e senza intestazione. 

Nota: ti consigliamo di mescolare e suddividere il set di dati grezzi in un set di addestramento per l'addestramento del modello (70 percento) e un set di test per la valutazione delle prestazioni del modello (30 percento).

Data scientist
AttivitàDescrizioneCompetenze richieste
Crea e configura un cluster Amazon Redshift.

Sulla console Amazon Redshift, crea un cluster in base alle tue esigenze. Per ulteriori informazioni su questo argomento, consulta Creare un cluster nella documentazione di Amazon Redshift.  

Importante: i cluster Amazon Redshift devono essere creati con il SQL_PREVIEW tracciato di manutenzione. Per ulteriori informazioni sulle tracce di anteprima, consulta Scelta delle tracce di manutenzione del cluster nella documentazione di Amazon Redshift.

DBA, architetto cloud
Crea un bucket S3 per archiviare i dati di allenamento e gli artefatti del modello.

Sulla console Amazon S3, crea un bucket S3 per i dati di addestramento e test. Per ulteriori informazioni sulla creazione di un bucket S3, consulta Creare un bucket S3 da AWS Quick Starts. 

Importante: assicurati che il cluster Amazon Redshift e il bucket S3 si trovino nella stessa regione. 

DBA, architetto cloud
Crea e collega una policy IAM al cluster Amazon Redshift.

Crea una policy IAM per consentire al cluster Amazon Redshift di accedere SageMaker ad Amazon S3. Per istruzioni e passaggi, consulta Configurazione del cluster per l'utilizzo di Amazon Redshift ML nella documentazione di Amazon Redshift.

DBA, architetto cloud
Consenti a utenti e gruppi di Amazon Redshift di accedere a schemi e tabelle.

Concedi le autorizzazioni per consentire a utenti e gruppi in Amazon Redshift di accedere a schemi e tabelle interni ed esterni. Per passaggi e istruzioni, consulta Gestione delle autorizzazioni e della proprietà nella documentazione di Amazon Redshift.

DBA
AttivitàDescrizioneCompetenze richieste
Crea e addestra il modello ML in Amazon Redshift.

Crea e addestra il tuo modello di machine learning in Amazon Redshift ML. Per ulteriori informazioni, consulta la CREATE MODEL dichiarazione nella documentazione di Amazon Redshift.

Sviluppatore, Data scientist
AttivitàDescrizioneCompetenze richieste
Esegui l'inferenza utilizzando la funzione del modello ML generata.

Per ulteriori informazioni sull'esecuzione dell'inferenza utilizzando la funzione del modello ML generata, consulta Prediction nella documentazione di Amazon Redshift.

Data scientist, utente di business intelligence

Preparare un set di dati di formazione e test

Prepara e configura lo stack tecnologico

Crea e addestra il modello ML in Amazon Redshift

Esegui inferenze e previsioni in batch in Amazon Redshift

Altre risorse