Continuous Ranked Probability Score (CRPS)

di Joannes Vermorel, giugno 2016

Le previsioni probabilistiche assegnano una probabilità a ogni possibile scenario futuro. Questo, però, non vuol dire che tutte le previsioni probabilistiche siano accurate allo stesso modo: è necessaria, invece, una particolare unità di misura che consenta di valutare l'accuratezza di ognuna di esse. I parametri più semplici come il MAE (Mean Absolute Error, o errore medio assoluto) o il MAPE (Mean Absolute Percentage Error, o errore medio assoluto percentuale) non sono applicabili alle previsioni probabilistiche. In questi casi, uno dei sistemi universalmente usati per misurare l'accuratezza è, insieme all'entropia incrociata, il Continuous Ranked Probability Score (CRPS), che generalizza il MAE in modo da renderlo applicabile alle previsioni probabilistiche.

Uno sguardo d'insieme

Il CRPS è usato spesso nei modelli di previsione probabilistica. Questo parametro può anche essere usato in combinazione con una procedura di backtesting, al fine di stabilizzare la valutazione sull'accuratezza sfruttando più misurazioni sullo stesso set di dati.

A causa della sua espressione asimmetrica, il CRPS differisce da indicatori più semplici come il MAE: se infatti le previsioni sono probabilistiche, le osservazioni sono deterministiche. A differenza della funzione di perdita pinball, il CPRS non si concentra su un punto particolare nella distribuzione di probabilità, ma considera la distribuzione delle previsioni nel suo insieme.

Definizione formale

Sia $X$ una variabile casuale.

Sia $F$ la funzione di distribuzione cumulativa (FDC) di $X$, tale che $F(y)=\mathbf{P}\left[X \leq y\right]$.

Sia $x$ l'osservazione e $F$ la FDC associata a una previsione probabilistica empirica.

Il CRPS tra $x$ e $F$ viene definito come: $$CRPS(F, x) = \int_{-\infty}^{\infty}\Big(F(y)- 𝟙(y - x)\Big)^2dy$$ dove $𝟙$ è la funzione gradino di Heaviside e denota una funzione gradino lungo la riga reale che raggiunge

  • il valore 1 se l'argomento reale è positivo o 0,
  • il valore 0 negli altri casi.

Il CRPS è espresso nella stessa unità della variabile osservata. Come abbiamo già detto, questo parametro generalizza l'errore medio assoluto: nei fatti, anzi, riduce l'errore medio assoluto se la previsione è deterministica.

Sintassi Envision

Il linguaggio di script fornito da Lokad supporta nativamente il CRPS attraverso la funzione crps():
Accuracy = crps(Z, X)
dove Z deve essere una distribuzione, intesa a rappresentare le previsioni probabilistiche, e X deve essere un numero, inteso a rappresentare i valori osservati.

Proprietà note

Gneiting e Raftery (2004) hanno dimostrato che il continuous ranked probability score può essere scritto anche come: $$CRPS(F,x) = \mathbf{E}\Big[|X-x|\Big]-\frac{1}{2}\mathbf{E}\Big[|X-X^*|\Big]$$ dove
  • $X$ e $X^*$ sono copie indipendenti di una variabile casuale lineare,
  • $X$ è la variabile casuale associata alla funzione di distribuzione cumulativa $F$,
  • $\mathbf{E}[X]$ è il valore atteso di $X$.

Valutazione numerica

Dal punto di vista numerico, un modo semplice per calcolare il CPRS consiste nello scomporre l'integrale originale in due integrali su estremi scelti con cura, al fine di semplificare la funzione gradino di Heaviside, che dà: $$CRPS(F, x) = \int_{-\infty}^x F(y)^2dy + \int_x^{\infty}\Big(F(y)- 1\Big)^2dy$$ In pratica, poiché $F$ è una distribuzione empirica ottenuta attraverso un modello di previsione, la variabile casuale corrispondente $X$ ha un supporto compatto, il che significa che esiste solo un numero finito di punti dove $\mathbf{P}[X = x] \gt 0$. In questo modo, gli integrali possono essere trasformati in somme finite discrete.

Riferimenti

  • Gneiting, T. e Raftery, A. E. (2004). "Strictly proper scoring rules, prediction, and estimation". Technical Report no. 463, Department of Statistics, University of Washington, Seattle, Washington, USA.