Crea campioni di dati casuali e stratificati con Amazon SageMaker Data Wrangler PlatoBlockchain Data Intelligence. Ricerca verticale. Ai.

Crea campioni di dati casuali e stratificati con Amazon SageMaker Data Wrangler

In questo post, ti guidiamo attraverso due tecniche di campionamento Gestore di dati di Amazon SageMaker così puoi creare rapidamente flussi di lavoro di elaborazione per i tuoi dati. Copriamo sia il campionamento casuale che le tecniche di campionamento stratificato per aiutarti a campionare i tuoi dati in base alle tue esigenze specifiche.

Data Wrangler riduce il tempo necessario per aggregare e preparare i dati per il machine learning (ML) da settimane a minuti. Puoi semplificare il processo di preparazione dei dati e progettazione delle funzionalità e completare ogni fase del flusso di lavoro di preparazione dei dati, inclusa la selezione, la pulizia, l'esplorazione e la visualizzazione dei dati, da un'unica interfaccia visiva. Con lo strumento di selezione dei dati di Data Wrangler, puoi scegliere i dati che desideri da varie origini dati e importarli con un solo clic. Data Wrangler contiene oltre 300 trasformazioni di dati integrate in modo da poter normalizzare, trasformare e combinare rapidamente le funzionalità senza dover scrivere alcun codice. Con i modelli di visualizzazione di Data Wrangler, puoi visualizzare rapidamente in anteprima e controllare che queste trasformazioni siano state completate come previsto visualizzandole in Amazon Sage Maker Studio, il primo ambiente di sviluppo completamente integrato (IDE) per ML. Dopo che i tuoi dati sono stati preparati, puoi creare flussi di lavoro ML completamente automatizzati con Pipeline di Amazon SageMaker e salvali per il riutilizzo Negozio di funzionalità Amazon SageMaker.

Che cos'è il campionamento e come può aiutare

Nell'analisi statistica, l'insieme totale delle osservazioni è noto come il popolazione. Quando si lavora con i dati, spesso non è computazionalmente fattibile misurare ogni osservazione della popolazione. Campionamento statistico è una procedura che ti permette di comprendere i tuoi dati selezionando dei sottoinsiemi dalla popolazione.

Il campionamento offre una soluzione pratica che sacrifica una certa precisione per motivi di praticità e facilità. Per assicurarti che il tuo campione sia una buona rappresentazione della popolazione complessiva, puoi utilizzare strategie di campionamento. Data Wrangler supporta due delle strategie più comuni: campionamento Casuale ed campionamento stratificato.

Campionamento Casuale

Se si dispone di un set di dati di grandi dimensioni, la sperimentazione su tale set di dati potrebbe richiedere molto tempo. Data Wrangler fornisce un campionamento casuale in modo da poter elaborare e visualizzare i dati in modo efficiente. Ad esempio, potresti voler calcolare il numero medio di acquisti per un cliente in un intervallo di tempo oppure potresti voler calcolare il tasso di abbandono di un abbonato. Puoi utilizzare un campione casuale per visualizzare approssimazioni a queste metriche.

Viene scelto un campione casuale dal set di dati in modo che ogni elemento abbia la stessa probabilità di essere selezionato. Questa operazione viene eseguita in modo efficiente e adatto a set di dati di grandi dimensioni, quindi la dimensione del campione restituito è approssimativamente la dimensione richiesta e non necessariamente uguale alla dimensione richiesta.

È possibile utilizzare il campionamento casuale se si desidera eseguire calcoli approssimativi rapidi per comprendere il set di dati. Man mano che la dimensione del campione aumenta, il campione casuale può approssimare meglio l'intero set di dati, ma a meno che tu non includa tutti i punti dati, il tuo campione casuale potrebbe non includere tutti i valori anomali e i casi limite. Se desideri preparare l'intero set di dati in modo interattivo, puoi anche passare a un tipo di istanza più grande.

Come regola generale, l'errore di campionamento nel calcolo della media della popolazione utilizzando un campione casuale tende a 0 man mano che il campione diventa più grande. All'aumentare della dimensione del campione, l'errore diminuisce come l'inverso della radice quadrata della dimensione del campione. Essendo da asporto, maggiore è il campione, migliore è l'approssimazione.

Campionamento stratificato

In alcuni casi, la tua popolazione può essere suddivisa in strati o segmenti che si escludono a vicenda, come la posizione geografica per gli indirizzi, l'anno di pubblicazione per le canzoni o gli scaglioni fiscali per i redditi. Il campionamento casuale è la tecnica di campionamento più popolare, ma se alcuni strati sono rari nella tua popolazione, puoi utilizzare il campionamento stratificato in Data Wrangler per assicurarti che ogni strato sia rappresentato proporzionalmente nel tuo campione. Ciò può essere utile per ridurre gli errori di campionamento e per garantire l'acquisizione di casi limite durante la sperimentazione.

Nel mondo reale, le transazioni fraudolente con carta di credito sono eventi rari e in genere costituiscono meno dell'1% dei tuoi dati. Se dovessimo campionare in modo casuale, non è raro che il campione contenga pochissime o nessuna transazione fraudolenta. Di conseguenza, durante l'addestramento di un modello, avremmo troppo pochi esempi fraudolenti per apprendere un modello accurato. Possiamo utilizzare il campionamento stratificato per assicurarci di avere una rappresentazione proporzionale delle transazioni fraudolente.

Nel campionamento stratificato, la dimensione di ciascuno strato del campione è proporzionale alla dimensione degli strati della popolazione. Funziona dividendo i tuoi dati in strati in base alla colonna specificata, selezionando campioni casuali da ciascuno strato con la proporzione corretta e combinando quei campioni in un campione stratificato della popolazione.

Il campionamento stratificato è una tecnica utile quando si desidera capire in che modo i diversi gruppi nei dati si confrontano tra loro e si desidera assicurarsi di avere una rappresentazione appropriata da ciascun gruppo.

Campionamento casuale durante l'importazione da Amazon S3

In questa sezione, utilizziamo il campionamento casuale con un set di dati costituito da eventi fraudolenti e non fraudolenti dal nostro sistema di rilevamento delle frodi. Puoi scaricare il set di dati da seguire insieme a questo post (Licenza di attribuzione internazionale CC 4.0).

Al momento della stesura di questo documento, è possibile importare set di dati da Servizio di archiviazione semplice Amazon (Amazon S3), Amazzone Atena, Amazon RedShift, e Fiocco di neve. Il nostro set di dati è molto grande e contiene 1 milione di righe. In questo caso, vogliamo campionare 1,0000 righe durante l'importazione da Amazon S3 per alcune sperimentazioni interattive all'interno di Data Wrangler.

  1. Apri SageMaker Studio e crea un nuovo flusso di Data Wrangler.
  2. Sotto Importa le datescegli Amazon S3.
    Crea campioni di dati casuali e stratificati con Amazon SageMaker Data Wrangler PlatoBlockchain Data Intelligence. Ricerca verticale. Ai.
  3. Scegli il set di dati da importare.
  4. Nel Dettagli riquadro, fornire il nome del set di dati e il tipo di file.
  5. Nel Campionamentoscegli Random.
  6. Nel Misura di prova, accedere 10000.
  7. Scegli Importare per caricare il set di dati in Data Wrangler.
    Crea campioni di dati casuali e stratificati con Amazon SageMaker Data Wrangler PlatoBlockchain Data Intelligence. Ricerca verticale. Ai.

Puoi visualizzare due passaggi distinti nella pagina del flusso di dati in Data Wrangler. Il primo passaggio indica il caricamento del set di dati di esempio in base alla strategia di campionamento definita. Dopo che i dati sono stati caricati, Data Wrangler esegue il rilevamento automatico dei tipi di dati per ciascuna delle colonne del set di dati. Questo passaggio viene aggiunto per impostazione predefinita per tutti i set di dati.

È ora possibile rivedere i dati campionati casualmente in Data Wrangler aggiungendo un'analisi.

  1. Scegli il segno più accanto a Tipi di dati e scegli Analisi.
    Crea campioni di dati casuali e stratificati con Amazon SageMaker Data Wrangler PlatoBlockchain Data Intelligence. Ricerca verticale. Ai.
  2. Nel Tipo di analisi¸ scegli Grafico a dispersione.
  3. Scegli impresa_1 ed impresa_2 quanto a Asse X ed asse Y Y, Rispettivamente.
  4. Nel Colore perscegli è_frode.

Quando hai dimestichezza con il set di dati, procedi con ulteriori trasformazioni dei dati in base alle tue esigenze aziendali per preparare i dati per il ML.

Nella schermata seguente, possiamo osservare le transazioni fraudolente (blu scuro) e non fraudolente (azzurro) nella nostra analisi.
Crea campioni di dati casuali e stratificati con Amazon SageMaker Data Wrangler PlatoBlockchain Data Intelligence. Ricerca verticale. Ai.

Nella sezione successiva, discuteremo dell'utilizzo del campionamento stratificato per garantire che i casi fraudolenti siano scelti proporzionalmente.

Campionamento stratificato con una trasformata

Data Wrangler ti consente di campionare durante l'importazione, nonché di campionare tramite una trasformazione. In questa sezione, discutiamo dell'utilizzo del campionamento stratificato tramite una trasformazione dopo aver importato il set di dati in Data Wrangler.

  1. Per avviare il campionamento, sul Flusso di dati scheda, scegli il segno più accanto al set di dati importato e scegli Aggiungi trasformazione.
    Crea campioni di dati casuali e stratificati con Amazon SageMaker Data Wrangler PlatoBlockchain Data Intelligence. Ricerca verticale. Ai.

Al momento della stesura di questo documento, Data Wrangler fornisce più di 300 trasformazioni integrate. Oltre alle trasformazioni integrate, puoi scrivere le tue trasformazioni personalizzate in Pandas o PySpark.

  1. Dal Aggiungi trasformazione lista, scegliere Campionamento.
    Crea campioni di dati casuali e stratificati con Amazon SageMaker Data Wrangler PlatoBlockchain Data Intelligence. Ricerca verticale. Ai.

È ora possibile utilizzare tre strategie di campionamento distinte: limite, casuale e stratificato.
Crea campioni di dati casuali e stratificati con Amazon SageMaker Data Wrangler PlatoBlockchain Data Intelligence. Ricerca verticale. Ai.

  1. Nel Metodo di campionamentoscegli Stratificato.
  2. Usa il is_fraud colonna come colonna stratificata.
  3. Scegli Anteprima per visualizzare in anteprima la trasformazione, quindi scegliere Aggiungi per aggiungere questa trasformazione come passaggio alla tua ricetta di trasformazione.
    Crea campioni di dati casuali e stratificati con Amazon SageMaker Data Wrangler PlatoBlockchain Data Intelligence. Ricerca verticale. Ai.

Il flusso di dati ora riflette la fase di campionamento aggiunta.
Crea campioni di dati casuali e stratificati con Amazon SageMaker Data Wrangler PlatoBlockchain Data Intelligence. Ricerca verticale. Ai.

Ora possiamo rivedere i dati campionati casualmente aggiungendo un'analisi.

  1. Scegli il segno più e scegli Analisi.
  2. Nel Tipo di analisi¸ scegli Istogramma.
  3. Scegli è_frode per entrambi Asse X ed Colore per.
  4. Scegli Anteprima.

Nello screenshot seguente, possiamo osservare la ripartizione dei casi fraudolenti (blu scuro) e non fraudolenti (azzurro) scelti tramite campionamento stratificato nelle corrette proporzioni del 20% fraudolento e dell'80% non fraudolento.

Crea campioni di dati casuali e stratificati con Amazon SageMaker Data Wrangler PlatoBlockchain Data Intelligence. Ricerca verticale. Ai.

Conclusione

È essenziale campionare i dati correttamente quando si lavora con set di dati estremamente grandi e scegliere la giusta strategia di campionamento per soddisfare i requisiti aziendali. L'efficacia del campionamento dipende da vari fattori, inclusi i risultati aziendali, la disponibilità dei dati e la distribuzione. In questo post, abbiamo spiegato come utilizzare Data Wrangler e le sue strategie di campionamento integrate per preparare i dati.

Puoi iniziare a utilizzare questa funzionalità oggi in tutte le regioni in cui è disponibile SageMaker Studio. Per iniziare, visita Prepara i dati ML con Amazon SageMaker Data Wrangler.

Ringraziamenti

Gli autori desiderano ringraziare Jonathan Chung (Scienziato applicato) per la sua recensione e il prezioso feedback su questo articolo.


Informazioni sugli autori

Crea campioni di dati casuali e stratificati con Amazon SageMaker Data Wrangler PlatoBlockchain Data Intelligence. Ricerca verticale. Ai.Ben Harris è un ingegnere del software con esperienza nella progettazione, distribuzione e manutenzione di pipeline di dati scalabili e soluzioni di machine learning in una varietà di domini.

Crea campioni di dati casuali e stratificati con Amazon SageMaker Data Wrangler PlatoBlockchain Data Intelligence. Ricerca verticale. Ai.Vishaal Kapoor è un Senior Applied Scientist con AWS AI. È appassionato di aiutare i clienti a comprendere i loro dati in Data Wrangler. Nel tempo libero va in mountain bike, fa snowboard e trascorre il tempo con la sua famiglia.

Crea campioni di dati casuali e stratificati con Amazon SageMaker Data Wrangler PlatoBlockchain Data Intelligence. Ricerca verticale. Ai.Meenakshisundaram Tandavarayan è uno specialista senior di AI/ML con AWS. Aiuta gli account strategici Hi-Tech nel loro percorso di AI e ML. È molto appassionato di IA basata sui dati.

Crea campioni di dati casuali e stratificati con Amazon SageMaker Data Wrangler PlatoBlockchain Data Intelligence. Ricerca verticale. Ai.Ajai Sharma è Principal Product Manager per Amazon SageMaker, dove si concentra su Data Wrangler, uno strumento visivo di preparazione dei dati per i data scientist. Prima di AWS, Ajai è stato un esperto di scienza dei dati presso McKinsey and Company, dove ha guidato impegni incentrati sul ML per le principali società finanziarie e assicurative di tutto il mondo. Ajai è appassionato di scienza dei dati e ama esplorare gli algoritmi e le tecniche di apprendimento automatico più recenti.

Timestamp:

Di più da Apprendimento automatico di AWS