喻胜华 龚尚花
摘要针对Lasso方法与支持向量机两者的联系与各自的优势,给出了基于Lasso与支持向量机的串联型、并联型和嵌入型三种组合预测,并将它们运用到我国粮食价格预测中.实证结果表明,与单一预测方法的预测结果相比,基于Lasso方法与支持向量机的串联型组合预测和嵌入型组合预测具有更高的预测精度.
关键词组合预测;Lasso;支持向量机
中图分类号F069 文献标识码A
AbstractIn view of the connection between Lasso and support vector machine and their respective advantages, we gave three kinds of combination forecast model, which includes series combination forecast, parallel combination forecast and embedded combination forecast. Then we used them in China's grain price forecast. The empirical results show that compared with the prediction results of single prediction method both series combination forecast and embedded combination forecast based on Lasso and Support Vector Machine have higher prediction accuracy.
Key words combination forecast; Lasso; support vector machine
1引言
在实际建模过程中,往往会涉及到自变量的选择问题.如果模型中的自变量太多,可能会削弱估计以及预测的稳定性,相反,自变量太少则会导致所拟合的模型与实际情况有太大的偏差.因此,如何从众多影响因素中选择最适合的解释变量就显得十分重要.Lasso[1]是一种带有惩罚因子的线性模型估计方法,它用模型的惩罚函数压缩模型的系数,绝对值较小的系数会自动压缩为0,从而使得参数估计和变量选择可以同时实现,而且有利于我们更好地解释模型.Lasso回归模型既像最佳子集回归那样便于解释,同时又具有岭回归类似的稳定性,该方法的进一步完善及其应用已成为统计学研究中的热点问题之一.
支持向量机 (SVM)是在统计学习理论[2]的基础上发展起来的一种新的、非常有效的机器学习方法,主要用于解决小样本的学习规律 [3],它避开了从归纳到演绎的传统过程,实现了高效的从训练样本到预报样本的“传导推理”,大大简化了通常的分类和回归等问题,较好地解决了小样本、非线性、过拟合和局部极小等问题.目前,支持向量机已经广泛应用于生物学、化学以及经济学等实际领域.同时,学者们也在对该方法进行不断的改进,其中一个很重要的方面是探索支持向量机与其他方法的融合和进行支持向量机的稀疏性研究[4]-[8].Lasso方法和支持向量机这两种预测模型均适用于小样本数据,但单一模型存在一定的应用盲区.Lasso方法在变量选择问题上比传统的逐步回归、岭回归和主成分回归等方法具有优越性,并且Lasso方法能同时实现对变量的选择和模型参数的估计,但Lasso方法不能用于非线性模型,而支持向量机能够处理非线性的问题,但不能进行特征筛选.因此,本文将Lasso方法和支持向量机组合起来进行拟合和预测,在预测过程中弥补其各自的缺点,实现它们的优势互补,可望比单一方法更能有效地利用信息,从而得到高精度、高效率的组合预测模型.
2基于Lasso方法与支持向量机的
组合预测模型
2.1Lasso及支持向量机方法
Lasso回归即最小绝对值压缩与选择算子(Least Absolute Shrinkage and Selection Operator),它是 Tibshirani.R(1996)提出的一种关于线性回归的新方法.Lasso回归是在普通线性最小二乘的基础上加了一个约束条件,使各系数的绝对值之和小于某一常数,从而将没有影响或影响较小的自变量的回归系数自动压缩到零.
当s 支持向量机是一种小样本“机器”学习方法,比较适合解决分类和回归两大类问题.本文主要是应用支持向量机的非线性回归模型,其核心是引入核映射的思想与结构风险的概念.设有样本数据集{xi,yi},其中xi∈RD(xi包含D个特征),yi∈R,集合F={ff:RD→R},其中f是回归函数,若f(xi)是非线性的,我们可以通过非线性映射将原输入训练样本由输入空间映射到高维特征空间H,并在高维特征空间H中构造线性支持向量回归机.训练样本xi满足如下条件:yt(xi·ω+b)-1+ζi≥0,ζi≥0,ζi为松弛变量,ζi≥0,i=1,...,n.这时求解最大化支持向量机边界的优化方程为: min 12‖ω‖2+c∑ni=1ζi s.t. yi(xi·ω+b)-1+ζi≥0, ζi≥0,i=1,...,n 通过求解上式可得到最终判别函数:fxi=sign∑ni=1αiyiKxi,xj+b,其中,c为惩罚参数,用于控制模型的复杂度,Kxi,xj为核函数,不同的核函数可以构造不同的支持向量机.
2.2基于Lasso方法与支持向量机的组合预
测模型
所谓组合预测就是设法把不同的预测模型组合起来,综合利用各个预测方法所提供的信息.从信息利用的角度来说,任何单一预测方法都只利用了部分有用信息,而且信息利用的程度也是不同的,把两种或两种以上的预测方法相结合,可以弥补单一方法在某些方面的不足之处.把Lasso方法与支持向量机组合起来进行预测,理论上是可行的,可以综合利用两种方法所提供的信息,尽可能地提高预测精度.组合的方式多种多样,本文主要尝试三种方式的组合,即串联型组合、并联型组合和嵌入型组合,并在实证过程中比较不同组合的预测效果.
1)基于Lasso方法与支持向量机的串联型组合
基于Lasso方法与支持向量机的串联型组合模型就是把Lasso预测方法与支持向量机在预测模型中按串联方式连接,即一方的输出作为另一方的输入,而最终的输出即为整个模型的预测结果.该模型首先要求利用Lasso方法筛选出众多自变量中的主要变量,剔除与因变量关联度很小的变量,然后将主要影响因素作为支持向量机模型的输入,通过不断地学习与训练,得出最后的预测值.
2)基于Lasso方法与支持向量机的并联型组合
基于Lasso方法与支持向量机的并联型组合模型就是分别用Lasso方法和支持向量机来进行预测,然后将其各自的预测结果进行组合,给出一个平均的预测输出.该模型中的一个关键问题就是需要确定单项预测方法的加权系数.根据组合预测确定权系数的不同,将组合预测模型分为固定权系数组合预测模型和变权系数组合预测模型.固定权系数组合预测方法的权系数确定比较简单,有关研究一直占主导地位且应用最为广泛,所以本文也采用固定权系数组合预测.在阅读了关于组合预测的相关文献后,我们选择目前最常用的拟合误差的误差平方和最小来计算组合预测模型的权系数.具体求解过程如下:
设同一预测对象的某个指标序列为{xt:t=1,2,…,n },存在m种单项无偏预测方法对其进行预测,第i种单项预测方法在t时刻的预测值为xit,i=1,2,…,m, t=1,2,…,n,称eit=xt-xit为第i种单项预测方法在第t时刻的预测误差,设l1,l2,…,lm分别为m种单项预测方法的加权系数,为了使组合预测保持无偏性,加权系数应满足:
∑mi=1li=1,li≥0,i=1,2,…m.
设t=l1x1t+l2x2t+…+lmxmt为xt的组合预测值,et为组合预测在t时刻的预测误差,则有:
et=xt-t=∑mi=1lieit.
设Q1表示组合预测误差平方和,则有
Q1=∑nt=1e2t=∑nt=1∑mi=1∑mj=1lieitljejt.
以预测误差平方和最小为准则的线性组合预测模型即为下列最优化问题.该问题可以利用MATLAB最优化工具箱求解.
minQ1=∑nt=1e2t=∑nt=1∑mi=1∑mj=1lieitljejt
li≥0,∑mi=1li=1.
对Lasso方法与支持向量机两种方法进行组合,即当m=2时构建组合模型,得到最优组合系数的公式解如下:
l1=∑nt=1e22t-∑nt=1e1te2t∑nt=1e21t+∑nt=1e22t-2∑nt=1e1te2t,
l2=∑nt=1e21t-∑nt=1e1te2t∑nt=1e21t+∑nt=1e22t-2∑nt=1e1te2t.
3)基于Lasso方法与支持向量机的嵌入型组合
基于Lasso方法与支持向量机的嵌入型组合模型就是以Lasso模型、支持向量机模型对目标系统的预测值作为支持向量机预测模型的输入向量,相应时刻的目标系统的实际值作为输出目标值,建立起组合模型的预测样本对,调整相关的参数,然后用一定数量的样本来训练支持向量机,使训练和测试时不同的输入向量得到相应的输出值,这样经过不断地学习及测试,就实现了支持向量机组合预测模型.
3组合预测模型在粮食价格预测中的应用
粮食价格数据是典型的小样本数据,粮食价格的影响因素众多,而且粮食价格与其众多影响因素之间存在着不确定性和非线性特点,传统预测方法对于解决此类高度非线性且影响因素众多的问题具有很大的局限性,基于Lasso方法与支持向量机的组合预测模型则适合处理此类问题.本文用粮食类零售价格指数代表我国粮食价格,根据粮食价格波动理论和已有的研究结论,我们共选取了影响粮食价格的21个变量[9-12],具体包括粮食库存量、期末库存消费比、粮食生产价格指数、粮食总产量、 粮食作物播种面积、成灾面积、农业支出、农业支出占财政支出的比重、城镇居民人均可支配收入、农村居民家庭人均纯收入、城镇居民人均粮食消费、农村居民人均粮食消费、农业生产资料价格指数、国内生产总值指数、世界能源价格指数、粮食净进口、人民币对美元汇率、上一期真实粮价增长率、货币和准货币(M2)供应量、同期通货膨胀率以及世界谷物价格指数.并且选择1978-2009年的32个样本作为拟合训练样本,2010-2013年的4个样本作为预测检验样本.在进行粮食价格预测的实证过程中,主要使用Matlab(2010b)并结合libsvm-3.20工具箱完成.先用Lasso方法选出对粮食价格影响较大的变量,再运用基于Lasso与支持向量机的串联型组合预测模型、并联型组合预测模型及嵌入型组合预测模型对我国粮食价格及其影响因素进行实证研究,为了比较预测效果,另单独使用Lasso模型、支持向量机模型对我国粮食价格进行预测.我们可根据预测误差来评价预测效果的好坏,预测误差越小,预测越准确.常用的评价指标有平均绝对误差(MAE)、均方误差(MSE)、平均绝对百分比误差(MAPE)、均方根误差(RMSE)等,其定义由以下的公式给出:
从表1可以看出:五个模型的平均绝对百分比误差(MAPE)都在10% 以下,有较好的预测效果,说明这五个模型都可以用来对我国的粮食价格进行预测.如果从单个预测模型与组合预测模型的预测效果对比来看,并联型组合预测模型的预测效果不是很理想,它与单一预测模型的预测效果基本上差不多,而串联型组合预测模型和嵌入型组合预测模型的预测效果则要大大优于单一的预测模型,它们的平均绝对百分比误差(MAPE)均在3%以下,要远远低于其他预测模型的平均绝对百分比误差.这说明在针对类似粮食价格等的预测问题上,使用基于Lasso与支持向量机的串联型组合模型和嵌入型组合模型进行预测有一定的优势,能够提高预测精度,拥有更好的预测性能.
4结语
分析了Lasso方法和支持向量机各自的建模机理和特点之后,发现Lasso方法和支持向量机这两种预测模型均适用于小样本数据的项目预测,但单一模型都存在一定的应用盲区.Lasso方法可以进行变量筛选和回归,但它不能用于处理非线性问题.支持向量机能够处理具有非线性关系的数据,但是不能进行特征筛选.所以,针对Lasso方法与支持向量机两者的联系与各自的优势,给出了基于Lasso与支持向量机的串联型、并联型和嵌入型三种组合预测模型,并将其运用到我国粮食价格的预测中.实证结果表明,组合预测模型的预测效果整体上要优于单个预测模型,把Lasso方法与支持向量机进行组合预测提高了粮食价格预测的精度.从3个组合预测模型的预测效果来看,它们的预测精度表现出较大的差异性,串联型和嵌入型组合预测模型的预测效果要远远优于并联型组合预测模型.
参考文献
[1]Tibshirani,R. Regression Shrinkage and Selection Via the Lasso [J]. Journal of the Royal Statistical Society.1996(58):267-288.
[2]Vapnik V. The Nature of Statistical Learning Theory (Second Edition) [M]. New York: Springer Verlag,1999:225- 260.
[3]张学工.关于统计学习理论与支持向量机[J].自动化学报,2000,26(1):32-42.
[4]颜静.灰色模型与支持向量机融合的研究[D].武汉:武汉理工大学计算机科学与技术学院,2010.
[5]姚潇、余乐安.模糊近似支持向量机模型及其在信用风险评估中的应用[J].系统工程理论与实践,2012(3):550-554.
[6]彭望蜀.基于BP神经网络与支持向量机的股票指数预测模型比较[J].南方金融,2013(1):71-73.
[7]王玲、薄列峰、刘芳、焦李成.稀疏隐空间支持向量机[J]. 西安电子科技大学学报(自然科学版),2006(6):896-901.
[8]吴晓萍、赵学靖、乔辉、刘东梅、王志.基于LASSO-SVM的软件缺陷预测模型研究[J].计算机应用研究,2013(9):2748-2754.
[9]王淑艳.我国粮食价格波动因素分析与预测研究[D].哈尔滨:东北农业大学经济管理学院,2013.
[10]王川.我国粮食市场价格的影响因素分析[J].农业经济,2010(7):24-27.
[11]罗锋,牛宝俊.我国粮食价格波动的主要影响因素与影响程度[J].华南农业大学学报(社会科学版),2010(2): 51-58.
[12]马林林,金彦平,张安良.我国粮食价格波动影响因素探析[J].价格理论与实践,2011 (10): 23-24.