Crea dati di alta qualità per modelli ML con Amazon SageMaker Ground Truth PlatoBlockchain Data Intelligence. Ricerca verticale. Ai.

Crea dati di alta qualità per i modelli ML con Amazon SageMaker Ground Truth

L'apprendimento automatico (ML) ha migliorato il business in tutti i settori negli ultimi anni, dal sistema di raccomandazioni sul tuo Primo video account, per documentare il riepilogo e la ricerca efficiente con Alexal'assistenza vocale. Tuttavia, rimane la domanda su come incorporare questa tecnologia nella tua attività. A differenza dei metodi tradizionali basati su regole, ML deduce automaticamente i modelli dai dati in modo da eseguire l'attività di interesse. Sebbene ciò aggiri la necessità di curare le regole per l'automazione, significa anche che i modelli ML possono essere validi solo quanto i dati su cui sono stati addestrati. Tuttavia, la creazione dei dati è spesso un compito impegnativo. Al Lab di Amazon Machine Learning Solutions, abbiamo riscontrato più volte questo problema e vogliamo facilitare questo viaggio per i nostri clienti. Se vuoi scaricare questo processo, puoi usare Amazon SageMaker Ground Truth Plus.

Entro la fine di questo post, sarai in grado di ottenere quanto segue:

  • Comprendere i processi aziendali coinvolti nella creazione di una pipeline di acquisizione dati
  • Identifica i servizi cloud AWS per supportare e accelerare la pipeline di etichettatura dei dati
  • Eseguire un'attività di acquisizione dati ed etichettatura per casi d'uso personalizzati
  • Crea dati di alta qualità seguendo le best practice aziendali e tecniche

In questo post, ci concentriamo sul processo di creazione dei dati e ci affidiamo ai servizi AWS per gestire l'infrastruttura e i componenti del processo. Vale a dire, usiamo Amazon SageMaker verità fondamentale per gestire la pipeline dell'infrastruttura di etichettatura e l'interfaccia utente. Questo servizio utilizza un approccio point-and-go da cui raccogliere i tuoi dati Servizio di archiviazione semplice Amazon (Amazon S3) e impostare un flusso di lavoro di etichettatura. Per l'etichettatura, ti offre la flessibilità integrata per acquisire etichette di dati utilizzando il tuo team privato, an Amazon Mechanical Turk force o dal tuo fornitore di etichette preferito da Mercato AWS. Infine, puoi usare AWS Lambda ed Notebook Amazon SageMaker per elaborare, visualizzare o controllare la qualità dei dati, sia prima che dopo l'etichettatura.

Ora che tutti i pezzi sono stati sistemati, iniziamo il processo!

Il processo di creazione dei dati

Contrariamente all'intuizione comune, il primo passo per la creazione dei dati non è la raccolta dei dati. Lavorare a ritroso dagli utenti per articolare il problema è fondamentale. Ad esempio, di cosa si preoccupano gli utenti nell'artefatto finale? Dove ritengono gli esperti che risiedano nei dati i segnali rilevanti per il caso d'uso? Quali informazioni sull'ambiente del caso d'uso potrebbero essere fornite per modellare? Se non conosci le risposte a queste domande, non preoccuparti. Concediti un po' di tempo per parlare con utenti ed esperti sul campo per capirne le sfumature. Questa comprensione iniziale ti orienterà nella giusta direzione e ti preparerà per il successo.

Per questo post, presumiamo che tu abbia coperto questo processo iniziale di specifica dei requisiti dell'utente. Le tre sezioni successive illustrano il successivo processo di creazione di dati di qualità: pianificazione, creazione dei dati di origine e annotazione dei dati. I cicli pilota nelle fasi di creazione e annotazione dei dati sono vitali per garantire la creazione efficiente di dati etichettati. Ciò comporta l'iterazione tra la creazione dei dati, l'annotazione, la garanzia della qualità e l'aggiornamento della pipeline, se necessario.

La figura seguente fornisce una panoramica dei passaggi necessari in una tipica pipeline di creazione di dati. È possibile lavorare a ritroso dal caso d'uso per identificare i dati necessari (Specifica dei requisiti), creare un processo per ottenere i dati (Pianificazione), implementare il processo di acquisizione dei dati effettivo (Raccolta e annotazione dei dati) e valutare i risultati. Le esecuzioni pilota, evidenziate con linee tratteggiate, consentono di iterare sul processo fino allo sviluppo di una pipeline di acquisizione dati di alta qualità.

Panoramica dei passaggi necessari in una tipica pipeline di creazione di dati.

Pianificazione

Un processo standard di creazione dei dati può richiedere molto tempo e uno spreco di preziose risorse umane se condotto in modo inefficiente. Perché dovrebbe richiedere molto tempo? Per rispondere a questa domanda, dobbiamo comprendere l'ambito del processo di creazione dei dati. Per assisterti, abbiamo raccolto una checklist di alto livello e una descrizione dei componenti chiave e delle parti interessate che devi considerare. All'inizio rispondere a queste domande può essere difficile. A seconda del tuo caso d'uso, solo alcuni di questi potrebbero essere applicabili.

  • Identificare il punto di contatto legale per le approvazioni richieste – L'utilizzo dei dati per l'applicazione può richiedere la revisione del contratto di licenza o fornitore per garantire la conformità alle politiche aziendali e ai casi d'uso. È importante identificare il supporto legale durante le fasi di acquisizione e annotazione dei dati del processo.
  • Identificare il punto di contatto per la sicurezza per il trattamento dei dati –La perdita dei dati acquistati potrebbe comportare gravi sanzioni e ripercussioni per la tua azienda. È importante identificare il supporto per la sicurezza durante le fasi di acquisizione e annotazione dei dati per garantire pratiche sicure.
  • Dettagliare i requisiti dei casi d'uso e definire i dati di origine e le linee guida per le annotazioni – La creazione e l'annotazione dei dati è difficile a causa dell'elevata specificità richiesta. Gli stakeholder, inclusi i generatori di dati e gli annotatori, devono essere completamente allineati per evitare sprechi di risorse. A tal fine, è prassi comune utilizzare un documento di linee guida che specifichi ogni aspetto dell'attività di annotazione: istruzioni esatte, casi limite, una procedura dettagliata di esempio e così via.
  • Allinea le aspettative per la raccolta dei dati di origine – Considera quanto segue:
    • Condurre ricerche su potenziali fonti di dati – Ad esempio, set di dati pubblici, set di dati esistenti di altri team interni, dati raccolti automaticamente o acquistati da fornitori.
    • Eseguire la valutazione della qualità – Creare una pipeline di analisi in relazione al caso d'uso finale.
  • Allinea le aspettative per la creazione di annotazioni sui dati – Considera quanto segue:
    • Identificare gli stakeholder tecnici – Di solito si tratta di un individuo o di un team della tua azienda in grado di utilizzare la documentazione tecnica relativa a Ground Truth per implementare una pipeline di annotazioni. Queste parti interessate sono anche responsabili della valutazione della qualità dei dati annotati per assicurarsi che soddisfino le esigenze dell'applicazione ML a valle.
    • Identificare gli annotatori di dati – Queste persone utilizzano istruzioni predeterminate per aggiungere etichette ai dati di origine all'interno di Ground Truth. Potrebbe essere necessario possedere una conoscenza del dominio a seconda del caso d'uso e delle linee guida per le annotazioni. Puoi utilizzare una forza lavoro interna alla tua azienda o pagare per a forza lavoro gestita da un fornitore esterno.
  • Garantire la supervisione del processo di creazione dei dati – Come si può vedere dai punti precedenti, la creazione dei dati è un processo dettagliato che coinvolge numerosi stakeholder specializzati. Pertanto, è fondamentale monitorarlo da un capo all'altro verso il risultato desiderato. Avere una persona o un team dedicato che supervisiona il processo può aiutarti a garantire un processo di creazione dei dati coerente ed efficiente.

A seconda del percorso che decidi di intraprendere, devi considerare anche quanto segue:

  • Crea il set di dati di origine – Si riferisce a casi in cui i dati esistenti non sono adatti per l'attività in corso o vincoli legali ne impediscono l'utilizzo. È necessario utilizzare team interni o fornitori esterni (punto successivo). Questo è spesso il caso di domini altamente specializzati o aree con scarsa ricerca pubblica. Ad esempio, le domande comuni di un medico, l'indumento sdraiato o gli esperti di sport. Può essere interno o esterno.
  • Ricerca i fornitori e conduci un processo di onboarding – Quando vengono utilizzati fornitori esterni, è necessario impostare un processo di contrattazione e inserimento tra entrambe le entità.

In questa sezione, abbiamo esaminato le componenti e le parti interessate che dobbiamo considerare. Tuttavia, come si presenta il processo vero e proprio? Nella figura seguente, descriviamo un flusso di lavoro del processo per la creazione e l'annotazione dei dati. L'approccio iterativo utilizza piccoli batch di dati chiamati pilota per ridurre i tempi di consegna, rilevare gli errori in anticipo ed evitare di sprecare risorse nella creazione di dati di bassa qualità. Descriviamo questi round pilota più avanti in questo post. Trattiamo anche alcune best practice per la creazione, l'annotazione e il controllo della qualità dei dati.

La figura seguente illustra lo sviluppo iterativo di una pipeline di creazione dati. In verticale, troviamo il blocco di origine dati (verde) e il blocco di annotazione (blu). Entrambi i blocchi hanno cicli pilota indipendenti (creazione/annotazione dati, QAQC e aggiornamento). Vengono creati dati di origine sempre più elevata e possono essere utilizzati per costruire annotazioni di qualità sempre più elevata.

Durante lo sviluppo iterativo di una pipeline di creazione o annotazione dei dati, vengono utilizzati piccoli batch di dati per progetti pilota indipendenti. Ogni round pilota prevede una fase di creazione o annotazione dei dati, alcune garanzie di qualità e controllo della qualità dei risultati e una fase di aggiornamento per perfezionare il processo. Dopo che questi processi sono stati rifiniti attraverso prove pilota successive, è possibile procedere alla creazione e all'annotazione di dati su larga scala.

Panoramica dello sviluppo iterativo in una pipeline di creazione di dati.

Creazione dei dati di origine

Il processo di creazione dell'input ruota attorno alla messa in scena degli elementi di interesse, che dipendono dal tipo di attività. Potrebbero essere immagini (scansioni di giornali), video (scene di traffico), nuvole di punti 3D (scansioni mediche) o semplicemente testo (tracce di sottotitoli, trascrizioni). In generale, quando si mettono in scena gli elementi relativi alle attività, assicurarsi di quanto segue:

  • Riflette il caso d'uso del mondo reale per l'eventuale sistema AI/ML – La configurazione per la raccolta di immagini o video per i dati di allenamento dovrebbe corrispondere molto alla configurazione per i dati di input nell'applicazione reale. Ciò significa avere superfici di posizionamento, sorgenti luminose o angoli di ripresa coerenti.
  • Considerare e ridurre al minimo le fonti di variabilità – Considera quanto segue:
    • Sviluppare le migliori pratiche per il mantenimento degli standard di raccolta dei dati – A seconda della granularità del caso d'uso, potrebbe essere necessario specificare i requisiti per garantire la coerenza tra i punti dati. Ad esempio, se stai raccogliendo dati di immagini o video da singoli punti di ripresa, potresti dover assicurarti del posizionamento coerente dei tuoi oggetti di interesse o richiedere un controllo di qualità per la telecamera prima di un ciclo di acquisizione dati. Ciò può evitare problemi come l'inclinazione o la sfocatura della fotocamera e ridurre al minimo le spese generali a valle come la rimozione di immagini fuori dall'inquadratura o sfocate, nonché la necessità di centrare manualmente l'inquadratura dell'immagine sull'area di interesse.
    • Fonti di variabilità del tempo di test anticipato – Se prevedi la variabilità in uno qualsiasi degli attributi menzionati finora durante il test, assicurati di poter acquisire tali fonti di variabilità durante la creazione dei dati di addestramento. Ad esempio, se prevedi che la tua applicazione ML funzioni con più impostazioni di luce diverse, dovresti mirare a creare immagini e video di allenamento con diverse impostazioni di luce. A seconda del caso d'uso, anche la variabilità nel posizionamento della fotocamera può influenzare la qualità delle etichette.
  • Incorpora la conoscenza del dominio precedente quando disponibile – Considera quanto segue:
    • Input sulle fonti di errore – I professionisti del settore possono fornire approfondimenti sulle fonti di errore in base ai loro anni di esperienza. Possono fornire feedback sulle migliori pratiche per i due punti precedenti: quali impostazioni riflettono meglio il caso d'uso del mondo reale? Quali sono le possibili fonti di variabilità durante la raccolta dei dati o al momento dell'utilizzo?
    • Best practice per la raccolta di dati specifici del dominio – Sebbene le parti interessate tecniche possano già avere una buona idea degli aspetti tecnici su cui concentrarsi nelle immagini o nei video raccolti, i professionisti del dominio possono fornire feedback sul modo migliore per mettere in scena o raccogliere i dati in modo tale da soddisfare queste esigenze.

Controllo qualità e garanzia della qualità dei dati creati

Ora che hai impostato la pipeline di raccolta dei dati, potresti essere tentato di andare avanti e raccogliere quanti più dati possibili. Apetta un minuto! Dobbiamo prima verificare se i dati raccolti attraverso l'installazione sono adatti al tuo caso d'uso di parole reali. Possiamo utilizzare alcuni campioni iniziali e migliorare in modo iterativo l'impostazione attraverso le informazioni che abbiamo ottenuto dall'analisi dei dati di esempio. Lavora a stretto contatto con i tuoi stakeholder tecnici, aziendali e di annotazione durante il processo pilota. Ciò assicurerà che la pipeline risultante soddisfi le esigenze aziendali, generando al contempo dati etichettati ML-ready con spese generali minime.

Annotazioni

L'annotazione degli input è il punto in cui aggiungiamo il tocco magico ai nostri dati: le etichette! A seconda del tipo di attività e del processo di creazione dei dati, potresti aver bisogno di annotatori manuali oppure puoi utilizzare metodi automatici standard. La stessa pipeline di annotazione dei dati può essere un compito tecnicamente impegnativo. Ground Truth facilita questo viaggio per i tuoi stakeholder tecnici con il suo repertorio integrato di flussi di lavoro di etichettatura per origini dati comuni. Con alcuni passaggi aggiuntivi, ti consente anche di creare flussi di lavoro di etichettatura personalizzati oltre le opzioni preconfigurate.

Porsi le seguenti domande quando si sviluppa un flusso di lavoro di annotazione adatto:

  • Ho bisogno di un processo di annotazione manuale per i miei dati? In alcuni casi, i servizi di etichettatura automatizzati possono essere sufficienti per l'attività in questione. La revisione della documentazione e degli strumenti disponibili può aiutarti a identificare se l'annotazione manuale è necessaria per il tuo caso d'uso (per ulteriori informazioni, vedere Che cos'è l'etichettatura dei dati?). Il processo di creazione dei dati può consentire vari livelli di controllo per quanto riguarda la granularità dell'annotazione dei dati. A seconda di questo processo, a volte puoi anche ignorare la necessità dell'annotazione manuale. Per ulteriori informazioni, fare riferimento a Crea un set di dati di domande e risposte personalizzato utilizzando Amazon SageMaker Ground Truth per addestrare un modello NLU di domande e risposte di Hugging Face.
  • Che cosa forma la mia verità fondamentale? Nella maggior parte dei casi, la verità fondamentale verrà dal tuo processo di annotazione: questo è il punto! In altri, l'utente può avere accesso alle etichette di verità di base. Ciò può accelerare notevolmente il processo di assicurazione della qualità o ridurre il sovraccarico richiesto per più annotazioni manuali.
  • Qual è il limite superiore per la quantità di devianza dal mio stato di verità fondamentale? Collabora con i tuoi utenti finali per comprendere gli errori tipici relativi a queste etichette, le origini di tali errori e la riduzione degli errori desiderata. Questo ti aiuterà a identificare quali aspetti dell'attività di etichettatura sono più impegnativi o possono presentare errori di annotazione.
  • Esistono regole preesistenti utilizzate dagli utenti o dagli operatori sul campo per etichettare questi articoli? Usa e perfeziona queste linee guida per creare una serie di istruzioni per i tuoi annotatori manuali.

Pilotare il processo di annotazione dell'input

Quando si pilota il processo di annotazione dell'input, considerare quanto segue:

  • Rivedere le istruzioni con gli annotatori e gli operatori sul campo – Le istruzioni devono essere concise e specifiche. Chiedi feedback ai tuoi utenti (le istruzioni sono accurate? Possiamo rivedere le istruzioni per assicurarci che siano comprensibili da professionisti non sul campo?) e annotatori (è tutto comprensibile? Il compito è chiaro?). Se possibile, aggiungi un esempio di dati etichettati buoni e cattivi per aiutare i tuoi annotatori a identificare ciò che è previsto e quali potrebbero essere gli errori di etichettatura comuni.
  • Raccogli i dati per le annotazioni – Rivedi i dati con il tuo cliente per assicurarti che soddisfino gli standard previsti e per allinearti ai risultati attesi dall'annotazione manuale.
  • Fornisci esempi al tuo pool di annotatori manuali come test – Qual è la variazione tipica tra gli annotatori in questa serie di esempi? Studia la varianza per ciascuna annotazione all'interno di una determinata immagine per identificare le tendenze di coerenza tra gli annotatori. Quindi confronta le variazioni tra le immagini o i fotogrammi video per identificare quali etichette sono difficili da posizionare.

Controllo di qualità delle annotazioni

Il controllo della qualità delle annotazioni ha due componenti principali: la valutazione della coerenza tra gli annotatori e la valutazione della qualità delle annotazioni stesse.

Puoi assegnare più annotatori alla stessa attività (ad esempio, tre annotatori etichettano i punti chiave sulla stessa immagine) e misurare il valore medio insieme alla deviazione standard di queste etichette tra gli annotatori. In questo modo puoi identificare eventuali annotazioni anomale (etichetta utilizzata errata o etichetta lontana dall'annotazione media), che possono guidare i risultati attuabili, come perfezionare le istruzioni o fornire ulteriore formazione a determinati annotatori.

La valutazione della qualità delle annotazioni stesse è legata alla variabilità degli annotatori e (se disponibile) alla disponibilità di esperti di dominio o di informazioni sulla verità di base. Ci sono alcune etichette (in tutte le tue immagini) in cui la varianza media tra gli annotatori è costantemente alta? Ci sono etichette lontane dalle tue aspettative su dove dovrebbero essere o come dovrebbero essere?

Sulla base della nostra esperienza, un tipico ciclo di controllo della qualità per l'annotazione dei dati può essere simile al seguente:

  • Iterare sulle istruzioni o sulla gestione temporanea dell'immagine in base ai risultati dell'esecuzione del test – Ci sono oggetti ostruiti o la messa in scena dell'immagine non corrisponde alle aspettative degli annotatori o degli utenti? Le istruzioni sono fuorvianti o hai perso etichette o errori comuni nelle tue immagini esemplari? Puoi perfezionare le istruzioni per i tuoi annotatori?
  • Se sei soddisfatto di aver risolto eventuali problemi durante l'esecuzione del test, esegui un batch di annotazioni – Per testare i risultati del batch, seguire lo stesso approccio di valutazione della qualità della valutazione delle variabilità tra annotatori e etichette tra immagini.

Conclusione

Questo post funge da guida per le parti interessate aziendali per comprendere le complessità della creazione di dati per le applicazioni AI/ML. I processi descritti servono anche come guida per i professionisti tecnici per generare dati di qualità ottimizzando al contempo i vincoli aziendali come personale e costi. Se non viene eseguita correttamente, una pipeline di creazione ed etichettatura dei dati può richiedere fino a 4-6 mesi.

Con le linee guida e i suggerimenti delineati in questo post, puoi anticipare i blocchi stradali, ridurre i tempi di completamento e ridurre al minimo i costi nel tuo percorso verso la creazione di dati di alta qualità.


Circa gli autori

Crea dati di alta qualità per modelli ML con Amazon SageMaker Ground Truth PlatoBlockchain Data Intelligence. Ricerca verticale. Ai.Jasleen Grewal è una scienziata applicata presso Amazon Web Services, dove lavora con i clienti AWS per risolvere i problemi del mondo reale utilizzando l'apprendimento automatico, con particolare attenzione alla medicina di precisione e alla genomica. Ha un forte background in bioinformatica, oncologia e genomica clinica. È appassionata di utilizzare AI/ML e servizi cloud per migliorare l'assistenza ai pazienti.

Crea dati di alta qualità per modelli ML con Amazon SageMaker Ground Truth PlatoBlockchain Data Intelligence. Ricerca verticale. Ai.Boris Aronchik è un manager nell'Amazon AI Machine Learning Solutions Lab, dove guida un team di scienziati e ingegneri ML per aiutare i clienti AWS a realizzare obiettivi aziendali sfruttando le soluzioni AI/ML.

Crea dati di alta qualità per modelli ML con Amazon SageMaker Ground Truth PlatoBlockchain Data Intelligence. Ricerca verticale. Ai.Miguel Romero Calvo è Scienziato Applicato presso il Laboratorio di soluzioni Amazon ML dove collabora con i team interni di AWS e i clienti strategici per accelerare il loro business attraverso l'adozione di ML e cloud.

Crea dati di alta qualità per modelli ML con Amazon SageMaker Ground Truth PlatoBlockchain Data Intelligence. Ricerca verticale. Ai.Lin Lee Cheong è Senior Scientist e Manager con il team Amazon ML Solutions Lab di Amazon Web Services. Lavora con clienti strategici di AWS per esplorare e applicare l'intelligenza artificiale e l'apprendimento automatico per scoprire nuove informazioni e risolvere problemi complessi.

Timestamp:

Di più da Apprendimento automatico di AWS