这些函数采用参数对象,并根据数据集和简单的启发式修改 ranges
的未知部分。
用法
finalize(object, ...)
# S3 method for list
finalize(object, x, force = TRUE, ...)
# S3 method for param
finalize(object, x, force = TRUE, ...)
# S3 method for parameters
finalize(object, x, force = TRUE, ...)
# S3 method for logical
finalize(object, x, force = TRUE, ...)
# S3 method for default
finalize(object, x, force = TRUE, ...)
get_p(object, x, log_vals = FALSE, ...)
get_log_p(object, x, ...)
get_n_frac(object, x, log_vals = FALSE, frac = 1/3, ...)
get_n_frac_range(object, x, log_vals = FALSE, frac = c(1/10, 5/10), ...)
get_n(object, x, log_vals = FALSE, ...)
get_rbf_range(object, x, seed = sample.int(10^5, 1), ...)
get_batch_sizes(object, x, frac = c(1/10, 1/3), ...)
参数
- object
-
一个
param
对象或param
对象列表。 - ...
-
传递给底层参数终结器函数的其他参数。例如,对于
get_rbf_range()
,点将传递到kernlab::sigest()
。 - x
-
预测数据。在某些情况下(见下文),这应该只包括数字数据。
- force
-
单个逻辑表明即使参数对象完整,它仍然应该更新范围吗?
- log_vals
-
逻辑:范围应该设置在 log10 刻度上吗?
- frac
-
用于上限的数据分数的双精度值。对于
get_n_frac_range()
和get_batch_sizes()
,需要两个小数值的向量。 - seed
-
用于控制计算随机性的整数。
细节
finalize()
运行 param
对象 ( object$finalize
) 中包含的嵌入式终结器函数并返回更新后的版本。终结函数是 get_*()
帮助程序之一。
get_*()
辅助函数设计为与管道一起使用并就地更新参数对象。
get_p()
和 get_log_p()
将范围的上限值设置为数据中的列数(分别在自然尺度和 log10 尺度上)。
get_n()
和 get_n_frac()
将上限值设置为数据中的行数或总行数的一部分。
get_rbf_range()
根据 kernlab::sigest()
中定义的启发式设置两个边界。它要求 x
中的所有列都是数字。
例子
library(dplyr)
#>
#> Attaching package: ‘dplyr’
#> The following objects are masked from ‘package:stats’:
#>
#> filter, lag
#> The following objects are masked from ‘package:base’:
#>
#> intersect, setdiff, setequal, union
car_pred <- select(mtcars, -mpg)
# Needs an upper bound
mtry()
#> # Randomly Selected Predictors (quantitative)
#> Range: [1, ?]
finalize(mtry(), car_pred)
#> # Randomly Selected Predictors (quantitative)
#> Range: [1, 10]
# Nothing to do here since no unknowns
penalty()
#> Amount of Regularization (quantitative)
#> Transformer: log-10 [1e-100, Inf]
#> Range (transformed scale): [-10, 0]
finalize(penalty(), car_pred)
#> Amount of Regularization (quantitative)
#> Transformer: log-10 [1e-100, Inf]
#> Range (transformed scale): [-10, 0]
library(kernlab)
#>
#> Attaching package: ‘kernlab’
#> The following object is masked from ‘package:scales’:
#>
#> alpha
library(tibble)
library(purrr)
#>
#> Attaching package: ‘purrr’
#> The following object is masked from ‘package:kernlab’:
#>
#> cross
#> The following object is masked from ‘package:scales’:
#>
#> discard
params <-
tribble(
~parameter, ~object,
"mtry", mtry(),
"num_terms", num_terms(),
"rbf_sigma", rbf_sigma()
)
params
#> # A tibble: 3 × 2
#> parameter object
#> <chr> <list>
#> 1 mtry <nparam[?]>
#> 2 num_terms <nparam[?]>
#> 3 rbf_sigma <nparam[+]>
# Note that `rbf_sigma()` has a default range that does not need to be
# finalized but will be changed if used in the function:
complete_params <-
params %>%
mutate(object = map(object, finalize, car_pred))
complete_params
#> # A tibble: 3 × 2
#> parameter object
#> <chr> <list>
#> 1 mtry <nparam[+]>
#> 2 num_terms <nparam[+]>
#> 3 rbf_sigma <nparam[+]>
params %>%
dplyr::filter(parameter == "rbf_sigma") %>%
pull(object)
#> [[1]]
#> Radial Basis Function sigma (quantitative)
#> Transformer: log-10 [1e-100, Inf]
#> Range (transformed scale): [-10, 0]
#>
complete_params %>%
dplyr::filter(parameter == "rbf_sigma") %>%
pull(object)
#> [[1]]
#> Radial Basis Function sigma (quantitative)
#> Transformer: log-10 [1e-100, Inf]
#> Range (transformed scale): [-1.6, -0.933]
#>
相关用法
- R dials freq_cut 接近零方差参数
- R dials smoothness 内核平滑度
- R dials all_neighbors 确定使用哪些邻居的参数
- R dials update.parameters 更新参数集中的单个参数
- R dials rbf_sigma 内核参数
- R dials trim_amount 修剪量
- R dials neighbors 邻居数量
- R dials num_comp 新函数数量
- R dials min_dist 嵌入点之间的有效最小距离参数
- R dials trees 与基于树和基于规则的模型相关的参数函数。
- R dials learn_rate 学习率
- R dials range_validate 用于处理参数范围的工具
- R dials xgboost_parameters xgboost 可能的引擎参数的参数
- R dials unknown 未知参数值的占位符
- R dials prune_method MARS修剪方法
- R dials max_tokens 保留令牌的最大数量
- R dials surv_dist 删失数据的参数分布
- R dials num_tokens 用于确定 ngram 中标记数量的参数
- R dials over_ratio 类别不平衡抽样的参数
- R dials mtry 随机抽样预测变量的数量
- R dials new-param 用于创建新参数对象的工具
- R dials momentum 梯度下降动量参数
- R dials class_weights 不平衡问题的类别权重参数
- R dials mtry_prop 随机选择的预测变量的比例
- R dials mixture 处罚条款的混合
注:本文由纯净天空筛选整理自Max Kuhn等大神的英文原创作品 Functions to finalize data-specific parameter ranges。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。