R中的mlp函数为神经网络提供恒定的输出

时间:2019-02-07 14:15:30

标签: r neural-network mlp

我正在尝试在R中拟合神经网络,目的是预测整数值。我有很多协变量,有些是连续的,有些是分类的,我对此做了标准化。当我使用nnet包中的nnet函数,其中包含一个隐藏层和5个节点时,它可以正常工作。但我不喜欢这样,我看不到学习功能,行为。功能...是 当使用RSNNS包中的mlp带有相同数量的隐藏神经元时,它给我恒定的输出(这是错误的),并且功能非常慢。我认为功能应该提供非常相似的结果,因为构建的网络应该是相同的。

nn <- nnet(x_train, y_train,size=5, linout=T, maxit = 50, MaxNWts=16350)
nn_p <- predict(nn, newdata=x_test)

> nn_p
        y 
0.4484153002
-1.2744682375
0.4484153002
0.4657251465
0.4484153002
0.4484153002
0.4484153002
0.4484153002
-1.2744682375

nn3 <- mlp(x_train, y_train, size=c(5), maxit=50, linOut = TRUE, 
hiddenActFunc = "Act_TanH", learnFunc = "BackpropMomentum")
nn3_p <- predict(nn3, x_test)

> nn3_p
   y
-0.2601733208
-0.2601733208
-0.2601733208
-0.2601733208
-0.2601733208
-0.2601733208
-0.2601733208
-0.2601733208
-0.2601733208

0 个答案:

没有答案