支持向量回归预测怎么做_非线性ICA和SCV的方法预测股票价格

《Integration of nonlinear independent component analysis and support vector

regression for stock price forecasting》

最近在看主成分(pca)和独立成分分析法(ica)看到在股票预测方面的这篇文章。文章主要利用分线性的ICA和SVM结合来预测股票。并和传统的预测方法进行对比,具有更高的预测精确度。

1.ICA的介绍:

ICA前期主要应用工程噪声的处理和识别,特别是盲源分离(BBC),经典的例子就是葡萄酒会,有多个麦克风收录演唱的音频信号,但是对于多个音频信号,由于现场环境,会有很多噪声,无法真正还原真实演唱者的声音,也就是采集的音频信号(观测数据)是由多个信号源(原始信号)混合。ICA 要做的就是利用观测数据还原原始信号。

ICA有两种形式:一种是线性模式

106676953548a56bd0cdd0a83983258b.png

其中x是观测数据(随机时序列)s是原始信号,A是混合矩阵,x是s线性混合得到的,而在方程(1)混合矩阵A和s都是未知的,于是转变成(2),找到一个映射W。

de5133d1ce75d4bf3728901198bfb973.png

y是根据x观测量估计得到,于是ICA问题是解决混淆矩阵W。得到的y是相互独立的变量。

另一种是分线性ICA:

fef7a5e99b36fb51dd3e620be45bad41.png

98526a0d8894e16c6a6a46e6a7cb8b30.png

F(s)是分线性的基函数。G是我们要找的一个映射函数。

分离出来的原信号y是相互独立的,为了衡量y的独立性引入信息论中互信息概念:

2679272943452e564d1e5af466d8ebb1.png

互信息,在香农熵中的定义是在给定y先验知识的情况下,x不确定的缩减量,也就是当I(y)=0,y是相互独立的。H(y)是香农熵,p(y)是y的概率密度函数。

6686615ccaa7cc3879bf6fda4cf6c500.png

SVR(支持向量机)模型:

9336379433d1740fee99e702867c27b9.png

其中,x是模型输入,v是权重向量,b是偏差,Φ(x)表示映射函数,该函数使用非线性函数将非线性输入转换为高维特征空间中的线性模式。传统的回归是通过最小化平方误差得到系数,平方误差可以看作是基于损失函数的经验风险。SVR中引入了所谓的ε-不敏感性损失函数Lε。它可以表示为

caf05c8b9c578b07e9b3bf0f1e664b1d.png

其中,q是目标值,ε是不敏感区域,当预测值f(x)与q值的差值的绝对值小于ε,则是在不敏感范围内,损失函数为了,反之是两者的差值。

对于方程6中的v权重向量和常数b可以利用正则化风险函数来估计求得:

bc357f48c0791f4db972ef5822a6f265.png

Lε是不敏感性损失函数,1/2||v||2是正则项,正则项是控制算法复杂度,而正则化风险函数是为控制复杂性和精确度的平衡,损失函数控制精确度。 C和ε是由自己设定的。

同时考虑经验风险和结构风险,方程(8)通过使用松弛变量被转换成以下约束形式:

其中ξi和ξ*是两个正松弛变量,用于测量偏差(qi-f(xi))。ξi+ξ*是经验风险。1/2||v||2防止过度学习的结构风险。

(9)是一个二次规划问题。这个问题可以通过应用拉格朗日理论和龙科库塔条件来解决。最后,基于支持向量回归机的回归函数的一般形式可以写成

c6a1173605ce4d9b908390f587e772eb.png

其中α和α称为拉格朗日乘子,满足αi*α i=0,αi和αi>0的等式。核函数kx,xi的值等于两个向量xi和 xj的内积,即特征空间Φ(xi)和Φ(xj),k(xi,xj)=Φ(xi)Φ(xj),k核函数有很好几种选择,最广泛使用的是radial basis function (RBF)

5fb7ea18622fe7da2f65b54ee041127a.png

σ表示RBF的宽度,本文使用的核函数就是RBF。

2.NLICA-SVR预测模型

图1给出了所提出方法的研究方案。在图1中,建议的方法包括两个步骤。我们首先使用NLICA将观测数据转换成独立的独立成分。那么这些独立的数据被集成到支持向量回归方法中,以构建股票指数预测模型。

cf66616396a9c2ab3b1f5150570ec8f5.png

所提出的模型的第一步是平滑预测变量,因为在传统的预测模型中,所研究的时间序列通常在第一步通过适当的离散微分预处理来平滑[3]。原始数据x由平滑(对数)处理,以具有其平滑形式xs=(xs1, xs2,…xsm)T,使用以下等式:

0c65a61532477c6b815587a007c5aa7e.png

然后在平滑数据xs中使用NLICA模型来估计ICs,即s =G(xs),S=(S1,s2,...Sn)它是由n个矢量组成的独立分量向量。第二步,将包含预测变量隐含信息向量作为输入变量,构建支持向量回归预测模型。

正如上面所讨论的,在建立支持向量回归预测模型时,必须确定核函数。在本研究中,采用了RBF函数核函数,因为它是使用最广泛的核函数,并且在大多数预测情况下表现良好。支持向量回归机的性能(估计精度)也取决于三个参数的选择:正则化常数C、损失函数ε和σ(RBF函数的宽度)。设置C和ε没有通用规则。选择通常基于试错法(也称为交叉验证)或用户的先验知识或专业知识。然而,交叉验证方法非常耗时且需要大量数据。另一方面,用户的专业知识方法面临着使用单一参数集的风险,不适合非专业用户。为了减轻这些缺点,在本研究中使用了由Cherkassky和Ma提出的分析参数选择方法和由Hsu等人提出的网格搜索来设置参数C和ε。该分析方法基于绘制训练数据的结构来确定参数的最佳值。网格搜索是一种简单的方法,使用指数增长的C和ε序列来识别好的参数(例如C= 2ˇ-5,,2ˇ-3,...,2ˇ15)。为了结合这两种方法的优点,我们用解析法选择一个C和ε的参数集,然后网格搜索用这个参数集作为搜索的起点。产生最小预测均方误差的参数集被认为是最佳参数集。Cherkassky和马[39]指出,对于多元d维问题,RBF宽度参数σ设置为σˇd~(0.1,0.5),其中d是输入变量的数量。为了简化参数的设置,在本研究中,所有实验都使用σ=0.8。

3.实证研究

3.1数据集和性能标准

所提出的NLICA-SVR预测方法以两个数据集为例:日经225收盘现金指数和上证综合指数收盘价格。为了构建日经225指数收盘价指数的预测模型,我们以指数期货价格作为预测变量。这是因为期货价格的变化通常会导致现货市场的价格变化,日经255指数期货合约在新加坡交易所衍生品交易有限公司(SGX-DT)、大阪证券交易所(OSE)和芝加哥商业交易所(CME)市场交易。因此,日经255的三个前一天的期货收盘价分别在SGX交易所,OSE交易所和芝加哥商品交易所被用作预测变量。前一天的现金市场收盘指数也被认为是预测现金市场收盘价格的重要变量[41,42]因此,使用四个预测变量(前一天的三个期货收盘价格和前一天的一个现金市场收盘指数)来预测日经225收盘现金指数。本研究收集了彭博社提供的日经225现金指数2007年10月26日至2011年11月30日的期货和现金价格的每日数据。数据集中共有1000个数据点,日经225收盘现金价格如图2所示。前800个数据点(总样本点的80%)用作训练样本,而剩余的200个数据点(总样本点的20%)是保持并用作样本外预测的测试样本。移动(或滚动)窗口技术用于预测训练和测试数据。

0e299a87bba5eab92503d1637342c3ac.png

27244f8f6c5c116df09e194d9448948f.png

在SSEC指数收盘价格的NLICA-SVR预测模型中,四个技术指标(前一天的现金市场高、低、收盘价格和当天的开盘现金指数)被用作预测变量,因为它们是股票价格预测中最广泛使用的特征。SSEC指数2007年11月6日至2011年11月30日的技术指标和现金价格的每日数据由彭博社提供。每日SSEC指数收盘现金价格如图3所示。数据集中总共有1000个数据点。与日经225数据集相同,SSEC数据集被划分为训练(总数据点的80%)和测试(总数据点的20%)部分。

使用以下性能度量来评估预测性能,即:均方根误差(RMSE)、平均绝对差值(MAD)、平均绝对百分比误差(MAPE)、均方根百分比误差(RMSPE)和方向对称性(DS)。这些标准的定义总结在表1中。RMSE、MAD、MAPE和RMSPE是实际值和预测值之间偏差的量度。RMSE、MAD、MAPE和RMSPE的值越小,预测的时间序列值越接近实际值。它们可用于评估预测误差。DS提供了现金指数的预测方向在百分比方面的正确性,并可用于评估预测的准确性。

227c9fdbe50c5260ec27543334d5949b.png

为了建立支持向量回归预测模型,本文采用了常和林提出的LIBSVM方法。使用LIBSVM包时,原始数据集首先被缩放到[0,1]的范围内。这样做的目的是确保大值输入变量不会压倒小值输入,从而有助于减少预测误差。一旦最终的支持向量回归模型是使用缩放数据开发的,逆变换被执行以获得最终的预测。

3.2 日经225股票指数

为了证明所提出模型的有效性,本节将所提出的NLICA-SVR方法的性能与单个SVR模型、集成主成分分析和支持向量回归模型(称为主成分分析-支持向量回归模型)以及集成线性独立成分分析和支持向量回归模型(称为LICA-支持向量回归模型)进行了比较。单个支持向量回归模型简单地将支持向量回归方法应用于输入变量来预测指数收盘价,而不使用主成分分析、线性独立分量分析或非线性独立分量分析作为预处理工具。主成分分析-支持向量回归方法首先将主成分分析应用于生成主成分的输入变量,然后基于生成的主成分进行支持向量回归分析。

在提出的NLICA-SVR模型中,在第一阶段使用NLICA进行特征提取。四个原始预测变量(前一天的现金市场收盘指数和SGX-DT、OSE和芝加哥商品交易所的期货收盘指数)首先被缩放到[-1.0,1.0]然后传递给非线性ICA估计ICs。重新调整原始预测变量的目的是通过确保大值输入变量不会淹没较小值输入来减少预测误差。如等式(3)所示,

非线性线性回归模型中的F需要是一个非线性变换函数,其参数可以通过梯度过程进行优化。在这项研究中,我们使用一个基于MLP网络的转换函数,并在网络中包含一个非线性单元的隐藏层。转换函数的约束实现如下:

66ebebfe0222dda003549e83b75eee2e.png

通过NLICA提取特征,估计出四个特征向量。利用特征向量建立股票价格预测模型。利用支持向量机回归(SVR)来构建这些模型,采用第二部分获得参数C=28,ε=0.0019,从ε=0.00017接近2ˇ-9,C=28J接近于2^5,所以参数设定为C=2^5,ε=2ˇ-9, 用作搜索最佳参数的网格搜索的起点。表2总结了不同参数集组合的非线性线性回归-支持向量回归模型的测试结果。从表2可以发现,参数集(C=2^1,ε=2ˇ-11,)给出最佳预测结果(最小测试均方误差)。表3总结了NLICA-SVR模型在预测日经225收盘现金指数方面的结果。他们显示,RMSE、MAD、MAPE、RMSPE和DS在NLICA-SVR模型中分别为32.20、24.94、0.16%、0.21%和83.69%。

在主成分分析-支持向量回归方法中(PVC-SVR),主成分分析技术和四个输入变量(SGX-DT、OSE、芝加哥商品交易所和前一天的现金市场收盘指数)用于生成四个主成分分析。所有主成分将被用来表示输入数据的特征,并被用作支持向量回归模型的新输入变量。主成分分析-支持向量回归模型的结果也总结在表3中。从表中,我们发现主成分分析-支持向量回归模型中的RMSE、MAD、MAPE、RMSPE和DS分别为353.48、227.59、1.50%、2.44%和64.41%。与NLICA-SVR模型相比,PCA-SVR方法的预测结果与Bartlett等人的结论一致。

9c293960bc2e22cb0af87823fc235acb.png

主成分(PCA)分析的目标是找到一个“更好”的基础映射集(基变换),这样,在这个新的基础上,映射坐标(主成分分析系数)是不相关的。换句话说,主成分分析系数不能彼此线性预测。因此,主成分分析可以被视为部分实现了巴洛的想法:存在于输入变量联合分布中的相关性被分离出来,成为主成分分析系数的边际分布。然而,PCA只能分离变量之间成对的线性依赖关系。高阶相关性仍然会出现在主成分分析系数的联合分布中,因此,不会被适当地分离。

在应用LICA时,我们采用了海文等人[23]提出的快速算法(FastICA)来估计去混合矩阵和独立成分。具有最佳参数集的LICA-奇异值分解模型的测试结果(C=2^-1,ε=2ˇ-7)总结在表3中。从表3可以看出,非线性回归-支持向量回归模型给出了最好的预测,在这种情况下,NLICA支持向量回归模型的预测结果优于主成分分析-支持向量回归模型的预测结果。它们与李等人的结论一致。如果潜在变量遵循非高斯分布,则LICA解比主成分分析解在更大程度上提取原始源信号。与单一支持向量回归机、LICA-SVR和主成分分析支持向量回归机模型相比,NLICA-SVR机方法的RMSE、MAD、MAPE和RMSPE系数较低。这表明NLICA-SVR方法的实际值和预测值之间的偏差较小。此外,NLICA支持向量回归机与主成分分析-支持向量回归机和单个支持向量回归机模型相比,NLICA支持向量回归机模型具有最高的直接序列比率,为83.69%。直接序列提供了一个很好的衡量价格方向预测一致性的方法。因此,就日经225指数的预测误差和预测精度而言,所提出的非线性回归-支持向量回归模型比LICA-SVR、主成分分析-支持向量回归和单一支持向量回归模型提供了更好的预测结果。

3.3上证综指(SSEC)

在这一部分,我们考察了上证综指(SSEC)。应用了第3.2节中描述的建模过程。请注意,由于四个预测变量用于预测SSEC收盘指数,因此四个独立成分分析由非独立成分分析生成。表4提供了不同参数集组合的提议的NLICA-SVR模型的测试结果。结果显示,参数(C=2^-9,ε=2ˇ7)是建议的NLICA–SVR模型的最佳参数设置。

作为比较,PCA-SVR、LICA-SVR和单一支持向量回归方法被用于评估所提出的NLICA-SVR的预测精度。表5显示了PCA-SVR、NLICA-、单个支持向量回归机和建议的非独立成分分析-支持向量回归机模型的预测结果。比较结果表明,所提出的神经网络-支持向量回归模型具有最小的RMSE、最大似然、MAPE、RMSPE和最大似然值。结果表明,在预测SSEC指数收盘价时,所提出的非线性最小二乘支持向量回归方法能够在价格变化方向上产生较低的预测误差和较高的预测精度,并优于其他方法。

efc0f4c32075f585d69230f40fae707c.png

为了评估所提出的非线性线性回归-支持向量回归方法的稳健性,使用不同比例的训练和测试样本大小来测试NLICA-SVR、PVC-SVR和单个支持向量回归模型的性能。测试计划基于训练数据集的大小与完整数据集的相对比率。在本节中,考虑了四个相对比率,即60%、70%、80%和90%。日经225指数和SSEC指数的预测结果,表6根据两个标准总结了四个模型:RMSE和方向对称。从该表中,我们可以观察到,就RMSE和直接序列准则而言,所提出的非线性线性回归-支持向量回归方法优于其他方法。因此,它表明非线性回归-支持向量回归方法确实比其他三种方法提供了更好的预测精度。

929639944554a9ddb2d361e1622e8e9c.png
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值