1. 引言
随着房地产行业的不断发展,房价作为房地产行业运行的“晴雨表”逐渐受到人们的关注。房价一方面能够影响国民经济发展,另一方面也会对居民的生活水平产生调节作用,在市场价格体系中占有重要地位。而房价的预测也是近年来人们关注的一个问题,针对房价的合理预测对于房价的调控具有重要意义。
针对房价的预测问题,国内外学者做了很多研究:张荣艳 [1] 从房地产需求、房地产供给和宏观经济三个方面入手,对房价的影响因素进行了灰色关联度分析。并根据主要因素建立GM(1,4)模型预测了郑州市2017~2021年的房价;高玉明,张仁津 [2] 使用遗传算法对BP神经网络进行了权值优化,从而建立了基于遗传算法优化的BP神经网络模型对贵阳市2009~2011年的房价进行了预测,得出了比BP神经网络更好的结果;侯普光,乔泽群 [3] 将小波分析理论和ARMA时间序列模型相结合。利用小波分析对原始数据进行去噪处理,并对处理后的数据进行平稳性检验和参数估计,建立ARIMA模型预测了太原市2001~2012年的房价,结果较为合理,同样将ARIMA模型应用于房价预测并得出较好结果的还有Arvydas Jadevicius和Simon Huston [4] ;申瑞娜,曹昶,樊重俊 [5] 使用主成分分析对原始数据进行降维处理,然后建立了支持向量机模型对上海市2013年和2014年的房价进行预测,结果相较于ARIMA模型来说误差较小。除此之外,文献 [6] - [11] 也将不同的方法用在房价的预测中,并取得较好结果。
以上研究大致集中在两个方面:一是针对房价数据的时间序列预测,即根据往年的数据序列对未来进行预测。二是通过分析与被预测指标相关的因素,并建立影响因素与被预测指标之间的关系,从而达到预测的目的。但很少有学者将两种方法结合在一起,即同时考虑历史信息和其他因素对房价的影响。
本文从以上两个角度出发,分别建立了基于BP神经网络的预测模型和NAR神经网络预测模型。从影响因素的角度出发,分析可能会对房价产生影响的因素,并通过BP神经网络拟合了多个指标和房价之间的非线性关系。使用GM(1,1)模型对所有的房价指标进行预测,并将预测结果代入BP神经网络,从而得出房价的预测值。另一方面,从时间序列的角度出发,建立NAR神经网络对房价进行预测。最后使用最优加权方法,根据两种模型的预测误差计算出对应的权值,并以加权求和结果作为最终的预测值。这种方法同时考虑到了历史信息和其他因素的影响作用,预测结果较为合理。
2. 房价影响因素分析及数据选取
房产价格的变化受到很多因素的影响,例如经济发展、国家政策、房产供应与需求等。将影响房价的所有因素考虑进来是不现实的,因此本文在选取指标的时候,既要使所选指标具有代表性,同时还要保证所有指标均可以量化。本文从房产供求关系、社会因素和经济因素三个方面进行考虑,选取房地产开发投资额(A1)、商品房销售面积(A2)、GDP(A3)、城市人均可支配收入(A4)、平均地价(A5)和年末户籍人口(A6)六个指标来衡量房价(A7)的变化。
本文以国家统计局公开数据中海口市2007年~2017年的数据和中国地价监测网的数据为基础,探究上述指标与房价之间的关系,并对海口市未来的房价进行预测。本文采集的数据见表1。
![](Images/Table_Tmp.jpg)
Table 1. Haikou City Housing Price and Its Impact Indicators Data from 2007 to 2017
表1. 2007~2017年海口市房价及其影响指标数据
3. 数据预处理
在BP神经网络的房价预测中,不同指标数据所对应的数量级不同,对房价变化的影响也不相同。为了能够使网络预测结果更加精确,本文在建立预测模型之前需要对原始数据进行归一化处理:
(1)
其中x1和x0分别表示处理后的数据和原始数据,xmax和xmin分别表示某一指标数据序列中的最大值和最小值。
图1为2007~2017年海口市房价真实值,从图中可以看出,2010年的房价明显高于相邻省份。为了使模型的预测结果更加准确,排除异常值的干扰,本文将该数据剔除,使用线性规划对缺失数据进行补全,并且在模型预测性能检验时,将插值结果作为房价真实值。
![](//html.hanspub.org/file/1-2580412x10_hanspub.png)
Figure 1. Haikou City 2007~2017 house price line chart
图1. 海口市2007~2017年房价折线图
4. 使用BP神经网络预测房价
4.1. BP神经网络模型的建立
BP神经网络是一种典型的多层前馈神经网络,该网络在训练过程中首先从输入层输入数据,通过信号在隐含层神经元中传播,最终从输出层神经元输出结果。输出结果后根据输出值与真实值的误差进行反向传播,对各神经元的权值进行修正。由此可见,BP神经网络能够根据预测结果的误差对网络参数进行自我修正,具有非常良好的非线性映射能力,能够有效拟合出影响因素与房价之间的关系。
本文所建立的BP神经网络输入层节点数为6,对应房价影响因素的六个指标;输出层节点为1,对应房价。除此以外,网络的其余参数设置如下:网络训练目标误差等于10−10,学习率设置为0.1,最大训练步数为10,000,隐含层传递函数和输出层传递函数分别为tansig函数和purelin函数。网络的训练函数设置为梯度下降函数traingd。
对于BP网络隐藏层的选取,由于目前还没有较为完善的理论,因此本文在这里以一个经验公式作为参考:
(2)
其中m表示隐藏层节点数,n表示输入层节点数,a表示[1,12]之间的正整数。根据公式(2)和本文所选房价影响指标,隐藏层节点数的取值范围取为[3,15]。为了能够找出隐藏层节点的最优值,本文对每一种情况进行模拟,使用2007~2017年的数据对网络进行训练,训练集、验证集和测试集的比例为7:2:2。训练结束后,再次对所有数据进行仿真,并选取仿真结果误差最小的情况来决定网络的结构。为了能够衡量预测结果的准确度,选取均方误差作为预测性能评价指标:
(3)
其中表n示被预测数据的个数,
和
分别表示预测值和真实值。
考虑到神经网络初始权值的随机性可能会对结果造成一定的影响,每种情况重复进行5次模拟,并以这5次模拟的均方误差值的均值作为最后结果。计算结果见表2和图2。
![](Images/Table_Tmp.jpg)
Table 2. Comparison of BP Network Prediction Performances with Different Number of Hidden Layer Nodes
表2. 不同隐藏层节点数的BP网络预测性能比较
![](//html.hanspub.org/file/1-2580412x15_hanspub.png)
Figure 2. BP network prediction performance line graph with different hidden layer nodes
图2. 不同隐藏层节点数的BP网络预测性能折线图
从结果中可以看出,当隐藏层节点数等于13的时候,对应均方误差最小值为51802.95。因此本文将神经网络隐藏层节点数设置为13。
4.2. 利用BP神经网络进行预测
按照4.1所述将神经网络结构设置好之后,利用海口市2007~2017年的数据对网络进行训练,其中训练集、验证集和测试集的比例为7:2:2。本文进行多次测试后选择出预测效果较好的一次作为网络的最终预测结果(见表3)。
![](Images/Table_Tmp.jpg)
Table 3. BP neural network training results
表3. BP神经网络训练结果
从表3中可以看出,误差最大的年份为2007年的27.575%。其余年份的预测误差均在3%以内,最小值可达0.01%。所以从预测结果来看,BP神经网络能够较为合理地对海口市的房价进行预测,结果具有一定的参考价值。
接下来,本文使用灰色GM(1,1)模型对2018~2022年所有的房价影响指标进行预测。灰色预测通过从少量的、信息不完全的数据中寻找规律,并建立灰色微分方程,最终对事物未来的发展进行预测。考虑到本文所使用的各项指标数据均为2007年至2017年,包含数据量较少,因此适合使用灰色模型进行预测。
使用GM(1,1)模型进行预测时,首先需要对原始数据进行一次累加操作得到新序列:
(4)
(5)
其中t(0)和t(1)分别表示原始数据和经过一次累加后的数据。根据一次累加数据,建立GM(1,1)的白化模型:
(6)
其中a表示“发展系数”,b表示“灰作用量”。通过对白化方程的变形推导,得出方程的结果,再对结果进行一次累减得出最终的预测值。
使用GM(1,1)模型对房价影响指标进行预测时,为了能够使预测结果更加准确,采用滚动预测的方法,即先使用原始数据完成未来一年内的预测,将预测值加入到原始数据序列里形成新的序列,使用新的数据序列完成下一年的预测,以此类推。最后将灰色预测结果代入训练好的BP神经网络中计算出2018~2022年的海口市房价预测值。
5. 使用NAR神经网络预测房价
5.1. NAR神经网络预测模型的建立
NAR神经网络是一种具有延时记忆和反馈功能的动态神经网络,能够根据历史数据对未来进行预测。由于NAR神经网络的输入值为被预测指标前一次或前几次的历史数据,因此可以用于系统输入未知的时间序列预测中。
本文将NAR神经网络应用于海口市房价走势的预测中。网络相关参数设置如下:目标误差为10−10,最大迭代次数为2000。为了提高网络的训练速度,本文采用trainlm训练函数对网络进行训练。
对于NAR网络延迟阶数和隐藏层节点数的选取,本文同样采用试验的方法,并以预测结果的均方误差作为依据来确定网络结构。延时阶数的取值范围为1:2至1:6,隐藏层节点数的取值范围为1至10。每种情况同样重复进行5次试验,以均方误差的平均值作为最后结果,每一种参数设置的检验结果见表4。同时绘制出均方误差折线图(见图3)。
![](Images/Table_Tmp.jpg)
Table 4. NAR neural network prediction performance with different parameter settings
表4. 不同参数设置的NAR神经网络预测性能
![](//html.hanspub.org/file/1-2580412x19_hanspub.png)
Figure 3. NAR network prediction performance line chart with different parameter settings
图3. 不同参数设置的NAR网络预测性能折线图
从试验结果中可以看出,当延时阶数等于1:3,隐藏层节点数等于4的时候,网络具有最小均方误差,等于31,941.87。因此本文将NAR神经网络的延时阶数定为1:3,隐藏层节点数设置为4。
5.2. NAR神经网络的训练和预测
按照5.1中的参数设置确定网络结构后,将海口市2007~2017年的房价数据代入网络进行训练。其中网络训练集、验证集与测试集的比例为7:2:2。NAR网络训练误差图见表5和图4。
![](Images/Table_Tmp.jpg)
Table 5. NAR neural network training results
表5. NAR神经网络训练结果
从表5和图4可以看出,NAR神经网络的预测误差均较低,总体预测效果较好。与BP神经网络预测结果相比,NAR神经网络的预测误差更稳定。因此,NAR神经网络可以用于房价的预测中。
图5表示NAR神经网络的误差自相关图。模型预测误差的自相关性是用来衡量模型预测结果的重要
指标,对于一个理想的预测模型来说,其结果的自相关性应当是在时间间隔等于0的时候自相关性最大,其余情况均为0。但是事实上模型的预测结果不可能完全没有误差,因此当其余情况的自相关性在95%的置信区间内的时候认为模型的预测性能良好。从图5中可以看出,除了0时间间隔以外,其他情况的自相关性均在置信区间内,因此NAR神经网络的预测结果较为可靠。
6. 基于最优加权法的预测结果优化
组合预测是指将多种预测方法的预测结果组合到一起,从而对预测结果的精度提高的方法。最优加权组合预测法是以多个单一预测方法结果的加权和的误差总和为依据,对每种预测方法计算对应权值,使得组合后的预测结果误差最小的方法。目前已有学者将最优加权组合预测法应用到房价的预测中,如参考文献 [12] 。
最优加权法首先计算每一种预测方法在每一时刻的预测误差,假设使用第i中预测方法对t时刻的数据进行预测,预测结果为dit,以dt表示t时刻的真实值,则t时刻每一种模型的预测误差和加权后的预测误差如下:
(7)
(8)
要想使得组合模型的预测误差达到最小,就要通过对权值进行调整,从而使所有时刻预测结果的误差平方和达到最小。因此,以预测结果的误差平方和为目标函数,建立非线性规划模型:
(9)
根据以上规划模型便可以求出当预测误差最小时,每种预测模型所对应的权值。本文以BP神经网络和NAR神经网络的预测结果为基础,计算两种预测模型对应的权值。考虑到NAR神经网络的延时阶数为1:3,仅能对2010~2017年的房价进行预测,本文仅根据预测模型在2010~2017年的预测结果进行计算。最终计算得出BP神经网络对应权值等于0.7385,NAR神经网络对应权值为0.2615。使用计算出的权值对两种模型的计算结果进行优化,并与单一模型的预测误差进行对比(见表6,表7和图6)。
![](Images/Table_Tmp.jpg)
Table 6. Combined model results and error comparison
表6. 组合模型结果和误差对比
![](Images/Table_Tmp.jpg)
Table 7. Average error of three prediction models
表7. 三种预测模型平均误差
![](//html.hanspub.org/file/1-2580412x25_hanspub.png)
Figure 6. Comparison of prediction errors of three models
图6. 三种模型预测误差对比
从预测结果中可以看出,组合预测模型的平均误差比BP神经网络和NAR神经网络单独预测的误差更小,各年份的预测误差率比单一模型更稳定。因此基于最优加权法的组合预测模型能够对单一模型的预测结果进行优化。将BP网络和NAR网络在2018~2022年的房价预测结果代入组合模型中,得出最终房价预测值(见表8):
![](Images/Table_Tmp.jpg)
Table 8. Combined model prediction result
表8. 组合模型预测结果
7. 结论
从2010~2017年的预测结果可以看出,基于最优加权的组合预测模型的平均预测误差为0.38%,小于BP神经网络的0.78%和NAR神经网络的0.79%。从预测误差折线图可以看出,两种预测模型经过加权组合后,误差更加稳定。综上所述,组合预测模型综合考虑了房价走势和影响因素对未来房价变化的影响,因此能够做出更加准确的预测,并且能够在一定程度上抑制单一模型预测误差的波动,使结果更加稳定。