APP下载

ICA特征提取与BP神经网络在负荷预测中的应用

2014-08-02何川舒勤贺含峰

电力系统及其自动化学报 2014年8期
关键词:原始数据协方差特征提取

何川,舒勤,贺含峰

(1.四川大学电气信息学院,成都610065;2.四川省电力公司,成都610041)

(4)选取得到前面n个特征值及其对应的特征向量,得到的n个主分量y1,y2,…,yn,他们满足:

(3)最大绝对误差(max error)为

ICA特征提取与BP神经网络在负荷预测中的应用

何川1,舒勤1,贺含峰2

(1.四川大学电气信息学院,成都610065;2.四川省电力公司,成都610041)

BP神经网络在短期电力负荷预测时,经济、天气、社会等很多因素及大量的历史数据会被考虑进去,造成输入空间维数较高且相关,从而降低神经网络效率。利用主分量分析法PCA(principle component analysis)和独立分量分析法ICA(independent component analysis)在不损失负荷原始数据主要信息的前提下,根据各分量贡献率大小对输入空间进行重构,降低神经网络的输入量。文中提出的ICA特征提取法在对负荷数据进行重构处理时,有效去除了噪声以及保留了原始数据中的潜在信息和特征,最后仿真也证明了该方法预测的有效性。

短期负荷预测;独立分量分析;主分量分析;特征提取;BP神经网络

电力系统短期负荷预测在电力系统的安全运行和经济运行中起着重要的作用,是电力系统优化调度(如经济调度,机组最优组合,最优潮流调度)的基础。准确地预测电力系统负荷有助于增强电力系统的安全性和可靠性,有效制定发电计划、维修计划和能源销售计划,是做好电网供需平衡的关键。

经典的短期负荷预测方法包括时间序列法、线性回归法、指数平滑法、卡尔曼滤波法、人工神经网络法、专家系统法、支持向量机等。根据预测使用的方法不同,上述方法可以分为两类:第一类方法是把负荷看成是一组时间序列信号,然后使用不同的时间序列分析方法对负荷进行预测;第二类则更多地考虑影响负荷的温度、湿度等因素,预测的实现是找到这些天气因素及负荷之间线性或者非线性的关系。人工神经网络由于能够考虑到负荷需求与以往负荷及天气、经济等因素之间的联系,并把这个联系通过一个非线性的映射表达出来,所以人工神经网络是短期电力负荷预测中有效的工具。但负荷与天气、经济及社会等因素之间存在一定的相关性,这就造成了输入变量的冗余,从而使得BP神经网络训练速度减慢[1-2]。

文献[1-3]在BP神经网络的基础上提出了利用主分量法来对原始数据进行预处理来解决输入变量冗余的问题。主分量子空间提供了从高维数据向低维数据在均方误差意义下的数据压缩,用为数较少的新变量来反映原变量所提供的绝大部分信息,通过对新变量的分析达到解决问题的目的[4]。如果用这些少数的新变量来代替原来的变量去训练神经网络,理论上说,需要的神经元数量减少了,需要建立的神经连接减少了,训练的步数以及时间也会相应地减少,这样就能提高神经网络负荷预测的效率。

本文在主分量分析的基础上提出了采用独立分量分析法,对原始数据进行处理,提取出数据中的潜在信息,并且经过特征提取后的数据能够保留原始数据中的信息及规律[5-6],能有效提高神经网络训练的效率。

1 BP神经网络

人工神经网络应用于电力系统负荷预测时通常采用的是BP神经网络。BP(back propagation)反向传播神经网络是一种多层前馈神经网络,主要特点是信号前向传播,误差后向传播。

在前向传递中,输入信号从输入层经隐含层逐层处理,直至输出层,每一层的神经元状态只影响下一个神经元状态,如果输出层得不到期望输出,则转入反向传播,根据预测误差调整网络权值和阈值,从而使BP神经网络预测输出不断逼近期望输出。BP神经网络拓扑结构如图1所示。

图1BP神经网络拓扑结构Fig.1Topological structure of BP neural network

图1中,X1,X2,…,Xn是BP神经网络的输入,Y1,Y2,…,Ym是BP神经网络的预测值,ωij和ωjk为BP神经网络权值。BP神经网络可以看成一个非线性函数,网络的输入值和输出值分别为该函数的自变量和因变量[7]。上面的BP神经网络就表达为n个自变量到m个因变量的函数映射关系。

2 主分量分析法

主分量分析方法(PCA)是研究多个数值变量间相关性的一种多元统计方法,观测变量相关性越强,充分描述他们的独立变量越少。这种降维的方法也可表示为子空间分解法,可计算输入数据向量的协方差矩阵Rxx的特征值和特征向量,然后将原始向量投影到m个最大特征值对应的特征向量空间。

主分量满足线性、不相关、方差最大3个条件,其线性条件反映了特征信号之间的关系简单,便于计算;不相关条件使每个特征信号都有着独立的作用;方差最大条件在一定意义上反映了它所包含的信息量大。主分量分析的计算步骤[8]如下。

(1)计算输入数据的协方差矩阵Rxx,零均值信号x的协方差矩阵为

式中,E为统计期望。

(2)计算求出Rxx的全部特征值λ1,λ2,…,λm和对应的特征向量v1,v2,…,vm,并将特征值按从小到大排列,即λ1,λ2,…,λm。

前n个主分量y1,y2,…,yn的累计方差贡献率为如果前n个主分量的贡献率足够大(达到95%或以上),就可选择前面n个主分量作为特征信号,舍弃其余的(m-n)个信号。

(4)选取得到前面n个特征值及其对应的特征向量,得到的n个主分量y1,y2,…,yn,他们满足:

式中,V=[v1,v2,…,vn]。

所以,前面的n个主分量包含了数据中几乎全部的信息,因此,其余的(m-n)个信号yn+1,yn+2,…,ym就可看成是随机扰动或者是噪声。这样数据的维数就由m维降低到了n维。

3 独立分量分析法

独立分量分析法特征提取是根据原始数据的内在结构以及特征对数据进行处理,这样处理后的数据能很好地反映原始数据中的信息,并且一些特征以及数据规律得以保存[9]。

3.1 独立分量分析的数学模型

设有N个未知的源信号构成一个列向量

式中,i=1,2,3,…,T表示的是离散时刻。在未知的环境下,这些信号通过线性的混合得到了M维的一个列向量,也就是ti时刻的观测信号。

式中:X∈RM×T;S∈RN×T。

利用源信号的某些统计特性,可以采用不同的方法从观测信号中分离出这些独立的源信号。假设下面的假设成立。

(1)源信号

是统计独立的。

(2)在N个源信号中,最多只能有一个信号是高斯分布的,其他的信号全部是非高斯分布的。

(3)M≥N且A的秩为N。

有了上述的3个假设,就有可能从观测的混合信号中提取出源信号。在M=N情况下,ICA的目标就是要找到一个反混合矩阵W,使得

式中:Y表示的是对源信号S的一个近似,只是源信号的排列顺序和幅值大小会发生改变;W是A-1的一个估计。ICA线性模型如图2所示。

3.2 最大负熵独立分量分析

解决ICA问题最基本的方法是利用信息最大化法,信息熵是一个标量,它表示的是信号中所包含的平均信息量。则一个离散信源的熵可以表示为

式中:Pi为x=xi的先验概率;E为统计期望;K表示此离散信号的输出共有K个不同取值;a=2。

在具有相同协方差矩阵的概率密度函数中,高斯分布的信号具有最大的熵。负熵可以表示为

式中:yG代表的是与y具有相同协方差矩阵的高斯分布向量。如果一个变量是高斯分布的,那么它的负熵就为零,其他任意分布变量的负熵都为正。

但是由于实际中源信号的概率分布是不知道的,经典的对负熵的估计是利用高阶矩,使用一个对照函数G来近似,即

式中:E表示统计期望;wi表示为分离矩阵W的第i行向量。本文函数G选择为

3.3 FastICA算法

FastICA算法,也称为固定点(fixed-point)算法,是一种快速寻优的迭代算法。并不是整个估计ICA的模型,而是利用通缩算法和FastICA算法相结合,然后一行一行地提取分离矩阵及其与之对应的独立分量[10]。FastICA算法的基本步骤如下[11-12]。

(1)对观测数据进行中心化和白化处理,得到x。

(2)选择需要估计的独立分量的个数N,并设计数器p为1。

(3)随机的生成一个初始的权向量wp。

(4)令

(5)正交化wp

(6)标准化wp,

(7)如果wp不收敛的话,就返回步骤(4)。

(8)令p←p+1。

(9)如果p≤N,返回步骤(3)。

步骤中的中心化和白化是为了去除均值及使混合信号的协方差矩阵为单位阵,即达到去除混合信号相关性及将他们能量归一化的作用。白化和正交化能增强算法的稳健性和可靠性。

4 应用独立分量分析算法进行负荷预测

4.1 ICA特征提取

应用独立分量分析法对电力负荷进行建模和预测的步骤如下。

(1)求训练样本P的协方差矩阵的特征值及其对应的特征向量。

(2)根据特征值的方差贡献率选择前n个特征值及其对应的特征向量的矩阵D,n个特征值组成的对角矩阵E。

(3)求取白化矩阵

(4)得到白化后的数据

(5)使用ICA算法处理数据,即从第3.3节中步骤(2)开始ICA算法。

(6)利用ICA处理后得到的数据来训练BP神经网络,然后当需要预测时,也需要把预测时的输入数据乘以分离矩阵W,然后输入BP神经网络,就可得到当天的预测值。

4.2 数据的选取

本文采用的数据为美国新英格兰地区的负荷数据[13]。根据BP神经网络的输入输出要求,选择训练数据以及期望输出,比如现在需要预测当日早晨08∶00点钟的负荷(2004年4月15日),即神经网络的输出是08∶00的负荷,第1组输入训练数据选择如下:

X1:预测日前两周(14天前)的当日08∶00的负荷。

X2:预测日前一周(7天前)的当日08∶00的负荷。

X3:预测日前两天的当日08∶00的负荷。

X4:预测日前一天的当日08∶00的负荷。

X5:预测日当天06∶00的负荷。

X6:预测日当天07∶00的负荷。

X7:预测日前一天08∶00的干球温度。

X8:预测日前一天08∶00的露点温度。

X9:预测日当天08∶00的干球温度。

X10:预测日当天08∶00的露点温度。

上述数据没有包含关系,第2组期望输出和训练数据的取法是在原来取值日期的基础上往后推一天,以此类推选择得到91组期望输出,训练数据也是91组,前90组数据用来训练神经网络,最后一组数据用来进行预测验证。神经网络的输入层为10个节点,隐含层根据公式和经验选择13个节点,输出层为1个节点。

4.3 仿真分析

求数据的协方差矩阵,然后得协方差矩阵的特征值以及方差贡献率如表1所示。

表1 数据协方差矩阵的特征值及其方差贡献率和累计方差贡献率Tab.1Eigenvalue,variance contribution and cumulative variance contribution of data covariance matrix

从表1可以看出,前面6个特征值的累计方差贡献率已经相当高了,所以特征提取之后的数据应该降到了六维,即神经网络输入层节点数变为6个节点。然后利用ICA算法进行特征提取,特征提取后的数据如图3所示。

图3ICA特征提取后的6组训练数据Fig.3Six set of training data after ICA feature extraction

类似的,可以得到一天24 h的负荷预测结果。为了说明ICA特征提取的预测效果,将应用ICA方法、PCA方法以及直接利用神经网络法[13]预测的结果做了比较,如表2所示。平均训练时间以及平均相对误差如表3所示。表4中给出了3种方法的均方误差、最大相对误差和最大绝对误差。图4和图5分别是3种方法预测的比较以及3种方法预测相对误差的比较。下面为一些误差的计算公式。

(1)平均相对误差(mean relative error)为

(2)均方误差(mean square error)为

(3)最大绝对误差(max error)为

式中:Yi为第i个负荷实际值;为第i个负荷预测值;n为需要预测的负荷的个数,本文中是预测一天24 h的负荷,所以n为24。

表2 不同方法预测的对比Tab.2Comparison of three different forecasting methods

表3 训练时间以及平均相对误差的对比Tab.3Comparison of training time and mean relative error

图43 种方法预测的比较Fig.4Comparison of three forecasting methods

5 仿真结果及算法分析

表3的实验结果表明,利用PCA对神经网络训练数据进行处理后,保存了数据中的主分量,即有用的负荷信息。去掉原始数据中方差贡献率最小的成分,也就是次分量,是噪声或与噪声有关的。提取主成份之后减少了原始数据中的冗余,消除了样本中的自相关性[14],降低了神经网络训练数据的维数。舍弃掉的较小特征值的信息含有随机扰动和噪声,所以预测的精度有所提高,从神经网络直接预测的3.6%的平均相对误差减少到了1.61%的平均相对误差。但是维数的降低并没有使得训练时间减少,表2中甚至有时训练时间还在增加。原因是利用PCA处理数据后,有部分重要信息丢失。

表43 种方法的均方误差,最大相对误差和最大绝对误差的对比Tab.4Comparison of mean square error,maximum relative error and maximum absolute error

图5 3种预测方法的平均相对误差Fig.5Mean relative errors of three forecasting methods

利用ICA对神经网络训练数据进行特征提取之后,训练数据不仅维数降低了,而且使得神经网络的训练时间接近减少了一半,有效提高了神经网络的效率。在保存了原始数据特征的同时也去掉了随机干扰和噪声,所以预测的平均相对误差也降到了1.1442%,ICA算法的改进效果还是很明显的。

在数据提取方面,PCA和ICA都是把数据转换为分量,都可以有效地进行数据的压缩,且ICA可以看成是PCA的一个延伸,PCA的目标是得到不相关的主分量,而ICA则是寻求统计意义上独立的分量。

分别使用PCA和ICA对二元数据集进行处理得到的不同结果如图6所示。PCA根据主分量方差最大来求取主分量且主分量之间是正交关系[15-16]。相反,ICA算法根据原始数据的结构利用不同的方法去处理数据,能够揭示数据中更深层的结构以及分布规律[15,17],能准确地反映原始数据的特征。

图6 PCA和ICA的对比Fig.6Comparison of PCA and ICA

此外,PCA求取主分量的时候只是用到了数据的二阶统计特性[18-19],ICA则用到了原始数据中的高阶统计量,即一些没有包含在数据协方差矩阵中的信息,如四阶统计量峰度,并且一些数据的重要信息就包含在数据的高阶统计特性中[10,19]。因为只有零均值的高斯信号的全部信息才包含在其协方差矩阵中,而现实中的随机信号很难满足真正意义上的高斯分布。

6 结语

应用主分量分析法和独立分量分析法对神经网络的训练数据进行处理是一种系统优化的方法,由于电力负荷预测实际中需要考虑很多的因素,利用神经网络的非线性函数映射这个特点可以很好地建模。但是输入数据维数高,相关性大降低了神经网络训练的效率,因此采用主分量法和独立分量法对数据进行降维处理。

仿真结果表明,主分量分析法能在保留原始数据主要信息的前提下,降低原始数据的维数,提高了预测的精度,但是神经网络训练的时间没有明显减少。独立分量分析法不仅实现了主分量分析法的降维和去噪功能,并且保留下了原始数据的特征和规律。将独立分量分析特征提取后的数据作为神经网络的输入,不仅减小了神经网络的输入量,提高了神经网络的效率,还能很好地提高预测精度。

[1]Guo Xinchen,Chen Zhouyi,Ge Hongwei,et al.Short-term load forecasting using neural network with principle component analysis[C]//International Conference on Machine Learning and Cybernetics.Shanghai,China:2004.

[2]Zhang Shi,Wang Dingwei.Medium and long-term load forecasting based on PCA and BP neural network method [C]//International Conference on Energy and Environment Technology.Guilin,China:2009.

[3]李永斌(Li Yongbin).短期电力负荷预测模型的建立与应用(Establishment and application of short-term power load forecasting)[J].计算机仿真(Computer Simulation),2011,28(10):316-319.

[4]Liang Shengjie,Zhang Zhihua,Cui Lilin.Feature extraction method based PCA and KICA[C]//Second International Conference on Computational Intelligence and Natural Computing.Wuhan,China:2010.

[5]Zhang Jinhui,Lin Yufang,Lu Pan.Short-term electricity load forecasting based on ICA and LSSVM[C]//Interna-tional Conference on Computational Intelligence and Software Engineering.Wuhan,China:2009.

[6]Wang Yi,Yu Songqing.Price forecasting by ICA-SVM in the competitive electricity market[C]//3rd IEEE Conference on Industrial Electronics and Applications.Singapore:2008.

[7]马轶东,何怡刚,王桓(Ma Yidong,He Yigang,Wang Huan).运用BP神经网络的电力负荷混沌多步预测(Chaotic multi-step forecasting of power load applying BP neural network)[J].电力系统及其自动化学报(Proceedings of the CSU-EPSA),2010,22(4):81-84.

[8]马建仓,牛奕龙,陈海洋.盲信号处理[M].北京:国防工业出版社,2006.

[9]杨福生,洪波.独立分量分析的原理与应用[M].北京:清华大学出版社,2006.

[10]Hyvarinen A.Fast and robust fixed-point algorithms for independent component analysis[J].IEEE Trans on Neural Networks,1999,10(3):626-634.

[11]Liao Huaiwei,Niebur D.Exploring independent component analysis for electric load profiling[C]//International Joint Conference on Neural Networks.Honolulu,USA:2002.

[12]Hyvarinen A.Survey on independent component analysis [J].Neural Computing Surveys,1999,2:94-128.

[13]周中明,李建平,张鑫,等(Zhou Zhongming,Li Jianping,Zhang Xin,et al).ANN在电力系统中期负荷预测中的应用(The application of ANN in middle term load forecasting of power system)[J].电力系统及其自动化学报(Proceedings of the CSU-EPSA),2003,15(2):36-39.

[14]李云飞,黄彦全,蒋功连(Li Yunfei,Huang Yanquan,Jiang Gonglian).基于PCA-SVM的电力系统短期负荷预测(Short-term load forecasting based on PCA-SVM)

[J].电力系统及其自动化学报(Proceedings of the CSUEPSA),2007,19(5):66-70.

[15]Cao L J,Chong W K.Feature extraction in support vector machine:a comparison of PCA,XPCA and ICA[C]//9th International Conference on Neural Information Processing.Singapore:2002.

[16]梁胜杰,张志华,崔立林,等(Liang Shengjie,Zhang Zhihua,Cui Lilin,et al).基于主成分分析与核独立成分分析的降维方法(Dimensionality reduction method based on PCA and KICA)[J].系统工程与电子技术(Systems Engineering and Electronic),2011,33(9):2144-2148.

[17]Huang Ling,Zhong Jinhong.ICA-based potential significant feature extraction for market forecast[C]//International Conference on Computational Intelligence for Modeling Control and Automation,and International Conference on Intelligent Agents,Web Technologies and Internet Commerce.Sydney,Australia:2006.

[18]Liao Huaiwei,Niebur D.Load profile estimation in electric transmission networks using independent component analysis[J].IEEE Trans on Power Systems,2003,18(2):707-715.

[19]Back A D,Weigend A S.A first application of independent component analysis to extracting structure from stock returns[J].International Journal of Neural Systems,1997,8(4):473-484.

Application of BP Neural Network and ICA Feature Extraction in Power Load Forecasting

HE Chuan1,SHU Qin1,HE Han-feng2
(1.School of Electrical Engineering and Information,Sichuan University,Chengdu 610065,China;2.Electric Power Company of Sichuan Province,Chengdu 610041,China)

When BP neural network is utilized to forecast short-term power load,the factors such as economy,weather,societal situation and large amount of historical load data,will be taken into consideration.Hence,it generates the high-dimention of input space and the data are relevant,and this leads to the inefficiency of the network training.Under the condition of preserving the main information within the data,principle component analysis(PCA)and independent component analysis(ICA)are applied to reconstruct the input space according to the contribution of each component and to reduce the input of neural network.The ICA feature extraction proposed in this paper reconstructs the input space,in the meanwhile,it effectively reduces noises and preserves some potential information and features in the original data.Finally,this method is proved in the simulation of the paper.

short-term load forecast;independent component analysis(ICA);principle component analysis(PCA);feature extraction;BP neural network

TM715

A

1003-8930(2014)08-0040-07

何川(1988—),男,硕士研究生,研究方向为信号处理在电力系统中的应用。Email:jokerscu@gmail.com

2012-11-01;

2013-06-08

四川省科技支撑计划项目(2012GZ0009);四川省电力公司科技项目(12H1201)

舒勤(1958—),男,博士,教授,研究方向为现代信号处理。Email:shuchin@163.com

贺含峰(1973—),男,硕士,高级工程师,研究方向为智能电网。Email:hh_he@tom.com

猜你喜欢

原始数据协方差特征提取
GOLDEN OPPORTUNITY FOR CHINA-INDONESIA COOPERATION
受特定变化趋势限制的传感器数据处理方法研究
基于Gazebo仿真环境的ORB特征提取与比对的研究
基于Daubechies(dbN)的飞行器音频特征提取
用于检验散斑协方差矩阵估计性能的白化度评价方法
全新Mentor DRS360 平台借助集中式原始数据融合及直接实时传感技术实现5 级自动驾驶
Bagging RCSP脑电特征提取算法
多元线性模型中回归系数矩阵的可估函数和协方差阵的同时Bayes估计及优良性
二维随机变量边缘分布函数的教学探索
不确定系统改进的鲁棒协方差交叉融合稳态Kalman预报器