繁体   English   中英

预测 - 用于回归的神经网络预测相同的值

[英]Prediction - Neural network for regression predicts same value

我正在尝试预测自住房屋的中值,这是一个有效的例子,结果很好。

https://heuristically.wordpress.com/2011/11/17/using-neural-network-for-regression/

library(mlbench)

data(BostonHousing)
require(nnet)

# scale inputs: divide by 50 to get 0-1 range
nnet.fit <- nnet(medv/50 ~ ., data=BostonHousing, size=2) 

# multiply 50 to restore original scale
nnet.predict <- predict(nnet.fit)*50 

nnet.predict
        [,1]
1   23.70904
2   23.70904
3   23.70904
4   23.70904
5   23.70904
6   23.70904
7   23.70904
8   23.70904
9   23.70904
10  23.70904
11  23.70904
12  23.70904
13  23.70904
14  23.70904
15  23.70904

对于所有 506 个观察值的所有预测,我得到 23.70904 相同的值? 为什么会这样? 我做错了什么?

我的 R 版本是 3.1.2。

这是由于需要用于连续响应变量的linout = TRUE我将 nnet 用于回归(而不是分类)问题时,我需要设置linout = TRUE以告诉 nnet 使用线性输出'

nnet.fit <- nnet(medv/50 ~ ., data=BostonHousing, size=10, linout=TRUE, skip=TRUE, MaxNWts=10000, trace=FALSE, maxit=100)

这对我来说效果很好,希望它有所帮助。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM