R中的Neuralnet库每次提供不同的输出

R中的Neuralnet库每次提供不同的输出,r,neural-network,R,Neural Network,我试图使用neuralnet库在R中运行一个神经网络,每次运行它,它都会给我不同的结果。它经常说“算法没有收敛”。我尝试过改变隐藏层的数量、阈值、重复次数,但似乎没有任何效果。我的数据集大约有1100行,共41列,我试图使用其中的40列来预测第41列。有人有什么建议吗?以下是我当前使用的实现代码:- n <- names(train1) f <- as.formula(paste("RESULT ~", paste(n[!n %in% "RESULT"], collapse = "

我试图使用neuralnet库在R中运行一个神经网络,每次运行它,它都会给我不同的结果。它经常说“算法没有收敛”。我尝试过改变隐藏层的数量、阈值、重复次数,但似乎没有任何效果。我的数据集大约有1100行,共41列,我试图使用其中的40列来预测第41列。有人有什么建议吗?以下是我当前使用的实现代码:-

n <- names(train1)
f <- as.formula(paste("RESULT ~", paste(n[!n %in% "RESULT"], collapse = " + "))) 
nn <- neuralnet(f, data=train1, hidden=4,linear.output=FALSE, threshold = 0.1, rep=3)

n您会得到不同的结果,因为每次都会随机生成权重。如果希望得到完全相同的结果,则需要设置种子(?set.seed)或自己提供一组权重(“startweights”参数)。

由于每次都随机生成权重,因此会得到不同的结果。如果你想得到完全相同的结果,你需要设置一个种子(?set.seed)或自己提供一组权重(“startweights”参数)。

可能你是在用“stocastich梯度”来学习偏差和权重,每次都需要不同的输入。。。Stocastico gradient学习网络的一部分输入,而不是像“gradient Method”这样的完整输入。我建议你阅读本章,这很好。也许,你正在使用“stocastich gradient”来学习偏见和权重“,每次都需要不同的输入。。。Stocastico gradient学习网络的部分输入,而不是像“gradient Method”这样的完整输入我建议你阅读这一章,它很棒。