Data Labeling

menu icon

Data Labeling

Scopri gli usi e i pregi del data labeling, compresi i vari approcci e le procedure migliori.

Cos'è il Data Labeling?

​Il data labeling o annotazione dati fa parte della fase di pre-elaborazione quando si sviluppa un modello di machine learning (ML). Richiede l'identificazione di dati raw (ad esempio immagini, file testuali, video) e l'aggiunta di una o più etichette a tali dati per specificarne il contesto per modelli, permettendo al modello di machine learning di fare delle predizioni accurate.

Il data labeling è alla base di diversi casi d'uso di machine learning e deep learning fra cui visione computerizzata ed elaborazione del linguaggio naturale (natural language processing o NLP).

Come funziona il data labeling?

Le aziende integrano software, processi e annotatori di dati per pulire, strutturare ed etichettare i dati. Tali dati di formazione diventano la base per i modelli di machine learning. Queste etichette consentono agli analisti di isolare le variabili all'interno dei set di dati, permettendo di conseguenza la selezione di predittori di dati ottimali per i modelli di ML. Le etichette identificano i vettori di dati adeguati da estrarre per la formazione del modello che impara a fare le migliori previsioni.

Insieme all'assistenza automatica, i compiti del data labeling richiedono la partecipazione "human-in-the-loop (HITL)". L'HITL si avvale del giudizio di "data labelers" umani nella creazione, nella formazione, nella messa a punto e nella verifica dei modelli di ML. Questi aiutano a guidare il processo di data labeling alimentando i set di dati dei modelli che sono maggiormente applicabili ad un dato progetto.

Dati etichettati vs. dati non etichettati.

I computer usano dati etichettati e non etichettati per formare i modelli di ML, ma qual è la differenza?

  • I dati etichettati vengono usati nell' apprendimento controllatomentre i dati non etichettati sono usati nell' apprendimento senza supervisione .
  • Acquisire e memorizzare i dati etichettati è più difficile, quindi richiedono più tempo e denaro; mentre acquisire e memorizzare i dati non etichettati è più semplice.
  • I dati etichettati possono essere usati per determinare delle analisi strategiche (ad esempio, le attività di previsione), mentre i dati non etichettati hanno più limiti di utilità. I metodi di apprendimento senza supervisione possono aiutare a scoprire nuovi cluster di dati, dando la possibilità di nuove categorizzazioni nell'etichettatura.

I computer possono anche utilizzare dati combinati per l'apprendimento semi-controllato, che riduce la necessità di dati etichettati manualmente e fornisce un grande insieme di dati annotati.

Approcci al data labeling

​Il data labeling è un passo importante nello sviluppo di un modello di ML altamente performante. Sebbene l'etichettatura appaia semplice, non è sempre facile da implementare. Quindi, le aziende devono considerare più fattori e metodi per determinare il migliore approccio all'etichettatura. Si consiglia una verifica dettagliata della complessità, della mole, dell'ambito e della durata del progetto, perché ogni metodo di data labeling ha i suoi pro e i suoi contro.

Ecco alcuni percorsi da seguire per l'etichettatura dei dati:

  • Etichettatura interna - L'uso di esperti di scienze dei dati all'interno dell'azienda semplifica il tracciamento, fornisce una maggiore accuratezza ed aumenta la qualità. In ogni caso questo approccio generalmente richiede più tempo e favorisce le grandi aziende con risorse notevoli.
  • Etichettatura sintetica - Questo approccio genera nuovi dati di progetto da set di dati esistenti, migliorando la qualità dei dati e l'efficienza in termini di tempo. Inoltre l'etichettatura sintetica richiede una potenza di calcolo notevole che può incrementare il costo.
  • Etichettatura programmatica - Questo processo di data labeling automatizzato utilizza gli script per ridurre il consumo in termini di tempo e la necessità di annotazione umana. La possibilità di problemi tecnici impone all'HITL di rimanere parte del processo di assicurazione della qualità (QA).
  • Outsourcing - Questa può essere una scelta ottimale per i progetti temporanei di alto livello, ma lo sviluppo e la gestione di un flusso di lavoro orientato al lavoro indipendente può anche rivelarsi dispendioso in termini di tempo. Sebbene le piattaforme freelance forniscano informazioni complete sui candidati per facilitare il processo di controllo, l'assunzione di team di etichettatura dei dati gestiti fornisce personale pre-verificato e strumenti di etichettatura dei dati pre-costruiti.
  • Crowdsourcing - Questo approccio è più veloce e più efficace in termini di costi grazie alla funzionalità di microtasking e alla distribuzione online. Comunque, la qualità dell'operatore, il controllo della qualità e la gestione del progetto variano sulle piattaforme di crowdsourcing. Uno degli esempi più conosciuti di data labeling in crowdsourcing è Recaptcha. Questo progetto era duplice in quanto controllava i programmi automatizzati e simultaneamente migliorava l'annotazione di immagini. Ad esempio, un messaggio Recaptcha avrebbe chiesto ad un utente di identificare tutte le foto che contenevano una macchina per provare che era un essere umano e poi il programma avrebbe potuto verificare in base ai risultati degli altri utenti. L'input da questi utenti forniva un database di etichette per un insieme di immagini.

Vantaggi e sfide del data labeling

Il compromesso generale del data labeling è che da un lato può ridurre il tempo di scalabilità dell'impresa, dall'altro tende ad avere un costo. Dati più accurati generalmente migliorano le previsioni, quindi malgrado il costo elevato, il valore che forniscono vale di solito l'investimento. Poiché l'annotazione dati fornisce un maggior contesto ai set di dati, migliora le prestazioni dell'analisi esplorativa dei dati e delle applicazioni di apprendimento automatico (ML) e di intelligenza artificiale (AI). Ad esempio, il data labeling produce risultati di ricerca più rilevanti nelle piattaforme dei motori di ricerca, così come migliori suggerimenti sui prodotti nelle piattaforme di e-commerce. Approfondiamo altri vantaggi e sfide principali:

Vantaggi

Il data labeling fornisce agli utenti, ai team e alle aziende un contesto, una qualità e una fruibilità maggiori. Più specificamente, ci si può aspettare:

  • Previsioni più accurate: Il data labeling accurato assicura una maggiore qualità all'interno degli algoritmi del machine learning, consentendo al modello di formare e produrre l'output atteso. In alternativa, come dice il vecchio detto, "garbage in, garbage out" (se inserisci dati errati, avrai risultati inattendibili). I dati etichettati correttamente  forniscono la "ground truth" (cioè come le etichette riflettono gli scenari del "real world" o mondo reale) per testare e iterare i modelli conseguenti.
  • Migliore fruibilità dei dati: Il data labeling può anche migliorare la fruibilità delle variabili dei dati all'interno di un modello. Per esempio, si potrebbe riclassificare una variabile categoriale come variabile binaria per renderla più consumabile per un modello.  Aggregare i dati in questo modo può ottimizzare il modello riducendo il numero di variabili di modello oppure consentire l'inclusione di variabili di controllo. Sia nel caso in cui si usino i dati per costruire modelli di visione computerizzata (cioè mettendo riquadri di delimitazione attorno agli oggetti) che nel caso in cui si usino modelli NLP (cioè classificando il testo per sentimento sociale), utilizzare dati di qualità elevata è una priorità fondamentale.

Sfide

Il data labeling non è privo di sfide. In particolare, alcune delle sfide più comuni sono:

  • Costi e tempo elevati: Il data labeling è importante per i modelli di machine learning, ma può essere costoso sia da un punto di vista di risorse che di tempo. Se un'impresa adotta un approccio più automatizzato, i team di ingegneristica avranno ancora bisogno di configurare le pipeline di dati prima dell'elaborazione dei dati e l'etichettatura manuale richiederà quasi sempre costi e tempo.
  • Soggetto all'errore umano: Questi approcci al labeling sono anche soggetti all'errore umano (ad esempio errori di codifica, errori di inserimento manuale), che può ridurre la qualità dei dati. Questo, d'altronde, porta a un'inesatta elaborazione e modellazione di dati. I controlli qualità sono essenziali per mantenere la qualità dei dati.

Procedure consigliate di data labeling

Al di là dell'approccio, le seguenti procedure consigliate ottimizzano l'accuratezza e l'efficienza del data labeling:

  • Interfacce di attività intuitive ed essenziali minimizzano il carico cognitivo e il cambiamento di contesto per gli etichettatori umani.
  • Consenso Misura il tasso di intesa fra più etichettatori (esseri umani o macchine). Il punteggio del consenso è calcolato dividendo la somma delle etichette concordanti per il numero totale di etichette per attività.
  • Controllo delle etichette: Verifica l'accuratezza delle etichette e le aggiorna se è necessario.
  • Trasferimento dell'apprendimento: Prende uno o più modelli pre-formati da un set di dati e li applica ad altri. Può essere incluso l'apprendimento multi-task, in cui vengono apprese più attività contemporaneamente.
  • Apprendimento attivo: Una categoria di algoritmi ML e sottoinsieme dell'apprendimento semi-controllato che aiuta gli esseri umani a identificare i set di dati più appropriati. Gli approcci di apprendimento attivo includono:
    • Domanda di adesione sintetica - Genera una richiesta sintetica e ne richiede un'etichetta.
    • Campionamento basato su pool - Classifica tutte le istanze secondo la misurazione dell'informatività e seleziona le migliori query da annotare.
    • Campionamento selettivo basato sullo stream - Seleziona le istanze non etichettate una per una e le etichetta o le ignora in base alla loro informatività o alla loro indeterminatezza.

Casi d'uso del data labeling

Sebbene il data labeling possa aumentare l'accuratezza, la qualità e l'usabilità in più contesti e in settori diversi, i suoi casi d'uso principali includono:

  • Visione computerizzata: Un campo dell'intelligenza artificiale che usa i dati di formazione per costruire un modello di visione artificiale che consenta la segmentazione delle immagini e l'automazione della categoria, identifica i punti principali nell'immagine e identifica la posizione degli oggetti. In realtà, IBM offre una piattaforma di visione computerizzata, Maximo Visual Inspection, che consente agli esperti del settore (SME) di etichettare e formare modelli visivi di approfondimento che possono essere distribuiti nei dispositivi periferici cloud e nei centri dati locali. La visione computerizzata è utilizzata in diversi settori - da quello dell'energia e dei servizi a quello manifatturiero e automobilistico. A partire dal 2022 questo campo crescente dovrebbe raggiungere un valore di mercato di 48,6 miliardi di dollari.
  • Elaborazione del linguaggio naturale (NLP): Una branca dell'intelligenza artificiale che combina la linguistica computazionale alla statistica, al machine learninge ai modelli di deep learning per identificare e marcare importanti sezioni di testo che generano dati di formazione per la sentiment analysis, il riconoscimento del nome di un ente e il riconoscimento ottico dei caratteri. L'NLP viene utilizzata sempre di più nelle soluzioni d'impresa come il rilevamento dello spam, la traduzione automatica, il riconoscimento vocale, il riepilogo testuale, gli assistenti virtuali, i chatbot e i sistemi GPS con comandi vocali. Così l'NLP è diventata una componente fondamentale dell'evoluzione dei processi aziendali strategici.

IBM e il data labeling

IBM offre più risorse per aiutare a superare le sfide del data labeling e massimizzare l'esperienza nel complesso.

  • IBM Cloud Annotations - Uno strumento di annotazione delle immagini open source che usa i modelli AI per aiutare gli sviluppatori a creare dei dataset di immagini pienamente etichettati in tempo reale, senza la creazione manuale delle etichette.
  • IBM Cloud Object Storage - Crittografato a riposo e accessibile da ovunque, memorizza i dati sensibili e salvaguarda l'integrità, la disponibilità e la riservatezza dei dati grazie a Information Dispersal Algorithm (IDA) e All-or-Nothing Transform (AONT).
  • IBM Watson - Piattaforma di intelligenza artificiale con strumenti alimentati da NLP e servizi che consentono alle organizzazioni di ottimizzare il tempo dei dipendenti, automatizzare i processi aziendali complessi e guadagnare degli importanti approfondimenti sull'attività per prevedere i risultati futuri.

A prescindere dalla dimensione o dalla scadenza del progetto, IBM Cloud e IBM Watson possono migliorare i processi di formazione sui dati, espandere l'attività di classificazione dei dati e semplificare modelli di previsione complessi.