基于支持向量回归的集成价格预测方法研究
【摘要】:在经济发展的过程中,价格体现了商品供求关系的变化。价格与市场需求密切相关,是实现国家宏观调控的重要手段之一。因此,价格预测显得非常重要。价格预测是销售预测、利润预测和资金需要量预测的前提。价格预测的主要思想就是采用科学的方法,对价格相关的信息和数据进行分析,从而得到对未来的价格变化的判断。价格预测可以是对某种商品价格的未来变化趋势做出基本的判断,也可以是采用预测模型对某种商品的未来价格做出数量判断。
现有的价格预测模型主要有灰系统预测模型、神经网络模型和时间序列模型。灰系统预测模型的主要思想是利用已有的数据建立灰色模型,发现系统的发展规律,进而科学地对未来的价格进行预测,目前常用的灰系统预测模型是GM(1,1)模型;神经网络预测模型的主要思想是选择合适的神经网络,利用已有的数据对网络进行训练,通过给定输入就可以利用训练好的网络得出预测结果,目前常用的神经网络是BP神经网络;时间序列预测模型的主要思想是将已有的数据的集合作为时间序列,对时间序列进行分析,建立合适的时间序列模型,进而对未来时间序列值进行预测,即对未来的价格进行预测,目前常用的时间序列预测模型是ARMA模型。
支持向量回归是支持向量机在回归问题上的一个重要应用。支持向量机是基于统计学习理论的一种分类方法,可以通过搜索最佳分离超平面实现对线性数据和非线性数据的分类。需要注意的是,对于非线性数据,首先要利用核函数将非线性数据映射到较高维空间,在新的空间上搜索最佳分离超平面。支持向量回归中一个重要的概念就是损失函数,它允许真实值和预测值存在一定范围内的误差。因为损失的存在,使用一个惩罚因子C将损失加入到目标函数里,从而达到平衡损失的目的。建立支持向量回归模型的一个重要的步骤就是核函数的选取、损失函数参数的确定和惩罚因子C的确定。
现有的价格预测方法大都采用单一模型,然而价格预测问题十分复杂,而且单一预测模型均存在不足。如何有效地融合多个预测模型的结果,获得更为准确的预测结果是价格预测所面临的主要难题。针对此问题,本文提出基于支持向量回归集成灰系统、神经网络和时间序列的集成价格预测方法。该方法主要分为两个步骤:第一步是根据已有的历史数据分别运用灰系统GM(1,1)模型、BP神经网络模型和一元时间序列模型进行第一阶段预测,得出三套预测结果;第二步就是利用支持向量回归模型对第一阶段得出的三套预测结果进行集成预测,具体来说就是通过选取核函数、确定损失函数参数和惩罚因子C的值来建立支持向量回归模型,进而得出预测结果。
本文实验所用的实际数据为中国畜牧业信息官方网站提供的1996年1月到2009年6月的全国平均玉米价格。其中将1996年1月到2008年12月的数据作为训练数据,建立预测模型,将2009年1月到6月的数据作为测试数据,检验预测模型的效果,并进行预测模型之间的比较。实验表明本文提出的支持向量回归的集成价格预测方法的6个月平均相对误差和均方根误差分别仅为1.99%和0.0348(灰系统GM(1,1)模型:4.85%和0.0742,BP神经网络模型:5.26%和0.0902,一元时间序列模型:4.4%和0.0637)。因此,无论是从图像直观上来看,还是从数学误差分析角度来看,我们都可以得出如下结论:在价格预测方面,基于支持向量回归的集成模型优于灰系统GM(1,1)模型等三个基本模型。
本文提出的集成预测方法已应用在数字农业知识网格技术研究及应用课题中。本课题是国家高技术研究发展计划,即863计划研究课题。课题组开发了农业知识网格系统,本文研究的集成预测方法主要应用在系统中的价格预测模块。