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:
- Mark Tabladillo | Senior Cloud Solution Architect
Per visualizzare i profili LinkedIn non pubblici, accedere a LinkedIn.
Passaggi successivi
- Pre-elaborare set di dati di grandi dimensioni con Azure Machine Learning
- Studio di Azure Machine Learning
- Cos'è Azure Machine Learning?
Risorse correlate
Commenti e suggerimenti
https://aka.ms/ContentUserFeedback.
Presto disponibile: Nel corso del 2024 verranno gradualmente disattivati i problemi di GitHub come meccanismo di feedback per il contenuto e ciò verrà sostituito con un nuovo sistema di feedback. Per altre informazioni, vedereInvia e visualizza il feedback per