Set di dati: caratteristiche dei dati

Un set di dati è una raccolta esempi.

Molti set di dati archiviano i dati in tabelle (griglie), ad esempio con valori separati da virgole (CSV) o direttamente dai fogli di lavoro e tabelle di database. Le tabelle sono un formato di input intuitivo per l'apprendimento dei modelli. Puoi immaginare ogni riga della tabella come esempio e ogni colonna come potenziale caratteristica o etichetta. Detto questo, i set di dati possono anche derivare da altri formati, tra cui di log e buffer di protocollo.

Indipendentemente dal formato, la qualità del modello ML su cui viene addestrato. Questa sezione esamina le principali caratteristiche dei dati.

Tipi di dati

Un set di dati può contenere molti tipi di tipi di dati, tra cui non limitatamente a:

  • come dati numerici, trattati in un articolo unità
  • categorici, che sono trattati in un unità
  • il linguaggio umano, incluse singole parole e frasi, fino interi documenti di testo
  • multimediali (come immagini, video e file audio)
  • da altri sistemi di ML
  • vettori di incorporamento, che vengono in un'unità successiva

I tipi di dati precedenti possono essere suddivisi molto ulteriormente. I moduli successivi di questo corso, ad esempio Modulo Dati: dettaglio e sottocategorizzare questi tipi di dati.

Quantità di dati

Come regola generale, il modello deve essere addestrato almeno in base a un ordine di magnitudo (o due) in più rispetto ai parametri addestrabili. Tuttavia, buona i modelli in genere vengono addestrati su molto più esempi rispetto a questi.

Modelli addestrati su set di dati di grandi dimensioni con funzionalità generalmente hanno prestazioni migliori dei modelli addestrati su set di dati molte funzionalità. Google ha sempre avuto un grande successo nell'addestramento di modelli semplici e grandi set di dati.

Set di dati diversi per programmi di machine learning diversi possono richiedere quantità diverse di esempi per creare un modello utile. Per alcuni relativamente problemi semplici, qualche dozzina di esempi potrebbe essere sufficiente. Per altri problemi, trilioni di esempi potrebbero non essere sufficienti.

È possibile ottenere buoni risultati da un piccolo set di dati se ti stai adeguando un modello esistente già addestrato su grandi quantità di dati lo stesso schema.

Qualità e affidabilità dei dati

Tutti preferiscono alta qualità a bassa qualità, ma la qualità è così vaga concetto che potrebbe essere definita in molti modi diversi. Questo corso definisce quality in modo pragmatico:

Un set di dati di alta qualità aiuta il modello a raggiungere il suo obiettivo. Un set di dati di bassa qualità impedisce al modello di raggiungere il suo obiettivo.

Di solito anche un set di dati di alta qualità è affidabile. Con affidabilità si intende il livello di affidabilità dei dati. Un modello addestrato su un set di dati affidabile ha maggiori probabilità di produrre dati rispetto a un modello addestrato su dati inaffidabili.

Nel misurare l'affidabilità, devi determinare:

  • Quanto sono comuni gli errori nelle etichette? Ad esempio, se i tuoi dati sono etichettati da persone, con quale frequenza i revisori hanno commesso errori?
  • Le caratteristiche sono rumorose? Vale a dire che i valori delle caratteristiche contengono errori? Sii realistico: non puoi eliminare definitivamente il set di dati di tutto il rumore. Alcuni rumori sono normali; ad esempio, le misurazioni GPS la località varia di poco da una settimana all'altra.
  • I dati vengono filtrati correttamente per individuare il problema? Ad esempio: il set di dati deve includere le query di ricerca dei bot? Se creando un sistema di rilevamento dello spam, allora probabilmente la risposta è sì. Se invece stai cercando di migliorare i risultati di ricerca per gli esseri umani, no.

Di seguito sono riportate le cause comuni di inaffidabilità dei dati nei set di dati:

  • Valori omessi. Ad esempio, se una persona ha dimenticato di inserire un valore per l'età della casa.
  • Esempi duplicati. Ad esempio, un server ha caricato per errore lo stesso due voci di log.
  • Valori delle caratteristiche errati. Ad esempio, qualcuno ha digitato una cifra aggiuntiva o un termometro è stato escluso alla luce del sole.
  • Etichette non valide. Ad esempio, una persona ha erroneamente etichettato l'immagine di un quercia come un acero.
  • Sezioni di dati non valide. Ad esempio, una determinata caratteristica è molto affidabile, tranne il giorno in cui la rete continuava ad arrestarsi in modo anomalo.

Consigliamo di utilizzare l'automazione per segnalare i dati inaffidabili. Ad esempio: i test delle unità che definiscono o si basano su uno schema di dati formali esterni che non rientrano in un intervallo definito.

Esempi completi e incompleti

In un mondo perfetto, ogni esempio è completo, cioè ogni esempio contiene un valore per ciascuna caratteristica.

Figura 1. Un esempio contenente i valori di tutti e cinque i suoi
       le funzionalità di machine learning.
Figura 1. Un esempio completo.

 

Purtroppo, gli esempi reali sono spesso incompleti, il che significa che al momento manca almeno un valore di caratteristica.

Figura 2. Un esempio contenente valori per quattro dei suoi cinque
            le funzionalità di machine learning. Un elemento è contrassegnato come mancante.
Figura 2. Un esempio incompleto.

 

Non addestrare un modello su esempi incompleti. Correggi o elimina di esempi incompleti eseguendo una delle seguenti operazioni:

  • Elimina gli esempi incompleti.
  • Impute valori mancanti; cioè converti un esempio incompleto in un esempio completo fornendo ipotesi ben ragionate per i valori mancanti.
Figura 3. Un set di dati contenente tre esempi, due dei quali sono
            esempi incompleti. Qualcuno ha colpito queste due frasi incomplete
            di esempio tratti dal set di dati.
Figura 3. Eliminazione di esempi incompleti dal set di dati.

 

Figura 4. Un set di dati contenente tre esempi, due dei quali erano
            esempi incompleti contenenti dati mancanti. Un'entità (un essere umano)
            o un software di imputazione) ha imputato valori che hanno sostituito
            di dati mancanti.
. Figura 4. Immissione di valori mancanti per esempi incompleti.

 

Se il set di dati contiene abbastanza esempi completi per addestrare un modello utile, valuta la possibilità di eliminare gli esempi incompleti. Analogamente, se a una sola caratteristica manca una quantità significativa di dati e questo una caratteristica probabilmente non aiuta molto il modello, valuta la possibilità di eliminarla quella caratteristica dagli input del modello e vedendo quanta qualità viene persa la rimozione. Se il modello funziona esattamente o quasi senza lo stesso, va bene. Al contrario, se non hai abbastanza esempi completi per addestrare un modello utile, puoi prendere in considerazione l'idea di inserire valori mancanti.

Gli esempi inutili o ridondanti sono corretti, ma l'eliminazione non è valida. esempi importanti. Purtroppo, può essere difficile distinguere tra esempi inutili e utili. Se non riesci a decidere se per l'eliminazione o l'attribuzione, valuta la possibilità di creare due set di dati: uno creato esempi incompleti e l'altro con l'imputazione. Quindi, determina quale set di dati addestra il modello migliore.


Un algoritmo comune è quello di utilizzare la media o la mediana come valore imputato. Di conseguenza, quando rappresenti una caratteristica numerica con Z-score, poi il valore attribuito è tipicamente 0 (perché 0 è generalmente il punteggio Z medio).

Allenamento: verifica le tue conoscenze

Ecco due colonne di un set di dati ordinate per Timestamp.

Timestamp Temperatura
8 giugno 2023 09:00 12
8 giugno 2023 10:00 18
8 giugno 2023 11:00 mancante
8 giugno 2023 12:00 24
8 giugno 2023 13:00 38

Quale dei seguenti sarebbe un valore ragionevole da attribuire per il valore mancante Temperatura?

23
È probabile. 23 è la media dei valori adiacenti (12, 18, 24 e 38). Tuttavia, non vediamo il resto del set di dati, quindi è possibile che 23 sarebbe un outlier per le 11:00 degli altri giorni.
31
È improbabile. La parte limitata del set di dati che possiamo vedere suggerisce che 31 è troppo alto per la Temperatura delle 11:00. Tuttavia, non possiamo essere sicuri senza basare l'attribuzione su un numero maggiore di esempi.
51
Molto improbabile. 51 è molto più alto di uno qualsiasi dei valori visualizzati (e, quindi, molto più elevata della media).