11.3 Riconciliazione delle previsioni

Avvertenza: il resto di questo capitolo è più avanzato e presuppone la conoscenza di elementi di base di algebra matriciale.

Notazione matriciale

Si ricorda che le Equazioni (11.1) e (11.2) descrivono come i dati che soddisfano la struttura gerarchica della Figura 11.1 si aggregano tra loro. Analogamente, (11.3) e (11.4) rappresentano come i dati, che soddisfano la struttura raggruppata della Figura 11.6, si aggregano tra loro. Queste equazioni possono essere viste come vincoli di aggregazione o come uguaglianze additive, e possono essere rappresentate in modo più efficiente usando la notazione matriciale.

Per ogni struttura di aggregazione è possibile costruire una matrice \(n\times m\) \(\bm{S}\) (detta “matrice somma”) che stabilisce il modo con cui si aggregano le serie del livello più basso.

Per la struttura gerarchica in Figura 11.1, possiamo scrivere \[ \begin{bmatrix} y_{t} \\ \y{A}{t} \\ \y{B}{t} \\ \y{AA}{t} \\ \y{AB}{t} \\ \y{AC}{t} \\ \y{BA}{t} \\ \y{BB}{t} \end{bmatrix} = \begin{bmatrix} 1 & 1 & 1 & 1 & 1 \\ 1 & 1 & 1 & 0 & 0 \\ 0 & 0 & 0 & 1 & 1 \\ 1 & 0 & 0 & 0 & 0 \\ 0 & 1 & 0 & 0 & 0 \\ 0 & 0 & 1 & 0 & 0 \\ 0 & 0 & 0 & 1 & 0 \\ 0 & 0 & 0 & 0 & 1 \end{bmatrix} \begin{bmatrix} \y{AA}{t} \\ \y{AB}{t} \\ \y{AC}{t} \\ \y{BA}{t} \\ \y{BB}{t} \end{bmatrix} \] o in notazione più compatta \[\begin{equation} \bm{y}_t=\bm{S}\bm{b}_{t}, \tag{11.5} \end{equation}\] dove \(\bm{y}_t\) è un vettore \(n\)-dimensionale di tutte le osservazioni nella gerarchia al tempo \(t\), \(\bm{S}\) è la matrice somma, e \(\bm{b}_{t}\) è un vettore \(m\)-dimensionale di tutte le osservazioni nel livello più basso della gerarchia al tempo \(t\). Si noti che la prima riga della matrice somma \(\bm{S}\) rappresenta l’Equazione (11.1), mentre la seconda e la terza riga rappresentano l’Equazione (11.2). Le righe successive contengono una matrice identità \(m\)-dimensionale \(\bm{I}_m\) tale per cui ciascuna osservazione del livello più basso nel lato destro dell’equazione è uguale a sé stessa nel lato sinistro.

Analogamente, per la struttura raggruppata della Figura 11.6 possiamo scrivere \[ \begin{bmatrix} y_{t} \\ \y{A}{t} \\ \y{B}{t} \\ \y{X}{t} \\ \y{Y}{t} \\ \y{AX}{t} \\ \y{AY}{t} \\ \y{BX}{t} \\ \y{BY}{t} \end{bmatrix} = \begin{bmatrix} 1 & 1 & 1 & 1 \\ 1 & 1 & 0 & 0 \\ 0 & 0 & 1 & 1 \\ 1 & 0 & 1 & 0 \\ 0 & 1 & 0 & 1 \\ 1 & 0 & 0 & 0 \\ 0 & 1 & 0 & 0 \\ 0 & 0 & 1 & 0 \\ 0 & 0 & 0 & 1 \end{bmatrix} \begin{bmatrix} \y{AX}{t} \\ \y{AY}{t} \\ \y{BX}{t} \\ \y{BY}{t} \end{bmatrix}, \] ossia \[\begin{equation} \bm{y}_t=\bm{S}\bm{b}_{t}, \tag{11.6} \end{equation}\] dove la seconda e la terza riga di \(\bm{S}\) rappresentano l’Equazione (11.3) e la quarta e la quinta riga rappresentano l’Equazione (11.4).

Matrici di mappatura

Questa notazione matriciale consente di rappresentare tutti i metodi di previsione per serie storiche gerarchiche o raggruppate usando una notazione comune.

Supponiamo di prevedere tutte le serie ignorando qualsiasi vincolo di aggregazione. Chiamiamo il risultato previsioni di base ed indichiamole con \(\hat{\bm{y}}_h\), dove \(h\) è l’orizzonte di previsione. Le previsioni di base sono organizzate nello stesso ordine dei dati \(\bm{y}_t\).

Tutti gli approcci di previsione coerente per strutture gerarchiche o raggruppate possono essere rappresentati come20 \[\begin{equation} \tilde{\bm{y}}_h=\bm{S}\bm{G}\hat{\bm{y}}_h, \tag{11.7} \end{equation}\] dove \(\bm{G}\) è una matrice che mappa le previsioni di base nel livello più basso, e la matrice somma \(\bm{S}\) le somma usando la struttura di aggregazione per produrre un insieme di previsioni coerenti \(\tilde{\bm{y}}_h\).

La matrice \(\bm{G}\) è definita in base all’approccio usato. Per esempio, se si usa l’approccio bottom-up per prevedere la gerarchia della Figura 11.1, si ha \[\bm{G}= \begin{bmatrix} 0 & 0 & 0 & 1 & 0 & 0 & 0 & 0\\ 0 & 0 & 0 & 0 & 1 & 0 & 0 & 0\\ 0 & 0 & 0 & 0 & 0 & 1 & 0 & 0\\ 0 & 0 & 0 & 0 & 0 & 0 & 1 & 0\\ 0 & 0 & 0 & 0 & 0 & 0 & 0 & 1\\ \end{bmatrix}. \] Si noti che \(\bm{G}\) contiene due partizioni. Le prime tre colonne fissano a zero le previsioni di base delle serie sopra il livello più basso, mentre la matrice identità di ordine \(m\) seleziona solo le previsioni di base del livello più basso, che poi a loro volta vengono sommate mediante la matrice \(\bm{S}\).

Se si usasse uno degli approcci top-down avremmo \[ \bm{G}= \begin{bmatrix} p_1 & 0 & 0 & 0 & 0 & 0 & 0 & 0\\ p_2 & 0 & 0 & 0 & 0 & 0 & 0 & 0\\ p_3 & 0 & 0 & 0 & 0 & 0 & 0 & 0\\ p_4 & 0 & 0 & 0 & 0 & 0 & 0 & 0\\ p_5 & 0 & 0 & 0 & 0 & 0 & 0 & 0\\ \end{bmatrix}. \] La prima colonna include l’insieme delle proporzioni che distribuiscono le previsioni di base del livello più elevato nel livello più basso. Tali previsioni vengono quindi sommate mediante la matrice \(\bm{S}\). Le restanti colonne annullano le previsioni di base sotto il livello di aggregatione più elevato.

Per un approccio middle out, la matrice \(\bm{G}\) sarà una combinazione delle due precedenti. Usando un insieme di proporzioni, le previsioni di base di un certo livello precedentemente scelto saranno disaggregate al livello più basso, tutte le altre previsioni saranno poste pari a zero, e le previsioni del livello più basso saranno quindi sommate lungo i livelli superiori della gerarchia mediante la matrice somma.

Riconciliazione delle previsioni

L’equazione (11.7) mostra che premoltiplicando un insieme di previsioni di base con \(\bm{S}\bm{G}\) produce un insieme di previsioni coerenti.

I metodi tradizionali fin qui considerati sono limitati, nel senso che essi usano esclusivamente le previsioni di base di un singolo livello di aggregazione, che viene aggregato o disaggregato per ricavare le previsioni per tutti gli altri livelli. Essi, pertanto, usano una informazione limitata. Tuttavia, in generale è possibile usare altre matrici \(\bm{G}\), e allora \(\bm{S}\bm{G}\) combina e riconcilia tutte le previsioni di base per produrre previsioni coerenti.

In effetti, è possibile trovare la matrice ottimale \(\bm{G}\) per ricavare previsioni riconciliate più accurate.

L’approccio di riconciliazione ottimale MinT

Wickramasuriya et al. (2019) hanno trovato una matrice \(\bm{G}\) che minimizza la varianza totale dell’insieme delle previsioni coerenti, dando vita all’approccio di riconciliazione ottimale MinT (Minimum Trace).

Supponiamo di aver generato delle previsioni coerenti usando l’Equazione (11.7). Anzitutto si desidera essere sicuri di avere previsioni non distorte. Se le previsioni di base \(\hat{\bm{y}}_h\) sono corrette, allora le previsioni coerenti \(\tilde{\bm{y}}_h\) saranno anch’esse corrette a condizione21 che \(\bm{S}\bm{G}\bm{S}=\bm{S}\). Ciò stabilisce un vincolo sulla matrice \(\bm{G}\). È interessante notare che nessun metodo top-down soddisfa questo vincolo, per cui tutti gli approcci top-down producono previsioni coerenti distorte.

Oltre a ciò, si ha bisogno di trovare gli errori nelle nostre previsioni. Wickramasuriya et al. (2019) mostrano che la matrice di varianza-covarianza degli errori delle previsioni coerenti \(h\)-passi-avanti è data da \[\begin{equation*} \bm{V}_h = \text{Var}[\bm{y}_{T+h}-\tilde{\bm{y}}_h]=\bm{S}\bm{G}\bm{W}_h\bm{G}'\bm{S}' \end{equation*}\] dove \(\bm{W}_h=\text{Var}[(\bm{y}_{T+h}-\hat{\bm{y}}_h)]\) è la matrice di varianza-covarianza dei corrispondenti errori delle previsioni di base.

L’obiettivo è trovare una matrice \(\bm{G}\) che minimizzi le varianze degli errori delle previsioni coerenti. Queste varianze si trovano sulla diagonale della matrice \(\bm{V}_h\), e pertanto la somma di tutte le varianze degli errori è data dalla traccia della matrice \(\bm{V}_h\). Wickramasuriya et al. (2019) mostrano che la matrice \(\bm{G}\) che minimizza la traccia di \(\bm{V}_h\) in modo che \(\bm{S}\bm{G}\bm{S}=\bm{S}\), è data da \[ \bm{G}=(\bm{S}'\bm{W}_h^{-1}\bm{S})^{-1}\bm{S}'\bm{W}_h^{-1}. \] Pertanto, le previsioni riconciliate in maniera ottimale sono date da \[\begin{equation} \tag{11.8} \tilde{\bm{y}}_h=\bm{S}(\bm{S}'\bm{W}_h^{-1}\bm{S})^{-1}\bm{S}'\bm{W}_h^{-1}\hat{\bm{y}}_h. \end{equation}\]

Chiamiamo questa espressione approccio ottimale alla riconciliazione MinT (o Minimum Trace). MinT è contenuto nella funzione reconcile() fissando l’opzione min_trace().

In pratica, si ha bisogno di stimare \(\bm{W}_h\), la varianza dell’errore di previsione delle previsioni di base \(h\)-passi-avanti. Ciò può risultare difficile, e pertanto si considerano quattro approssimazioni semplificatrici che hanno dato buona prova di sé tanto nelle simulazioni che in pratica.

  1. \(\bm{W}_h=k_h\bm{I}\) per tutti gli \(h\), con \(k_{h} > 0\).22 Questo è l’assunto più semplice che si possa fare, e significa che \(\bm{G}\) non dipende dai dati, consentendo quindi un notevole risparmio nei calcoli. Lo svantaggio, tuttavia, è che questa specificazione non tiene conto delle differenze di scala tra i livelli della struttura, o delle relazioni tra le serie.

    Fissare \(\bm{W}_h=k_h\bm{I}\) nella (11.8) fornisce lo stimatore di minimi quadrati ordinari (ordinary least squares, OLS) che abbiamo introdotto nella Sezione 7.9 con \(\bm{X}=\bm{S}\) e \(\bm{y}=\hat{\bm{y}}\). Quindi questo approccio viene spesso chiamato riconciliazione OLS. È implementato in min_trace() fissando method = "ols".

  2. \(\bm{W}_{h} = k_{h}\text{diag}(\hat{\bm{W}}_{1})\) per tutti gli \(h\), con \(k_{h} > 0\), \[ \hat{\bm{W}}_{1} = \frac{1}{T}\sum_{t=1}^{T}\bm{e}_{t}\bm{e}_{t}', \] e \(\bm{e}_{t}\) è un vettore \(n\)-dimensionale di residui dei modelli che hanno generato le previsioni di base, organizzato nello stesso ordine dei dati osservati.

    Questa specificazione scala le previsioni di base usando la varianza dei residui ed è pertanto chiamata stimatore dei minimi quadrati ponderati (weighted least squares, WLS) che usa il variance scaling. L’approccio è implementato in min_trace() fissando method = "wls_var".

  3. \(\bm{W}_{h}=k_{h}\bm{\Lambda}\) per tutti gli \(h\), con \(k_{h} > 0\), \(\bm{\Lambda}=\text{diag}(\bm{S}\bm{1})\), e \(\bm{1}\) è un vettore unitario di dimensione \(m\) (pari al numero delle serie al livello più basso). Questa specificazione assume che gli errori di previsione delle previsioni di base delle serie al livello più basso hanno ciascuno varianza pari a \(k_{h}\) e sono incorrelati tra i nodi. Pertanto ciascun elemento della matrice diagonale \(\bm{\Lambda}\) contiene il numero di varianze dell’errore di previsione che contribuiscono a ciascun nodo. Questo stimatore dipende solo dalla struttura delle aggregazioni, e non dai dati osservati. Viene pertanto chiamato scaling strutturale. Applicare la specificazione di scaling strutturale risulta essere particolarmente utile nei casi in cui i residui non siano disponibili, e dunque il variance scaling non può essere applicato; per esempio, nei casi in cui le previsioni di base siano di tipo judgmental (Capitolo 6). L’approccio è implementato in min_trace() fissando method = "wls_struct".

  4. \(\bm{W}_h = k_h \bm{W}_1\) per tutti gli \(h\), con \(k_h>0\). In questo caso si assume solo che le matrici di covarianza degli errori sono tra loro proporzionali, e viene quindi stimata direttamente la matrice completa di covarianza ad un passo \(\bm{W}_1\). Il modo più ovvio e semplice sarebbe usare la matrice di covarianza campionaria. Ciò è implementato in min_trace() fissando method = "mint_cov".

    Tuttavia, nei casi in cui il numero delle serie al livello più basso \(m\) è più grande della lunghezza della serie \(T\), questo non è un buon stimatore. Piuttosto, conviene usare uno stimatore shrinkage che restringe le covarianze campionarie verso una matrice diagonale. Ciò è implementato in min_trace() fissando method = "mint_shrink".

In sintesi, a differenza di ogni altro approccio esistente, le previsioni ottenute con tecniche di riconciliazione ottimale sono generate usando tutta l’informazione disponibile all’interno di una struttura gerarchica o raggruppata. Si tratta di una caratteristica importante, perché particolari livelli di aggregazione o di raggruppamento possono far emergere caratteristiche dei dati di interesse per l’utente e importanti da modellare. Queste caratteristiche possono essere completamente nascoste oppure non facilmente identificabili agli altri livelli.

Per esempio, si considerino i dati per il Turismo australiano introdotti nella Sezione 11.1, in cui la struttura gerarchica seguiva la divisione geografica della nazione in stati e regioni. Alcune aree saranno prevalentemente destinazioni estive, mentre altre possono essere destinazioni invernali. Abbiamo visto nella Figura 11.4 i diversi andamenti stagionali tra gli stati settentrionali e quelli meridionali. Per effetto dell’aggregazione, queste differenze verranno smussate a livello di nazione.

Bibliografia

Hyndman, R. J., Ahmed, R. A., Athanasopoulos, G., & Shang, H. L. (2011). Optimal combination forecasts for hierarchical time series. Computational Statistics and Data Analysis, 55(9), 2579–2589. [DOI]
Panagiotelis, A., Athanasopoulos, G., Gamakumara, P., & Hyndman, R. J. (2021). Forecast reconciliation: A geometric view with new insights on bias correction. International Journal of Forecasting, 37(1), 343–359. [DOI]
Wickramasuriya, S. L., Athanasopoulos, G., & Hyndman, R. J. (2019). Optimal forecast reconciliation for hierarchical and grouped time series through trace minimization. Journal of the American Statistical Association, 114(526), 804–819. [DOI]

  1. In realtà, alcuni recenti metodi di riconciliazione non lineare richiedono una espressione leggermente più complicata. L’espressione qui riportata vale per i metodi generali di riconciliazione lineare.↩︎

  2. Questo vincolo di “conservazione della correttezza” è stato per la prima considerato da Hyndman et al. (2011). Panagiotelis et al. (2021) mostrano che esso è equivalente all’essere \(\bm{S}\bm{G}\) una matrice di proiezione nel sotto-spazio coerente \(m\)-dimensionale per cui valgono i vincoli di aggregazione.↩︎

  3. Si noti che \(k_{h}\) è una costante di proporzionalità. Non è necessario che questa quantità sia stimata o specificata qui, perché essa si semplifica nella (11.8).↩︎