以苏州商品房房价为研究对象,帮助客户建立了灰色预测模型 GM (1,1)、 BP神经网络房价预测模型,利用R语言分别实现了 GM (1,1)和 BP神经网络房价预测可视化(点击文末“阅读原文”获取完整代码数据)。
由于房价的长期波动性及预测的复杂性,利用传统的方法很难准确预测房价,而灰色模型 GM (1,1)和神经网络的结合在一定程度上可以很好的解决这个问题。文章首先介绍了 GM (1,1)模型和神经网络模型,然后利用R语言和其工具箱提供的预测房价功能,对住宅类商品房销售价格进行预测。结果表明该方法能够有效提高房价预测的精度,为房地产市场管理者及投资者提供一定的参考。
灰色模型
灰色预测的主要特点是模型使用的不是原始数据序列,而是生成的数据序列。
其核心体系是灰色模型(Grey Model,GM),即对原始数据作累加生成(或其他方法生成)得到近似的指数规律再进行建模的方法。优点是不需要很多的数据,就能解决历史数据少、序列的完整性及可靠性低的问题;能利用微分方程来充分挖掘系统的本质,精度高;能将无规律的原始数据进行生成得到规律性较强的生成序列,运算简便,易于检验,不考虑分布规律,不考虑变化趋势。缺点是只适用于中短期的预测,只适合指数增长的预测。
#训练数据 train=mynx[1:floor(length(mynx)*0.8)]
GM11<-function(x0,t,x){ #x0为输入训练数据序列列,t为预测个数,x为原始数据(训练数据+测试集) x1<-cumsum(x0) #一次累加生成序列1-AG0序列 b<-numeric(length(x0)-1) n<-length(x0)-1 for(i in 1:n){ #生成x1的紧邻均值生成序列 \n','\n') #利用最小二乘法求得参数估计值a,u y<-numeric(length(c(1:t))) y[1]<-x1[1] for(w in 1:(t-1)){ #将a,u的估计值代入时间响应序列函数计算x1拟合序列y
GM11(train,lnx),mynx)#拟合
点击标题查阅往期内容
01
02
03
04
gm=GM11(train,length(mynx)+20,mynx)#预测20年的房价
从灰色模型的结果来看,未来的趋势房价有较大上涨。
神经网络预测
fcast <- forecast(fit,h=20) plot(fcast)
从神经网络模型预测的结果来看,未来的房价会有较平稳的增长。