Proper Scoring Rules for Poisson or Negative Binomial Predictions
Proper scoring rules for Poisson or negative binomial predictions
of count data are described in Czado et al. (2009).
The following scores are implemented:
logarithmic score (logs
),
ranked probability score (rps
),
Dawid-Sebastiani score (dss
),
squared error score (ses
).
scores(x, ...) ## Default S3 method: scores(x, mu, size = NULL, which = c("logs", "rps", "dss", "ses"), sign = FALSE, ...) logs(x, mu, size = NULL) rps(x, mu, size = NULL, k = 40, tolerance = sqrt(.Machine$double.eps)) dss(x, mu, size = NULL) ses(x, mu, size = NULL)
x |
the observed counts. All functions are vectorized and also accept matrices or arrays. Dimensions are preserved. |
mu |
the means of the predictive distributions for the
observations |
size |
either |
which |
a character vector specifying which scoring rules to apply.
By default, all four proper scores are calculated.
The normalized squared error score ( |
sign |
a logical indicating if the function should also return
|
... |
unused (argument of the generic). |
k |
scalar argument controlling the finite sum approximation for the
|
tolerance |
absolute tolerance for the finite sum approximation employed in the
|
The scoring functions return the individual scores for the predictions
of the observations in x
(maintaining their dimension attributes).
The default scores
-method applies the selected (which
)
scoring functions (and calculates sign(x-mu)
) and returns the
results in an array (via simplify2array
), where the last
dimension corresponds to the different scores.
Sebastian Meyer and Michaela Paul
Czado, C., Gneiting, T. and Held, L. (2009): Predictive model assessment for count data. Biometrics, 65 (4), 1254-1261. doi: 10.1111/j.1541-0420.2009.01191.x
The R package scoringRules implements the logarithmic score and the (continuous) ranked probability score for many distributions.
mu <- c(0.1, 1, 3, 6, pi, 100) size <- 0.1 set.seed(1) y <- rnbinom(length(mu), mu = mu, size = size) scores(y, mu = mu, size = size) scores(y, mu = mu, size = 1) # ses ignores the variance scores(y, mu = 1, size = size) ## apply a specific scoring rule scores(y, mu = mu, size = size, which = "rps") rps(y, mu = mu, size = size)
Please choose more modern alternatives, such as Google Chrome or Mozilla Firefox.