參數值的設置器和驗證器。此外,還提供了用於創建參數值序列和轉換參數值的工具。
用法
value_validate(object, values, ..., call = caller_env())
value_seq(object, n, original = TRUE)
value_sample(object, n, original = TRUE)
value_transform(object, values)
value_inverse(object, values)
value_set(object, values)
參數
- object
-
具有類
quant_param
的對象。 - values
-
數字向量或列表(包括
Inf
)。值不能包含unknown()
。對於value_validate()
,單位應與參數對象的定義一致。 - ...
-
這些點用於將來的擴展,並且必須為空。
- call
-
調用傳遞到
rlang::abort()
。 - n
-
要返回的(最大)值數的整數。在某些請求序列的情況下,結果可能小於
n
值。查看具體信息。 - original
-
單一邏輯。範圍值應該采用自然單位(
TRUE
)還是變換空間(FALSE
,如果適用)?
值
如果 value_validate()
包含在 object
的值中,則會引發錯誤或靜默返回 values
。
value_transform()
和 value_inverse()
返回數值向量。
value_seq()
和 value_sample()
返回與 object
的 type
字段一致的值向量。
細節
對於整數序列,代碼使用 unique(floor(seq(min, max, length.out = n)))
,這可能會生成一組短於 n
的不均勻值。這也意味著如果n
大於整數範圍,將生成更小的集合。對於定性參數,返回第一個 n
值。
對於定量參數,對象中包含的任何 values
都會進行替換采樣。否則,返回 range
值之間的一係列值。返回的值可能少於n
。
對於定性參數,values
的采樣是通過替換進行的。對於定性值,使用隨機均勻分布。
例子
library(dplyr)
penalty() %>% value_set(-4:-1)
#> Amount of Regularization (quantitative)
#> Transformer: log-10 [1e-100, Inf]
#> Range (transformed scale): [-10, 0]
#> Values: 4
# Is a specific value valid?
penalty()
#> Amount of Regularization (quantitative)
#> Transformer: log-10 [1e-100, Inf]
#> Range (transformed scale): [-10, 0]
penalty() %>% range_get()
#> $lower
#> [1] 1e-10
#>
#> $upper
#> [1] 1
#>
value_validate(penalty(), 17)
#> [1] FALSE
# get a sequence of values
cost_complexity()
#> Cost-Complexity Parameter (quantitative)
#> Transformer: log-10 [1e-100, Inf]
#> Range (transformed scale): [-10, -1]
cost_complexity() %>% value_seq(4)
#> [1] 1e-10 1e-07 1e-04 1e-01
cost_complexity() %>% value_seq(4, original = FALSE)
#> [1] -10 -7 -4 -1
on_log_scale <- cost_complexity() %>% value_seq(4, original = FALSE)
nat_units <- value_inverse(cost_complexity(), on_log_scale)
nat_units
#> [1] 1e-10 1e-07 1e-04 1e-01
value_transform(cost_complexity(), nat_units)
#> [1] -10 -7 -4 -1
# random values in the range
set.seed(3666)
cost_complexity() %>% value_sample(2)
#> [1] 5.533485e-04 1.480162e-05
相關用法
- R dials validation_set_prop 用於驗證的數據比例
- R dials vocabulary_size 詞匯中的標記數量
- 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 freq_cut 接近零方差參數
- 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 不平衡問題的類別權重參數
注:本文由純淨天空篩選整理自Max Kuhn等大神的英文原創作品 Tools for working with parameter values。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。