Preparazione dei dati e addestramento dei modelli unificati con Amazon SageMaker Data Wrangler e Amazon SageMaker Autopilot PlatoBlockchain Data Intelligence. Ricerca verticale. Ai.

Preparazione dei dati unificata e training del modello con Amazon SageMaker Data Wrangler e Amazon SageMaker Autopilot

I dati alimentano l'apprendimento automatico (ML); la qualità dei dati ha un impatto diretto sulla qualità dei modelli ML. Pertanto, il miglioramento della qualità dei dati e l'utilizzo delle giuste tecniche di progettazione delle funzionalità sono fondamentali per creare modelli ML accurati. I professionisti del ML spesso ripetono noiosamente l'ingegneria delle funzionalità, la scelta degli algoritmi e altri aspetti del ML alla ricerca di modelli ottimali che si generalizzino bene sui dati del mondo reale e forniscano i risultati desiderati. Poiché la velocità nel fare affari in modo sproporzionato è importante, questo processo estremamente noioso e iterativo può portare a ritardi nel progetto e perdita di opportunità di business.

Gestore di dati di Amazon SageMaker riduce il tempo di aggregazione e preparazione dei dati per ML da settimane a minuti e Pilota automatico Amazon SageMaker crea, addestra e ottimizza automaticamente i migliori modelli ML in base ai tuoi dati. Con Autopilot, mantieni il pieno controllo e la visibilità dei tuoi dati e del tuo modello. Entrambi i servizi sono progettati appositamente per rendere i professionisti del ML più produttivi e accelerare il time to value.

Data Wrangler ora offre un'esperienza unificata che ti consente di preparare i dati e addestrare senza problemi un modello ML in Autopilot. Con questa funzionalità appena lanciata, ora puoi preparare i tuoi dati in Data Wrangler e avviare facilmente esperimenti Autopilot direttamente dall'interfaccia utente (UI) di Data Wrangler. Con pochi clic, puoi creare, addestrare e ottimizzare automaticamente i modelli ML, semplificando l'utilizzo di tecniche di progettazione delle funzionalità all'avanguardia, addestrando modelli ML di alta qualità e ottenendo informazioni dettagliate dai tuoi dati più velocemente.

In questo post, discutiamo di come utilizzare questa nuova esperienza integrata in Data Wrangler per analizzare i set di dati e creare facilmente modelli ML di alta qualità in Autopilot.

Panoramica del set di dati

Gli indiani Pima sono un gruppo indigeno che vive in Messico e Arizona, negli Stati Uniti. Studi mostrano gli indiani Pima come un gruppo di popolazione ad alto rischio di diabete mellito. Prevedere la probabilità del rischio e della suscettibilità di un individuo a una malattia cronica come il diabete è un compito importante per migliorare la salute e il benessere di questo gruppo minoritario spesso sottorappresentato.

Usiamo il Set di dati pubblici sul diabete indiano Pima per prevedere la suscettibilità di un individuo al diabete. Ci concentriamo sulla nuova integrazione tra Data Wrangler e Autopilot per preparare i dati e creare automaticamente un modello ML senza scrivere una sola riga di codice.

Il set di dati contiene informazioni sulle femmine indiane Pima di età pari o superiore a 21 anni e include diverse variabili predittive mediche (indipendenti) e una variabile target (dipendente), Outcome. Il grafico seguente descrive le colonne nel nostro set di dati.

Colonna Nome Descrizione
gravidanze Il numero di volte incinta
Glucosio Concentrazione di glucosio plasmatico in un test di tolleranza al glucosio orale entro 2 ore
Pressione sanguigna Pressione sanguigna diastolica (mm Hg)
Spessore della pelle Spessore della piega cutanea del tricipite (mm)
Insulina Insulina sierica di 2 ore (mu U/ml)
BMI Indice di massa corporea (peso in kg/(altezza in m)^2)
Diabete Pedigree Funzione genealogica del diabete
Età Età in anni
Risultato La variabile di destinazione

Il set di dati contiene 768 record, con 9 funzioni totali. Memorizziamo questo set di dati in Secchio di archiviazione semplice Amazon (Amazon S3) come file CSV e quindi importare il CSV direttamente in un flusso di Data Wrangler da Amazon S3.

Panoramica della soluzione

Il diagramma seguente riassume ciò che realizziamo in questo post.[KT1]

Preparazione dei dati e addestramento dei modelli unificati con Amazon SageMaker Data Wrangler e Amazon SageMaker Autopilot PlatoBlockchain Data Intelligence. Ricerca verticale. Ai.

Data scientist, medici e altri esperti del settore medico forniscono ai dati dei pazienti informazioni su livelli di glucosio, pressione sanguigna, indice di massa corporea e altre caratteristiche utilizzate per prevedere la probabilità di avere il diabete. Con il set di dati in Amazon S3, importiamo il set di dati in Data Wrangler per eseguire analisi dei dati esplorativi (EDA), profilazione dei dati, progettazione delle funzionalità e suddivisione del set di dati in training e test per la creazione e la valutazione di modelli.

Utilizziamo quindi la nuova integrazione delle funzionalità di Autopilot per creare rapidamente un modello direttamente dall'interfaccia di Data Wrangler. Scegliamo il miglior modello di Autopilot in base al modello con il punteggio F-beta più alto. Dopo che Autopilot ha trovato il modello migliore, eseguiamo a Trasformazione batch di SageMaker lavoro sul test (holdout) impostato con gli artefatti del modello del miglior modello per la valutazione.

Gli esperti medici possono fornire nuovi dati al modello convalidato per ottenere una previsione per vedere se un paziente avrà probabilmente il diabete. Grazie a queste informazioni, gli esperti medici possono iniziare presto il trattamento per migliorare la salute e il benessere delle popolazioni vulnerabili. Gli esperti medici possono anche spiegare la previsione di un modello facendo riferimento ai dettagli del modello in Autopilot perché hanno piena visibilità sulla spiegabilità, sulle prestazioni e sugli artefatti del modello. Questa visibilità, oltre alla convalida del modello dal set di test, offre agli esperti medici una maggiore fiducia nelle capacità predittive del modello.

Ti guidiamo attraverso i seguenti passaggi di alto livello.

  1. Importa il set di dati da Amazon S3.
  2. Esegui EDA e profilazione dei dati con Data Wrangler.
  3. Esegui la progettazione delle funzionalità per gestire valori anomali e valori mancanti.
  4. Dividi i dati in set di treni e test.
  5. Addestra e costruisci un modello con Autopilot.
  6. Testare il modello su un campione di controllo con un notebook SageMaker.
  7. Analizza la convalida e le prestazioni del set di test.

Prerequisiti

Completa i seguenti passaggi prerequisiti:

  1. Carica il set di dati a un secchio S3 a tua scelta.
  2. Assicurati di avere le autorizzazioni necessarie. Per ulteriori informazioni, fare riferimento a Inizia con Data Wrangler.
  3. Configura un dominio SageMaker configurato per utilizzare Data Wrangler. Per istruzioni, fare riferimento a Integrazione nel dominio Amazon SageMaker.

Importa il tuo set di dati con Data Wrangler

Puoi integrare un flusso di dati di Data Wrangler nei tuoi flussi di lavoro ML per semplificare e ottimizzare la preelaborazione dei dati e la progettazione delle funzionalità utilizzando poca o nessuna codifica. Completa i seguenti passaggi:

  1. Crea un nuovo Flusso di Data Wrangler.

Se è la prima volta che apri Data Wrangler, potresti dover attendere qualche minuto prima che sia pronto.

  1. Scegli il set di dati archiviato in Amazon S3 e importalo in Data Wrangler.

Preparazione dei dati e addestramento dei modelli unificati con Amazon SageMaker Data Wrangler e Amazon SageMaker Autopilot PlatoBlockchain Data Intelligence. Ricerca verticale. Ai.

Dopo aver importato il set di dati, dovresti vedere l'inizio di un flusso di dati all'interno dell'interfaccia utente di Data Wrangler. Ora hai un diagramma di flusso.

  1. Scegli il segno più accanto a Tipi di dati e scegli Modifica per confermare che Data Wrangler ha dedotto automaticamente i tipi di dati corretti per le tue colonne di dati.

Preparazione dei dati e addestramento dei modelli unificati con Amazon SageMaker Data Wrangler e Amazon SageMaker Autopilot PlatoBlockchain Data Intelligence. Ricerca verticale. Ai.

Se i tipi di dati non sono corretti, puoi modificarli facilmente tramite l'interfaccia utente. Se sono presenti più origini dati, puoi unirle o concatenarle.

Ora possiamo creare un'analisi e aggiungere trasformazioni.

Esegui analisi esplorative dei dati con il rapporto sugli approfondimenti dei dati

L'analisi dei dati esplorativi è una parte fondamentale del flusso di lavoro di ML. Possiamo utilizzare il nuovo rapporto sulle informazioni dettagliate sui dati di Data Wrangler per ottenere una migliore comprensione del profilo e della distribuzione dei nostri dati. Il report include statistiche di riepilogo, avvisi sulla qualità dei dati, informazioni dettagliate sulla colonna di destinazione, un modello rapido e informazioni su righe anomale e duplicate.

  1. Scegli il segno più accanto a Tipi di dati e scegli Ottieni informazioni dettagliate sui dati.

Preparazione dei dati e addestramento dei modelli unificati con Amazon SageMaker Data Wrangler e Amazon SageMaker Autopilot PlatoBlockchain Data Intelligence. Ricerca verticale. Ai.

  1. Nel Target colonnascegli Risultato.
  2. Nel Tipo di problemae (facoltativamente) selezionare Classificazione.
  3. Scegli Creare.

Preparazione dei dati e addestramento dei modelli unificati con Amazon SageMaker Data Wrangler e Amazon SageMaker Autopilot PlatoBlockchain Data Intelligence. Ricerca verticale. Ai.

I risultati mostrano un riepilogo dei dati con le statistiche del set di dati.

Preparazione dei dati e addestramento dei modelli unificati con Amazon SageMaker Data Wrangler e Amazon SageMaker Autopilot PlatoBlockchain Data Intelligence. Ricerca verticale. Ai.

Possiamo anche visualizzare la distribuzione delle righe etichettate con un istogramma, una stima della qualità prevista prevista del modello con la funzionalità del modello rapido e una tabella di riepilogo delle funzionalità.

Preparazione dei dati e addestramento dei modelli unificati con Amazon SageMaker Data Wrangler e Amazon SageMaker Autopilot PlatoBlockchain Data Intelligence. Ricerca verticale. Ai.

Preparazione dei dati e addestramento dei modelli unificati con Amazon SageMaker Data Wrangler e Amazon SageMaker Autopilot PlatoBlockchain Data Intelligence. Ricerca verticale. Ai.

Non entriamo nei dettagli dell'analisi del rapporto sugli approfondimenti dei dati; fare riferimento a Accelera la preparazione dei dati con la qualità dei dati e le informazioni dettagliate in Amazon SageMaker Data Wrangler per ulteriori dettagli su come utilizzare il rapporto sulle informazioni dettagliate sui dati per accelerare le fasi di preparazione dei dati.

Eseguire l'ingegneria delle funzionalità

Ora che abbiamo profilato e analizzato la distribuzione delle nostre colonne di input ad alto livello, la prima considerazione per migliorare la qualità dei nostri dati potrebbe essere quella di gestire i valori mancanti.

Ad esempio, sappiamo che gli zeri (0) per il Insulin la colonna rappresenta i valori mancanti. Potremmo seguire la raccomandazione di sostituire gli zeri con NaN. Ma a un esame più attento, scopriamo che il valore minimo è 0 per altre colonne come Glucose, BloodPressure, SkinThicknesse BMI. Abbiamo bisogno di un modo per gestire i valori mancanti, ma dobbiamo essere sensibili alle colonne con zeri come dati validi. Vediamo come possiamo risolvere questo problema.

Nel Caratteristica Dettagli sezione, la relazione solleva a Valore mancante mascherato avviso per la funzione Insulin.

Preparazione dei dati e addestramento dei modelli unificati con Amazon SageMaker Data Wrangler e Amazon SageMaker Autopilot PlatoBlockchain Data Intelligence. Ricerca verticale. Ai.

Preparazione dei dati e addestramento dei modelli unificati con Amazon SageMaker Data Wrangler e Amazon SageMaker Autopilot PlatoBlockchain Data Intelligence. Ricerca verticale. Ai.

Perché gli zeri nel Insulin colonna sono infatti dati mancanti, usiamo il Converti regex in mancante trasforma per trasformare zero valori in vuoti (valori mancanti).

  1. Scegli il segno più accanto a Dati Tipi di e scegli Aggiungi trasformare.
  2.  Scegli Cerca e modifica.
  3. Nel Trasformarescegli Converti regex in mancante.
  4. Nel Ingresso colonne, scegli le colonne Insulin, Glucose, BloodPressure, SkinThicknesse BMI.
  5. Nel Cartamodello, accedere 0.
  6. Scegli Anteprima ed Aggiungi per salvare questo passaggio.

Le 0 voci sotto Insulin, Glucose, BloodPressure, SkinThicknesse BMI ora mancano i valori.

Preparazione dei dati e addestramento dei modelli unificati con Amazon SageMaker Data Wrangler e Amazon SageMaker Autopilot PlatoBlockchain Data Intelligence. Ricerca verticale. Ai.

Data Wrangler ti offre alcune altre opzioni per correggere i valori mancanti.

  1. Gestiamo i valori mancanti imputando la mediana approssimativa per il Glucose colonna.

Preparazione dei dati e addestramento dei modelli unificati con Amazon SageMaker Data Wrangler e Amazon SageMaker Autopilot PlatoBlockchain Data Intelligence. Ricerca verticale. Ai.

Vogliamo anche garantire che le nostre funzionalità siano della stessa scala. Non vogliamo dare accidentalmente più peso a una determinata funzionalità solo perché contengono un intervallo numerico più ampio. Normalizziamo le nostre funzionalità per farlo.

  1. Aggiungere un nuovo Processo numerico trasforma e scegli Valori di scala.
  2. Nel Scalerscegli Ablatore min-max.
  3. Nel Colonne di input, scegli le colonne Pregnancies, BloodPressure, Glucose, SkinThickness, Insulin, BMIe Age.
  4. Impostato Min a 0 ed Max a 1.

Questo assicura che le nostre caratteristiche siano tra i valori 0 ed 1.

Preparazione dei dati e addestramento dei modelli unificati con Amazon SageMaker Data Wrangler e Amazon SageMaker Autopilot PlatoBlockchain Data Intelligence. Ricerca verticale. Ai.

Ora che abbiamo creato alcune funzionalità, abbiamo suddiviso il nostro set di dati in training e test prima di creare un modello.

Suddividi i dati in formazione e test

Nella fase di creazione del modello del flusso di lavoro ML, si verifica l'efficacia del modello eseguendo previsioni batch. Puoi mettere da parte un set di dati di test o di controllo per la valutazione per vedere come si comporta il tuo modello confrontando le previsioni con la verità di base. In genere, se più previsioni del modello corrispondono a true etichette, possiamo determinare che il modello sta funzionando bene.

Usiamo Data Wrangler per dividere il nostro set di dati per il test. Conserviamo il 90% del nostro set di dati per l'addestramento perché disponiamo di un set di dati relativamente piccolo. Il restante 10% del nostro set di dati funge da set di dati di test. Utilizziamo questo set di dati per convalidare il modello Autopilot più avanti in questo post.

Dividiamo i nostri dati scegliendo il Dividi i dati trasformare e scegliere Divisione randomizzata come metodo. Indichiamo 0.9 come percentuale divisa per l'allenamento e 0.1 per i test.

Preparazione dei dati e addestramento dei modelli unificati con Amazon SageMaker Data Wrangler e Amazon SageMaker Autopilot PlatoBlockchain Data Intelligence. Ricerca verticale. Ai.

Con la trasformazione dei dati e le fasi di progettazione complete, siamo ora pronti per addestrare un modello.

Addestra e convalida il modello

Possiamo utilizzare la nuova integrazione di Data Wrangler con Autopilot per addestrare direttamente un modello dall'interfaccia utente del flusso di dati di Data Wrangler.

  1. Scegli il segno più accanto a dataset e scegli Modello di treno.

Preparazione dei dati e addestramento dei modelli unificati con Amazon SageMaker Data Wrangler e Amazon SageMaker Autopilot PlatoBlockchain Data Intelligence. Ricerca verticale. Ai.

  1. Nel Posizione Amazon S3, specifica la posizione Amazon S3 in cui SageMaker esporta i tuoi dati.

Autopilot utilizza questa posizione per addestrare automaticamente un modello, risparmiando tempo dal dover definire la posizione di output del flusso di Data Wrangler, quindi dover definire la posizione di input dei dati di addestramento di Autopilot. Questo rende l'esperienza più fluida.

  1. Scegli Esportare e treno per avviare la costruzione del modello con il pilota automatico.

Preparazione dei dati e addestramento dei modelli unificati con Amazon SageMaker Data Wrangler e Amazon SageMaker Autopilot PlatoBlockchain Data Intelligence. Ricerca verticale. Ai.

Autopilot seleziona automaticamente le posizioni di input e output dei dati di addestramento. Devi solo specificare la colonna di destinazione e fare clic Crea esperimento per addestrare il tuo modello

Preparazione dei dati e addestramento dei modelli unificati con Amazon SageMaker Data Wrangler e Amazon SageMaker Autopilot PlatoBlockchain Data Intelligence. Ricerca verticale. Ai.

Testare il modello su un campione di controllo

Quando Autopilot completa l'esperimento, possiamo visualizzare i risultati dell'addestramento ed esplorare il modello migliore.

Preparazione dei dati e addestramento dei modelli unificati con Amazon SageMaker Data Wrangler e Amazon SageMaker Autopilot PlatoBlockchain Data Intelligence. Ricerca verticale. Ai.

Preparazione dei dati e addestramento dei modelli unificati con Amazon SageMaker Data Wrangler e Amazon SageMaker Autopilot PlatoBlockchain Data Intelligence. Ricerca verticale. Ai.

  1. Scegli Visualizza i dettagli del modello per il modello desiderato, quindi scegli il Prestazione scheda nella pagina dei dettagli del modello.

Preparazione dei dati e addestramento dei modelli unificati con Amazon SageMaker Data Wrangler e Amazon SageMaker Autopilot PlatoBlockchain Data Intelligence. Ricerca verticale. Ai.

I Prestazione la scheda mostra diversi test di misurazione del modello, tra cui una matrice di confusione, l'area sotto la curva di precisione/richiamo (AUCPR) e l'area sotto la curva caratteristica di funzionamento del ricevitore (ROC). Questi illustrano le prestazioni complessive di convalida del modello, ma non ci dicono se il modello si generalizzerà bene. Abbiamo ancora bisogno di eseguire valutazioni su dati di test invisibili per vedere con quanta precisione il modello prevede se un individuo avrà il diabete.

Per garantire che il modello si generalizzi abbastanza bene, mettiamo da parte il campione di prova per il campionamento indipendente. Possiamo farlo nell'interfaccia utente del flusso di Data Wrangler.

  1.  Scegli il segno più accanto a datasetscegli Esporta ae scegli Amazon S3.

Preparazione dei dati e addestramento dei modelli unificati con Amazon SageMaker Data Wrangler e Amazon SageMaker Autopilot PlatoBlockchain Data Intelligence. Ricerca verticale. Ai.

  1. Specifica un percorso Amazon S3.

Ci riferiamo a questo percorso quando eseguiamo l'inferenza batch per la convalida nella sezione successiva.

  1. Crea un nuovo notebook SageMaker per eseguire l'inferenza batch sul campione di controllo e valutare le prestazioni del test. Fare riferimento a quanto segue Repository GitHub per taccuino di esempio per eseguire l'inferenza batch per la convalida.

Analizza la convalida e le prestazioni del set di test

Quando la trasformazione batch è completa, creiamo una matrice di confusione per confrontare i risultati effettivi e previsti del set di dati di controllo.

Vediamo 23 veri positivi e 33 veri negativi dai nostri risultati. Nel nostro caso, i veri positivi si riferiscono al modello che prevede correttamente un individuo come affetto da diabete. Al contrario, i veri negativi si riferiscono al modello che prevede correttamente che un individuo non ha il diabete.

Preparazione dei dati e addestramento dei modelli unificati con Amazon SageMaker Data Wrangler e Amazon SageMaker Autopilot PlatoBlockchain Data Intelligence. Ricerca verticale. Ai.

Nel nostro caso, precisione e richiamo sono parametri importanti. La precisione misura essenzialmente tutti gli individui previsti per avere il diabete, quanti hanno davvero il diabete? Al contrario, il ricordo aiuta a misurare tutti gli individui che hanno effettivamente il diabete, quanti si prevedeva che avessero il diabete? Ad esempio, potresti voler utilizzare un modello con alta precisione perché vuoi trattare quante più persone puoi, soprattutto se la prima fase del trattamento non ha alcun effetto sulle persone senza diabete (questi sono falsi positivi, quelli etichettati come affetti da quando in realtà non lo fanno).

Tracciamo anche l'area sotto il grafico della curva ROC (AUC) per valutare i risultati. Maggiore è l'AUC, migliore è il modello nel distinguere tra le classi, che nel nostro caso è il modo in cui il modello si comporta bene nel distinguere i pazienti con e senza diabete.

Preparazione dei dati e addestramento dei modelli unificati con Amazon SageMaker Data Wrangler e Amazon SageMaker Autopilot PlatoBlockchain Data Intelligence. Ricerca verticale. Ai.

Conclusione

In questo post, abbiamo dimostrato come integrare l'elaborazione dei dati, includendo l'ingegneria e la creazione di modelli utilizzando Data Wrangler e Autopilot. Abbiamo evidenziato come puoi facilmente addestrare e mettere a punto un modello con Autopilot direttamente dall'interfaccia utente di Data Wrangler. Con questa funzionalità di integrazione, possiamo creare rapidamente un modello dopo aver completato l'ingegneria delle funzionalità, senza scrivere alcun codice. Quindi abbiamo fatto riferimento al miglior modello di Autopilot per eseguire previsioni batch utilizzando la classe AutoML con SageMaker Python SDK.

Le soluzioni low-code e AutoML come Data Wrangler e Autopilot eliminano la necessità di avere una conoscenza approfondita della codifica per creare modelli ML robusti. Inizia a usare Data Wrangler oggi per provare quanto sia facile creare modelli ML utilizzando Pilota automatico SageMaker.


Informazioni sugli autori

Preparazione dei dati e addestramento dei modelli unificati con Amazon SageMaker Data Wrangler e Amazon SageMaker Autopilot PlatoBlockchain Data Intelligence. Ricerca verticale. Ai.Pietro Chung è un Solutions Architect per AWS ed è appassionato di aiutare i clienti a scoprire informazioni dettagliate dai loro dati. Ha sviluppato soluzioni per aiutare le organizzazioni a prendere decisioni basate sui dati sia nel settore pubblico che in quello privato. Possiede tutte le certificazioni AWS e due certificazioni GCP. Gli piace il caffè, cucinare, rimanere attivo e passare il tempo con la sua famiglia.

Preparazione dei dati e addestramento dei modelli unificati con Amazon SageMaker Data Wrangler e Amazon SageMaker Autopilot PlatoBlockchain Data Intelligence. Ricerca verticale. Ai.Pradeep Reddy è un Senior Product Manager nel team SageMaker Low/No Code ML, che include SageMaker Autopilot, SageMaker Automatic Model Tuner. Al di fuori del lavoro, Pradeep ama leggere, correre e divertirsi con computer palmari come Raspberry Pi e altre tecnologie di automazione domestica.

Preparazione dei dati e addestramento dei modelli unificati con Amazon SageMaker Data Wrangler e Amazon SageMaker Autopilot PlatoBlockchain Data Intelligence. Ricerca verticale. Ai.Arunprasath Shankar è uno specialista in Solutions Architect di intelligenza artificiale e apprendimento automatico (AI / ML) con AWS, che aiuta i clienti globali a scalare le loro soluzioni di intelligenza artificiale in modo efficace ed efficiente nel cloud. Nel suo tempo libero, Arun ama guardare film di fantascienza e ascoltare musica classica.

Preparazione dei dati e addestramento dei modelli unificati con Amazon SageMaker Data Wrangler e Amazon SageMaker Autopilot PlatoBlockchain Data Intelligence. Ricerca verticale. Ai.Srujan Gopu è un Senior Frontend Engineer in SageMaker Low Code/No Code ML che aiuta i clienti di prodotti Autopilot e Canvas. Quando non codifica, Srujan si diverte a correre con il suo cane Max, ascoltando audiolibri e sviluppando giochi VR.

Timestamp:

Di più da Apprendimento automatico di AWS