鄭 樂(lè),徐青山,馮小峰
(1. 東南大學(xué) 網(wǎng)絡(luò)空間安全學(xué)院,南京 210096;2. 東南大學(xué) 電氣工程學(xué)院,南京210096;3. 廣東電網(wǎng)有限責(zé)任公司 計(jì)量中心,廣州 518049)
為了方便在日常生產(chǎn)中進(jìn)行管理和制定計(jì)劃,必須進(jìn)行電力負(fù)荷預(yù)測(cè)。此外,通過(guò)估算某個(gè)時(shí)隙的用電量,可以有效提高電力系統(tǒng)的安全性、可靠性和穩(wěn)定性[1]。傳統(tǒng)的預(yù)測(cè)算法有時(shí)間序列法、回歸分析法[2]等,時(shí)間序列法的優(yōu)點(diǎn)在于計(jì)算時(shí)間短,但時(shí)間序列的高波動(dòng)性會(huì)影響預(yù)測(cè)精度?;貧w分析方法適用于計(jì)算效率較高的低階模型,但回歸方程的不精確假設(shè)可能導(dǎo)致虛假回歸。
近年來(lái)隨著機(jī)器學(xué)習(xí)[3]的發(fā)展,以支持向量機(jī)[4]、集成決策樹(shù)[5—6]等為代表的傳統(tǒng)機(jī)器學(xué)習(xí)和以強(qiáng)大模型擬合能力著稱(chēng)的神經(jīng)網(wǎng)絡(luò)[7]為代表的深度學(xué)習(xí)在負(fù)荷預(yù)測(cè)領(lǐng)域得到廣泛應(yīng)用。然而,在文獻(xiàn)[8]—文獻(xiàn)[13]中所使用的深度學(xué)習(xí)相關(guān)模型,雖然取得了不錯(cuò)的精確度,但存在訓(xùn)練數(shù)據(jù)需求較大、模型容易過(guò)擬合(模型泛化能力差)、神經(jīng)網(wǎng)絡(luò)最佳結(jié)構(gòu)不易設(shè)定等問(wèn)題。支持向量機(jī)(support vector meachine,SVM)則主要依賴(lài)于一部分關(guān)鍵的支持向量進(jìn)行回歸與分類(lèi),故有不易過(guò)擬合的優(yōu)點(diǎn),但SVM 也存在超參數(shù)難以確定的問(wèn)題[14]。目前,將SVM 與群智能算法結(jié)合是重要的研究方向,文獻(xiàn)[15]中主要總結(jié)了當(dāng)前智能算法優(yōu)化SVM 超參數(shù)的研究現(xiàn)狀,其中介紹了遺傳算法、蟻群算法、粒子群算法等群智能算法,但它們或多或少都存在收斂速度慢、易陷入局部最優(yōu)等問(wèn)題,從而限制了模型的實(shí)際應(yīng)用。
文獻(xiàn)[16]中傳統(tǒng)的模擬退火(simulate anneal,SA)算法存在慢收斂與解振蕩等問(wèn)題,限制了模型的性能上限。模擬退火算法每次新的粒子生成均為隨機(jī)產(chǎn)生,是慢收斂的一個(gè)主要原因,但這又是算法保證能尋到全局最優(yōu)的前提。另外,文獻(xiàn)[17]—文獻(xiàn)[20]中很多優(yōu)化算法普遍存在訓(xùn)練時(shí)間長(zhǎng)、參數(shù)不收斂、預(yù)測(cè)精度不高等問(wèn)題。
針對(duì)以上問(wèn)題,本文首先對(duì)SA進(jìn)行了改進(jìn),即以一定概率讓新粒子進(jìn)行隨機(jī)游走,同時(shí)以一定概率進(jìn)行梯度下降以快速向當(dāng)前局部最優(yōu)方向更新,從而在保留其隨機(jī)性并使得其能跳出局部最優(yōu)的同時(shí)能快速收斂至全局最優(yōu)。另外,為進(jìn)一步提升精度上限,本文所提模型還集成成分分析、層次聚類(lèi)分析以挖掘用戶(hù)用電模式,從而進(jìn)一步提升了模型預(yù)測(cè)精度。
針對(duì)在負(fù)荷預(yù)測(cè)中預(yù)測(cè)模式多樣化、差異化等實(shí)際情況,本文提出先對(duì)歷史數(shù)據(jù)進(jìn)行聚類(lèi)的方法來(lái)細(xì)化預(yù)測(cè)模式類(lèi)別、提高預(yù)測(cè)精度。
對(duì)于聚類(lèi)算法的選擇,本文中采用相對(duì)于Kmeans 算法[21]更靈活的基于“自底向上”策略的AGNES算法[22]。它先將數(shù)據(jù)集中的每個(gè)樣本看作1個(gè)初始聚類(lèi)簇,然后在算法運(yùn)行的每一步中找出距離最近的兩個(gè)聚類(lèi)進(jìn)行合并,該過(guò)程不斷重復(fù),直至達(dá)到預(yù)設(shè)的聚類(lèi)簇個(gè)數(shù)。對(duì)于選擇聚類(lèi)簇之間的距離指標(biāo)本文選的是魯棒性較好平均距離,其距離由兩個(gè)簇的所有樣本決定,如公式(1)所示
式中:Ci、Cj分別為第i、j簇;dist(x,z)為x到z的歐式距離。
作為高性能機(jī)器學(xué)習(xí)模型的代表,支持向量機(jī)[23]是在對(duì)數(shù)據(jù)進(jìn)行預(yù)處理后訓(xùn)練和預(yù)測(cè)的主體,也是本文所提混合模型的主體,其他算法終究是對(duì)其進(jìn)行輔助與尋優(yōu)。在LSSVM 訓(xùn)練過(guò)程中遵循結(jié)構(gòu)風(fēng)險(xiǎn)最小化原則,將不等式約束改為等式約束,將經(jīng)驗(yàn)風(fēng)險(xiǎn)由偏差的一次方改為二次方,將求解二次規(guī)劃問(wèn)題轉(zhuǎn)化為求解線(xiàn)性方程組,避免了不敏感損失函數(shù),大大降低了計(jì)算復(fù)雜度,且運(yùn)算速度高于一般的支持向量機(jī)。
式中:K(x,xk)為核函數(shù),此函數(shù)式滿(mǎn)足Mercer 定理的任意對(duì)稱(chēng)函數(shù)。
將樣本映射到特征空間中,由核函數(shù)決定的特征空間的好壞對(duì)支持向量機(jī)的性能影響很大,于是需要選擇一個(gè)合適的核函數(shù)。此次研究中,對(duì)于較復(fù)雜的非線(xiàn)性回歸問(wèn)題,高斯核函數(shù)能達(dá)到較好的性能,具體表達(dá)式如式(6)所示
其中高斯核的帶寬σ是個(gè)不易確定的超參數(shù),也是需要優(yōu)化的參數(shù)之一。
模擬退火算法[24]核心思想是模擬在金屬熱浴之后的溫度緩慢下降(退火)繼而達(dá)到能量的最低態(tài)(常溫固態(tài))的過(guò)程,以粒子隨機(jī)探索策略來(lái)克服陷入局部搜索法的缺陷,來(lái)搜索參數(shù)優(yōu)化問(wèn)題的全局最優(yōu)解。
本文SA算法簡(jiǎn)要描述如下。
(1)參數(shù)初始化。初始化需要優(yōu)化的目標(biāo)參數(shù):args(σ,γ);退火相關(guān)參數(shù):初始溫度T與終止溫度Tend,初始化退火系數(shù)ε=0.5,常數(shù)K,評(píng)估函數(shù)指標(biāo)計(jì)算方法并計(jì)算初始值E,初始化兩個(gè)目標(biāo)參數(shù)的取值范圍σ_range,γ_range;
(2)判斷T >Tend是否成立。若成立則執(zhí)行步驟(3),否則返回當(dāng)前最優(yōu)解args;
式中:i為預(yù)測(cè)日的第i個(gè)時(shí)段(每個(gè)時(shí)段15 min);yi為預(yù)測(cè)日第i個(gè)時(shí)段的實(shí)際負(fù)荷值;yi為預(yù)測(cè)日第i個(gè)時(shí)段的預(yù)測(cè)負(fù)荷值。
模擬退火算法的全局收斂性已經(jīng)在理論上得到了證明,但仍有最優(yōu)解易振蕩,慢收斂等問(wèn)題存在。本文從每一輪退火后,新解的產(chǎn)生上對(duì)SA進(jìn)行了改進(jìn)。具體地,傳統(tǒng)的模擬退火算法在新解的產(chǎn)生上遵循如式(9)。
式中:Δx為1個(gè)主要依賴(lài)于當(dāng)前溫度值T產(chǎn)生的隨機(jī)數(shù)值向量;x為當(dāng)前最優(yōu)解參數(shù)向量;x′為產(chǎn)生新解,圖1為ISA算法流程圖。
圖1 ISA算法流程圖Fig.1 Flow chart of ISA algorithm
本文通過(guò)引入一個(gè)概率因子η,在產(chǎn)生新解時(shí)采用隨機(jī)產(chǎn)生與梯度下降并重的策略,一方面可加速最優(yōu)解的收斂速度,另一方面又保有SA找到全局最優(yōu)解的尋優(yōu)能力。具體而言,若依概率產(chǎn)生隨機(jī)數(shù)rand<η則進(jìn)行依據(jù)下述公式進(jìn)行梯度下降產(chǎn)生新解,反之通過(guò)傳統(tǒng)SA規(guī)則產(chǎn)生新解。梯度下降法產(chǎn)生式(10)。
式中:ΔE為評(píng)估值變化量;Δargs為目標(biāo)優(yōu)化參數(shù)變化量;args為當(dāng)前最優(yōu)參數(shù)值;new_args為梯度產(chǎn)生新的參數(shù)值;r為梯度下降因子,本文默認(rèn)r取0.5。
為更為清楚地理解本文中對(duì)SA 算法的改進(jìn)與原算法的差別,現(xiàn)對(duì)算法改進(jìn)前后的關(guān)鍵特點(diǎn)進(jìn)行對(duì)比,具體如表1所示。
表1 模擬退火算法改進(jìn)前后特性對(duì)比Table 1 Comparison of simulated annealing algorithm before and after improvement
由表1 可知,改進(jìn)的模擬退火算法對(duì)最優(yōu)目標(biāo)粒子的搜索有更高的收斂效率,更強(qiáng)的全局尋優(yōu)能力與新粒子生成的隨機(jī)性控制能力,新粒子生成的方向性也更強(qiáng),即實(shí)現(xiàn)了新粒子的隨機(jī)性與收斂性的動(dòng)態(tài)權(quán)衡,保障算法全局參數(shù)尋優(yōu)能力的同時(shí)提升效率。
短期負(fù)荷問(wèn)題可抽象成機(jī)器學(xué)習(xí)中的1種典型回歸問(wèn)題,對(duì)于LSSVM模型雖較擅長(zhǎng)回歸問(wèn)題,但其限制主要在超參數(shù)的選擇上[15],為此人們采取了一系列措施。從最開(kāi)始的人工調(diào)參到網(wǎng)格搜索,再到進(jìn)一步對(duì)群智能算法的集成,但群智能算法在計(jì)算復(fù)雜度與收斂速度和局部最優(yōu)等方面仍有待改進(jìn)。
本文對(duì)于特征向量的選擇,使用了歷史負(fù)荷、日期類(lèi)型以及對(duì)應(yīng)的氣象因素作為輸入特征向量,通過(guò)數(shù)據(jù)分析與觀(guān)察發(fā)現(xiàn),不同預(yù)測(cè)日類(lèi)型與溫度、歷史負(fù)荷對(duì)預(yù)測(cè)結(jié)果產(chǎn)生較大影響。
考慮到歷史負(fù)荷特征的維度較高,本文對(duì)其進(jìn)行了主成分分析(principal component analysis,PCA)以提高計(jì)算效率、聚類(lèi)相似度,然后對(duì)降維后的特征向量進(jìn)行HC。在預(yù)測(cè)某一日負(fù)荷時(shí),首先對(duì)其特征向量進(jìn)行類(lèi)別劃分,再使用相應(yīng)類(lèi)別對(duì)應(yīng)數(shù)據(jù)集訓(xùn)練出的模型進(jìn)行預(yù)測(cè),可有效提升模型精準(zhǔn)度。針對(duì)訓(xùn)練出的模型LSSVM 使用ISA 算法對(duì)模型超參數(shù)進(jìn)行尋優(yōu)可進(jìn)一步提高精度。
為使用ISA對(duì)LSSVM的超參數(shù)σ、γ進(jìn)行調(diào)優(yōu),本文將數(shù)據(jù)集分成兩部分,即用于LSSVM模型訓(xùn)練與參數(shù)尋優(yōu)的訓(xùn)練集與測(cè)試模型性能的測(cè)試集。使用HC 預(yù)分類(lèi)與ISA 優(yōu)化LSSVM 混合模型進(jìn)行負(fù)荷預(yù)測(cè)的具體流程如圖2所示。
圖2 HC-ISA-LSSVM模型訓(xùn)練與預(yù)測(cè)Fig.2 HC-ISA-LSSVM model training and prediction
(1)數(shù)據(jù)預(yù)處理與主成分分析
本實(shí)驗(yàn)使用廣東省佛山市化學(xué)原料和化學(xué)制品制造業(yè)2017年5月1日——8月30日實(shí)際負(fù)荷數(shù)據(jù)(每隔15 min采樣1次,每天采集96個(gè)點(diǎn))作為歷史負(fù)荷數(shù)據(jù),8 月31 日負(fù)荷作為測(cè)試數(shù)據(jù),進(jìn)行預(yù)測(cè),再結(jié)合當(dāng)日的各時(shí)刻溫度數(shù)據(jù)與日期類(lèi)型(周一至周日)構(gòu)成完整數(shù)據(jù)集。將負(fù)荷數(shù)據(jù)和溫度數(shù)據(jù)分別進(jìn)行歸一化,日期類(lèi)型數(shù)據(jù)進(jìn)行one-hot 編碼,將處理后的數(shù)據(jù)拼接起來(lái),組成輸入特征,以預(yù)測(cè)日的前1 周的對(duì)應(yīng)日負(fù)荷與日期類(lèi)型,溫度數(shù)據(jù)作為特征向量。
為進(jìn)一步提高聚類(lèi)后同類(lèi)內(nèi)聚度與提高程序計(jì)算效率,實(shí)驗(yàn)在進(jìn)行聚類(lèi)分析之前對(duì)歷史負(fù)荷數(shù)據(jù)進(jìn)行了PCA 降維,在保有充足信息量(99%)的前提下對(duì)特征向量進(jìn)行了降維。
在充分保有信息不損失的條件下,日負(fù)荷特征部分96 維特征中,僅需保留其中23 維便足以進(jìn)行后續(xù)分析,如表2所示。
表2 主成分分析結(jié)果Table 2 Results of principal component analysis
(2)層次聚類(lèi)分析
對(duì)整體訓(xùn)練數(shù)據(jù)集進(jìn)行層次聚類(lèi)分析,發(fā)現(xiàn)可將訓(xùn)練數(shù)據(jù)集分成3類(lèi)dataSeti(i=1,2,3),將分類(lèi)后的訓(xùn)練集負(fù)荷部分可視化如下圖3。使用對(duì)應(yīng)數(shù)據(jù)集經(jīng)過(guò)LSSVM 模型訓(xùn)練、ISA 參數(shù)調(diào)優(yōu)得到對(duì)應(yīng)3個(gè)模型Mi(i=1,2,3)。當(dāng)有新的負(fù)荷需要預(yù)測(cè)時(shí)只需對(duì)其特征向量進(jìn)行類(lèi)別劃分,然后便可使用對(duì)應(yīng)模型對(duì)其進(jìn)行預(yù)測(cè)。
圖3 聚類(lèi)分析示意圖Fig.3 Schematic diagram of cluster analysis
由圖3可知,用戶(hù)用電負(fù)荷模式大致分為3類(lèi):其中類(lèi)別1屬于日用電尤其是中午與下午用電量較低的用電模式,類(lèi)別3屬于全天各時(shí)刻用電量較高的用電模式,而類(lèi)別2日期中的用電量則處于類(lèi)別1與類(lèi)別3之間,各類(lèi)別用電模式的差異集中體現(xiàn)在兩個(gè)用電峰值上。
本實(shí)驗(yàn)選擇平均絕對(duì)百分誤差(mean absolute percentage error,MAPE)與均方誤差(mean squared error,MSE)表達(dá)式如式(11)、式(12)所示
式中:n為預(yù)測(cè)總天數(shù);yi為預(yù)測(cè)日第i個(gè)采樣點(diǎn)的實(shí)際負(fù)荷;yi為預(yù)測(cè)日第i個(gè)采樣點(diǎn)的預(yù)測(cè)負(fù)荷。
程序運(yùn)行時(shí)間(program run time,PRT)作為模型性能評(píng)估指標(biāo),主要針對(duì)傳統(tǒng)模擬退火算法,粒子群算法與ISA 進(jìn)行比較,來(lái)對(duì)ISA 較高的時(shí)間效率進(jìn)行驗(yàn)證。
實(shí)驗(yàn)?zāi)P透采w了傳統(tǒng)機(jī)器學(xué)習(xí)模型與以神經(jīng)網(wǎng)絡(luò)為基礎(chǔ)的長(zhǎng)短期記憶(long short-term memory,LSTM)模型,和一些改進(jìn)的模型進(jìn)行對(duì)比實(shí)驗(yàn)。具體包括通過(guò)人工設(shè)置超參數(shù)σ、γ的LSSVM、基于粒子群算法優(yōu)化的LSSVM(PSO-LSSVM)、基于普通模擬退火算法的LSSVM(SA-LSSVM)等模型作為對(duì)比,驗(yàn)證模型優(yōu)越性。
(1)MAPE、MSE結(jié)果分析
將改進(jìn)的模型與其基本模型LSSVM進(jìn)行對(duì)比,負(fù)荷預(yù)測(cè)的結(jié)果如圖4所示。
圖4 HC-ISA-LSSVM負(fù)荷預(yù)測(cè)對(duì)比Fig.4 Comparison of HC-ISA-LSSVM load forecast
通過(guò)對(duì)比可以看到,經(jīng)改進(jìn)后的模型對(duì)預(yù)測(cè)日負(fù)荷預(yù)測(cè)結(jié)果更為精準(zhǔn)。另外,本文還使用傳統(tǒng)SA對(duì)LSSVM進(jìn)行改進(jìn)的模型進(jìn)行了實(shí)驗(yàn),得到預(yù)測(cè)日的負(fù)荷數(shù)據(jù)與本文改進(jìn)的模型與基模型的預(yù)測(cè)負(fù)荷、預(yù)測(cè)日實(shí)際負(fù)荷進(jìn)行對(duì)比,如圖5所示。
圖5 各模型31日負(fù)荷預(yù)測(cè)值與實(shí)際值Fig.5 Predicted and actual load values of each model at 31 days
由圖5 可視化實(shí)驗(yàn)結(jié)果可知,本文所提模型在預(yù)測(cè)日的負(fù)荷預(yù)測(cè)結(jié)果與真實(shí)負(fù)荷值最為接近,即所提模型的預(yù)測(cè)精度明顯優(yōu)于其他模型。
本文對(duì)各模型性能均進(jìn)行了測(cè)試,得到各模型預(yù)測(cè)負(fù)荷與實(shí)際負(fù)荷的MAPE與MSE值,結(jié)果對(duì)比如表3所示。
表3 模型MAPE、MSE對(duì)比Table 3 Comparison model MAPE、MSE
(2)PRT結(jié)果分析
對(duì)于優(yōu)化算法而言,時(shí)間損耗一直是個(gè)無(wú)法避免的問(wèn)題,故本文對(duì)各模型的訓(xùn)練與預(yù)測(cè)總耗費(fèi)時(shí)間進(jìn)行了統(tǒng)計(jì),為更加直觀(guān)展示實(shí)驗(yàn)結(jié)果,下面分別通過(guò)圖6 SA改進(jìn)前后收斂效果對(duì)比和表4模型消耗對(duì)比來(lái)進(jìn)行分析。
圖6 SA改進(jìn)前后收斂效果對(duì)比Fig.6 Comparison of convergence effect before and after SA improvement
由圖6可知,在模擬退火算法改進(jìn)前后,函數(shù)評(píng)估值隨迭代次數(shù)的變化上,經(jīng)改進(jìn)后的ISA算法隨著迭代次數(shù)的增加在收斂速度上和效率上均有明顯提升。表4進(jìn)一步量化了模型消耗時(shí)間對(duì)比。
得益于ISA算法新生粒子的依概率梯度下降特性,本文提出的模型相對(duì)于基于粒子群算法、傳統(tǒng)模擬退火算法改進(jìn)的LSSVM模型在訓(xùn)練與預(yù)測(cè)方面更快速。從而有力驗(yàn)證本文所提模型對(duì)短期負(fù)荷預(yù)測(cè)在精度與效率上的優(yōu)越性,具體實(shí)驗(yàn)結(jié)果如表4所示。
表4 模型消耗時(shí)間對(duì)比Table 4 Comparison of model consumption time
值得指出的是,本文提出的對(duì)于SA 改進(jìn)的ISA,不局限于優(yōu)化某一個(gè)模型,更是一種通用優(yōu)化算法。對(duì)于優(yōu)化器的選擇上,可以為研究者提供一種新的優(yōu)化方案,可有效縮短優(yōu)化時(shí)間。
實(shí)際負(fù)荷預(yù)測(cè)中,存在預(yù)測(cè)精度較低、預(yù)測(cè)模型訓(xùn)練速度慢、模型泛化能力不足等問(wèn)題,且目前很少有同時(shí)兼顧的方法。本文通過(guò)LSSVM對(duì)HC和PCA 的集成提升了模型預(yù)測(cè)精度,又結(jié)合自改進(jìn)的ISA完成超參數(shù)調(diào)優(yōu)且縮短了模型耗費(fèi)時(shí)長(zhǎng)。通過(guò)與各模型進(jìn)行對(duì)比,證明本文所提模型在預(yù)測(cè)精度與預(yù)測(cè)效率上均有明顯提升。
另外,本文改進(jìn)的模擬退火算法在依概率進(jìn)行梯度下降方面,具體概率分布的選擇是個(gè)值得深究的問(wèn)題;同時(shí),粒子梯度更新的梯度下降因子r的設(shè)定也存在優(yōu)化空間。未來(lái)可以使用更加智能的概率分布選擇與r的更新方法對(duì)算法進(jìn)行改進(jìn)。D