背景技术
支持向量机(Support Vector Machine,SVM)理论是Vapnik等人提出的一种基于统计学理论的学习方法(实际上也是一种单隐层前馈网络),该方法根据结构风险最小化原则,尽量提高学习机的泛化能力,最终归结为求解一个具有线性不等式约束的二次规划(Quadratic Programming)问题,但当训练样本数量增大时,二次规划问题将面临维数灾难,具体参考文献“Cortes C,VapnikV.Support vector networks.Machine Learning,1995,20(3):273-297”。因此,Suykens等人提出了最小二乘支持向量机(Least Squares Support VectorMachine,LS-SVM)将支持向量机中的线性不等式约束转化为线性等式约束,从而把QP问题转化成求解线性方程组的问题,降低了支持向量机的学习难度,提高了求解效率,具体如文献“Suykens J A K,Vandewalle J.Least squares supportvector machine classifiers.Neural Processing Letters,1999,9(3):293-300”中所述。
极限学习机(Extreme Learning Machine,ELM)是Huang提出的一种新型的单隐层前馈神经网络学习方法,见文献“Huang G B,Zhu Q Y,Siew C K.Extremelearning machine:theory and applications.Neurocomputing,2006,70(1-3):489-501”。极限学习机的基本思想为:训练前设置合适的隐层节点数,在执行过程中只需要为输入权值和隐层偏置随机赋值,整个过程一次完成,无需迭代,并且产生唯一的最优解;因此具有参数选择容易、学习速度快的优点。但是传统ELM是基于经验风险最小化原理,应用于预测时极易导致过度拟合问题。近年来,相关研究对其进行了改进,如文献“Liang N Y,Huang G B,P.Saratchandran,et al.Afast and accurate online sequential learning algorithm for feedforward networks[J].IEEE Transactions on Neural Networks,2006,17(6):1411-1423.”中提出一种基于在线批量学习的极限学习机(OS-ELM),该算法能够逐个或逐批的进行学习,有效地提高了算法的泛化能力,但是却过分地依赖实验数据。在文献“Lan Y,SohY C,Huang G B.Ensemble of online sequential extreme learning machine.Neurocompting,2009,72:3391-3395.”中提出了一种在线批量学习的极限学习机的集成算法(EOS-ELM),算法中采用多个OS-ELM模型来进行问题的处理。在文献“Rong H j,Huang G b,N.sundararajan,et al.Online sequential fuzzy extremelearning machine for function approximation classification problems.IEEEtransactions on systems,man,and cybernetics-partb:cybernetics,2009,39(4):1067-1072.”中将TS模糊系统与OS-ELM算法相结合,提出一种OS-Fuzzy-ELM算法。在文献“Feng G,Huang G B,Lin Q P,Gay R.Errorminimized extreme learning machine with growth of hidden nodes and incrementallearning.IEEE Transactions on Neural Networks,2009,20(8):1352-1357.”中基于最小误差化提出了一种改进的ELM算法来提高算法的性能。但是上述算法仍都基于经验风险最小化原理,极易导致过度拟合问题。在文献“Huang G B,Ding XJ,Zhou H M.Optimization method based extreme learning machine forclassification.Neurocompting,2010,74(1-3):155-163”、“Liu Q,He Q,Shi Z.Extremesupport vector machine classifier.Lecture Notes in ComputerScience,2008,5012:222-233”中也对其进行了改进,但改进后的算法仅仅适用于分类问题。
因此,如何能够较好地克服传统ELM应用于预测时的缺点,提高其预测效果显得非常重要。
发明内容
本发明的目的是克服现有技术中存在的不足,提供一种融合最小二乘向量机回归学习思想的改进极限学习机,其提高预测精度,具有较好的泛化性。
按照本发明提供的技术方案,一种融合最小二乘向量机回归学习思想的改进极限学习机,所述改进极限学习机包括如下步骤:
步骤1、给定观测数据集T,T={(x1,y1),…,(xj,yj),…,(xN,yN)},其中,xj∈Rn,yj∈R,j=1,…,N;将包括N个隐层节点,激励函数为G的极限学习机回归模型设定为
其中,βi为第i个隐层节点与输出神经元的输出权值,β为输出权值矩阵,ai为输入神经元与第i个隐层节点的输入权值,bi为第i个隐层节点的偏置,h(x)为隐层输出矩阵,h(x)=[G(a1,b1,x1),…,G(aN,bN,xN)];
步骤2、随机初始化输入权值ai和偏置bi,i=1,...,N,并使得输入权值ai和偏置bi在训练过程中保持不变;
步骤3、根据经验风险最小化的ELM和结合最小二乘向量机回归学习思想的结构风险最小化方法,得到
其中,δi为误差,误差的平方和δi 2代表经验风险;||β||2代表结构风险,ζ为调节系数;
步骤4、将步骤3得到的条件极值函数转换为拉格朗日函数,得到
其中,LELM为拉格朗日函数;λi为拉格朗日乘子;
步骤5、将步骤4得到拉格朗日函数利用KKT最优函数得到
并根据上述优化约束条件计算得到拉格朗日乘子λi和输出权值矩阵β;
步骤6、根据步骤5得到的输出权值矩阵β,得到极限学习机回归模型f(x)。
所述激励函数G为sigmoid函数,G(a,b,x)=1/(1+exp(-(a·x)+b))。
本发明的优点:在传统极限学习机的基础上,结合最小二乘向量机回归学习方法,引入了基于结构风险最小化理论,较好地克服了传统ELM应用于预测时存在的缺点,相对于传统ELM和EOS-ELM算法,本发明方法具有较好的泛化性,有效地提高了预测精度。
具体实施方式
下面结合具体实施例对本发明作进一步说明。
为了能便于理解本发明,下面先对传统极限学习机回归方法进行介绍。传统极限学习机回归方法过程如下:
步骤1、给定观测数据集T,T={(x1,y1),…,(xj,yj),…,(xN,yN)},其中,xj∈Rn,yj∈R,j=1,…,N,xj是一个n维向量;将包括N个隐层节点,激励函数为G的极限学习机回归模型设定为
其中,βi为第i个隐层节点与输出神经元的输出权值,β为输出权值矩阵,ai为输入神经元与第i个隐层节点的输入权值,bi为第i个隐层节点的偏置,h(x)为隐层输出矩阵,h(x)=[G(a1,b1,x1),…,G(aN,bN,xN)];
步骤2:随机初始化权值ai和偏置bi,i=1,...,N,ai,bi在训练开始时随机选择,且在训练过程中保持不变;
步骤3:通过求解以下线性方程组的最小二乘解来获得输出权值βi:
方程组的最小二乘解为:
β=H+Y (3)
其中,H+称为隐层输出矩阵H的Moore-Penrose广义逆。
步骤4:将根据公式(3)得到的输出矩阵权值β代入公式(1)内得到极限学习机回归模型f(x)。
为了能够较好地克服了传统ELM应用于预测时存在的缺点,相对于传统ELM和EOS-ELM算法,使得本发明具有较好的泛化性,有效地提高了预测精度,本发明改进极限学习机包括如下步骤:
步骤1、给定观测数据集T,T={(x1,y1),…,(xj,yj),…,(xN,yN)},其中,xj∈Rn,yj∈R,j=1,…,N;将包括N个隐层节点,激励函数为G的极限学习机回归模型设定为
其中,βi为第i个隐层节点与输出神经元的输出权值,β为输出权值矩阵,ai为输入神经元与第i个隐层节点的输入权值,bi为第i个隐层节点的偏置,h(x)为隐层输出矩阵,h(x)=[G(a1,b1,x1),…,G(aN,bN,xN)];激励函数G根据需要进行预先确定,本发明实施例中激励函数G选用sigmoid函数,激励函数G的表达式为G(a,b,x)=1/(1+exp(-(a·x)+b));
步骤2、随机初始化输入权值ai和偏置bi,i=1,...,N,并使得输入权值ai和偏置bi在训练过程中保持不变;
步骤3、根据经验风险最小化的ELM和结合最小二乘向量机回归学习思想的结构风险最小化方法,得到
(4)
其中,δi为误差,误差的平方和δi 2代表经验风险;||β||2代表结构风险,ζ为调节系数;本发明实施例中通过调节系数ζ来调节经验风险和结构风险的比例,调节系数ζ根据具体解决的问题及需要进行预先设置。
步骤4、将步骤3得到的条件极值函数转换为拉格朗日函数,得到
其中,LELM为拉格朗日函数;λi为拉格朗日乘子;
步骤5、将步骤4得到拉格朗日函数利用KKT(Karush-Kuhn-Tucker)最优函数得到
并根据上述优化约束条件计算得到拉格朗日乘子λi和输出权值矩阵β;
步骤6、根据步骤5得到的输出权值矩阵β,得到极限学习机回归模型f(x)。
对得到极限学习机回归方法结果的评价一般包括回归误差和方差两个方面,但定义各不相同,以下实施例选择均方根误差(RMSE)来对算法性能进行评价,其表达式为:
其中y′为预测值,y为真实值,n为预测样本的组数。
下面通过SinC数据集、Boston Housing数据集以及实际渔业养殖中的溶氧数据集对ELM、EOS-ELM和MELM三种算法进行实验,并对它们的结果进行比较。参数设置如下:ELM、EOS-ELM和MELM(Modified Extreme LearningMachine,MELM,即本发明改进极限学习机)算法中激励函数均使用sigmoid函数,其余参数均使用基于5-折交叉验证的方法选择最优(接近)的数值,然后进行50次实验,求出平均值。
实施例1、模拟数据:“SinC”
“SinC”函数表达式:
数据产生方法:在区间(-10,10)内随机产生1000个训练样本和1000个测试样本,并在所有的训练样本上附加取值范围为[-0.2,0.2]的随机噪声,而测试数据无噪声;三种算法在SinC数据集上的实验结果如表1所示。
表1
通过表1可以得到:ELM算法由于是基于经验风险最小化,因此较好的训练误差并不能够一定会得到较优的预测误差。而EOS-ELM虽然提高了预测的精度,但是仍然存在过拟合的问题。本发明方法在引入基于结构风险最小化理论后,相比其它两种算法,泛化性得到了较好地提高,预测精度优于ELM、EOS-ELM算法。
实施例2、Boston Housing数据集
Boston Housing是一个常用的衡量回归算法性能的数据集,可从UCI数据库中获得,它包含Boston Housing市区的506套商品房的相关信息,由12个连续特征、一个离散特征及房价组成。回归估计目的就是通过在一部分样本上的训练来预测房屋的平均价格。
实验中把样本集随机分成两份,训练集256组数据为有标签样本,测试集250组数据为无标签样本,三种算法实验结果如表2所示。
表2
从表2可以看出,对于Boston Housing数据集这种多输入单输出的实际问题,ELM算法和EOS-ELM两种算法的预测误差都比训练误差高得较多,说明存在过拟合问题;本发明方法的预测误差与训练误差很接近,表明有效地避免了严重的过拟合问题。
实施例3、实际渔业养殖中的溶氧数据集
溶解氧是渔业养殖中一项十分重要的水质指标,它对鱼类的生长有着重要的作用。根据实际情况,实验收集了国家罗非鱼产业技术研发中心无锡养殖基地的360组数据作为建模数据。其中输入数据为PH值、温度值、硝氮值和氨氮值,输出数据为溶氧值。通过预处理将数据分成360组5维的数据,选取其中前260组作为训练数据,后100组作为测试数据。三种算法实验结果如表3所示。
表3
通过表3可以看出,三种算法的训练误差很接近,前两种算法的训练误差相对还低一些,但本发明方法的预测误差最接近训练误差,低于前两种算法,也进一步说明了本发明方法由于引入结构风险最小化思想,有效降低了过拟合问题,提高了溶氧度的预测精度,为渔业的养殖提供了有用的参考价值。
本发明在传统极限学习机经验风险最小化基础上,融合了最小二乘向量机回归学习思想,增加了结构风险控制项,通过有效调节两种风险的比例来求解,这就大大降低了模型产生过度拟合的风险,较好地克服了传统ELM应用于预测时存在的缺点,相对于传统ELM和EOS-ELM算法,本发明方法具有较好的泛化性,有效地提高了预测精度。