2

trainControl()我最近在插入符号的Funktion中遇到了随机搜索选项。插入符号是如何生成参数的,有没有办法提供某种用户特定的输入(例如,从中采样参数的分布)?在网站上我只找到了这个报价:

插入符号中包含的内置模型包含生成随机调整参数组合的代码

例如,我尝试mxnet使用插入符号和随机搜索:

# Train control with random search
rs_control <- trainControl(method = "boot", 
                           number = 2, 
                           search = "random",
                           verboseIter = TRUE
                           )

# Training
model_fit <- train(form = y ~ .,
                   data = df_train,
                   method = "avMxnet",
                   preProcess = c("center", "scale"),
                   tuneLength = 20,
                   trControl = rs_control
                   )    

使用此代码,插入符号对第一层上的神经元数量和其他参数(学习率、动量、辍学和重复)进行了合理的采样,但将第二/第三层保持为零。有没有办法告诉插入符号从例如 [25, 150] 以均匀分布对所有三层进行采样?

4

1 回答 1

1

首先,我不确定caret您使用的是什么版本,因为该型号不可用

> library(caret)
> getModelInfo("avMxnet")
Error in getModelInfo("avMxnet") : 
  That model is not in caret's built-in library

这是 CRAN 版本 caret_6.0-70。

我假设您正在使用 github 上的代码。如果是这种情况,您可以更改grid代码并让它生成您喜欢的任何随机搜索网格。

于 2016-08-04T15:37:56.567 回答