Generazione di previsioni di machine learning senza scrivere codice

GUIDA ALLE OPERAZIONI DI BASE

Panoramica

In questo tutorial, imparerai a utilizzare Amazon SageMaker Canvas per creare modelli di machine learning (ML) e generare previsioni accurate senza scrivere una singola riga di codice.
 
Amazon SageMaker è un'interfaccia visiva point-and-click che espande l'uso del ML ai business analyst, aiutandoli a prendere decisioni aziendali senza alcuna esperienza di machine learning. Con SageMaker Canvas, i business analyst possono creare modelli di ML e generare le previsioni. Come utente SageMaker Canvas potrai importare i dati da origini diverse, selezionare le variabili di destinazione necessarie alle previsioni, preparare ed analizzare i dati. Utilizzando le funzionalità integrate di AutoML, puoi creare un modello di ML e generare previsioni accurate singole o in blocco con pochi clic e prendere decisioni aziendali efficaci.

Argomenti affrontati

Con questa guida, imparerai a:

  • Importare i set di dati
  • Selezionare la variabile di destinazione per la classificazione
  • Ispezionare visivamente i set di dati
  • Creare un modello di ML con la funzione Quick Build di SageMaker Canvas
  • Comprendere funzionalità e parametri di modelli
  • Generare e comprendere previsioni singole e in massa

Prerequisiti

Prima di iniziare questa guida, avrai bisogno di:

 Esperienza AWS

Principiante

 Tempo per il completamento

20 minuti

 Costo richiesto per il completamento

Per una stima dei costi di questo tutorial, consulta Prezzi di SageMaker Canvas.

 Requisiti

Devi aver effettuato l'accesso con un account AWS.

 Servizi utilizzati

Amazon SageMaker Canvas

 Ultimo aggiornamento

28 giugno 2022

Caso d'uso

In questo tutorial creerai un modello di ML che può prevedere il tempo stimato di arrivo (ETA, estimated time of arrival) delle spedizioni (misurato in giorni). Utilizzerai un set di dati che contiene dati di spedizione completi per i prodotti consegnati, inclusi tempo stimato, spedizione, priorità, corriere e origine.

 

Fase 1: Configurazione del dominio di Amazon SageMaker Studio

Un account AWS può avere solo un dominio SageMaker Studio per regione AWS. Se hai già un dominio SageMaker Studio nella regione Stati Uniti orientali (Virginia settentrionale), consulta la Guida alla configurazione di SageMaker Studio per collegare le policy AWS IAM richieste all'account SageMaker Studio, quindi salta la fase 1 e passa direttamente alla fase 2. 

Se invece non disponi di un dominio SageMaker Studio, continua con la fase 1 per eseguire un modello AWS CloudFormation che crea un dominio SageMaker Studio e aggiunge le autorizzazioni necessarie per il resto di questo tutorial.

Scegli il link dello stack AWS CloudFormation. Questo link apre la console AWS CloudFormation e crea il dominio SageMaker e un utente denominato studio-user. Inoltre aggiunge le autorizzazioni richieste al tuo account SageMaker Studio. Nella console CloudFormation, conferma che Stati Uniti orientali (Virginia settentrionale) sia la regione visualizzata nell'angolo in alto a destra. Il nome dello stack deve essere CFN-SM-IM-Lambda-Catalog e non può essere modificato. Questo stack richiede circa 10 minuti per creare tutte le risorse.

Assume inoltre che sia presente un VPC pubblico configurato nell'account. Se non hai un VPC pubblico, consulta VPC con una singola sottorete pubblica per scoprire come creare un VPC pubblico.

Seleziona I acknowledge that AWS CloudFormation might create IAM resources (Sono consapevole che AWS CloudFormation può creare le risorse IAM), quindi scegli Create stack (Crea stack).

Fase 1: Configurazione del dominio di Amazon SageMaker Studio

Nel riquadro CloudFormation, scegli Stacks (Stack). La creazione dello stack richiede circa 10 minuti. Una volta creato lo stack, il suo stato passerà da CREATE_IN_PROGRESS a CREATE_COMPLETE.

Fase 1: Configurazione del dominio di Amazon SageMaker Studio

Fase 2: Accesso a SageMaker Canvas e caricamento del set di dati nel bucket Amazon S3

Immetti SageMaker Canvas nella barra di ricerca nella console AWS e vai a SageMaker Canvas.

Scegli Canvas dal pannello di controllo sul riquadro di sinistra e scegli US East (N. Virginia) (Stati Uniti orientali [Virginia settentrionale]) dall'elenco a discesa delle regioni in alto a destra.

  • Sulla pagina di SageMaker Canvas, scegli Launch SageMaker Canvas (Avvia SageMaker Canvas).
  • Sulla pagina del pannello di controllo, seleziona Canvas dall'elenco a discesa Launch app (Avvia app) accanto a studio-user.
  • Verrà visualizzata la schermata Creating application (Creazione dell'applicazione) di SageMaker Canvas. Il caricamento dell'applicazione richiede qualche minuto.
 
Nota: per accedere facilmente alla console AWS per tutto il resto del tutorial, puoi aprire una nuova scheda per avviare Canvas facendo clic con il pulsante destro del mouse su Canvas dall'elenco a discesa Launch app (Avvia app).

Se è la prima volta che utilizzi SageMaker in US-East 1, SageMaker Canvas crea il bucket Amazon S3 con un nome che utilizza il seguente schema: sagemaker-<regione>-<id-account>. Prima di procedere con il resto del tutorial, scarica i set di dati di seguito e salvali sul tuo computer locale. Quindi carica i set di dati nel bucket S3 predefinito che SageMaker Canvas ha creato per te.

Scarica il registro di spedizione sintetico e i set di dati dei prodotti.

Nella barra di ricerca della console AWS, immetti S3 e poi seleziona S3.

 

Fase 2: Caricamento del set di dati nel bucket Amazon S3

Quando si apre la console S3, puoi trovare il tuo bucket predefinito che SageMaker Canvas ha creato per tuo conto nella sezione Buckets (Bucket). Scegli il bucket denominato sagemaker-<regione>-<id-account> e nella pagina successiva scegli Upload (Carica).

Fase 2: Caricamento del set di dati nel bucket Amazon S3

Sulla pagina Upload (Carica), scegli Add files (Aggiungi file), quindi seleziona i due set di dati scaricati nella fase precedente. Scorri fino alla parte inferiore della pagina e fai clic su Upload (Carica). SageMaker Canvas accederà a questi file prima di creare il modello.

Fase 2: Caricamento del set di dati nel bucket Amazon S3
Fase 2: Caricamento del set di dati nel bucket Amazon S3

Fase 3: Configurazione di SageMaker Canvas per la creazione del modello automatico

Importa i dati in SageMaker Canvas per l'ispezione visiva e la creazione del modello.

Importa il set di dati in SageMaker Canvas.

  • Nell'interfaccia di SageMaker Canvas, scegli Datasets (Set di dati) nel riquadro sinistro, quindi scegli + Import (Importa).
  • Seleziona il bucket Amazon S3 denominato sagemaker-<regione>-<id-account> in cui hai caricato i set di dati nella fase precedente. Seleziona i set di dati shipping_logs.csv e product_descriptions.csv selezionando le caselle di controllo sulla loro sinistra. Nella parte inferiore della pagina sono presenti due pulsanti: Preview all (Anteprima) e Import data (Importa dati). Scegli Preview all (Anteprima). Ciò consente di visualizzare un'anteprima di 100 righe dei set di dati.
  • Dopo aver selezionato i set di dati, scegli Import data (Importa dati) per importarli in SageMaker Canvas.
Fase 3: Configurazione di SageMaker Canvas per la creazione del modello automatico
Fase 3: Configurazione di SageMaker Canvas per la creazione del modello automatico
Fase 3: Configurazione di SageMaker Canvas per la creazione del modello automatico

Sulla pagina SageMaker Canvas, nella sezione Datasets (Set di dati), troverai i due set di dati importati. Scegli Join data (Unisci dati).

Fase 3: Configurazione di SageMaker Canvas per la creazione del modello automatico

Sulla pagina Join Datasets (Unisci set di dati), trascina i due set di dati dal pannello di sinistra al pannello di destra. Seleziona l'icona join (unisci) tra i due set di dati. Apparirà un pop-up che mostra i dettagli del join. Assicurati che questo tipo di join sia Inner e che la colonna di unione sia ProductId. Scegli Save & close (Salva e chiudi) quindi seleziona Import data (Importa dati).

  • Nella finestra di dialogo Import data (Importa dati), immetti il nome ConsolidatedShippingData nel campo Import dataset name (Nome set di dati di importazione) e scegli Import data (Importa dati).


Fase 3: Configurazione di SageMaker Canvas per la creazione del modello automatico
Fase 3: Configurazione di SageMaker Canvas per la creazione del modello automatico
Fase 3: Configurazione di SageMaker Canvas per la creazione del modello automatico

Fase 4: Creazione, addestramento e analisi di un modello di ML

Configura la variabile di destinazione, ispeziona visivamente le proprietà dei dati e inizia il processo di creazione del modello.

Sull'interfaccia utente di SageMaker Canvas, scegli Models (Modelli), quindi seleziona + New model (Nuovo modello). Nella finestra di dialogo Create new model (Crea nuovo modello), inserisci ShippingForecast nel campo del nome del modello e scegli Create (Crea).

Fase 4: Creazione, addestramento e analisi di un modello di ML
Fase 4: Creazione, addestramento e analisi di un modello di ML

La pagina di visualizzazione del modello è costituita da 4 schede che rappresentano le fasi coinvolte nel processo di creazione di un modello e di recupero delle previsioni. Le schede sono:

  • Select (Seleziona): configura i dati di input.
  • Build (Crea): crea il modello di ML.
  • Analyze (Analizza): analizza l'output del modello e le funzionalità.
  • Predict (Previsione): esegue le previsioni in massa o su un singolo campione.

Nella scheda Select (Seleziona) scegli il pulsante d'opzione per il set di dati ConsolidatedShippingData creato nella fase precedente. Questo set di dati contiene 16 colonne e 10.000 righe. Contiene inoltre una descrizione dettagliata della forma e della dimensione del set di dati. Scegli Select dataset (Seleziona set di dati).

Fase 4: Creazione, addestramento e analisi di un modello di ML
Fase 4: Creazione, addestramento e analisi di un modello di ML

Dopo aver selezionato il set di dati, SageMaker Canvas passa automaticamente alla fase Build (Crea). Su questa scheda scegli la colonna di destinazione che, in questo esempio, è ActualShippingDays. Poiché questa colonna contiene il numero di giorni richiesti per l'arrivo della merce, è adatta per l'uso come colonna di destinazione.

  • Una volta seleziona la colonna di destinazione, SageMaker Canvas prova a dedurre il tipo di problema. Poiché sei interessato a quanti giorni la merce impiegherà per arrivare al cliente, questo è un problema di regressione o previsione numerica. La regressione stima i valori di una variabile di destinazione dipendente sulla base di una o più altre variabili o attributi ad essa correlati. In questo caso, SageMaker Canvas inizialmente può prevedere questo caso d'uso come un problema Tipo di previsione per serie temporali in quanto ha rilevato una colonna con date nel set di dati. Tuttavia, puoi modificare il tipo di problema in Tipo di modello numerico selezionandolo manualmente con il tipo di link Change type (Cambia tipo) al centro della pagina.
Fase 4: Creazione, addestramento e analisi di un modello di ML
Fase 4: Creazione, addestramento e analisi di un modello di ML
Noterai che SageMaker Canvas fornisce statistiche sul set di dati, inclusi valori mancanti e non corrispondenti, valori univoci e valori medi e mediani per ciascuna delle colonne del set di dati. Puoi utilizzare queste statistiche per eliminare alcune colonne. Se non desideri utilizzare una determinata colonna per la previsione, puoi deselezionarla utilizzando la casella di controllo sulla sinistra.
  • Nota che la correlazione delle colonne XShippingDistance e YShippingDistance con la destinazione è trascurabile.
  • Poiché le funzionalità con una correlazione trascurabile con l'obiettivo non sono sufficientemente informative per l'attività di previsione in corso, è possibile eliminare le colonne XShippingDistance,YShippingDistance, ProductID e OrderID perché sono chiavi primarie e non dovrebbero contenere informazioni preziose. Puoi deselezionare le relative caselle di controllo.
  • Puoi selezionare l'icona delle barre verticali per ispezionare le distribuzioni delle colonne. Ciò è molto utile per evidenziare squilibri e potenziali distorsioni nei dati.
Fase 4: Creazione, addestramento e analisi di un modello di ML
Fase 4: Creazione, addestramento e analisi di un modello di ML
Fase 4: Creazione, addestramento e analisi di un modello di ML
Dopo aver completato l'esplorazione dei dati, puoi addestrare un modello. In SageMaker Canvas, esistono due metodi per completare l'addestramento: la creazione rapida e la creazione standard. Per creare il modello con la creazione rapida sono necessari di solito dai 2 ai 15 minuti mentre con la creazione standard sono necessarie dalle 2 alle 4 ore e generalmente ha una precisione maggiore. La creazione rapida addestra meno combinazioni di modelli e iperparametri per dare priorità alla velocità. Ciò è particolarmente applicabile in casi come questo tutorial, in cui l'obiettivo è sviluppare rapidamente un modello prototipo per il caso d'uso scelto.

Per questo tutorial, scegli la creazione rapida per iniziare la creazione del modello. Il completamento di questo processo richiede meno di 5 minuti.

Fase 4: Creazione, addestramento e analisi di un modello di ML

Una volta completata la creazione del modello, SageMaker Canvas passa automaticamente alla scheda Analyze (Analizza) per visualizzare i risultati dell'addestramento rapido. Il modello SageMaker Canvas generato tramite la creazione rapida può prevedere il numero di giorni di spedizione entro entro +/-1,2333 del valore effettivo. Il machine learning introduce una certa stocasticità nel processo di addestramento dei modelli, che può portare a risultati diversi per build diverse. Pertanto, le prestazioni esatte in termini di parametri visualizzati potrebbero essere diverse.

Fase 4: Creazione, addestramento e analisi di un modello di ML

Nella scheda Overview (Panoramica), SageMaker Canvas mostra l'impatto della colonna o l'importanza stimata di ciascuna colonna di input nella previsione della colonna di destinazione. In questo esempio, la colonna ExpectedShippingDays ha l'impatto significativo sulla previsione del numero di giorni di spedizione. Sul pannello di destra, puoi anche vedere la direzione dell'impatto di una funzione. Ad esempio, maggiore è il valore di ExpectedShippingDays, più positivo sarà il suo impatto sulla previsione del numero di giorni di spedizione.

Fase 4: Creazione, addestramento e analisi di un modello di ML

Nella scheda Scoring (Punteggio), puoi visualizzare un grafico che rappresenta la retta di regressione più adatta per ActualshippingDays. In media, la previsione del modello ha una differenza di +/- 1,2333 dal valore effettivo di ActualShippingDays. La sezione Scoring (Punteggio) per la previsione numerica mostra una linea che indica il valore previsto del modello in relazione ai dati utilizzati per fare le previsioni. I valori della previsione numerica sono spesso +/- il valore RMSE (errore quadratico medio della radice). Il valore previsto dal modello si trova spesso all'interno dell'intervallo dell'RMSE. La larghezza della banda viola attorno alla linea indica l'intervallo RMSE. I valori previsti spesso rientrano nell'intervallo. Per avere una comprensione più approfondita delle prestazioni del modello, seleziona il link Advanced metrics (Parametri avanzati) sulla destra per visualizzare la pagina Advanced metrics (Parametri avanzati).

  • I vari parametri sulla pagina Advanced metrics (Parametri avanzati) sono R2, Mean Absolute Error o MAE (errore assoluto medio), Mean Absolute Percentage Error o MAPE (errore percentuale assoluto medio) e Root Mean Squared Error o RMSE (errore al quadrato della media radice). La pagina Advanced metrics (Parametri avanzati) mostra anche i grafici per l'ispezione visiva delle prestazioni del modello. Immagine che mostra un grafico dei residui o degli errori. La linea orizzontale indica un errore pari a 0 o una previsione perfetta. I punti blu sono gli errori. La loro distanza dalla linea orizzontale indica l'entità degli errori.
  • Scorrendo verso il basso nella pagina dei parametri avanzati, puoi visualizzare un grafico della densità degli errori che mostra la distribuzione degli errori e la loro diffusione rispetto a MAE e RMSE del modello. Una densità di errore con forma simile a una distribuzione normale è indicativa di buone prestazioni del modello.
Fase 4: Creazione, addestramento e analisi di un modello di ML
Fase 4: Creazione, addestramento e analisi di un modello di ML
Fase 4: Creazione, addestramento e analisi di un modello di ML

Fase 5: Generazione di previsioni del modello

Ora che disponi di un modello di regressione, puoi utilizzare il modello per eseguire previsioni oppure creare una nuova versione di questo modello per l'addestramento con il processo di creazione standard. In questa fase, utilizzi SageMaker Canvas per generare previsioni sui set di dati sia singoli che in massa.

Per iniziare a generare le previsioni, scegli la scheda Predict (Previsione).

  • Scegli il pulsante Predict (Previsione) nella parte inferiore della pagina Analyze (Analizza) oppure seleziona la scheda Predict (Previsione). Nella pagina Predict (Previsione), l'opzione Batch prediction (Previsione in batch) è già selezionata. Scegli Select dataset (Seleziona set di dati) quindi seleziona il set di dati ConsolidatedShippingData. Nei flussi di lavoro di ML effettivi, questo set di dati dovrebbe essere separato dal set di dati di addestramento. Tuttavia, per semplicità, utilizzi lo stesso set di dati per dimostrare come SageMaker Canvas genera previsioni. Scegli Generate predictions (Genera previsioni).
  • Dopo pochi secondi, la previsione è fatta. Scegli l'icona delle opzioni e seleziona preview (anteprima) per visualizzare un'anteprima delle previsioni passando il mouse sopra il nome o lo stato del set di dati delle previsioni. Puoi inoltre scegliere Download (Scarica) per scaricare un file CSV contenente l'output completo. SageMaker Canvas restituisce una previsione per ogni riga di dati. In questo tutorial, la funzionalità con la massima importanza è la funzionalità ExpectedShippingDays. Viene anche presentato accanto alle previsioni per un confronto visivo.
  • Sulla pagina Predict (Previsione), puoi generaer le previsioni per un singolo campione selezionando Single prediction (Singola previsione). SageMaker Canvas presenta un'interfaccia in cui è possibile inserire manualmente i valori per ciascuna delle variabili di input utilizzate nel modello. Questo tipo di analisi è ideale per scenari ipotetici in cui si desidera sapere come cambia la previsione quando una o più variabili aumentano o diminuiscono di valore. Con la previsione del singolo insieme di valori di colonna, SageMaker Canvas fornisce l'importanza delle singole funzionalità. Indica le colonne con la maggiore influenza sulla previsione del campione corrente.
Fase 5: Generazione di previsioni del modello
Fase 5: Generazione di previsioni del modello
Fase 5: Generazione di previsioni del modello
Fase 5: Generazione di previsioni del modello
Fase 5: Generazione di previsioni del modello
Fase 5: Generazione di previsioni del modello
Dopo il processo di creazione del modello, SageMaker Canvas carica tutti gli artefatti, incluso il modello addestrato salvato come file di selezione, i parametri, i set di dati e le previsioni nel bucket S3 predefinito in una posizione denominata Canvas/studio-user. È possibile ispezionare i contenuti e utilizzarli secondo necessità per ulteriori sviluppi.
Fase 5: Generazione di previsioni del modello

Per l'ambito di questo tutorial, il modello standard non è coperto. Tuttavia, l'addestramento in questa modalità è simile ai passaggi descritti in questo tutorial.

Puoi iniziare dando al modello il nome ShippingForecastStandardModel. Inoltre, nella scheda Build (Crea) puoi scegliere il modello standard al posto del modello rapido. Da lì, procedi con i passaggi rimanenti. La modalità di creazione standard è utile nel fornire la funzionalità aggiuntiva di poter condividere il modello addestrato con i data scientist tramite SageMaker Studio. Ciò consente la collaborazione, il perfezionamento rapido del modello e le iterazioni. L'opzione di condivisione sarà disponibile nella scheda Analyze (Analizza) una volta completato l'addestramento del modello.

Fase 5: Generazione di previsioni del modello
Fase 5: Generazione di previsioni del modello

Fase 6: Eliminazione delle risorse AWS

Per evitare di ricevere addebiti non desiderati, una best practice consigliata consiste nell'eliminare le risorse non più utilizzate.

Passa alla console S3 e seleziona la voce di menu Buckets (Bucket).

Elimina l'oggetto di test dal tuo bucket di test. Seleziona il nome del bucket con cui hai lavorato per questo tutorial. Seleziona la casella di controllo a sinistra del nome dell'oggetto di prova, quindi seleziona il pulsante Delete (Elimina). Sulla pagina Delete objects (Elimina oggetti), verifica di aver selezionato l'oggetto corretto da eliminare, quindi digita permanently delete nella casella di conferma Permanently delete objects (Elimina definitivamente gli oggetti). Quindi seleziona il pulsante Delete object (Elimina oggetto) per continuare. Successivamente, verrà visualizzato un banner che indica se l'eliminazione è andata a buon fine.

 

Fase 6: Eliminazione delle risorse AWS
Fase 6: Eliminazione delle risorse AWS

Sulla pagina principale di SageMaker Canvas, scegli Models (Modelli). Nel riquadro di destra è visibile il modello che hai creato. Scegli i puntini di sospensione verticali sulla destra dell'opzione View (Visualizza) quindi seleziona Delete model (Elimina modello).

Fase 6: Eliminazione delle risorse AWS

Nella console SageMaker Studio, seleziona studio-user e per ogni app riportata in Apps (App) scegli Delete app (Elimina app). Segui le istruzioni sullo schermo per confermare l'operazione di eliminazione. Attendere finché lo stato diventa Deleted (Eliminato).

Fase 6: Eliminazione delle risorse AWS
Fase 6: Eliminazione delle risorse AWS

Se nella fase 1 hai utilizzato un dominio SageMaker Studio esistente, salta il resto della fase 6 e procedi direttamente alla sezione conclusiva. 

Se hai eseguito il modello CloudFormation nella fase 1 per creare un nuovo dominio SageMaker Studio, continua con le fasi seguenti per eliminare il dominio, l'utente e le risorse create dal modello CloudFormation.

Per aprire la console CloudFormation, immetti CloudFormation nella barra di ricerca della console AWS, quindi scegli CloudFormation dai risultati della ricerca.

Fase 6: Eliminazione delle risorse AWS

Nel riquadro CloudFormation, scegli Stacks (Stack). Dall'elenco a discesa degli stati, seleziona Active (Attivo). In Stack name (Nome stack), scegli CFN-SM-IM-Lambda-catalog per aprire la pagina dei dettagli dello stack.

Fase 6: Eliminazione delle risorse AWS

Nella pagina dei dettagli dello stack CFN-SM-IM-Lambda-catalog, scegli Delete (Elimina) per eliminare lo stack insieme alle risorse create nella fase 1.

Fase 6: Eliminazione delle risorse AWS

Conclusioni

Complimenti! Hai terminato il tutorial Generazione di previsioni di machine learning senza scrivere codice.

Hai correttamente utilizzato Amazon SageMaker Canvas per importare e preparare un set di dati per il ML da Amazon S3, selezionare la variabile di destinazione, creare un modello di ML utilizzando la modalità di compilazione rapida e utilizzare l'interfaccia visiva.

Questa pagina è stata utile?

Fasi successive