8.1 Il lisciamento esponenziale semplice

Il più semplice dei metodi di lisciamento esponenziale è semplicemente chiamato lisciamento esponenziale semplice (simple exponential smoothing, SES)13. Questo metodo è adatto per la previsione di dati che non hanno una chiara tendenza o non contengono componenti stagionali. Ad esempio, i dati in figura 8.1 non mostrano alcuna chiara tendenza o stagionalità. (C’è un calo negli ultimi anni, che potrebbe suggerire un trend. Si considererà più avanti in questo capitolo l’opportunità di usare un metodo con trend per questa serie). Sono stati già considerato il metodo naive e la media come possibili metodi per la previsione di tali dati (paragrafo 5.2).

algeria_economy <- global_economy %>%
  filter(Country == "Algeria")
algeria_economy %>%
  autoplot(Exports) +
  labs(x = "Anno", y = "% del GDP", title = "Esportazioni: Algeria")
Esportazioni di beni e servizi dall'Algeria dal 1960 al 2017.

Figura 8.1: Esportazioni di beni e servizi dall’Algeria dal 1960 al 2017.

Usando il metodo naive, tutte le previsioni per il futuro sono uguali all’ultimo valore osservato della serie, \[ \hat{y}_{T+h|T} = y_{T}, \] per \(h=1,2,\dots\). Pertanto, il metodo naive presuppone che l’osservazione più recente sia l’unica importante e che tutte le osservazioni precedenti non forniscano informazioni per il futuro. Questo può essere considerato come una media ponderata in cui tutto il peso viene assegnato all’ultima osservazione.

Usando il metodo della media, tutte le previsioni future sono uguali ad una media semplice dei dati osservati, \[ \hat{y}_{T+h|T} = \frac1T \sum_{t=1}^T y_t, \] per \(h=1,2,\dots\). Pertanto, il metodo della media assume che tutte le osservazioni abbiano la stessa importanza e attribuisce loro lo stesso peso nel calcolo delle previsioni.

Spesso si è interessati a qualcosa tra questi due estremi. Ad esempio, può essere ragionevole attribuire pesi maggiori alle osservazioni più recenti rispetto alle osservazioni più lontante nel passato. Questo è esattamente il concetto alla base del lisciamento esponenziale semplice. Le previsioni vengono calcolate utilizzando delle medie ponderate, in cui i pesi diminuiscono in modo esponenziale man mano che le osservazioni provengono da più lontano — i pesi più piccoli sono associati alle osservazioni più vecchie: \[\begin{equation} \hat{y}_{T+1|T} = \alpha \, y_T + \alpha \, (1-\alpha) \, y_{T-1} + \alpha \, (1-\alpha)^2 \, y_{T-2}+ \cdots, \tag{8.1} \end{equation}\] dove \(0 \le \alpha \le 1\) è il parametro di lisciamento. La previsione un passo avanti per il tempo \(T+1\) è una media ponderata di tutte le osservazioni della serie \(y_1,\dots,y_T\). La velocità con cui i pesi diminuiscono è controllata dal parametro \(\alpha\).

La tabella seguente mostra i pesi assegnati alle osservazioni per quattro diversi valori di \(\alpha\) quando si fa una previsione usando il lisciamento esponenziale semplice. Si noti che la somma dei pesi, anche per un valore piccolo di \(\alpha\), sarà approssimativamente pari a uno per ogni ragionevole dimensione del campione.

\(\alpha=0.2\) \(\alpha=0.4\) \(\alpha=0.6\) \(\alpha=0.8\)
\(y_{T}\) 0.2000 0.4000 0.6000 0.8000
\(y_{T-1}\) 0.1600 0.2400 0.2400 0.1600
\(y_{T-2}\) 0.1280 0.1440 0.0960 0.0320
\(y_{T-3}\) 0.1024 0.0864 0.0384 0.0064
\(y_{T-4}\) 0.0819 0.0518 0.0154 0.0013
\(y_{T-5}\) 0.0655 0.0311 0.0061 0.0003

Per \(\alpha\) compreso tra 0 e 1, i pesi associati alle osservazioni diminuiscono esponenzialmente man mano che si torna indietro nel tempo, da qui il nome “lisciamento esponenziale”. Se \(\alpha\) è piccolo (cioè vicino a \(0\)), viene dato più peso alle osservazioni più lontane nel passato (rispetto a valori di \(\alpha\) maggiori). Se \(\alpha\) è grande (cioè vicino a \(1\)), viene dato più peso alle osservazioni più recenti. Per il caso estremo in cui \(\alpha=1\), \(\hat{y}_{T+1|T}=y_T\) e le previsioni sono uguali a quelle naive.

Si presentano di seguito due forme equivalenti di lisciamento esponenziale semplice, ciascuna delle quali porta all’equazione di previsione (8.1).

Forma mediante media ponderata

La previsione al tempo \(T+1\) è uguale ad una media ponderata tra l’osservazione più recente \(y_T\) e la previsione precedente \(\hat{y}_{T|T-1}\): \[ \hat{y}_{T+1|T} = \alpha \, y_T + (1-\alpha) \, \hat{y}_{T|T-1}, \] dove \(0 \le \alpha \le 1\) è il parametro di lisciamento. Analogamente, i valori stimati possono essere scritti come \[ \hat{y}_{t+1|t} = \alpha \, y_t + (1-\alpha) \, \hat{y}_{t|t-1}, \] per \(t=1,\dots,T\). (Si ricorda che i valori stimati sono semplicemente previsioni ad un passo dei dati del training set).

Il processo deve iniziare da qualche parte; si indica pertanto con \(\ell_0\) il primo valore stimato al tempo \(1\) (che bisognerà stimare). Pertanto \[\begin{align*} \hat{y}_{2|1} &= \alpha y_1 + (1-\alpha) \ell_0\\ \hat{y}_{3|2} &= \alpha y_2 + (1-\alpha) \hat{y}_{2|1}\\ \hat{y}_{4|3} &= \alpha y_3 + (1-\alpha) \hat{y}_{3|2}\\ \vdots\\ \hat{y}_{T|T-1} &= \alpha y_{T-1} + (1-\alpha) \hat{y}_{T-1|T-2}\\ \hat{y}_{T+1|T} &= \alpha y_T + (1-\alpha) \hat{y}_{T|T-1}. \end{align*}\] Sostituendo ciascuna equazione nell’equazione seguente, si ottiene \[\begin{align*} \hat{y}_{3|2} & = \alpha y_2 + (1-\alpha) \left[\alpha y_1 + (1-\alpha) \ell_0\right] \\ & = \alpha y_2 + \alpha(1-\alpha) y_1 + (1-\alpha)^2 \ell_0 \\ \hat{y}_{4|3} & = \alpha y_3 + (1-\alpha) [\alpha y_2 + \alpha(1-\alpha) y_1 + (1-\alpha)^2 \ell_0]\\ & = \alpha y_3 + \alpha(1-\alpha) y_2 + \alpha(1-\alpha)^2 y_1 + (1-\alpha)^3 \ell_0 \\ & ~~\vdots \\ \hat{y}_{T+1|T} & = \sum_{j=0}^{T-1} \alpha(1-\alpha)^j y_{T-j} + (1-\alpha)^T \ell_{0}. \end{align*}\] L’ultimo termine diventa trascurabile per \(T\) grande. Pertanto, la forma tramite media ponderata porta alla stessa equazione di previsione (8.1).

Forma per componenti

Una rappresentazione alternativa è la forma per componenti. Per il lisciamento esponenziale semplice, l’unica componente considerata è il livello \(\ell_t\). (Altri metodi che verranno considerati più avanti in questo capitolo possono comprendere anche un trend \(b_t\) e una componente stagionale \(s_t\)). Le rappresentazioni delle componenti nei metodi di lisciamento esponenziale comprendono un’equazione di previsione ed un’equazione di lisciamento per ciascuna delle componenti incluse nel metodo. La forma per componenti del lisciamento esponenziale semplice è data da: \[\begin{align*} \text{Equazione di previsione} && \hat{y}_{t+h|t} & = \ell_{t}\\ \text{Equazione di lisciamento} && \ell_{t} & = \alpha \, y_{t} + (1 - \alpha) \, \ell_{t-1}, \end{align*}\] dove \(\ell_{t}\) è il livello (o valore lisciato) della serie al tempo \(t\). Fissando \(h=1\) si ottengono i valori stimati, mentre fissando \(t=T\) si ottengono le vere previsioni, riferite cioè a tempi successivi a quelli del training set.

L’equazione di previsione mostra che il valore della previsione al tempo \(t+1\) è il livello stimato al tempo \(t\). L’equazione di lisciamento per il livello (di solito indicata come equazione del livello) fornisce il livello stimato della serie per ciascun periodo \(t\).

Se nell’equazione di lisciamento si sostituisce \(\ell_t\) con \(\hat{y}_{t+1|t}\) e \(\ell_{t-1}\) con \(\hat{y}_{t|t-1}\), si ottenie la forma media ponderata del lisciamento esponenziale semplice.

La forma per componenti del lisciamento esponenziale semplice non è particolarmente utile da sola, ma sarà la forma più semplice da utilizzare quando si inizieranno ad aggiungere altre componenti.

Previsioni piatte

Il lisciamento esponenziale semplice fornisce una funzione di previsione “piatta”: \[ \hat{y}_{T+h|T} = \hat{y}_{T+1|T}=\ell_T, \qquad h=2,3,\dots. \] In altre parole, tutte le previsioni assumono lo stesso valore, uguale all’ultima componente del livello. Si noti che queste previsioni saranno adatte solo se la serie storica non presenta né trend né componente stagionale.

Ottimizzazione

L’applicazione di ogni metodo di lisciamento esponenziale richiede la scelta dei parametri di lisciamento e dei valori iniziali. In particolare, per il lisciamento esponenziale semplice, è necessario scegliere i valori di \(\alpha\) e \(\ell_0\). Tutte le previsioni possono essere calcolate dai dati una volta che si conoscono questi valori. Per i metodi che seguono di solito c’è più di un parametro di lisciamento e più di una componente iniziale da scegliere.

In alcuni casi, i parametri di lisciamento possono essere scelti in modo soggettivo — il previsore specifica il valore dei parametri di lisciamento in base all’esperienza precedente. Tuttavia, un modo più affidabile e oggettivo per ottenere valori per i parametri incogniti è quello di stimarli dai dati osservati.

Nel paragrafo 7.2, i coefficienti di un modello di regressione sono stati stimati minimizzando la somma dei residui al quadrato (solitamente nota come Sum of Squared Errors, SSE). Allo stesso modo, i parametri incogniti e i valori iniziali per qualsiasi metodo di lisciamento esponenziale possono essere stimati minimizzando l’SSE. I residui sono specificati come \(e_t=y_t - \hat{y}_{t|t-1}\) per \(t=1,\dots,T\). Si cercano quindi i valori dei parametri incogniti e i valori iniziali che minimizzano

\[\begin{equation} \text{SSE}=\sum_{t=1}^T(y_t - \hat{y}_{t|t-1})^2=\sum_{t=1}^Te_t^2. \tag{8.2} \end{equation}\]

A differenza del caso della regressione (per il quale sono disponibili formule che forniscono i valori dei coefficienti di regressione che minimizzano l’SSE), questo comporta un problema di minimizzazione non lineare, ed è necessario ricorrere ad uno strumento di ottimizzazione per risolverlo.

Esempio: esportazioni dell’Algeria

In questo esempio, il lisciamento esponenziale semplice viene usato per prevedere le esportazioni di beni e servizi dell’Algeria.

# Stima dei parametri
fit <- algeria_economy %>%
  model(ETS(Exports ~ error("A") + trend("N") + season("N")))
fc <- fit %>%
  forecast(h = 5)

Questo modello fornisce stime dei parametri pari a \(\hat\alpha=0.84\) e \(\hat\ell_0=39.5\), ottenute minimizzando SSE nel periodo \(t=1,2,\dots,58\), col vincolo \(0\le\alpha\le1\).

Nella tabella 8.1 viene mostrato il calcolo utilizzando questi parametri. La penultima colonna mostra il livello stimato per i tempi da \(t=0\) a \(t=58\); le ultime righe dell’ultima colonna mostrano le previsioni per \(h=1\) fino a \(5\) passi avanti.

Tabella 8.1: Previsione delle esportazioni di beni e servizi dell’Algeria usando il lisciamento esponenziale semplice.
Anno Tempo Osservazione Livello Previsione
\(t\) \(y_t\) \(\ell_t\) \(\hat{y}_{t\vert t-1}\)
1959 0 39.54
1960 1 39.04 39.12 39.54
1961 2 46.24 45.10 39.12
1962 3 19.79 23.84 45.10
1963 4 24.68 24.55 23.84
1964 5 25.08 25.00 24.55
1965 6 22.60 22.99 25.00
1966 7 25.99 25.51 22.99
1967 8 23.43 23.77 25.51
2014 55 30.22 30.80 33.85
2015 56 23.17 24.39 30.80
2016 57 20.86 21.43 24.39
2017 58 22.64 22.44 21.43
\(h\) \(\hat{y}_{T+h\vert T}\)
2018 1 22.44
2019 2 22.44
2020 3 22.44
2021 4 22.44
2022 5 22.44

La linea nera in figura 8.2 mostra i dati, che presentano un livello che cambia nel tempo.

fc %>%
  autoplot(algeria_economy) +
  geom_line(aes(y = .fitted), col="#D55E00",
            data = augment(fit)) +
  labs(y="% del GDP", title="Esportazioni: Algeria") +
  guides(colour = "none")
Lisciamento esponenziale semplice applicato alle esportazioni dell'Algeria (1960--2017). La curva arancione mostra i valori stimati un passo avanti.

Figura 8.2: Lisciamento esponenziale semplice applicato alle esportazioni dell’Algeria (1960–2017). La curva arancione mostra i valori stimati un passo avanti.

Le previsioni per il periodo 2018–2022 sono rappresentate in figura 8.2 accanto ai dati del periodo 1960–2017. Sono tracciati anche i valori stimati un passo avanti. Il valore elevato di \(\alpha\) in questo esempio si riflette nel grande aggiustamento che ha luogo nel livello stimato \(\ell_t\) ad ogni tempo. Un valore più piccolo di \(\alpha\) porterebbe a cambiamenti minori nel tempo, e quindi la serie di valori stimati sarebbe più liscia.

Gli intervalli di previsione mostrati qui sono calcolati usando i metodi descritti nel paragrafo 8.7. Gli intervalli di previsione mostrano che c’è una considerevole incertezza nelle esportazioni future per i cinque anni del periodo di previsione. Interpretare le previsioni puntuali senza tenere conto di questa grande incertezza può essere quindi molto fuorviante.


  1. In alcuni testi questo metodo viene chiamato “lisciamento esponenziale singolo”.↩︎