李軍 李世昌
摘 要:針對中期或短期電力負荷預測,提出一種基于稀疏表示的特征提取建模方法。為構建預測模型,將歷史電力負荷等數據構成具有時延的輸入—輸出數據對,將時延輸入數據向量作為初始字典,采用K均值—奇異值分解(K-SVD)算法將其進行稀疏分解與變換至稀疏域以得到學習后的字典。進一步,由正交匹配追蹤(OMP)算法獲取相應的稀疏編碼向量,再將該向量作為核極限學習機(KELM)的輸入來構建全局回歸模型。為了驗證該方法的有效性,將所提出的方法用于不同地區(qū)的中期或短期電力負荷預測中,在同等條件下還與單一KELM、支持向量機(SVM)、極限學習機(ELM)方法以及非字典學習的其他稀疏表示建模方法進行了比較。實驗結果表明,不同的稀疏表示建模方法均能取得很好的預測效果,其中所提方法具有更好的預測效果,顯示出其有效性。
關鍵詞:負荷預測;稀疏表示;特征提取; K均值—奇異值分解; 正交匹配追蹤;核極限學習機
DOI:10.15938/j.emc.2020.09.017
中圖分類號:TM 715
文獻標志碼:A
文章編號:1007-449X(2020)09-0156-09
Application of sparse representation method based on K-SVD-OMP in electricity load forecasting
LI Jun, LI Shi-chang
(School of Automation and Electrical Engineering, Lanzhou Jiaotong University, Lanzhou 730070, China)
Abstract:
For mid-term or short-term electricity load forecasting, a feature extraction modeling method based on sparse representation is proposed. The historical power load data were composed to the time-lagged input-output data pairs to build the forecasting model, using the time-lagged input data vectors as the initial dictionary, which were sparsely decomposed and transformed into the sparse domain by K-means singular value decomposition (K-SVD) algorithm to obtain the dictionary after learning. Further, the corresponding sparse coding vectors were obtained by orthogonal matching pursuit (OMP) algorithm, and then the sparse vectors are then used as the input vectors of the extreme learning machine with kernel (KELM) to build a global regression model. In order to verify the effectiveness of the employed method, it was applied to mid-term and short-term electric load forecasting instances in different areas. Compared with single KELM, support vector machine(SVM), extreme learning machine(ELM) method as well as other forecasting methods using sparse representation with non-dictionary learning under the same conditions, experimental results show that the forecasting methods based on sparse representation algorithm achieve good forecasting results, and the methods proposed significantly improve the accuracy of load forecasting and show their effectiveness.
Keywords:load forecasting; sparse representation; feature extraction; K-means singular value decomposition; orthogonal matching pursuit; extreme learning machine with kernel
0 引 言
中、短期電力負荷預測作為電力系統(tǒng)規(guī)劃和運營的重要組成部分,對電力部門制定發(fā)電計劃、設備檢修計劃、電價等提供了重要的依據。因此,構建穩(wěn)定、準確的中、短期電力負荷預測模型對智能電網的運行調度與發(fā)展規(guī)劃有著重要意義[1-2]。
在電力負荷預測中,常見的線性或多重回歸法、自回歸積分滑動平均[3] (autoregressive integrated moving average,ARIMA)方法等,在精度方面往往不能滿足實際需求。更先進的一類計算智能方法,如神經網絡[4]、模糊邏輯系統(tǒng)[5]、支持向量機[6] (support vector machine,SVM)、相關向量機[7] (relevance vector machine,RVM)等,具有很強的非線性逼近能力,目前已經在中、短期負荷預測中取得了成功應用,如文獻[7]給出了基于多種組合核函數構成的RVM方法,應用于中期電力負荷預測中并取得了較好的實驗效果。
極限學習機[8] (extreme learning machine,ELM)是由Huang等人提出的一種基于單隱層的前饋神經網絡快速學習算法,具有學習速度快,泛化性能好的優(yōu)點。在ELM的基礎上,核極限學習機(extreme learning machine with kernel,KELM)采用核函數替代ELM中的未知隱含層節(jié)點函數,并通過引入正則化參數,求解結果更穩(wěn)定且具有更好的泛化能力。文獻[9]給出了一類基于進化策略的優(yōu)化KELM方法,并成功應用于風電功率預測中。文獻[10]給出一種基于經驗模態(tài)分解的KELM預測方法,成功應用于短期電力負荷預測中。文獻[11]提出了一種基于KELM的微電網短期負荷預測方法,建立了包含離線參數尋優(yōu)與在線負荷預測的預測模型,該方法能獲得較高的預測準確度。
另一方面,稀疏表示作為一種特征提取手段,首先在圖像領域中得到廣泛應用[12-13]。稀疏表示方法包括稀疏編碼及字典學習,稀疏編碼是由少數基向量加權和的形式對信號進行處理,提取隱含的實質性信息。文獻[14]利用網絡拓撲,借鑒半監(jiān)督學習的框架,提出一種字典學習算法,將其成功應用于網絡動態(tài)過程預測中。文獻[15]則給出一種基于K均值—奇異值分解(K-means singular value decomposition,K-SVD)的字典學習算法,將其成功用于金融領域時間序列的股票收益預測中。
此外,主元分析(principal components analysis,PCA)或核主元分析(kernel principal components analysis,KPCA)方法作為一種特征預處理手段,也能很好地挖掘數據的內在特征,從而進一步增強模型的推廣性。文獻[16]提出了一種基于PCA算法進行特征提取的短期負荷預測模型,取得了很好的實驗效果。文獻[17]提出一種KPCA優(yōu)化回聲狀態(tài)網絡的網絡流量預測方法,仿真對比實驗表明了該方法預測結果的有效性。與此相似,同樣可以將稀疏表示作為特征提取的主要手段應用于預測領域,雖然形如PCA方法也可得到一組完備的基向量,但有所區(qū)別的是,稀疏表示算法可得到一組超完備基向量來表示輸入向量,其基向量通常比輸入向量的維數要高,因此,能更有效地找出隱含于輸入數據中的內在結構與模式。文獻[18]給出了基于貪婪學習策略的稀疏編碼算法—正交匹配追蹤(orthogonal matching pursuit,OMP)算法并用于信號恢復中,與基尋蹤(basis pursuit,BP)算法相比更快且更易于實現。文獻[19]給出了針對信號稀疏表示的過完備字典進行訓練的基于K-SVD的高效字典學習算法及其實現。
鑒于稀疏表示算法在特征提取建模中的優(yōu)點,本文提出一種基于字典學習的K-SVD-OMP稀疏表示算法,與KELM方法結合,構成一種全局預測模型。將所提方法應用于不同地區(qū)的電力負荷預測中,在同等條件下,還與單一KELM等預測方法以及基于非字典學習的稀疏表示特征提取建模方法進行對比,驗證所提方法在電力負荷預測中的有效性。
1 信號的稀疏表示
稀疏表示是對超完備字典中基向量進行線性組合,以緊湊的方式表示原信號,原信號則可通過被選擇的權值非零的字典基向量表示,且大多數字典基向量的權值為零,信號向量x∈Rm的稀疏表示為
x=Φα。(1)
式中:Φ={1,2,…,K}∈Rm×K為字典矩陣,基向量i是字典Φ中的原子;α∈RK為稀疏向量。
針對式(1),通過l0范數優(yōu)化問題的求解,可獲得α∈RK的近似逼近,即
minα‖α‖0 s.t.‖Φα-x‖22≤δ。(2)
式中信號重構誤差δ≥0。
限制α中非零系數的數目,可將式(2)變形為M-稀疏優(yōu)化問題,即
minα‖Φα-x‖22 s.t.‖α‖0≤M。(3)
式中M為稀疏度,即α中的非零系數的數目。
將式(2)引入拉格朗日乘子λ可變換為
minα12‖Φα-x‖22+λ‖α‖0。 (4)
式中λ>0。
對式(2)~式(4)的本質求解是一個非確定性多項式(non-deterministic polynomial, NP)難題,求解這類問題可用松弛算法或貪婪算法,使用松弛算法時,假設α的先驗分布服從Laplacian分布[20],可使信號的表示稀疏化,即
式(8)為式(4)的l1范數表達形式。式(4)的松弛算法求解就是將l0范數松弛到l1范數進行求解,l1范數是l0范數的最優(yōu)凸近似,且滿足解的稀疏性。對式(8)的求解可通過套索(least absolute shrinkage and selection operator,LASSO)算法求解[21]完成。具體實現時,通過調用凸優(yōu)化(convex optimization, CVX)工具箱軟件[22]完成式(8)的優(yōu)化問題求解。
2 K-SVD-OMP算法
在稀疏表示中,不同的字典對于信號的重構效果不同,常用的字典有小波字典、離散余弦變換 (discrete cosine transform, DCT)字典、Gabor字典等。為更好地針對不同信號的稀疏表示,本文首先考慮性能較優(yōu)的基于K-SVD的字典學習算法,以獲取基于經驗數據學習的具有自適應性且性能較優(yōu)的緊湊字典,在此基礎上進一步應用基于OMP的稀疏編碼算法,獲取數據的最佳稀疏編碼向量。
2.1 K-SVD算法
K-SVD算法是K-均值算法的一種擴展,K-均值算法的目標是根據近鄰分配原則,通過求解一個包含K個代碼的碼本,對數據集進行表示??紤]有限的數據向量xi取為標準基向量,K-均值算法的目標函數為
minC,X‖X-CA‖2F s.t. i,xi=ek。(9)
式中:X={xi}Ni=i∈Rm×N為數據集;C=[c1,c2,…,cK]為碼本矩陣,其列向量ci為碼本向量;標準基向量ek表示其第k個位置的元素為1,其余為0。
基于矢量量化的K-均值算法步驟如下:
Step 1:初始化碼本C(0)∈Rm×K,令J=1;
Step 2:稀疏編碼階段:將數據集X分為K個子集
(R(J-1)1,R(J-1)2,…,R(J-1)K),
滿足R(J-1)k={i|l≠k,‖xi-c(J-1)k‖2<‖xi-c(J-1)l‖2};
Step 3:碼本更新策略:對子集C(J-1)中的每列k進行更新,即更新c(J)k=1|Rk|∑i∈R(J-1)kxi;
Step 4:令J=J+1;迭代計算Step2~Step4,直至滿足重構誤差。
K-SVD算法在K-均值算法基礎上對K個不同子集進行奇異值分解(singular value decomposition,SVD),構造出基于經驗學習的字典,其更新準則是對字典Φ的原子,即其列向量按順序處理,在算法的訓練過程中,其每步迭代中均有稀疏編碼和字典更新2個步驟。
該算法的實質是求解下式的優(yōu)化問題,即
minΦ,A‖X-ΦA‖2F s.t. i,‖αi‖0≤M。(10)
式中:X={xi}Ni=i∈Rm×N;A為αi組成的稀疏矩陣A={αi}Ni=i∈RK×N;Φ∈Rm×K表示過完備字典。
在稀疏編碼階段,假定字典Φ是固定的,式(10)的優(yōu)化問題轉化為搜索相應于字典矩陣Φ的系數矩陣A的稀疏表示問題,則式(10)改寫為
minxi‖xi-Φai‖22 s.t. ‖αi‖0≤M,i=1,2,3,…,N。(11)
式(11)的求解與式(3)在本質上相同,可以通過不同的稀疏編碼算法求解。
在字典更新階段,假設字典Φ及A是固定的,每次僅更新字典Φ的第k列用k表示,以及相應的系數,它對應于A的第k行,記為αkT。則式(10)的目標函數可改寫為
‖X-ΦA‖2F=‖X-∑Kj=1jαjT‖2F=‖(X-∑j≠kjαjT)-kαkT‖2F=‖Ek-kαkT‖2F。 (12)
式中矩陣Ek為舍去Φ的第k個原子k后,所有N個數據向量的誤差。
通過更新字典原子k和稀疏編碼向量αkT可得到更緊湊的字典集合,對矩陣ERk進行秩-1近似逼近的SVD算法,可有效地最小化式(12)的逼近誤差。
若定義ωk為使用了字典原子k數據xi的索引集,即ωk={i|1≤i≤K,αkT(i)≠0},定義矩陣Ωk∈RN×|ωk|,其元素僅在(ωk(i),i)處的值為1,其他處為0,且記αkT、Ek去零收縮后的向量、矩陣分別為αkR=αkTΩk∈R|ωk|,ERk=EkΩk∈RN×|ωk|。
此種情形下,式(12)的目標函數等價于
‖EkΩk-kαkTΩk‖2F=‖ERk-kαkR‖2F。(13)
進一步應用SVD算法,即有ERk=UΔVT,其中:U、V為正交矩陣;Δ為對角矩陣。定義U的第1列為k的解,系數向量αkR為V的第1列和Δ[1,1]的乘積,在求解過程中還需注意保持字典Φ的歸一化處理。不斷重復稀疏編碼和字典更新2個步驟,直到滿足式(10)的停止條件為止。
綜上,為求解式(10)的優(yōu)化問題,獲取表示數據集X的最好字典集合Φ,K-SVD算法具體實現步驟如下:
Step 1:初始化字典矩陣,置J=1,且Φ(0)∈Rm×K的列具有l(wèi)2范數歸一化;
Step 2:稀疏編碼階段:使用稀疏編碼算法求解對應xi的稀疏向量αi,即
minαi‖xi-Φαi‖22 s.t. ‖αi‖0≤M,i=1,2,…,N;
Step 3:字典更新階段:對字典Φ(J-1)中的每列(k=1,2,…,K)進行更新;
首先,定義使用原子的數據向量的索引集為
ωk={i|1≤i≤N,αkT(i)≠0};
其次,計算誤差矩陣Ek,Ek=X-∑j≠kjαjT;
選擇相應于ωk的列對Ek收縮,得到ERk;
最后,使用SVD分解ERk=UΔVT,選擇更新后的字典列向量~k是U的第1列,更新系數向量αkR是V的第1列和Δ[1,1]的乘積;
Step 4:令J=J+1,返回Step2,直至滿足式(10)的收斂或停止條件為止。
2.2 OMP算法
針對式(3)求解具有稀疏約束的稀疏編碼問題時,作為一類貪婪算法求解策略,匹配追蹤(matching pursuit,MP)算法或OMP算法是一類有效的求解手段。MP算法中,字典原子不是相互正交的向量,這使得算法每次迭代的結果是次最優(yōu)的,OMP算法是MP算法的改進。
在統(tǒng)計建模中,貪婪步進最小二乘也被稱為前項步進回歸,在信號處理中的算法則稱之為MP或OMP,其目的是在求解稀疏編碼向量階段,在每一步選擇與當前殘差具有最高相關性的原子。選擇原子后,將信號正交投影到所選原子的空間,重新計算殘差,并重復該過程。因此,在精度要求相同的情況下,OMP算法的收斂速度更快。
為求解稀疏編碼向量的最優(yōu)估計值,針對優(yōu)化問題式(3),可重寫為
α^=argminα‖Φα-x‖22 s.t.? ‖α‖0≤M。(14)
為求解式(14),OMP算法的具體實現步驟如下:
Step 1:初始化殘差向量r0=x,索引集Λ0=,迭代次數t=1;
Step 2:尋找索引χt。χt為殘差r和字典矩陣的列向量i中具有最大內積時所對應的索引,即
χt=argmaxi=1,2,…,K|〈rt-1,i〉|=argmaxi=1,2,…,KrTt-1i,
該步驟是一個貪心選擇求解過程;
Step 3:增廣索引集,選擇索引集Λt=Λt-1∪{χt},更新字典Φt=[Φt-1,χt],注意Φ0是空矩陣;
Step 4:為獲取新的數據表示,需求解最小二乘問題,即
αt=argminαt‖x-Φtαt‖=(ΦTtΦt)-1ΦTtx;
Step 5:更新殘差rt=x-Φtαt;
Step 6:t=t+1,若t≤M,則返回Step2。
3 基于稀疏表示的時間序列預測全局模型
本節(jié)考慮將稀疏表示方法與KELM結合構成全局預測模型的一種實現。首先,將歷史電力負荷等數據構成的時間序列數據組成具有時延的輸入—輸出數據對。其次,將訓練數據進行稀疏分解與變換,映射至稀疏域中,借助用于稀疏分解的字典所選擇的基向量,所得到的稀疏編碼向量就是訓練輸入數據的稀疏表示,即獲取了輸入數據的一種隱模式表達。最后,與相應目標輸出配對,通過KELM全局回歸模型進行訓練。
針對單變量時間序列,建立待預測模型為
y^i+h=f(xi)=f(yi,yi-τ,…,yi-(m-1)τ)。(15)
式中:y^i+h為模型預測輸出,i=1,…,N,h為步長;m為嵌入維數;τ為延遲常數;f(·)可采用KELM完成。
對于節(jié)點激活函數h(x),隱含層節(jié)點數為L,具有單輸出的標準單層前饋神經網絡(single-hidden layer feedforward neural network, SLFN),其網絡節(jié)點的輸出為
f(x)=∑Lj=1θjh(x;ωj,bj)=hT(x)θ。(16)
式中:ωj是連接輸入層與第j個隱含層節(jié)點之間的權值向量;θj是連接輸出層與第j個隱含層節(jié)點之間的權值θ=[θ1,…,θL]T;bj是第j個隱含層節(jié)點的閾值;h(x;ωj,bj)簡記為hj(x),則h(x)=[h1(x),…,hL(x)]T是ELM中與輸入有關的隱含層特征映射向量。
不同于常規(guī)的SLFN方法,ELM的隱含層節(jié)點激活函數在訓練期間是確定的,其初始參數設置可以通過均勻分布的隨機數產生,僅需調整輸出層權值即可,這使得其訓練學習過程可轉換為求取最優(yōu)權值向量θ的估計問題,而從理論上可以證實ELM具有萬能逼近特性,是一種通用函數逼近器。
ELM的最優(yōu)權值問題求解,由l2正則化優(yōu)化問題進行求解,即
θ=HTHHT+INη-1Y。(17)
式中:矩陣H=[h(x1),…,h(xN)];η是正則化參數;目標矩陣Y=[y1,…,yN]T;單位陣IN維數為N×N。
隱含層特征映射h(x)未知時,定義核矩陣為
由式(16)和式(18)可得KELM的輸出為
核函數k(xi,x)通常選取高斯核函數,即
式中ζ為函數的寬度參數,設定函數的徑向作用范圍。參數η和ζ可通過交叉驗證法給定。
針對時間序列預測,基于K-SVD-OMP算法的全局預測方法的具體實現步驟如下:
Step 1:建立訓練數據集{xi;yi}Ni=1,測試數據集{xti;yti}N1i=1,其中:xi,yi分別為訓練數據集的輸入與輸出;xti,yti分別為測試數據集輸入與輸出;
Step 2:針對X={xi}Ni=i∈Rm×N,基于2.1節(jié)的K-SVD算法獲取經過學習的緊湊字典Φ,其中算法中的稀疏編碼采用OMP算法;
Step 3:在獲取字典Φ的基礎上,基于2.2節(jié)的OMP算法進行稀疏編碼求解,計算每個xi所對應的稀疏編碼向量αi;
Step 4:以αi作為輸入,結合相應的目標輸出yi,建立全局預測模型。預測模型f(·)可應用式(19)構建;
Step 5:針對測試數據xti,使用2.2節(jié)的OMP算法進行稀疏編碼求解,獲取相應的稀疏編碼向量αti;
Step 6:將αti作為模型的測試輸入,計算預測輸出y^ti=f(αti)。
4 中、短期電力負荷峰值預測實驗
本節(jié)將給出2個中、短期負荷預測實驗的實例,以驗證本文方法的有效性,由式(15)對包含電力負荷值及其他影響因素的實驗數據進行時間序列建模。
考慮到不同字典、不同稀疏編碼算法對于預測結果的影響,實驗中的初始字典選擇除了考慮時延輸入數據向量外,也考慮了DCT字典,此外還考慮了非字典學習的稀疏編碼算法,稀疏編碼算法也考慮采用LASSO算法。因此,對比方法有其他稀疏表示建模算法,如DCT-LASSO、DCT-OMP、K-SVD-LASSO等。
實驗結果的評價采用平均絕對值百分比誤差(mean absolute percentage error, MAPE)、均方根誤差(root mean square error, RMSE)和相對誤差(relative error,RE),即
式中:yi是負荷實際數值;y^i是負荷預測值;n表示負荷的采樣點數目。
另外,實驗平臺為win7 64位操作系統(tǒng),且在基于Intel(R) Core i7、2.80 GHz雙核CPU處理器,內存8 G的計算機上應用MATLAB R2012a軟件進行不同預測方法的比較。
4.1 中期電力負荷預測實驗
實驗選取歐洲EUNITE 網絡組織的中期負荷預測競賽提供的電力負荷實際數據集[23]。為了避免氣候因素的影響,采取數據分割的方式,選取冬季時段的歷史負荷數據1997年1月~3月、1997年10月~1998年3月、1998年10月~12月為訓練數據集,其任務是預測1999年1月,即未來31 d內每日最大電力負荷值。預測模型的輸入為15維,其中日期信息為七位二進制編碼、節(jié)假日信息為一位二進制編碼、電力負荷值的實際時間序列數據的嵌入維為7,這與文獻[6]一致。文獻[6]用LIBSVM 軟件完成并取得當年競賽最好成績。注意在模型訓練完成后,對未來31 d進行預測時需采用迭代預測方式進行。
實驗中:K-SVD算法選取K=15;迭代次數J=100;高斯核函數ζ=5;正則化系數η=102。圖1給出了在稀疏度M不同取值下,不同稀疏表示方法的預測精度比較,可以看出,M為5時,其預測精度最好。
為進一步衡量本文方法的預測效果,取M=5的情形,對K-SVD-OMP方法與非字典學習的稀疏表示建模方法,以及采用單一KELM、SVM、ELM方法的預測結果進行比較,其中,非字典學習的稀疏表示方法中使用了DCT字典。對比方法中,設置LASSO算法的λ1=0.4,調用CVX軟件進行求解,單一KELM及SVM均選取相同的高斯核函數, SVM的懲罰參數C=4 096,不敏感損失ε=0.1,ELM的隱含層激活函數為Sigmoid函數,隱含層節(jié)點數目L=50。
表1列出了單一預測方法與不同稀疏表示算法結合KELM、SVM、ELM方法的預測結果數值比較??梢钥闯?,不同稀疏表示建模方法的預測精度均有提升,取得了很好的預測效果,其中,基于K-SVD-OMP算法的稀疏表示建模方法取得了最好的預測效果,且當全局模型選取為KELM時,其MAPE值最低。表1還給出了不同稀疏表示算法結合KELM、SVM、ELM在訓練時的CPU運行時間比較,可以看出與單一預測方法相比,訓練時間略有增加,其中,DCT-OMP算法的計算效率最高, K-SVD-OMP算法的計算效率優(yōu)于K-SVD-LASSO算法。
圖2給出了不同稀疏表示建模方法與單一SVM、KELM方法的絕對百分比誤差(aboluate percentage errors, APE)的箱線圖比較,可以看出,基于K-SVD的稀疏表示建模方法優(yōu)于采用DCT字典的方法,且K-SVD-OMP結合KELM的方法能取得較好的預測結果。
圖3進一步給出了K-SVD-OMP結合KELM方法與其他稀疏表示建模方法及單一SVM、KELM方法對未來31 d內的峰值預測結果比較。圖4則給出了不同預測方法相應的誤差比較。由圖3、圖4可見,基于K-SVD的稀疏表示建模方法的相對誤差波動較小,呈現出較好的預測效果。
4.2 北美電力公司短期電力負荷預測實驗
本節(jié)短期負荷預測實例實驗選取北美電力公司提供的電力負荷數據集[24]進行,該數據集包括從1985年1月1日至1991年3月31日之間每天每小時的溫度和電力負荷數值。每日預測在上午8點進行,預測次日一整天,從當日24點至次日24點,即未來16~40 h的電力負荷,周五預測整個周末和周一以及未來16~88 h的電力負荷。預測任務是1990年11月26日24點至12月3日24點之間的每小時電力負荷值。
實驗的訓練數據集選取待預測月份的前2個月和對應于同一時間段的上一年歷史負荷和溫度數據。模型輸入為歷史負荷數據xiL與歷史溫度數據xiT,即xi=(xiT,xiL),其中歷史負荷數據xiL中嵌入維數m為4、延遲常數τ為5,歷史溫度數據xiT中嵌入維數m為9、延遲常數τ為3。這與文獻[24]一致,采用式(15)的時間序列建模方式,取預測步長h=16,訓練一旦完成后,基于模型對測試區(qū)段采用迭代方式進行預測。
本小節(jié)實驗中:K-SVD算法選取K=40;迭代次數J=100;高斯核函數的參數ζ=5;正則化參數η=100。圖5給出了在稀疏度M不同取值下,不同稀疏表示方法的預測精度比較,可以看出,M為5時,其預測精度最好。
同4.1節(jié),為進一步衡量本文方法的預測效果,取M=5的情形,本文的K-SVD-OMP全局建模方法與采用DCT字典的稀疏表示建模方法,及采用單一SVM、ELM、KELM方法的預測結果進行了比較,其中,在LASSO算法中選擇參數λ1=0.3,其他對比方法中,單一KELM及SVM方法也均選取相同高斯核函數,SVM的懲罰參數C=16,不敏感損失參數ε=0.1, ELM的參數設置同4.1節(jié)。
表2詳細列出了單一預測方法與基于不同稀疏表示算法結合KELM、SVM、ELM的全局建模方法的預測結果數值比較??梢钥闯?,不同稀疏表示建模方法的預測精度均有提升,取得了很好的預測效果,其中,基于K-SVD-OMP方法的稀疏表示建模方法取得了最好的預測效果,且當全局模型選取為KELM時,其MAPE值最低。
此外,本文方法與文獻[24]所提方法的結果相比較,其預測精度也較優(yōu)。表2還給出了不同稀疏表示算法結合KELM、SVM、ELM在訓練時的CPU運行時間開銷比較,與單一預測方法相比,其訓練時間略有增加,其中,DCT-OMP算法結合ELM方法的計算效率最高,K-SVD-OMP算法結合ELM方法的計算效率次之,但與K-SVD-LASSO算法相比,K-SVD-OMP算法的計算效率又略優(yōu)之??傮w來看,在訓練時間的耗時上,基于稀疏表示的特征提取算法作為預測模型的預處理手段還是可以滿足實際需求的。
圖6給出了不同稀疏表示方法與單一SVM、KELM方法的APE箱線圖比較,可以看出,在APE指標下,基于K-SVD的稀疏表示建模方法優(yōu)于采用DCT字典的稀疏表示建模方法,且K-SVD-OMP結合KELM的全局建模方法取得了較好的預測結果。
圖7給出了不同稀疏表示方法與實際電力負荷值在測試集上的預測結果比較,相應地,圖8給出了不同預測方法對測試集上一周范圍時間內的每小時進行預測的相對誤差。由圖7、圖8可見,基于K-SVD的稀疏表示預測方法的相對誤差仍然波動較小,呈現出較好的預測效果。
5 結 論
針對中、短期電力負荷預測,提出一種基于K-SVD-OMP的稀疏表示全局建模方法。該方法在字典學習階段,采用了K-SVD算法,對初始字典逐列進行更新,較直接采用DCT字典的非字典學習算法相比,在滿足稀疏度的條件下能獲得更緊湊的字典集合,進一步減少了重構誤差且具有一定的自適應性。在稀疏編碼求解階段采用OMP算法,較之LASSO算法避免了求解過程中計算復雜且因懲罰項是l1范數,會導致所得解向量中非零值過多的缺點。另一方面,由于基于稀疏表示建模方法的全局回歸模型選擇KELM,這使得建模效果更為突出。
將所提出的基于K-SVD-OMP算法的稀疏建模方法應用于不同地區(qū)的電力負荷峰值預測實例中,實驗結果證實,與已有的單一SVM或ELM預測方法相比而言,稀疏表示與KELM結合的預測方法雖然在模型訓練時增加了一定的運行時間開銷,但體現出較好的潛在特征表示能力,進一步提升了模型預測精度,體現出較好的預測效果。未來的研究還可考慮其他基于稀疏表示的改進字典學習算法,將其應用于電力負荷預測中。
參 考 文 獻:
[1] KHUNTIA S R, RUEDA J L, van der MEIJDEN M A M M. Forecasting the load of electrical power systems in mid-and long-term horizons: a review[J].IET Generation, Transmission & Distribution, 2016, 10(16): 3971.
[2] KUSTER C, REZGUI Y, MOURSHED M. Electrical load forecasting models: a critical systematic review[J]. Sustainable Cities and Society, 2017, 35:257.
[3] CHUJAI P, KERDPRASOP N, KERDPRASOP K.Time series analysis of household electric consumption with ARIMA and ARMA models[C]//Proceedingsof the International Multi-Conference of Engineers and Computer Scientists, March 13-15,2013, Hong Kong, China.2013: 295-300.
[4] 李軍,李青.基于CEEMDAN-排列熵和泄漏積分ESN的中期電力負荷預測研究[J].電機與控制學報,2015, 19(8):70.
LI Jun, LI Qing. Medium term electricity load forecasting based on CEEMDAN-permutation entropy and ESN with leaky integrator neurons[J]. Electric Machines and Control, 2015,19(8):70.
[5] 鄭高,肖建.基于區(qū)間二型模糊邏輯的電力負荷預測研究[J].電機與控制學報, 2012,16(9):26.
ZHENG Gao, XIAO Jian. Forecasting study of power load based on interval type-2 fuzzy logic method[J]. Electric Machines and Control,2012, 16(9):26.
[6] CHEN B J, CHANG M W, LIN C J. Load forecasting using support vector machines: a study on EUNITE competition 2001[J]. IEEE Transactions on Power Systems, 2004,19(4):1821.
[7] 段青, 趙建國, 馬艷.優(yōu)化組合核函數相關向量機電力負荷預測模型[J].電機與控制學報,2010,14(6):33.
DUAN Qing, ZHAO Jianguo, MA Yan. Relevance vector machine based on particle swarm optimization of compounding kernels in electricity load forecasting[J]. Electric Machines and Control, 2010,14(6):33.
[8] HUABG G B, ZHU Q Y,SIEW C K. Extreme learning machine: theory and applications[J]. Neurocomputing, 2006, 70(1):489.
[9] 李軍,李大超. 基于優(yōu)化核極限學習機的風電功率時間序列預測[J].物理學報, 2016, 65(13):130501.
LI Jun, LI Dachao. Wind power time series prediction using optimized kernel extreme learning machine method[J]. Acta Physica Sinica,2016, 65(13):130501.
[10] CHEN Y, KLOFT M, YANG Y, et al.Mixed kernel based extreme learning machine for electric load forecasting[J]. Neurocomputing, 2018, 312:90.
[11] 劉念, 張清鑫, 劉海濤. 基于核函數極限學習機的微電網短期負荷預測方法[J]. 電工技術學報, 2015, 30(8):218.
LIU Nian, ZHANG Qingxin, LIU Haitao. Online short-term load forecasting based on ELM with kernel algorithm in micro-grid environment[J].Transactions of China Electrotechnical Society,2015,30(8): 218.
[12] ELAD M, FIGUERIREDO M A T, MA Y. On the role of sparse and redundant representations in imageprocessing[J]. Proceedings of the IEEE,2010, 98(6):972.
[13] AHARON M,ELAD M,BRUCKSTEIN A.K-SVD:an algorithm for designingovercomplete dictionaries for sparse representation[J].IEEE Transactions on Signal Processing,2006,54(11):4311.
[14] FORERO P A, RAJAWAT K, GIANNAKIS G B. Prediction of partially observed dynamical processes over networks via dictionarylearning[J]. IEEE Transactions on Signal Processing, 2014, 62(13): 3305.
[15] ROSAS-ROMERO R,DIAZ-TORRES A, ETCHEVERRY G. Forecasting of stock return prices with sparse representation of financial time series over redundant dictionaries[J]. Expert Systems with Applications,2016,57:37.
[16] BIANCHI F M, DE SANTIS E, RIZZA A, et al.Short-term electric load forecasting using echo state networks and PCA decomposition[J]. IEEE Access, 2015, 3:1931.
[17] 田中大, 李樹江, 王艷紅,等. 基于KPCA優(yōu)化ESN的網絡流量預測方法[J].電機與控制學報, 2015,19(12):114.
TIAN Zhongda, LI Shujiang, WANG Yanhong, et al.Network traffic prediction method based on KP CA optimized ESN[J]. Electric Machines and Control, 2015, 19(12):114.
[18] TROPP J A, GILBERT A C. Signal recovery from random measurements via orthogonal matching pursuit[J]. IEEE Transactions on Information Theory, 2007,53(12):4655.
[19] RUBINSTEIN R,ZIBULEVSKY M,ELAD M.Efficient implementation of the K-SVD algorithm using batch orthogonal matching pursuit[R].Computer Science Department, Israel:Technion,2008.
[20] FIGUEIREDO M A T. Adaptive sparseness for super vised learning[J]. IEEE Transactions on Pattern Analysis and Machine Intelligence, 2003,25(9):1150.
[21] TIBSHIRANI R.Regression shrinkage and selection via the LASSO[J].Journal of the Royal Statistical Society:Series B(Methodological), 1996,58(1):267.
[22] GRANT M, BOYD S, YE Y.CVX:Matlab Software for Disciplined Convex Programming[EB/OL]. (2013-09-01) [2018-04-01]. http://cvxr.com/cvx.
[23] OTTO P. World-wide Competition within the EUNITENetwork[EB/OL]. (2001-05-01) [2018-04-06].http://neuron.tuke.sk/competition/index.php.
[24] ELATTAR E E, GOULERMAS J Y, WU Q H. Electric load forecasting based on locally weighted support vector regression[J]. IEEE Transactions on Systems, Man, and Cybernetics, Part C, 2010, 40(4):438.
(編輯:邱赫男)
收稿日期: 2018-12-17
基金項目:國家自然科學基金(51467008)
作者簡介:李 軍(1969—),男,博士,教授,研究方向為計算智能、非線性系統(tǒng)預測、建模與預測;
李世昌(1993—),男,碩士研究生,研究方向為電力負荷預測。
通信作者:李 軍