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


R probably cal_estimate_isotonic 使用等渗回归模型来校准模型预测。


使用等渗回归模型来校准模型预测。

用法

cal_estimate_isotonic(
  .data,
  truth = NULL,
  estimate = dplyr::starts_with(".pred"),
  parameters = NULL,
  ...
)

# S3 method for data.frame
cal_estimate_isotonic(
  .data,
  truth = NULL,
  estimate = dplyr::starts_with(".pred"),
  parameters = NULL,
  ...,
  .by = NULL
)

# S3 method for tune_results
cal_estimate_isotonic(
  .data,
  truth = NULL,
  estimate = dplyr::starts_with(".pred"),
  parameters = NULL,
  ...
)

# S3 method for grouped_df
cal_estimate_isotonic(
  .data,
  truth = NULL,
  estimate = NULL,
  parameters = NULL,
  ...
)

参数

.data

未分组的 data.frame 对象或 tune_results 对象,包含预测和概率列。

truth

真实类别结果的列标识符(即一个因子)。这应该是一个不带引号的列名。

estimate

列标识符向量,或 dplyr 选择器函数之一,用于选择哪些变量包含类概率。它默认为 tidymodels 使用的前缀 ( .pred_ )。标识符的顺序将被视为与 truth 变量的级别顺序相同。

parameters

(可选)可选的调整参数值小标题,可用于在处理之前过滤预测值。仅适用于tune_results 对象。

...

传递给用于计算新概率的模型或例程的附加参数。

.by

分组变量的列标识符。这应该是一个不带引号的列名称,用于选择用于分组的定性变量。默认为 NULL 。当.by = NULL时,不会进行分组。

细节

此函数使用stats::isoreg() 创建获取二元分类或数值回归的校准值。

多类扩展

此方法设计用于两个类。对于多类,它为每个类创建一组“一对一”校准。将它们应用于数据后,概率估计值会重新归一化以加一。最后一步可能会影响校准。

参考

比安卡·扎德罗兹尼和查尔斯·埃尔坎。 (2002)。将分类器分数转换为准确的多类概率估计。 ACM SIGKDD 知识发现和数据挖掘国际会议论文集。

也可以看看

https://www.tidymodels.org/learn/models/calibration/, cal_validate_isotonic()

例子

# ------------------------------------------------------------------------------
# Binary Classification

# It will automatically identify the probability columns
# if passed a model fitted with tidymodels
cal_estimate_isotonic(segment_logistic, Class)
#> 
#> ── Probability Calibration 
#> Method: Isotonic regression
#> Type: Binary
#> Source class: Data Frame
#> Data points: 1,010
#> Unique Predicted Values: 86
#> Truth variable: `Class`
#> Estimate variables:
#> `.pred_good` ==> good
#> `.pred_poor` ==> poor

# Specify the variable names in a vector of unquoted names
cal_estimate_isotonic(segment_logistic, Class, c(.pred_poor, .pred_good))
#> 
#> ── Probability Calibration 
#> Method: Isotonic regression
#> Type: Binary
#> Source class: Data Frame
#> Data points: 1,010
#> Unique Predicted Values: 187
#> Truth variable: `Class`
#> Estimate variables:
#> `.pred_good` ==> good
#> `.pred_poor` ==> poor

# dplyr selector functions are also supported
cal_estimate_isotonic(segment_logistic, Class, dplyr::starts_with(".pred_"))
#> 
#> ── Probability Calibration 
#> Method: Isotonic regression
#> Type: Binary
#> Source class: Data Frame
#> Data points: 1,010
#> Unique Predicted Values: 84
#> Truth variable: `Class`
#> Estimate variables:
#> `.pred_good` ==> good
#> `.pred_poor` ==> poor

# ------------------------------------------------------------------------------
# Regression (numeric outcomes)

cal_estimate_isotonic(boosting_predictions_oob, outcome, .pred)
#> 
#> ── Probability Calibration 
#> Method: Isotonic regression
#> Type: Regression
#> Source class: Data Frame
#> Data points: 2,000
#> Unique Predicted Values: 42
#> Truth variable: `outcome`
#> Estimate variables:
#> `.pred` ==> predictions

相关用法


注:本文由纯净天空筛选整理自Max Kuhn等大神的英文原创作品 Uses an Isotonic regression model to calibrate model predictions.。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。