当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


R probably int_conformal_cv 通过保形推理 CV+ 预测区间


可以使用 Barber 等人 (2018) 说明的 CV+ 保形推理方法来计算拟合回归工作流对象的非参数预测区间。

用法

int_conformal_cv(object, ...)

# S3 method for default
int_conformal_cv(object, ...)

# S3 method for resample_results
int_conformal_cv(object, ...)

# S3 method for tune_results
int_conformal_cv(object, parameters, ...)

参数

object

来自 tidymodels 重采样或调整函数的对象,例如 tune::fit_resamples()tune::tune_grid() 或类似函数。该对象的生成方式应使 .extracts 列包含每次重采样的拟合工作流程(请参阅下面的详细信息)。

...

目前未使用。

parameters

调整参数值的小标题,可用于在处理之前过滤预测值。此 tibble 应从调整结果中选择一组 hyper-parameter 值。仅当将调整对象传递给 object 时才需要这样做。

"int_conformal_cv" 类的对象,包含创建间隔的信息。 predict() 方法用于生成间隔。

细节

该函数实现了 Barber at al (2018) 第 3 节中的 CV+ 方法。它使用重采样模型拟合及其相关的保留残差来为回归模型制定预测区间。

该函数为计算准备对象。 predict() 方法计算新数据的间隔。

此方法是为 V-fold 交叉验证(无重复)而开发的。对于任何其他重采样方法,间隔覆盖都是未知的。该函数不会停止其他类型重采样的计算,但我们无法知道结果是否合适。

参考

Rina Foygel Barber、Emmanuel J. Candès、Aaditya Ramdas、Ryan J. Tibshirani“使用折刀+进行预测推理”,《统计年鉴》,49(1), 486-507, 2021

也可以看看

例子

library(workflows)
library(dplyr)
library(parsnip)
library(rsample)
library(tune)
library(modeldata)

set.seed(2)
sim_train <- sim_regression(200)
sim_new   <- sim_regression(  5) %>% select(-outcome)

sim_rs <- vfold_cv(sim_train)

# We'll use a neural network model
mlp_spec <-
  mlp(hidden_units = 5, penalty = 0.01) %>%
  set_mode("regression")

# Use a control function that saves the predictions as well as the models.
# Consider using the butcher package in the extracts function to have smaller
# object sizes

ctrl <- control_resamples(save_pred = TRUE, extract = I)

set.seed(3)
nnet_res <-
  mlp_spec %>%
  fit_resamples(outcome ~ ., resamples = sim_rs, control = ctrl)

nnet_int_obj <- int_conformal_cv(nnet_res)
nnet_int_obj
#> Conformal inference via CV+
#> preprocessor: formula 
#> model: mlp (engine = nnet) 
#> number of models: 10 
#> training set size: 200 
#> 
#> Use `predict(object, new_data, level)` to compute prediction intervals

predict(nnet_int_obj, sim_new)
#> # A tibble: 5 × 3
#>   .pred_lower   .pred .pred_upper
#>         <dbl>   <dbl>       <dbl>
#> 1        3.67 42.8           81.9
#> 2      -29.6   9.47          48.6
#> 3      -14.6  24.5           63.6
#> 4      -39.2  -0.0793        39.0
#> 5      -11.1  28.0           67.1

相关用法


注:本文由纯净天空筛选整理自Max Kuhn等大神的英文原创作品 Prediction intervals via conformal inference CV+。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。