我想根据here所示的示意图实施LASSO模型并在训练集上检查其可行性。 (原理图描述:将所有数据划分为测试和训练集。通过5倍交叉验证(CV)将训练集划分为重采样。对每个重采样执行10倍CV以找到最佳的lambda。)设置尚不可用。
我想对LASSO模型进行建模,并使用带有内部CV的嵌套CV来检查其性能,以通过网格搜索和外部CV来获得最佳lambda(分析和评估),以比较重采样1、2、3等。>
来自Caret的带有'repeatedcv'的火车控件允许指定数字并重复。
然后比较最佳lambda,因为粗体处理已执行了多次(重复= 5)。lambdas = 10^seq(-3, -1, length = 20) trControl = trainControl( 'repeatedcv', number = 10, repeats = 5, search = 'grid' ) tuneGrid = expand.grid(alpha = 1, lambda = lambdas) lasso = train( PD ~ ., data = selection, method = 'glmnet', trControl = trControl, tuneGrid = tuneGrid ) lasso$results
使用上面的代码,插入符号结果是一个具有20行的数据框。对于定义的网格上的每个点,大概有一行。但是,我想插入符号使用10倍(数字= 10)CV在每个网格搜索中找到一个最佳lambda
目标,我想实施LASSO模型,并根据此处显示的示意图在训练集上检查其可行性。 (示意图:将所有数据分为测试集和训练集。...
您可以使用nested_cv()
在tidymodel中实现嵌套重采样: