Suddivisione dei dati

Come dimostra l'esempio di notizia, una suddivisione casuale pura non è sempre l'approccio giusto.

Una tecnica frequente per i sistemi online è suddividere i dati in base al tempo, in modo da:

  • Raccogli i dati degli ultimi 30 giorni.
  • Impara dai dati dei giorni 1-29.
  • Valuta i dati del 30° giorno.

Per i sistemi online, i dati di addestramento sono più vecchi dei dati di pubblicazione, pertanto questa tecnica garantisce che il tuo set di convalida rifletta il ritardo tra l'addestramento e la pubblicazione. Tuttavia, le suddivisioni basate sul tempo funzionano meglio con set di dati di grandi dimensioni, come quelli con decine di milioni di esempi. Nei progetti con meno dati, le distribuzioni diventano abbastanza diverse tra addestramento, convalida e test.

Ricorda anche la carenza di suddivisione dei dati del progetto di letteratura sul machine learning descritto nel corso di arresto anomalo del machine learning. I dati erano scritti da uno dei tre autori, pertanto i dati sono stati suddivisi in tre gruppi principali. Poiché il team ha applicato una suddivisione casuale, i dati di ogni gruppo erano presenti nei set di addestramento, valutazione e test, quindi il modello ha appreso dalle informazioni che non avrebbe necessariamente al momento della previsione. Questo problema può verificarsi ogni volta che i dati vengono raggruppati, sia che si tratti di dati di serie temporali sia che vengano raggruppati in base ad altri criteri. Le conoscenze del dominio possono determinare come suddividere i dati.

Per un'ulteriore revisione, consulta questi moduli nel corso Machine Learning Crash Course: