我在r中有data.table,其中有150 000行。 我使用了9个功能,它的训练时间超过30分钟,我没等多久。 也尝试了500行(需要0.2秒),而5000则需要(71.2秒)。 那么我应该如何用所有数据训练我的模型,或者你可以给我任何其他建议吗?
这里编译日志:
train1 <- train[1:5000,]+1
> f1 = as.formula("target~ v1+ v2+ v3+ v4+ v5+ v6+ v7+ v8+ v9")
> a=Sys.time()
> nn <-neuralnet(f1,data=train1, hidden = c(4,2), err.fct = "ce", linear.output = TRUE)
Warning message:
'err.fct' was automatically set to sum of squared error (sse), because the response is not binary
> b=Sys.time()
> difftime(b,a,units = "secs")
Time difference of 71.2000401 secs
答案 0 :(得分:1)
根据我的经验,这是预期的,神经网络中涉及很多计算。我个人有一个用Python写的(2个隐藏层),详细包括动量项,我有大约38,000个模式,56个输入和3个输出。将它们分成8,000个块大约需要10分钟才能运行,并且在不到一周的时间内就能让我满意。
整套38,000有一个更大的隐藏节点来存储所有的模式,花了6个多小时来完成一个周期和超过3个月的学习。神经网络是一个非常强大的工具,但它的价格取决于我的经验,其他人可能有更好的实施,但我所看到的所有分类算法的比较,总是提到学习时间很重要。