小编Ach*_*oud的帖子

lm使用插入火车的结果

我使用插入符R包作为一个非常方便的建模包装.虽然这是一个奇怪的用途,但在使用模型类型="lm"和交叉验证"无"时,我在从模型中提取结果时遇到一些麻烦.见下面的例子:

library(caret)
## Make data
> Xs       <- matrix(rnorm(300*20), nrow = 300, ncol = 20)
> Yvec     <- rnorm(300)
## Make traincontrol, cv of "none"
> tcontrol <- trainControl(method = "none")
## Fit lm model using train
> fit      <- train(x= Xs, y = Yvec, method = "lm", metric = "RMSE", trControl = tcontrol)
> fit$results
[1] RMSE      Rsquared  parameter
<0 rows> (or 0-length row.names)
Run Code Online (Sandbox Code Playgroud)

任何想法为什么适合$结果是空的?对于所有其他型号和CV类型,这似乎有效.例如使用2倍CV:

> tcontrol2 <- trainControl(method = "cv", number = 2)
> fit2      <- train(x= Xs, …
Run Code Online (Sandbox Code Playgroud)

r lm r-caret

3
推荐指数
1
解决办法
5077
查看次数

在插入符号的交叉验证过程中计算模型校准?

第一次在这里发布海报,为新秀错误道歉

我使用R中的插入包进行分类.我在训练集上使用重复的10倍交叉验证来拟合一些模型(GBM,线性SVM,NB,LDA).使用自定义trainControl,插入符号甚至可以为我提供一系列模型性能指标,如ROC,Spec/sens,Kappa,测试折叠的准确度.真的很棒.我希望还有一个指标:模型校准的一些衡量标准.

我注意到插入符号中有一个功能可以创建校准图来估计数据部分模型的一致性.在交叉验证的模型构建过程中,是否可以为每个测试折叠计算插入符号?或者它只能应用于我们正在进行预测的一些新的数据吗?

对于某些情况,目前我有这样的事情:

fitControl <- trainControl(method = "repeatedcv", repeats=2, number = 10, classProbs = TRUE, summaryFunction = custom.summary)
gbmGrid <-  expand.grid(.interaction.depth = c(1,2,3),.n.trees = seq(100,800,by=100),.shrinkage = c(0.01))
gbmModel <- train(y= train_target, x = data.frame(t_train_predictors),
              method = "gbm",
              trControl = fitControl,
              tuneGrid = gbmGrid,
              verbose = FALSE)
Run Code Online (Sandbox Code Playgroud)

如果它有帮助,我使用~25个数字预测器,N = 2,200,预测一个两级因子.

非常感谢您的任何帮助/建议.亚当

r classification machine-learning calibration r-caret

2
推荐指数
1
解决办法
1995
查看次数

标签 统计

r ×2

r-caret ×2

calibration ×1

classification ×1

lm ×1

machine-learning ×1