Share via


Preparare i dati per l'apprendimento automatico avanzato

La pre-elaborazione e la pulizia dei dati sono attività importanti che devono essere eseguite prima di poter usare un set di dati per il training del modello. I dati non elaborati sono spesso rumorosi e non affidabili e potrebbero non essere presenti valori. Utilizzare tali dati per la modellazione può produrre risultati fuorvianti. Queste attività fanno parte del processo TDSP (Team Data Science Process) e in genere seguono un'esplorazione iniziale di un set di dati usato per individuare e pianificare la pre-elaborazione necessaria. Per altre informazioni, Che cos'è il processo di data science per i team?

Le attività di pre-elaborazione e pulizia, come l'attività di esplorazione dei dati, possono essere eseguite in un'ampia gamma di ambienti, ad esempio SQL o Hive o studio di Azure Machine Learning (versione classica). È anche possibile usare vari strumenti e linguaggi, ad esempio R o Python. Dove vengono archiviati i dati e come il relativo formato influisce su queste decisioni. Poiché il TDSP è iterativo in natura, queste attività possono essere eseguite in vari passaggi del flusso di lavoro del processo.

Questo articolo presenta vari concetti e attività di elaborazione dati che possono essere eseguite prima o dopo l'inserimento dei dati in studio di Azure Machine Learning (versione classica).

Per un esempio di esplorazione dei dati e pre-elaborazione eseguita all'interno di studio di Azure Machine Learning (versione classica), vedere il video Pre-elaborazione dei dati.

Perché pre-elaborare e pulire i dati?

I dati reali vengono raccolti da varie origini e processi e possono contenere irregolarità o dati danneggiati compromettendo la qualità del set di dati. Di seguito sono riportati i tipici problemi relativi alla qualità di dati che si verificano:

  • Dati incompleti: manca di attributi o contiene valori mancanti
  • Dati rumorosi: contiene record o outlier errati
  • Dati incoerenti: contiene record o discrepanze in conflitto

La qualità dei dati è un prerequisito per modelli predittivi di qualità. Per evitare operazioni di garbageing, garbage out e miglioramento della qualità dei dati e pertanto prestazioni del modello, è fondamentale eseguire una schermata di integrità dei dati per individuare i problemi di dati in anticipo. È necessario decidere i passaggi di elaborazione e pulizia dei dati corrispondenti.

Quali sono le tipiche analisi dell'integrità dei dati che vengono impiegate?

È possibile controllare la qualità generale dei dati controllando:

  • Il numero di record.
  • Il numero di attributi (o funzionalità).
  • Tipi di dati dell'attributo, ad esempio nominale, ordinale o continuo.
  • Il numero di valori mancanti.
  • Per i dati ben formati .
    • Se i dati sono in formato TSV o CSV, verificare che i separatori di colonna e i separatori di riga separano correttamente colonne e righe.
    • Se i dati sono in formato HTML o XML, verificare se i dati sono ben formati in base ai rispettivi standard.
    • L'analisi potrebbe anche essere necessaria per estrarre informazioni strutturate da dati semistrutturati o non strutturati.
  • Record di dati incoerenti. Verificare l'intervallo di valori consentiti. Ad esempio, se i dati contengono le medie dei punti di voto degli studenti ,controllare se gli oggetti Criteri di gruppo si trovano nell'intervallo designato, ad esempio da 0 a 4.

Quando si riscontrano problemi con i dati, eseguire passaggi di elaborazione, ad esempio la pulizia dei valori mancanti, la normalizzazione dei dati, la discretizzazione, l'elaborazione del testo per rimuovere o sostituire caratteri incorporati che potrebbero influire sull'allineamento dei dati, sui tipi di dati misti nei campi comuni e su altri.

Azure Machine Learning utilizza dati tabulari in formato corretto. Se i dati sono già in formato tabulare, è possibile eseguire la pre-elaborazione dei dati direttamente con studio di Azure Machine Learning (versione classica). Se i dati non sono in formato tabulare, ad esempio se sono in formato XML, potrebbe essere necessario analizzare i dati per convertirli in formato tabulare.

Quali sono alcune delle principali attività di pre-elaborazione dei dati?

  • Pulizia dei dati: compilare valori mancanti, rilevare e rimuovere dati e outlier rumorosi.
  • Trasformazione dei dati: normalizzare i dati per ridurne dimensioni e disturbo.
  • Riduzione dei dati: esempi di record di dati o attributi per una gestione dei dati semplificata.
  • Discretizzazione dei dati: convertire gli attributi continui in attributi categorici per facilitare l'uso di alcuni metodi di Machine Learning.
  • Pulizia del testo: rimuovere caratteri incorporati che potrebbero causare un errore di allineamento dei dati. Ad esempio, potrebbero essere schede incorporate in un file di dati delimitato da tabulazioni o nuove righe incorporate che interrompono i record.

Le sezioni seguenti illustrano in dettaglio alcuni di questi passaggi di elaborazione dati.

Come trattare i valori mancanti?

Per gestire i valori mancanti, identificare prima di tutto il motivo dei valori mancanti. I metodi di gestione dei valori mancanti tipici sono:

  • Eliminazione: rimuovere i record con valori mancanti.
  • Sostituzione fittizia: sostituire i valori mancanti con un valore fittizio, ad esempio sconosciuto per i valori categorici o 0 per i valori numerici.
  • Sostituzione con media: se i dati mancanti sono numerici, sostituirli con la media.
  • Sostituzione frequente: se i dati mancanti sono categorici, sostituire i valori mancanti con l'elemento più frequente.
  • Sostituzione con regressione: usare il metodo della regressione per sostituire i valori mancanti con valori regrediti.

Come normalizzare i dati?

La normalizzazione dei dati ridimensiona i valori numerici in un intervallo specificato. I metodi di normalizzazione dei dati più comuni includono:

  • Normalizzazione minima: trasformare in modo lineare i dati in un intervallo, ad esempio da 0 a 1, in cui il valore minimo viene ridimensionato su 0 e il valore massimo viene ridimensionato su 1.
  • Normalizzazione del punteggio Z: ridimensionare i dati in base alla deviazione media e standard. Dividere la differenza tra i dati e la media in base alla deviazione standard.
  • Scalabilità decimale: consente di ridurre i dati spostando il punto decimale del valore dell'attributo.

Come eseguire la discretizzazione dei dati?

I dati possono essere discretizzati convertendo i valori continui in attributi o intervalli nominali. È possibile usare i seguenti metodi:

  • Binning uguale a larghezza: dividere l'intervallo di tutti i valori possibili di un attributo in N gruppi di dimensioni uguali e assegnare i valori che rientrano in un contenitore con il numero bin.
  • Binning uguale all'altezza: dividere l'intervallo di tutti i valori possibili di un attributo in N gruppi, ognuno contenente lo stesso numero di istanze. Assegnare quindi i valori che rientrano in un contenitore con il numero bin.

Come ridurre i dati?

Esistono vari metodi per ridurre le dimensioni dei dati e renderne più semplice la gestione. A seconda delle dimensioni dei dati e del dominio, è possibile applicare i metodi seguenti:

  • Campionamento dei record: campiona i record di dati e scegli solo il sottoinsieme rappresentativo dei dati.
  • Campionamento degli attributi: selezionare solo un subset degli attributi più importanti dai dati.
  • Aggregazione: i dati vengono divisi in gruppi e per ogni gruppo vengono memorizzati i numeri. Ad esempio, i numeri dei ricavi giornalieri di una catena di ristoranti negli ultimi 20 anni possono essere aggregati in ricavi mensili per ridurre le dimensioni dei dati.

Come pulire i dati di testo?

I campi di testo nei dati tabulari possono includere caratteri che influiscono sull'allineamento delle colonne o sui limiti dei record. Ad esempio, le schede incorporate in un file separato da tabulazioni causano un errore di allineamento delle colonne e le righe dei nuovi caratteri di riga incorporate interrompono le righe del record. Durante la scrittura o la lettura del testo, gestire correttamente la codifica del testo per evitare la perdita di informazioni, introducendo inavvertitamente caratteri illeggibili (ad esempio i valori Null) o influisce negativamente sull'analisi del testo. Potrebbe essere necessario analizzare e modificare attentamente i dati. È possibile pulire i campi di testo per garantire un allineamento corretto ed estrarre dati strutturati da dati non strutturati o semistrutturati.

L'esplorazione dei dati offre una visualizzazione anticipata dei dati. È possibile individuare molti problemi di dati durante questo passaggio e applicare metodi corrispondenti per risolvere tali problemi. È importante porre domande, ad esempio l'origine del problema e come è stato introdotto il problema. Questo processo consente anche di decidere i passaggi di elaborazione dei dati che devono essere eseguiti per risolverli. Per classificare in ordine di priorità il lavoro di elaborazione dei dati, è possibile identificare i casi d'uso finali e gli utenti personali.

Riferimenti

Data Mining: Concepts and Techniques, Third Edition, Morgan Kaufmann, 2011, Jiawei Han, Micheline Kamber, and Jian Pei

Collaboratori

Questo articolo viene gestito da Microsoft. Originariamente è stato scritto dai seguenti contributori.

Autore principale:

Per visualizzare i profili LinkedIn non pubblici, accedere a LinkedIn.

Passaggi successivi