列车功能返回Caret/R后,如何确定选择哪种型号?如何交叉检查?

列车功能返回Caret/R后,如何确定选择哪种型号?如何交叉检查?,r,machine-learning,cross-validation,r-caret,R,Machine Learning,Cross Validation,R Caret,我花了很多时间试图理解train函数是如何工作的,但我仍然不知道它是如何工作的。我正在训练一个neuralnet,使用train函数预测时刻表 当我在培训后绘制模型时,我得到以下网络: 在绘图中,它表示Error=0.01643,我刚刚意识到,每当我train并绘制我的finalModel时,绘图中的Error值总是碰巧是train函数返回后我得到的最后一条输出消息中的Error值 所以我想知道是否选择了最后一个模型,因为最后一个模型没有最低的RMSE。我假设这些输出消息实际上是有序的,换句

我花了很多时间试图理解
train
函数是如何工作的,但我仍然不知道它是如何工作的。我正在训练一个
neuralnet
,使用
train
函数预测时刻表

当我在培训后绘制模型时,我得到以下网络:

在绘图中,它表示
Error=0.01643
,我刚刚意识到,每当我
train
并绘制我的
finalModel
时,绘图中的
Error
值总是碰巧是
train
函数返回后我得到的最后一条输出消息中的
Error

所以我想知道是否选择了最后一个模型,因为最后一个模型没有最低的
RMSE
。我假设这些输出消息实际上是有序的,换句话说,第一个输出
隐藏:8 thresh:0.01 rep:1/1 steps:10304错误:0.01592时间:1.75秒
来自
Fold01.Rep1
,最后一个来自
FoldK.RepN
,在我的例子中是
Fold10.Rep3

我想我可以做这个交叉检查,重新计算每个保持的
RMSE
s(因为这是
finalModel
)的决定指标,然后将结果与
tt.cv$resamples$RMSE
进行比较。因此,我将看到一行,其中我对
RMSE
tt.cv$resample$RMSE
的重新计算将相等,这意味着,该特定模型被选为我的
finalModel

然而,当我重新计算每个保持的所有
RMSE
s时,我没有看到我的计算与
tt.cv$resample$RMSE
相等的任何行。下面您可以看到比较:

RMSE
列具有我从
tt.cv$resamples$RMSE
获得的实际
RMSE
值,
RMSE\u ho
列具有我使用
finalModel
重新计算的
RMSE

请您指出我是否有任何错误,以及我如何交叉检查所选的模型

在我写这篇文章的时候,我刚刚意识到,如果我计算输出,实际上有31个模型。我在网上的某个地方读到过,但现在再也找不到了

代码如下:

库(插入符号)
图书馆(neuralnet)
#创建数据集

我刚刚发现了,这证明我的问题是错的。但是我仍然想知道如何使用这些模型来构建
最终模型。同样,在您的代码中,您只评估一个模型
expand.grid(layer1=8,layer2=0,layer3=0)
。您将通过执行3次重复10倍CV来评估它-因此30个模型将适合使用一些数据分割来评估性能,最后使用最佳超参数构建整个数据的模型(第31个模型)。在您的情况下,仅提供了一个超参数组合,因此这是最好的。如果您计划使用插入符号,我也建议您使用。谢谢,我实际上只阅读了部分内容,哈哈,但我会全部阅读。:)