计算 R 中区间预测的区间分数
Compute interval score for interval predictions in R
在 stackexchange 的线程:“forecast-accuracy-metric-that-involves-prediction-intervals”有关更多详细信息,请参阅 link,其中显示了预测间隔的质量度量。
我想在 R 中计算质量度量:
library(quantreg)
## Split data
smp_size <- floor(0.75 * nrow(iris))
set.seed(123)
train_ind <- sample(seq_len(nrow(iris)), size = smp_size)
train <- iris[train_ind, ]
test <- iris[-train_ind, ]
# Training model for prediction intervals, lw(lower) and up(upper) intervals
model_lw <- rq(Sepal.Length~Petal.Length+Petal.Width, data= train, tau = 0.1)
model_up <- rq(Sepal.Length~Petal.Length+Petal.Width, data= train, tau = 0.9)
# Interval Predictions, lw(lower) and up(upper) intervals
pred_lw <- predict(model_lw, test)
pred_up <- predict(model_up, test)
通过使用产品:
pred_lw,pred_up & test$Sepal.Length
目标
可以计算区间质量度量。我想找一个区间预测评估的实现库。
另一种解决方案可能是计算“预测区间的覆盖范围和长度”或任何其他评估指标。
对此实施有任何帮助吗?
对于分位数回归的评估预测区间,找到了两个实施方案,包括任何其他指标 scoringutils
和 greybox
。
解决方案
library(scoringutils)
# Scoring Rule to score quantile predictions, (Gneiting & Raftery, 2007)
mean(interval_score(true_values = test$Sepal.Length,
lower = pred_lw,
upper = pred_up,
interval_range = 80))
library(greybox)
# Mean Interval Score (Gneiting & Raftery, 2007),
MIS(actual = test$Sepal.Length,
lower = pred_lw,
upper = pred_up,
level = 0.80)
# interval range or level -> 0.9 - 0.1 = 0.8 (80)
在第二个包中,对称和相对分数测量是可用的,应该做进一步的研究以了解该指标与其他一些统计数据的偏差和应用。
希望这对社区有所帮助
在 stackexchange 的线程:“forecast-accuracy-metric-that-involves-prediction-intervals”有关更多详细信息,请参阅 link,其中显示了预测间隔的质量度量。
我想在 R 中计算质量度量:
library(quantreg)
## Split data
smp_size <- floor(0.75 * nrow(iris))
set.seed(123)
train_ind <- sample(seq_len(nrow(iris)), size = smp_size)
train <- iris[train_ind, ]
test <- iris[-train_ind, ]
# Training model for prediction intervals, lw(lower) and up(upper) intervals
model_lw <- rq(Sepal.Length~Petal.Length+Petal.Width, data= train, tau = 0.1)
model_up <- rq(Sepal.Length~Petal.Length+Petal.Width, data= train, tau = 0.9)
# Interval Predictions, lw(lower) and up(upper) intervals
pred_lw <- predict(model_lw, test)
pred_up <- predict(model_up, test)
通过使用产品:
pred_lw,pred_up & test$Sepal.Length
目标
可以计算区间质量度量。我想找一个区间预测评估的实现库。
另一种解决方案可能是计算“预测区间的覆盖范围和长度”或任何其他评估指标。
对此实施有任何帮助吗?
对于分位数回归的评估预测区间,找到了两个实施方案,包括任何其他指标 scoringutils
和 greybox
。
解决方案
library(scoringutils)
# Scoring Rule to score quantile predictions, (Gneiting & Raftery, 2007)
mean(interval_score(true_values = test$Sepal.Length,
lower = pred_lw,
upper = pred_up,
interval_range = 80))
library(greybox)
# Mean Interval Score (Gneiting & Raftery, 2007),
MIS(actual = test$Sepal.Length,
lower = pred_lw,
upper = pred_up,
level = 0.80)
# interval range or level -> 0.9 - 0.1 = 0.8 (80)
在第二个包中,对称和相对分数测量是可用的,应该做进一步的研究以了解该指标与其他一些统计数据的偏差和应用。
希望这对社区有所帮助