02. Predictive Data Preprocessing

Slide PDF

Indice


Obiettivo del Data Preprocessing

Definizione

Il data preprocessing e l’insieme di trasformazioni applicate ai dati grezzi per renderli piu compatibili con l’algoritmo predittivo scelto.

I dati osservati nel mondo reale raramente sono gia nel formato ideale per il forecasting. Possono contenere trend, stagionalita, varianza crescente, valori mancanti, rumore, outlier o troppe variabili. Il preprocessing serve a ridurre questi problemi prima di addestrare un modello.

In pratica: non si cambia il fenomeno, si cambia la rappresentazione dei dati per renderlo piu leggibile al modello. Una serie con trend esponenziale, ad esempio, puo diventare piu gestibile applicando un logaritmo; una serie con trend lineare puo diventare piu stabile applicando una differenza.

Nessuna regola deterministica

Non esiste una trasformazione sempre corretta. La scelta dipende dal modello, dalla struttura della serie e dall’obiettivo operativo.

Il collegamento naturale e con Operational Analytics: nelle applicazioni operative non basta avere dati disponibili, bisogna renderli utilizzabili per decisioni previsionali affidabili.


Stazionarieta e Momenti Fondamentali

Momenti di una Serie Temporale

Definizione

Un momento e una misura quantitativa della forma di una distribuzione o di una funzione. In una serie temporale descrive aspetti come livello medio, dispersione e dipendenza nel tempo.

Per una serie temporale univariata Y = (y1, ..., yn), i momenti principali sono:

  • Media: livello medio della serie nel tempo.
  • Varianza: misura quanto i valori oscillano intorno alla media.
  • Autocovarianza: misura quanto il valore in un istante e collegato al valore in un altro istante.

In pratica: se la media cambia, la serie ha un trend; se la varianza cambia, le oscillazioni diventano piu o meno ampie; se l’autocovarianza dipende dalla distanza temporale, la serie ha memoria.

Esempio

Una serie di vendite mensili puo avere media crescente perche l’azienda sta crescendo, varianza crescente perche i volumi sono piu alti, e autocovarianza stagionale perche dicembre somiglia agli altri dicembre piu che ai mesi vicini.

Condizioni di Stazionarieta

Definizione

Una serie temporale e stazionaria se la sua distribuzione resta invariata rispetto a traslazioni nel tempo.

In termini pratici, una serie e stazionaria se:

  • la media e costante nel tempo;
  • la varianza e costante nel tempo;
  • la relazione tra valori separati da k periodi dipende solo da k, non dal momento specifico.

Una serie stazionaria e piu semplice da prevedere perche il comportamento passato e piu rappresentativo del comportamento futuro. Molti modelli predittivi assumono implicitamente che la struttura statistica della serie sia stabile.

Note

Una serie puo essere stazionaria in media e varianza ma avere comunque stagionalita. La stagionalita va trattata separatamente, per esempio con differenziazione stagionale o decomposizione.


Trasformazioni di Base

Difference Transform

Definizione

La difference transform sostituisce ogni valore con la differenza tra il valore corrente e un valore passato della stessa serie.

La differenziazione di primo ordine e:

y'_t = y_t - y_{t-1}

Se la serie ha un trend lineare, questa trasformazione puo renderla stazionaria in media. Invece di modellare il livello assoluto, il modello lavora sulle variazioni tra un periodo e il successivo.

In pratica: se le vendite crescono di circa 10 unita ogni mese, la serie originale sale continuamente; la serie differenziata contiene valori intorno a 10 e quindi e piu stabile.

Varianti importanti:

  • Second order differencing: applica la differenza alla serie gia differenziata, utile per trend piu complessi.
  • Seasonal differencing: sottrae il valore della stagione precedente, per esempio y_t - y_{t-12} in dati mensili con stagionalita annuale.

Quando usarla

Usala quando il problema principale e un trend sistematico nella media. Attenzione pero: differenziare troppo puo eliminare informazione utile e rendere la serie piu rumorosa.

Log e Power Transform

Definizione

La log transform applica il logaritmo ai valori della serie per stabilizzare la varianza e trasformare relazioni moltiplicative in additive.

Il logaritmo e utile quando le oscillazioni crescono insieme al livello della serie. Se una serie passa da 100 a 110 e poi da 1000 a 1100, la variazione assoluta e diversa, ma la variazione percentuale e la stessa. In scala logaritmica queste differenze diventano piu confrontabili.

Proprieta principali:

  • trasforma trend esponenziali in trend piu vicini a lineari;
  • rende le variazioni in log approssimativamente interpretabili come variazioni percentuali;
  • rende gli errori in log approssimativamente interpretabili come errori percentuali.

Esempio

Se i passeggeri aerei crescono con un andamento esponenziale e oscillazioni sempre piu ampie, il log riduce l’effetto della scala. Applicando poi una differenza sul log, si ottiene una serie simile a una crescita percentuale periodo su periodo.

La power transform generalizza questa idea. Include logaritmo, radice quadrata e trasformazioni come Box-Cox, che sceglie un parametro lambda per rendere i dati piu simili a una distribuzione normale e stabilizzare la varianza.

Warning

Box-Cox richiede valori positivi. Se la serie contiene zero o valori negativi, serve prima una gestione specifica o una trasformazione alternativa.

Standardizzazione e Normalizzazione

Definizione

La standardizzazione riscala i dati sottraendo la media e dividendo per la deviazione standard, ottenendo media 0 e deviazione standard 1.

Formula intuitiva:

z_i = (x_i - media) / deviazione_standard

La standardizzazione e adatta quando i dati hanno una distribuzione circa gaussiana o quando il modello e sensibile alla scala delle variabili.

Definizione

La normalizzazione riscala i valori in un intervallo prefissato, spesso tra 0 e 1.

Formula min-max:

x'_i = (x_i - x_min) / (x_max - x_min)

La normalizzazione e utile quando si vuole mantenere la forma relativa dei dati ma comprimere la scala. E frequente in modelli di machine learning e reti neurali.

Differenza pratica

Standardizzare significa ragionare in deviazioni standard dalla media. Normalizzare significa comprimere i dati in un intervallo. La prima e piu statistica, la seconda e piu geometrica.


Missing Values

Definizione

I missing values sono osservazioni mancanti nella serie o nel dataset, dovute per esempio a errori di misura, sensori offline, problemi di raccolta o integrazione dati.

Non esiste un metodo universalmente corretto per gestire valori mancanti. L’imputazione puo aiutare, ma puo anche introdurre informazione artificiale e peggiorare la previsione.

Metodi non specifici per serie temporali:

  • Mean imputation: sostituisce i mancanti con la media.
  • Median imputation: usa la mediana, piu robusta agli outlier.
  • Mode imputation: usa il valore piu frequente.
  • Random sample imputation: usa valori osservati scelti casualmente.

Questi metodi funzionano meglio quando la serie e abbastanza stazionaria. Se c’e trend o stagionalita, sostituire con una media globale puo creare valori poco realistici.

Metodi specifici per serie temporali:

  • LOCF: last observation carried forward, ripete l’ultimo valore osservato.
  • NOCB: next observation carried backward, usa il valore successivo.
  • Interpolazione lineare: collega i punti noti con una retta.
  • Spline interpolation: usa curve piu flessibili.

Assunzione critica

LOCF, NOCB e interpolazioni assumono che osservazioni vicine siano simili. Questa assunzione puo fallire con stagionalita forte, shock improvvisi o serie molto rumorose.


Preprocessing Avanzato

Outlier Detection

Definizione

Un outlier e un’osservazione che differisce significativamente dalle altre osservazioni della stessa variabile.

Nelle serie temporali, un outlier puo essere rumore da correggere oppure un evento operativo importante da preservare. Per esempio, un picco anomalo di traffico puo essere un errore di sensore, ma anche un evento reale che il sistema deve riconoscere.

Approcci comuni:

  • Etichettare ogni punto come normale o anomalo.
  • Prevedere il valore atteso e classificare come anomalo cio che si discosta troppo dalla previsione.
  • Decomposizione STL: separa la serie in trend, stagionalita e residuo; gli outlier emergono spesso nel residuo.
  • Alberi di classificazione o regressione: usano apprendimento supervisionato se esistono etichette.

Punto critico

Gli outlier non vanno eliminati automaticamente. In alcune applicazioni sono proprio i dati piu interessanti, per esempio frodi, guasti, incidenti, picchi di domanda o anomalie di processo.

Dimensionality Reduction

Definizione

La riduzione dimensionale riduce il numero di variabili usate dal modello mantenendo quanta piu informazione utile possibile.

Nei dataset multivariati possono esserci centinaia o migliaia di attributi. Troppe variabili aumentano costo computazionale, rischio di overfitting, multicollinearita e difficolta di interpretazione.

Due famiglie principali:

  • Feature selection: conserva solo alcune variabili originali.
  • Feature extraction: crea nuove variabili come combinazioni delle originali.

Tecniche tipiche:

  • rimuovere variabili con troppi mancanti;
  • rimuovere variabili con varianza quasi nulla;
  • rimuovere una variabile tra due molto correlate;
  • usare Random Forest per stimare importanza delle feature;
  • backward elimination e forward selection;
  • PCA e SVD per creare componenti sintetiche.

Esempio

In un problema di previsione della domanda con molte variabili promozionali, meteo e calendario, alcune feature possono essere ridondanti. Ridurle puo rendere il modello piu stabile e piu veloce senza perdere accuratezza.

Data Augmentation e Bootstrapping

Definizione

La data augmentation genera dati artificiali o pseudo-osservazioni per migliorare l’addestramento, soprattutto quando la serie e corta.

Per le serie temporali si possono usare extrapolazione, aggregazione, campionamento probabilistico o tecniche dedicate. L’obiettivo non e inventare realta, ma aumentare la robustezza del modello quando i dati disponibili sono pochi.

Il bootstrapping genera molti pseudo-campioni dai dati osservati per stimare empiricamente la distribuzione di una statistica o l’incertezza delle previsioni.

Metodi utili:

  • Block bootstrap: ricampiona blocchi contigui, preservando dipendenze locali.
  • Stationary bootstrap: usa blocchi di lunghezza casuale.
  • Residual bootstrap: stima un modello, ricampiona i residui e ricostruisce nuove serie.

Note

Il bootstrapping e utile per intervalli di confidenza, validazione del modello e serie corte, senza assumere una distribuzione parametrica specifica.


Noise Reduction

Analisi Spettrale e Filtri

Definizione

La noise reduction cerca di migliorare il rapporto segnale-rumore rimuovendo componenti casuali o poco informative dalla serie.

Un approccio classico viene dal signal processing: trasformare la serie dal dominio del tempo al dominio delle frequenze. L’idea di base e che una serie periodica puo essere rappresentata come somma di sinusoidi con frequenze e ampiezze diverse.

La Fourier Transform permette di analizzare quali frequenze sono presenti nella serie. Per dati discreti si usa la Discrete Fourier Transform (DFT), spesso calcolata efficientemente tramite Fast Fourier Transform (FFT).

In pratica: se nei dati mensili dei passeggeri aerei il picco di potenza e alla frequenza 0.0833, il periodo dominante e 1 / 0.0833 = 12, cioe una stagionalita annuale.

Filtri comuni:

  • Low pass filter: mantiene le basse frequenze e attenua le alte. Utile per ridurre rumore veloce.
  • High pass filter: mantiene le alte frequenze e attenua le basse. Utile quando interessano variazioni rapide.
  • Moving average: nelle serie temporali e un semplice filtro low pass.

Tip

Prima dell’analisi spettrale conviene spesso rimuovere il trend. In questo modo le frequenze stagionali emergono piu chiaramente.

Autoencoder

Definizione

Un autoencoder e una rete neurale addestrata a ricostruire in output lo stesso dato ricevuto in input, passando attraverso una rappresentazione interna compressa.

La compressione forza la rete a conservare la struttura regolare dei dati e a ignorare parte del rumore. Per questo gli autoencoder sono collegati alla riduzione dimensionale, in modo simile alla PCA ma con maggiore flessibilita non lineare.

Usi nelle serie temporali:

  • Denoising: ricostruire una versione piu pulita della serie.
  • Anomaly detection: gli errori di ricostruzione alti indicano possibili anomalie.
  • Missing data: ricostruire valori mancanti.
  • Feature extraction: usare l’output dell’encoder come rappresentazione compatta.

Warning

Gli autoencoder richiedono dati sufficienti e tuning. Su serie molto corte possono imparare male o ricostruire anche il rumore.

Kalman Filter

Definizione

Il Kalman filter e un algoritmo ricorsivo che stima uno stato non osservato combinando previsione del modello e misurazione osservata, filtrando il rumore.

Il filtro alterna due fasi:

  • Prediction: stima il prossimo stato e la sua incertezza.
  • Update: osserva la nuova misura, confronta previsione e misura, e corregge la stima.

Il punto centrale e il Kalman Gain, che decide quanto fidarsi della previsione rispetto alla misurazione. Se la misura e molto rumorosa, il filtro si fida di piu della previsione; se la previsione e incerta, si fida di piu della misura.

Note

Con rumore gaussiano, il Kalman filter minimizza l’errore quadratico medio. Se il rumore non e gaussiano, resta un buon stimatore lineare ma potrebbero esistere metodi non lineari migliori.

In pratica: in un sensore industriale che misura una grandezza ogni secondo, il Kalman filter produce una serie piu regolare senza dover conservare tutta la storia passata. Questo lo rende adatto anche a sistemi real-time ed embedded.


Prossimi Argomenti

Continueremo con: