基于ARIMA-BP组合模型的房地产价格预测方法研究
来源:用户上传
作者:尤豫心 陈继红
摘要:针对使用单一预测模型存在数据特征提取不充分,预测精度不高的问题,提出了一种基于ARIMA-BP组合模型的房地产价格预测方法。结合ARIMA模型处理线性问题的优势以及BP神经网络模型在非线性问题上的优势,利用误差方差加权平均训练法训练出最佳权重的组合并建立组合模型对某市区房地产价格和趋势预测进行实证分析。理论分析和实验结果表明,所提两者的组合模型有效解决了不能充分提取数据特征,预测精度不理想的问题,比单一预测模型能获得更准确的预测效果。
关键词:房地产价格;ARIMA模型;BP神经网络模型;组合模型;趋势预测
中图分类号:TP391文献标识码:A
文章编号:1009-3044(2020)09-0264-06
1 引言
当今时代,房地产业是我国国民经济的支柱型产业,它在国民经济中具有高度的产业关联度,是推动整个国家国民经济发展、加速实现工业化和城市化的主导力量。房地产业持续健康有序的发展在国家经济的运作、政治的建筑、人民生活水平的改善中占据举足轻重的地位。然而,由于影响房地产发展的因素多种多样,例如,社会状况、人口密度、房地产价格政策、税收政策、城市发展规划、宏观经济状况、物价状况、居民收入状况、自然因素和区域因素等都对房地产的发展有着不同程度的影响,致使房地产市场发展不成熟,部分城市存在严重的区域差异问题,严重影响我国经济的突飞猛进以及进入世界强国的步伐。因此,基于数据挖掘技术探索出一套实用的预测方案研究房地产价格的变化趋势迫在眉睫。面对海量的房地产数据,如何分析挖掘出有价值的数据,如何通过大量数据揭示一种新的关系、趋势和模式成为一个研究热点。
文献[1]结合AR模型良好的模型辨识能力和神经网络良好的非线性映射能力以及遗传算法的全局最优能力,改进算法并建立IGA-NARLMBP预测模型用来预测都江堰上游来水。
文献[2]利用时间序列分析方法,以时间序列的平均值、标准差、ACF系数、PACF系数及AIC值、BIC值等参数与模型的评价准则,建立陕西省GDP时间序列模型,预测未来6年的经济发展。
文献[3]基于具有代表性的ARIMA模型与BP神经网络模型建立了针对某餐饮020企业的组合模型,并分别对整体、商家、城市三种企业不同的预测场景进行了模型的实现与验证。
除此之外,文献[4]采用时间序列AR模型进行震动趋势预测,通过ARIMA模型的平稳化处理,将非平稳的序列平稳化,模型参数估计使用了参数估计无偏、精度高的最小二乘法,验证结果表明AR模型能夠很好地拟合振动信号时间序列,达到了理想的预测精度。文献[5]提出了组合预测的思想,将参与组合的各种预测结果通过合适的方法进行组合,取其精华,弃其糟粕,获取最优预测结果。
目前,组合预测理论已经证明:多种预测模型的组合在一定的条件下能更有效地改善模型的拟合能力和提高预测精度[6]。将统计方法的代表ARIMA模型与人工智能方法BP神经网络有机结合,充分发挥二者的优势,建立房地产价格预测模型,研究房价的变化趋势并对房价进行预测,有助于房地产行业有序发展。
2 房地产价格预测模型
2.1 ARIMA模型
时间序列模型是一种重要的现代统计分析方法,广泛应用于自然领域、社会领域和科学研究等。作为一种重要的时间序列模型,差分自回归移动平均模型( Autoregressive IntegratedMoving Average Model,ARIMA),得到了广泛的应用[7,8]。它是由Box等[9]提出的一种时间序列建模方法,主要由三部分组成,分别为AR(P)自回归模型、MA(q)模型、ARMA(p,q)模型,模型建模步骤简单,其变量主要借助内生而不依赖于其他外生变量,但在建模前必须要求序列具备平稳性与随机性特征。基于ARI-MA模型的房地产价格趋势预测方法的建模主要涉及四个步骤:数据的平稳化处理,序列平稳化,模型的识别与定阶,模型的校验,具体流程如图1所示。
在模型的识别与定阶阶段,重点在于根据自相关与偏自相关函数的拖尾、截尾情况来确定具体需建立哪种模型最为合适,具体的模型识别规则参照表1。
2.2 BP神经网络模型
大数据时代,人工智能方法在预测、关系拟合、分类等领域已广泛应用。对于非线性系统,神经网络具有通过学习逼近任意非线性映射的能力,将神经网络应用于非线性系统的辨识和预测,可以不受非线性模型的限制。
自1982年Hopfield发表了关于自反馈神经网络的文章[10]以及Rumelhart等人发表了专著PDP[11]以来,研究神经网络的热潮便在世界范围内掀起。随后,BP神经网络在1986年由Ru-melhart和McCelland为首的科学小组提出,是一种按照误差逆向传播算法训练的多层前馈网络,由1个输入层、若干隐含层和1个输出层构成[12]。同层的神经元之间并无关联,异层的神经元之间则前向连接。BP神经网络拓扑结构如图2所示。
在整个BP中,重要的是两个环节,第一环节是信号实现从输入层到输出层的前向传播,另一部分是在输出层未得到期望输出时,误差信号则会继续沿着原来的网络连接路线返回并通过不断修改各层之间的权值以得到最终的期望误差。目前,BP神经网络在函数逼近、系统辨识与预测、分类以及数据压缩等方面均发挥着不可替代的作用,成为人工智能领域的热门[13]。
BP神经网络作为人工智能领域的代表,具有较强的非线性映射能力,能够以任意精度逼近任何非线性连续函数;良好的自学习和自适应能力,便于将学习内容记忆到网络的权值中去;良好的泛化能力与容错能力,有益于将学习成果应用于新知识。当然,BP算法也有其固有的缺点[l4],算法容易陷入局部极值导致网络训练失败、算法存在预测能力与训练能力矛盾问题,有时训练达到某种极限后,训练能力虽然提高了,预测能力反而会下降,导致过拟合现象。一般情况下,BP神经网络建模过程为: (1)网络初始化,即给输入变量,各连接权值等分别赋予一个数据归一化变换,将数据映射为[-1,1]内的随机数,并设定好相关参数,误差函数、精度值以及最大的学习次数等[15]。随后,取样本序列作为输入,并选出合适的激活函数,一般Sigmoid函数较为常用,公式为:
(2)信号利用激活函数沿着网络正向传递,分别得到隐含层和输出层的输出以及损失函数的期望值,损失函数计算公式为:
其中0表示参数集合,y表示真实值,y表示预测值,1/n表示总误差的平均值。
(3)若输出结果未达到期望误差,则误差信号在网络中反向传播,并根据误差不断更新网络中的权值和偏置项。
(4)重复以上2-3步,直到最大学习次数用完或者损失函数小于事先给定的阈值,此时网络中的各参数即为模型最佳参数,则模型训练结束,可用于实时预测。
2.3 组合模型
各个单项预测模型的方法和原理各不相同,不同预测模型挖掘信息的角度也不同,它们之间的关系不是相互冲突的,而是相互关联,互相补充的[16]。在实际预测中,如果因为某项模型预测误差偏大而丢弃,则会导致该项模型所能挖掘出的有用信息缺失,造成更大的误差。多项研究证明,将多个单项预测模型选择性结合形成组合模型,更能有效降低预测误差,提高模型精度,进而提出组合模型的概念。
组合模型是提高模型预测精度的最佳方法之一,可依据特定的方法对各种子模型预测精度效果进行权衡、分配权重,基于预测精度高的模型权重大,预测精度小的模型权重小的原则,选取合适的权重判定方法对组合模型进行验证对最终的预测效果至关重要。常用的组合模型判定方法有以下三种:
1)等权平均法:即将各子模型的权重平均化,各子模型权重相等,权重总和为1。公式为:
通过组合模型的创建,综合多种单项预测模型的结果,可为数据的预测和分析提供更精准的预测方法,得到更为系统、全面的预测效果。
3 模型应用
作为江苏长江经济带的重要组成部分,南通集“黄金海岸”和“黄金水道”优势于一体,具有巨大的发展潜力。本文选取南通市某区2013年01月至2017年12月,共计60个月的数据用于建立模型,2018年01月至02月的数据为校验数据,验证模型的精确度。以此为例,阐述预测过程。
3.1 ARIMA模型建立
1)数据清洗
借助SQL Sever平台提取2013-2017年房地产每月销售均价,对其进行数据清洗工作,剔除保障性限价房、安置房、车库等特殊房源數据,利用SPSS工具对一些离群点进行数据转换,使其在一定程度上接近正常值,尽可能减少对预测结果的影响。
2)序列平稳化处理
对于时间序列的平稳性处理与判定,本文案例基于两种数据分析工具,采用两种方法进行判定。初步采用SPSS 23.0工具绘制时间序列的自相关与偏自相关函数图进行判定,若序列平稳,则不做处理,若不平稳,则通过差分平稳化,本文案例通过一阶差分后的自相关与偏自相关函数如图3所示:
由上图可知当K>3时,自相关函数图都落人置信区间,且逐渐趋向于0,证明序列具备平稳性和随机性,验证了差分次数的正确性。
为了再次验证其准确性,基于Eviewsl0.0工具,对上述差分次数后的时间序列进行单位根校验,校验结果如图4所示:
由一阶差分后的单位根校验结果图可知,在1%,5%和10%的显著性水平下,检验统计量均小于相应的DW临界值,从而拒绝H0,再次验证序列的平稳性与随机性,可用于模型的识别与定阶。
3)模型识别与定阶
ARIMA模型的建立涉及参数的估计与阶数的确定,可基于计算时间序列yt的自相关与偏自相关函数,即观察上述图3,并根据模型识别规则来确定,借助Eviewsl0.0工具所计算出模型参数估计如图5所示:
4)模型校验
传统的模型检验为DW统计量检验,使用该检验方法需满足三个条件:一阶自相关、回归中有截距项、回归因子无滞后项[7]。而本文案例采用观察残差自相关函数图的结果以及最终ARIMA模型拟合图进行校验,校验结果如图6、7所示。
由上图可知,残差序列几乎全部落人置信区间,验证了数据序列为白噪声,即通过检验。月均价实际值与模型预测值达到了很好地拟合,再次验证模型通过校验。
3.2 BP神经网络模型建立
1)数据预处理
BP神经网络收集到的数据与网络模型算法要求的数据具备一致性,在建模之前,需对数据进行归一化处理,借助MAT-LAB的Mapminmax函数实现,函数负责将矩阵的每一行数据压缩到[-1,l]。基于数据挖掘技术可得到月均价时间序列x0, X1, X2,…,Xk, Xk+l, Xk+2,",Xk+i,将XO, X1,X2,…,Xk作为训练样本用于建立模型,Xk+1,Xk+2,…,Xk+1作为测试样本用于验证模型的准确性。房价数据具备波动性,每个月不断地更新变化,选取距离当下日期越近的数据用于建模,模型对未来预测准确性的影响力度越大。本文案例中,为了充分利用数据,不断使新数据覆盖旧数据,选取每相邻三个月的数据预测下一个月的数据,如对2018年01月的数据进行预测,则选取2017年10月、11月、12月的数据用于训练。
2)网络参数设计
(1)输入层与输出层节点设置
本文案例中,选取的策略是以近邻三个月的数据预测下一个月的数据,即可确定输入层节点数为3,输出层节点数为1。
(2)隐含层节点的设置
隐含层节点数的选择直接影响神经网络模型的各项性能指标。根据众多研究学者的研究经验可得公式来确定具体的节点数:h=√m+n+a,其中,h代表隐含层的节点数,m、n代表输入层与输出层节点个数,a为1-10之间的调节常数,具体的h值可以通过实验进行试探性的确定。
转载注明来源:https://www.xzbu.com/8/view-15209533.htm