Жоаннес Верморель, июнь 2016 г.Вероятностные прогнозы позволяют рассчитать вероятность возникновения всех возможных ситуаций в будущем. Тем не менее не все вероятностные прогнозы одинаково точны, и для оценки точности отдельных прогнозов требуется показатель. Простые показатели точности, такие как САО (средняя абсолютная ошибка) или САОП (средняя абсолютная ошибка в процентах) нельзя просто так применять к вероятностным прогнозам.
Показатели непрерывной приоритетной вероятности (CRPS) обобщают САО для вероятностных прогнозов. Наряду с
перекрестной энтропией CPRS является одним из самых распространенных показателей точности для вероятностных прогнозов.
Обзор
CRPS часто используется для оценки точности двух
моделей вероятностного прогнозирования. В частности, данный показатель можно сочетать с
ретроспективным тестированием для стабилизации оценки точности посредством применения различных измерений к одному и тому же набору данных.
Данный показатель заметно отличается от более простых показателей, таких как САО, из-за своей асимметричности: прогнозы остаются вероятностными, однако наблюдения — однозначные. В отличие от
функции квантильной точности CPRS рассматривает не отдельную точку распределения вероятности, но все распределение прогнозов в целом.
Формальное определение
Пусть $X$ будет случайной переменной.
Пусть $F$ будет интегральной функцией распределения (CDF) $X$, например $F(y)=\mathbf{P}\left[X \leq y\right]$.
Пусть $x$ будет наблюдением, а $F$ — CDF, связанной с эмпирическим вероятностным прогнозом.
CRPS между $x$ и $F$ рассчитывается следующим образом:
$$CRPS(F, x) = \int_{-\infty}^{\infty}\Big(F(y)- (y - x)\Big)^2dy$$
Где $$ — функция Хевисайда, которая задает ступенчатую функцию по оси, которая достигает
- значения 1, если вещественный аргумент больше или равен нулю;
- значения 0 в любых других случаях.
CRPS выражается в тех же единицах, что и наблюдаемая переменная. CRPS обобщает среднюю абсолютную ошибку. Этот показатель снижается до средней абсолютной ошибки (САО), если прогноз является однозначным.
Синтаксис Envision
Язык программирования Lokad поддерживает CRPS через функцию
crps()
:
Accuracy = crps(Z, X)
Где
Z
— распределение, которое должно представлять вероятностный прогноз, а
X
— число, которое должно представлять наблюдаемые значения.
Известные свойства
Гнайтинг и Рафтери (2004) показали, что показатель непрерывной приоритетной вероятности можно также записать следующим образом:
$$CRPS(F,x) = \mathbf{E}\Big[|X-x|\Big]-\frac{1}{2}\mathbf{E}\Big[|X-X^*|\Big]$$
Где
- $X$ и $X^*$ являются независимыми копиями случайной линейной переменной;
- $X$ — случайная переменная, связанная с интегральной функцией распределения $F$,
- $\mathbf{E}[X]$ — ожидаемое значение $X$.
Числовая оценка
С точки зрения чисел, самый простой способ расчета CPRS заключается в разложении исходного интеграла на два по правильно выбранным пределам для упрощения ступенчатой функции Хевисайда, что дает нам следующую формулу:
$$CRPS(F, x) = \int_{-\infty}^x F(y)^2dy + \int_x^{\infty}\Big(F(y)- 1\Big)^2dy$$
На практике $F$ является эмпирическим распределением, полученным с помощью модели прогнозирования, поэтому соответствующая случайная переменная $X$ имеет носитель функции, а значит, существует конечное число точек, где $\mathbf{P}[X = x] \gt 0$. Таким образом, интегралы можно преобразовать в дискретные конечные суммы.
Список источников
- Gneiting, T. and Raftery, A. E. (2004). Strictly proper scoring rules, prediction, and estimation. Technical Report no. 463, Department of Statistics, University of Washington, Seattle, Washington, USA.