了解贝叶斯优化代码中的 R 语法

阿肖克

这是参考关于实现贝叶斯优化的答案我无法理解以下定义函数 xgb.cv.bayes() 的 R 代码。代码如下:

xgb.cv.bayes <- function(max.depth, min_child_weight, subsample, colsample_bytree, gamma){
  cv <- xgv.cv(params = list(booster = 'gbtree', eta = 0.05,
                         max_depth = max.depth,
                         min_child_weight = min_child_weight,
                         subsample = subsample,
                         colsample_bytree = colsample_bytree,
                         gamma = gamma,
                         lambda = 1, alpha = 0,
                         objective = 'binary:logistic',
                         eval_metric = 'auc'),
             data = data.matrix(df.train[,-target.var]),
             label = as.matrix(df.train[, target.var]),
             nround = 500, folds = cv_folds, prediction = TRUE,
             showsd = TRUE, early.stop.round = 5, maximize = TRUE,
             verbose = 0
  )
  list(Score = cv$dt[, max(test.auc.mean)],
   Pred = cv$pred)
}

我无法理解 xgb.cv() 的右括号后出现的以下代码部分:

list(Score = cv$dt[, max(test.auc.mean)],
   Pred = cv$pred)

或者非常简单,我不明白以下语法:

xgb.cv.bayes <- function(max.depth, min_child_weight, subsample, colsample_bytree, gamma){
  cv <- xgv.cv(...)list(...)
}

我会很感激理解这个 R 语法,我在哪里可以找到更多这样的例子。

AEF

在 R 中,函数中最后一个表达式的值自动成为该函数的返回值。所以你提供的函数正好有两个步骤:

  1. 计算结果xgv.cv(...)并将结果存储在变量中cv
  2. 创建一个包含两个条目 (ScorePred) 的列表,其值是从 中提取的cv

由于创建列表的表达式是函数中的最后一个表达式,因此列表自动成为返回值。因此,如果您要执行,则test <- xgb.cv.bayes(...)可以访问test$Scoretest$Pred这回答了你的问题了吗?

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

R中的贝叶斯建模

来自分类Dev

如何在R代码中构造模型并找到贝叶斯模型的beta?

来自分类Dev

选择R中朴素贝叶斯分类的功能

来自分类Dev

在R中训练朴素贝叶斯模型时的问题

来自分类Dev

从R中的朴素贝叶斯模型打印条件概率

来自分类Dev

R中的朴素贝叶斯分类结果相反。

来自分类Dev

python 2中的无效语法创建一个简单的朴素贝叶斯分类

来自分类Dev

R语法中的crossprod()

来自分类Dev

R中的语法问题

来自分类Dev

R中的tryCatch语法

来自分类Dev

R中关于ddply的语法

来自分类Dev

R中xpathSApply的正确语法

来自分类Dev

R中的整数语法

来自分类Dev

R中“分发为”的语法

来自分类Dev

R中xpathSApply的正确语法

来自分类Dev

R中的朴素贝叶斯预测以阅读特征为因数而无因数

来自分类Dev

R-如何正确解决分级贝叶斯VAR(BVAR)中的结构性断裂?

来自分类Dev

返回列以在R中的朴素贝叶斯的for循环中使用

来自分类Dev

R e1071天真贝叶斯(Bayes)中的错误?

来自分类Dev

R中的朴素贝叶斯预测以阅读特征为因

来自分类Dev

在此示例中了解R语法

来自分类Dev

贝叶斯回归的R Gibbs采样器

来自分类Dev

使用R朴素贝叶斯e1702

来自分类Dev

在R中为包装创建公式(语法)

来自分类Dev

R中的dplyr语法-完全连接

来自分类Dev

R中的特定语法构造

来自分类Dev

R:平均列中的语法问题

来自分类Dev

R中nls()函数的正确语法

来自分类Dev

R 中的 MANOVA.RM 语法问题