使用插入符号包

时间:2017-10-07 15:54:07

标签: r machine-learning r-caret ensemble-learning

在使用R中的插入符号包时,我遇到了一个非常令人困惑的问题。为了进行比较,我正在训练多个模型。在几次火车电话之后,这个错误信息开始显示我使用的火车电话/火车模型: -

  

UseMethod(“train”)中的错误:没有适用于“train”类的对象的“train”方法

出现此错误后,未训练其他模型,但会出现上述错误。

当我重新启动R并再次加载插入符号包时,出现此错误的相同模型很容易接受训练。

我对此处的问题感到困惑?

我为我尝试创建的5个训练模型做了一个函数: -

test = function(){

a = train(demand ~ temp, oldData, 'lm')
print("Done A")

b = train(demand ~ temp, oldData, 'rf', ntree = 10)
print("Done B")

c = train(demand ~ temp, data = oldData, method = "gbm", 
        trControl = objControl, tuneGrid = gbmGrid, verbose = F)
print("Done C")

d = train(demand ~ temp, oldData, 'mlp')
print("Done D")

e = train(demand ~ temp, oldData, 'monmlp')
print("Done E")
}

P.S:虽然我已成功训练了所有这些模型,但我正在尝试创建一个集合函数,我打算将所有这些调用一起运行。

1 个答案:

答案 0 :(得分:0)

我发现了问题所在: -

唯一一个制造麻烦的模型" mlp"模型。当我们打电话给火车使用" mlp"方法,插入符号附加2个包" RSNNS"和" Rcpp"。我的猜测是这些包依赖于我们使用列车功能提供的信息。一旦它们被连接,该信息被保留,这导致*上述错误,之后没有其他模型能够被训练。如果我们在再次拨打火车电话之前拆除这两个包裹,模型就会成功培训。