Come validare una previsione di marketing?
Una previsione si valida su periodi non usati per la stima, con origine temporale realistica, benchmark ingenuo e metrica coerente con il costo dell’errore.
Redazione scientifica: Marketing Science Center
Risposta diretta
Confrontare modelli per orizzonte e costo dell’errore dichiarati.
Una previsione si valida su periodi non usati per la stima, con origine temporale realistica, benchmark ingenuo e metrica coerente con il costo dell’errore.
01 · PROTOCOLLO
Sintesi operativa
Un modello di previsione settimanale è ristimato a tredici origini successive, poi giudicato su 52 settimane che non ha mai visto. Il suo errore assoluto scalato vale 0,420792, contro 1,039025 di una previsione ingenua stagionale: batte nettamente il termine di paragone. I suoi intervalli all’80 % contengono il risultato nello 0,750000 dei casi, entro la tolleranza dichiarata di 0,10 ma sul lato stretto. Entrambi i controlli passano. Verdetto: FORECAST_READABLE_FOR_PLANNING.
02 · PROTOCOLLO
Situazione marketing concreta
Un team deve impegnare scorte e budget media con quattro settimane di anticipo. Dispone di un modello che prevede il fatturato settimanale e che, sullo storico, aderisce notevolmente bene ai dati. La domanda da porsi prima di usarlo è semplice: quando questo modello si è già confrontato con settimane che non conosceva, e cosa è successo? Senza quella risposta, la bontà di adattamento osservata non dice nulla sull’uso previsto.
03 · PROTOCOLLO
Domanda scientifica
Per questa serie settimanale, questo modello dichiarato, queste tredici origini dichiarate e questo orizzonte di quattro settimane, l’errore del modello su settimane non usate per stimarlo è inferiore a quello di una previsione ingenua stagionale riportata alla stessa scala? E i suoi intervalli all’80 % contengono il risultato tanto spesso quanto pretendono? Le due domande sono distinte e ciascuna riceve la propria risposta: una previsione puntuale corretta può accompagnarsi a un’incertezza falsa.
04 · PROTOCOLLO
Perché l’approccio semplice può fallire
Giudicare un modello sulle settimane che sono servite a stimarlo lusinga sempre: più parametri si aggiungono, migliore appare il risultato, senza che alcuna capacità previsiva sia stata dimostrata. Nemmeno dividere una sola volta lo storico in stima e test basta, perché il punteggio dipende allora dal caso di un’unica frontiera. E riportare un errore in euro senza termine di paragone non consente a nessuno di giudicare: 55 € di errore medio è eccellente o catastrofico secondo la serie.
05 · PROTOCOLLO
Intuizione del metodo
Il metodo riproduce l’uso reale. Ci si riporta a una data passata, si usa solo ciò che era noto quel giorno, si prevedono le quattro settimane successive, poi si avanza di quattro settimane e si ricomincia. Tredici volte. Ogni errore è poi diviso per una quantità di riferimento calcolata sul solo passato disponibile a quella data: l’errore che avrebbe commesso una previsione ingenua stagionale. Un valore inferiore a uno significa che il modello ha fatto meglio di quella regola semplice. In parallelo si conta quante volte l’intervallo annunciato ha effettivamente contenuto il risultato.
06 · PROTOCOLLO
Dati necessari
Sono fissati prima di ogni lettura: la numerazione delle settimane senza lacune, il fatturato settimanale, la forma del modello (costante, tendenza lineare e due armoniche annuali), il periodo stagionale di 52 settimane, le tredici origini da 104 a 152 con passo 4, l’orizzonte di 4 settimane, la previsione ingenua stagionale come termine di paragone, la quantità di scala, il livello nominale di 0,80, il quantile 1,281552 e le due soglie. Il file sigillato contiene 156 settimane. Il caso è sintetico e dichiarato tale.
07 · PROTOCOLLO
Modello formale e simboli
A ogni origine, il modello stima per minimi quadrati una costante, una tendenza lineare e due armoniche annuali, cioè sei parametri, sulle sole settimane anteriori all’origine. L’errore assoluto scalato divide ogni errore fuori campione per la media degli scarti assoluti a 52 settimane osservati nella stessa finestra. L’intervallo ha per semiampiezza 1,281552 volte la deviazione standard residua della stima, quel quantile essendo quello della legge normale standardizzata a 0,90. Il punteggio d’intervallo aggiunge alla larghezza una penalità proporzionale a ogni sforamento, divisa per il rischio accettato.
08 · PROTOCOLLO
Calcolo dichiarato
Il calcolo dichiarato segue sette tappe: validare lo schema e rifiutare ogni file non conforme o troppo corto per il piano di validazione; a ogni origine, costruire la matrice di disegno sulle sole settimane anteriori; risolvere le equazioni normali per eliminazione di Gauss con pivot parziale, rifiutare una finestra singolare e calcolare la deviazione standard residua sottraendo i sei parametri dai gradi di libertà; calcolare la scala stagionale sulla stessa finestra e rifiutare una scala nulla; per ciascuno dei quattro orizzonti, registrare l’errore assoluto, l’errore scalato, quello della previsione ingenua, l’appartenenza all’intervallo, la larghezza e il punteggio; mediare sulle 52 previsioni e poi separatamente per orizzonte; applicare le due soglie dichiarate, poi la regola di verdetto.
09 · PROTOCOLLO
Esempio numerico completo
Illustrazione sintetica — valori didattici, non osservati
Sul file sigillato: 156 settimane, 13 origini dalla settimana 104 alla 152, orizzonte 4, cioè 52 previsioni fuori campione. Errore assoluto scalato del modello 0,420792, contro 1,039025 della previsione ingenua stagionale; errore assoluto medio 54,912955 unità monetarie; controllo di esattezza superato. Per orizzonte: 0,418133, 0,520418, 0,279945 e 0,464672. Livello nominale 0,80, copertura osservata 0,750000, larghezza media 168,860643 e punteggio d’intervallo medio 243,378776; controllo di calibrazione superato. Verdetto: FORECAST_READABLE_FOR_PLANNING.
10 · PROTOCOLLO
Ipotesi di validità
La validazione presuppone che il meccanismo che ha prodotto le settimane passate sia ancora quello che produrrà le settimane future, che il periodo stagionale sia davvero di 52 settimane e che i valori storici non siano stati rivisti a posteriori. Presuppone inoltre, per gli intervalli, che i residui si comportino come un rumore normale a varianza costante. Tre cose non sono verificabili qui: l’assenza di un futuro cambio di regime, l’effetto di un canale o di un prezzo mai variato nello storico, e la qualità dei dati nel momento in cui la previsione sarà realmente prodotta.
11 · PROTOCOLLO
Diagnostica e incertezza
Due riserve meritano di essere lette prima del verdetto. La copertura osservata vale 0,750000 per un livello annunciato di 0,80: lo scarto resta entro la tolleranza dichiarata, ma gli intervalli sono sul lato stretto, il che è esattamente ciò che ci si attende da intervalli costruiti sulla sola dispersione residua, senza tenere conto dell’incertezza sui parametri né della sua crescita con l’orizzonte. E gli errori per orizzonte — 0,418133, 0,520418, 0,279945, 0,464672 — non aumentano regolarmente con l’orizzonte: con tredici previsioni per orizzonte quel profilo è rumore, e nessuna soglia vi è associata.
12 · PROTOCOLLO
Robustezza e alternative
Alternative dichiarate prima del risultato: sostituire gli intervalli normali con intervalli costruiti sui quantili empirici degli errori fuori campione, distinti per orizzonte; aggiungere al termine di paragone una passeggiata aleatoria semplice, più dura da battere in assenza di stagionalità; allungare l’orizzonte fino a tredici settimane per vedere dove il vantaggio del modello scompare; oppure rifare l’esercizio con un modello più semplice, senza armonica di ordine due. Ogni variante va annunciata prima della lettura e riportata anche se peggiora il verdetto.
13 · PROTOCOLLO
Interpretazione del risultato
Il modello prevede meglio di una regola semplice, e di molto: il suo errore vale meno di mezza unità, mentre la previsione ingenua stagionale supera uno, cioè fa peggio fuori campione che sul proprio passato. Ma quel confronto vale quanto vale il termine di paragone: battere un’ingenua stagionale su una serie con tendenza visibile non è una prova esigente. Il risultato utilizzabile è dunque modesto e preciso: su questa serie e questo orizzonte, il modello ha prodotto previsioni utilizzabili e intervalli appena troppo stretti.
14 · PROTOCOLLO
Conclusioni consentite
Consentito: usare questo modello per pianificare a quattro settimane su questa serie; pubblicare l’errore scalato insieme a quello del termine di paragone, mai l’uno senza l’altro; annunciare gli intervalli all’80 % segnalando che in pratica coprono un po’ meno; rigiocare questa stessa validazione ogni trimestre per sorvegliare una deriva; ed esigere lo stesso protocollo da ogni fornitore di previsioni. Consentito anche: dire che il risultato vale per questo orizzonte, e rifare l’esame se l’orizzonte cambia.
15 · PROTOCOLLO
Conclusioni vietate
Vietato: presentare 0,420792 come una precisione garantita per le settimane a venire; annunciare gli intervalli all’80 % senza menzionare che hanno coperto 0,750000; concludere che un modello validato resterà valido dopo un cambio di prezzo, canale o concorrenza; confrontare questo errore scalato con quello di un’altra serie senza riverificare che il termine di paragone sia lo stesso; o scegliere il numero di origini e l’orizzonte dopo aver visto i risultati. Vietato anche: presentare questo caso sintetico come una misura osservata.
16 · PROTOCOLLO
Possibile decisione marketing
La decisione ragionevole è impegnare il piano a quattro settimane su questo modello, ma dimensionare la scorta di sicurezza sulla copertura osservata e non su quella annunciata, poiché gli intervalli si sono rivelati un po’ stretti. La validazione è poi rigiocata ogni trimestre con lo stesso protocollo, senza modificarlo, così che un peggioramento appaia come un peggioramento e non come un cambio di regola. Nessuna di queste tappe si automatizza senza qualcuno che legga i due flag.
17 · PROTOCOLLO
Quando usare o evitare il metodo
Usare questo protocollo prima di ogni messa in produzione di una previsione, e a intervalli regolari in seguito. Evitarlo quando lo storico è troppo corto per ricavare più origini, quando i valori passati sono stati rivisti dopo la pubblicazione, o quando la serie ha appena subito una rottura visibile: in quest’ultimo caso la validazione misura un regime che non esiste più. Evitarlo anche come risposta alla domanda sull’effetto di un’azione, che spetta a un esperimento e non a una previsione.
18 · PROTOCOLLO
Implementazioni e risultato finale
Il CSV CC0 contiene le 156 settimane sintetiche. Python e R sono le implementazioni di riferimento; SPSS riprende lo stesso calcolo in un blocco Python; SAS impiega lo stesso disegno e le stesse origini ma affida la stima alla propria procedura di regressione, e verifica i due flag anziché ogni decimale. Il risultato finale raccoglie i dati, il dizionario delle variabili, la forma del modello dichiarata, le origini e l’orizzonte, il termine di paragone, la quantità di scala, il livello nominale e il quantile, le due soglie, le sette tappe numerate, l’errore scalato del modello e del termine di paragone, gli errori per orizzonte, la copertura, la larghezza, il punteggio d’intervallo, i due flag, il verdetto e le versioni software.
Dati sintetici · CC0
msc-p033-weekly-series.csv ↓Protocollo riproducibile
msc-p033-reproducibility-readme.md ↓Riferimento Python · MIT
msc-p033-reference.py ↓Riferimento R · MIT
msc-p033-reference.R ↓Implementazione SPSS · MIT
msc-p033-secondary.sps ↓Implementazione SAS · MIT
msc-p033-secondary.sas ↓19 · PROTOCOLLO
Fonti e livello di prova
Hyndman e Koehler propongono l’errore assoluto scalato come misura standard di confronto, ricordano che un valore superiore a uno segnala previsioni peggiori in media, e mostrano che molte misure correnti non sono applicabili in generale. Hyndman e Khandakar ricordano che gli errori fuori campione sono spesso troppo pochi per concludere, e che due modelli possono dare le stesse previsioni puntuali con intervalli diversi. Makridakis, Spiliotis e Assimakopoulos rilevano la frequente assenza di un termine di paragone e lo scarto fra bontà di adattamento ed esattezza fuori campione. Petropoulos e coautori descrivono il passaggio da un’origine fissa a una scorrevole, il punteggio d’intervallo come misura appropriata, e il fatto che gli intervalli pubblicati sono troppo stretti. Riferimenti fondativi: Hyndman e Koehler (2006, International Journal of Forecasting, con revisione paritaria) e Hyndman e Khandakar (2008, Journal of Statistical Software, accesso aperto CC BY, con revisione). Sviluppi recenti: Makridakis, Spiliotis e Assimakopoulos (2018, PLOS ONE, accesso aperto CC BY, con revisione) e Petropoulos et al. (2022, preprint arXiv; pubblicato nell’International Journal of Forecasting, con revisione).
- Hyndman & Koehler (2006) Testo integrale verificato, con estratto breve localizzato nella fonte.
- Hyndman & Khandakar (2008) Testo integrale verificato, con estratto breve localizzato nella fonte.
- Makridakis, Spiliotis & Assimakopoulos (2018) Testo integrale verificato, con estratto breve localizzato nella fonte.
- Petropoulos et al. (2022) Testo integrale verificato, con estratto breve localizzato nella fonte.
Connessioni metodologiche

