基于主成分分析和RBF神经网络的公路货运量预测模型
2013-08-02蒋林利
蒋林利
数据挖掘是一种从数据库中发现知识的过程,它可对知识进行自动提取和分析,因而它与信息系统、数据库技术之间都存在密切的联系。数据挖掘的对象并不局限于某一个数据库,不论是一般数据库、高级数据库、关系型数据库还是信息系统,只要是需要进行数据挖掘的系统都可以成为数据挖掘的研究对象。数据挖掘的内容就是从数据库大量的数据中挖掘出有用的信息,为行业提供制定决策所需的依据。根据挖掘任务不同,数据挖掘可分为两种,一种是描述一种是预测,描述任务相对预测任务而言更为简单,它只需提取数据的表面性质,而预测任务则需对提取的数据进分析和预测。本文以国家统计局编印的《中国统计年鉴》为研究背景,对运输行业和邮电行业的公路货运量进行分析,并在此基础上运用数据挖掘技术中的RBF神经网络算法,构建公路货运量预测模型。
一、主成分分析法
主成分分析法是一种将多个变量通过线性变化以选出较少个数重要变量的多元统计法,这种统计法可有效地针对变量间复杂的关系进行简化处理,从而达到降低信息损失量,形成线性组合的目的。主成分分析方法是建立在降维思想的基础上,由于它对每个变量都进行了不同程度和不同角度的考虑,所以它统计出来的信息实用度都较高,且各指标间都存在重叠和交叉,所以指标的个数也从多个发展成综合指标,综合指标的形成不仅保证信息的精确、全面,还能提高信息的抓取速度。主成分分析法的运用简化了研究人员的工作分析量,在将研究重点放在主要成分信息的同时抓住了主要信息的重点内容,掌握事物内部变量规律的过程更为简单,研究人员的工作效率得到了有效的提升。
二、RBF神经网络算法
由于RBF神经网络在逼近任意连续函数时精度不受限制,所以它又属于局部逼近网络。当样本数据的个数为n,属性为m,在神经网络径向基函数中的输入向量应为 X=(X1,X2,…,Xm),函数的输出向量应为Y=(Y1,Y2,…,Ys)。在上述向量中,s代表输出节点维数,m代表输入节点维数。隐含层包含的高斯函数具有一定的辐射状作用,如下所示为高斯函数:
在上述公式中,ui(x)表示隐节点i的输出;样本输入向量用x表示;ci表示隐节点i的中心向量,它和样本输入向量x的维数相同;σi是一个标准常数。
高斯函数的数学表达式非常简单,即使输入的量为多变量也不会使运算复杂化,两者之间呈现径向对称且光滑型较好,任何数的阶导数都存在。隐含层的节点输出ui(x)表示输入模式与隐含层节点间呈现分离状态时,该隐含层节点表示的径向基函数,在传统的输入方法中,隐含层节点的中心向量通常用训练样本中隐节点i的输入向量,因而驯良样本的个数就表示为隐含层节点的个数。受高斯函数性质的影响,当ui(x)在隐含层节点的中心向量处存在最大值时,ui(x)会随着(x-ci)的增大而逐渐减小直至取值为零,在衰减过程中只有很少的中心向量靠近x,这部分中心向量才能被激活,若用聚类中心代替部分中心,与聚类中心邻近的中心向量都可以被激活。隐层节点与输出层间呈现线性关系,由此可见神经网络隐含层中的高斯函数为线性函数。
三、RBF神经网络预测模型在公路货运量中的预算
(一)经济数据及公路货运量
本文用于数据挖掘的数据来源于国家统计局编印的《中国统计年鉴》中的货运量信息,信息内容有公路总长、公路运量、民用车辆以及私用车辆等。为了验证数据挖掘技术的精确性,本文选取了2000年至2011年间的所有公路货运量数据,用于预测2012年的公路货运量。选取的数据根据年份划分成11个样本,将2000年至2009年的公路货运量数据作为训练样本,将2010年的公路货运量数据作为测试样本,2011年的公路货运量数据作为对比样本。由于数据的属性和数量级各不相同,所以在处理数据的过程中比较麻烦,为了满足神经网络预测算法的要求,在进行数据挖掘前我们首先要对待挖掘的数据进行归一化处理。然后利用神经网络算法对预处理后的数据进行预测,输入结构为X1、X2、X3,输出量为Y,其中X1表示公路总长度,X2表示民用车辆的辆数,X3表示私人车辆的辆数。将2009年的样本数据集合成训练集,将2010年的样本数据集合成测试集,以此为基础建立新的神经网络预测模型,对训练集和测试集中的数据进行预测。
(二)公路货运量数据预处理
时域因素和关联因素都会影响到公路货运量的预测信息,公路货运量数据经过预处理后便可形成对应的综合延拓矩阵。关联预测主要是通过对本年的其他因素进行分析从而达到预测公路货运量的目的,时域预测则是以近几年的公路货运量为依据,对今后的发展趋势作出的一个公路货运量预测信息。无论是时域因素还是关联因素,它们与公路货运量都存在着直接或间接的联系,为了顺利完成数据预处理,提高公路货运量的预测准确性,本文采用了关联因素与时域因素相结合的综合延拓矩阵。首先对数据进行归一化处理全部统一至[0,1]区间,归一化处理数据的步骤是找出属性相同的样本数据中的最大值,对该属性进行处理后将每个样本所有相同的属性都除以最大值,这样就能弱化数量级对数据预处理的影响。归一化处理后的数据就可用线性回归法和主成分分析法进行数据分析,得出关联因素(X1、X2、X3)的主成分数据分析结果,再将本年前的四年公路货运量数据设定为时域因素,同样用线性回归法和主成分分析法对数据进行分析,然后得出时域因素(Y1、Y2、Y3)的主成分数据分析结果。
(三)公路货运量数据预测模型
根据年份将2000年至2009年的公路货运量数据划分成9个样本,然后对这9个样本数据进行均值聚类,K代表聚类的个数。RBF神经网络有一个隐含层,而隐含层的中心则是聚类中心,所以隐含层中包含的神经元个数就等于聚类个数,将神经网络和聚类综合起来进行反复实验,然后利用动态聚类算法将聚类K设定为5,获得如下表所示的下近似集样本号和上近似集样本号。表1所示为基于粗糙集的动态聚类结果:
表1 基于粗糙集的动态聚类结果
RBF神经网络在输入结构处有三个节点,而隐含层则包含了5个节点,如上文所述将聚类中心作为隐含层的中心,则输出节点的个数为1个。基于RBF构建的预测模型可以吸收9个样本中包含的数据信息,而数据信息的体现则是借助综合延拓矩阵完成的,样本信息中包含了与公路货运量相关的属性分析和一些预测值,神经网络的构建是以聚类中心为构建中心,在此基础上学习9个样本中的数据信息,从而使神经网络达到一个稳定状态。
构建稳定的神经网络,首先需建立神经网络预测模型,然后选取训练样本,训练样本数据一般就是这11个数据样本,利用神经网络进行预测,预测结果出现的误差则用均方误差表示。均方误差是表示误差函数常用的方法,通常用MSE来表示,其中T代表实际值而Y则用来表示预测值,具体计算公式如下所示:
将2011年的数据信息输入上述公式,得出2011年一年内的公路货运量,将得出的公路货运量数据与均方误差进行比较,得出两者的误差。
表2 多种模型的预测性能比较
(四)多种模型的预测性能比较
公路货运量预测常用方法包括组合预测法、直接预测法和KM-RBF综合预测法,直接预测法则通过分析公路货运量历史数据达到预测的目的,它是借助RBF神经网络对原始数据进行直接预测;组合预测法主要是用两种以上的不同预测方法对公路货运量数据进行预测的一种方法,它与直接预测存在一定的区别,首先要对数据进行预处理,转变成延拓矩阵才能得出预测结果;KMRBF综合预测法比直接预测法和组合预测法的精度都要高,相对于简单的RBF神经网络算法,KM-RBF综合预测法在分析能力上有所提升,而输入结构也得到了简化,预测显示的实际值是指该年公路的实际货运数值。
[1]王纯子,张斌.基于隐层优化的RBF神经网络预测模型[J].计算机工程,2010,36(18)
[2]李曦,王青,万云辉,李琦.基于RBF神经网络预测模型及其应用研究[J].泰山学院学报,2008,30(3)
[3]许霞.基于RBF神经网络的货运量预测模型[J].航空计算技术,2007,37(5):28-31