【问题标题】:Tuning nnet package in R to converge faster在 R 中调整 nnet 包以更快地收敛
【发布时间】:2014-07-20 14:23:47
【问题描述】:

我正在研究我的研究,并且很长一段时间都在努力让权重收敛到 nnet 包中。我正在对天气数据运行反向传播算法来预测温度。我之前使用了神经网络包,并且权重收敛得很好。我能够增加迭代次数以提高准确性。但是当我增加输入模式大小时,神经网络包非常慢。以下是对数据的简要说明。

我每 1 小时从一个车站收集一次天气数据。我将每 1 小时的数据填充 24 小时。这形成了我的输入模式。 Neuralnet 运行良好,收敛了 1 个月的数据,大约 653 个模式。现在,当我想用​​一年的时间进行同样的训练。神经网络似乎运行了很长时间。

因此我选择了 nnet。 nnet 非常快。但它不像神经网络那样收敛。 下面是我使用的代码 sn-ps。

formula.in=V385+V386+....+V392~V1+V2+...+V382+V383+V384

net<-neuralnet(formula=formula.in,data=data,hidden=90,threshold=0.0001,act.fct="tanh",err.fct="sse", algorithm = "rprop+")

正如您在此处看到的,我可以更改阈值以获得所需的收敛。 现在我的 nnet sn-p 是(这是更快但不允许我更改收敛阈值的那个。

target<-as.matrix(data[,385:392]);
input<-as.matrix(data[,1:384]);
net<-nnet(input,target,size=2,maxit=15000)

任何帮助将不胜感激。

非常感谢。

【问题讨论】:

  • 你好,你解决了吗?我有同样的问题。谢谢!
  • 你从哪里下载了这些包?
  • 你好 Yura,我使用 install.packages("nnet") 来安装 nnet 包。它从以下位置下载它cran.rstudio.com/bin/windows/contrib/3.1/nnet_7.3-9.zip
  • 嗨,加布里埃拉,很抱歉回复晚了。是的,我修好了。但不是通过操纵代码。我对数据进行了更多分析,并摆脱了一堆只会减慢系统速度的数据点。我现在没有针对这个问题的通用解决方案

标签: r neural-network backpropagation


【解决方案1】:

我也将 R 用于神经网络。因为我是初学者,所以如果我的观点听起来有点傻,请原谅我。正如你所说,你正在使用反向传播算法来训练网络,但据我所知,nnet 只实现了与神经网络不同的单层前馈神经网络。

简而言之,我认为 nnet 没有使用反向传播。如果我错了,请纠正我。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-09-13
    • 1970-01-01
    • 2021-01-14
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多