孫夢覺,田 園,湯 呂,李 珗
(1.云南電網有限責任公司信息中心,昆明 650000;2.昆明云電同方有限責任公司,昆明 650000)
電網智能化處理用戶數據的相關應用正在國內快速發展,基于電網數據的回歸分析和分類模型的相關研究已趨于成熟化。但常用的電網數據分類算法是基于經典統計學算法,導致分類模型中,模型結果更多的是偏向電網用戶中的數據離群樣本,因此影響了整體預測分析的精確度。同時,常見的統計學算法在面對不止含有單一維度數據的多維數據時,不能有效提取并處理多維數據集的樣本特征,因此,為了解決上述此類問題,國內外的研究者們提出了許多基于機器學習的回歸和分類算法[1]。例如,Xiao 等[2]提出了非均衡數據集分類算法,通過評估參數篩選出數據集中少數類樣本的特征屬性,從而實現優化分類器精確度的目的。而張明等[3]提出了采用混合采樣的分類算法,通過對少數類在稀疏域使用過采樣方法,多數類在密集域使用欠采樣方法,然后對二者平衡后的數據集使用由決策樹組成的分類器進行分類,從而得出更加精確的分類結果。陶新民等[4]則是將逐級優化遞減欠采樣和邊界人工少數類過采樣算法進行有效結合。首先,對樣本類進行降采樣,然后選擇邊界樣本進行升采樣,該步驟的目的在于去除噪聲的干擾,從而保留有效的數據。Moayedikia 等[5]則提出了高維數據特征選擇分類算法,在高維非均衡數據集中衡量分類標簽相關特征下,通過選取相關度最高的一組使分類效果達到最佳。接著,Ando 等[6]提出一種深度過采樣框架下非均衡數據分類算法,通過深度特征模型對少數類進行重采樣,從而有效地改善數據類別之間的不平衡性。但是,分類模型并不適應于一些極端不平衡的數據樣本,因此,如何對數據集中最具有特征的樣本進行挖掘,成為了特征工程中一個代表性問題,對此研究者們提出了一些更優異的算法。例如,Chung 等[7]將代價敏感策略引入深度學習的分類算法中,通過在深度學習模型的損失函數中加入代價因子,從而減少了對樣本的錯誤分類。Ng 等[8]則提出了雙重自動編碼器的非均衡數據分類算法,由2 種激活函數分別計算得到對應的自編碼網絡,實現數據集中多數類和少數類樣本的學習訓練,提取分類特征。隨后,Khan 等[9]提出了基于數據特征學習的分類算法,通過優化卷積神經網絡(Convolutional Neural Network,CNN)模型中的特征學習過程,使數據特征對數據集分類具有了更高的判別性。Douzas 等[10]提出了基于生成對抗網絡的非均衡數據分類算法,生成對抗網絡訓練出少數類樣本,通過這樣的少數類樣本讓深度學習分類器模型得到分類的特征表達,從而去改善數據集中少數類樣本的識別率。張文東等[11]提出了基于改進反向傳播(Back Propagation,BP)神經網絡的非均衡分類算法,通過在模型隱含層之間加入一種特征損失層,即可去除冗余的數據特征,降低數據集的非均衡性。
上述列舉的研究成果對于電網小樣本數據集的分類結果有明顯改善,但對于大數樣本則效果一般。文獻[12]中指出,在數據分類處理過程中多維數據特征選擇存在信息丟失,類別之間錯分代價不同,導致分類結果魯棒性較差。而文獻[13]研究說明神經網絡能夠不斷地訓練特征響應,從而得到表達能力強的抽象特征,在抽象特征中提取數據特征后保留有效信息,上述二者研究證明了神經網絡相關方法在多維數據特征工程領域的優越性。
而本文對多維度樣本數據集回歸分析是結合文獻[14]中提出的分類和回歸相融合的方法,首先將數據集樣本采用K-means 分類器算法進行特征維度抽象并聚類,得到數據特征集合,在數據集合中,遴選聚類中心進行迭代劃分,之后按照劃分結果計算RNN 神經網絡模型中隱含層的權重系數,根據訓練好的分類器通過樣本數據輸出相應分區的聚類結果,從而獲取分區后的樣本特征點。通過K-means 方法將多維數據降維到二維數據并求取其聚類超參數,從而構建RNN 神經網絡迭代特征學習模型。本文在一定程度上平滑多維數據樣本中少數樣本離群點對整體模型精確度的影響,提高整體回歸分析模型的準確性,以求改善大數據集的分類結果。
RNN 神經網絡的學習訓練由網絡輸入層和前向輸入層序列數據的記憶網絡共同組成[15-16]。首先在輸入層中,假設在N個數據樣本的集合中,數據集合序列{(xi,yi)|x∈Rm,y∈Rn,i=1,2,…,N} 為離散時間序列,Rm表示輸入層有m個神經元,Rn表示輸出層有n個神經元。RNN 神經網絡完成了訓練樣本從輸入到輸出的高維非線性映射f:Rm→Rn,再由檢測樣本來檢驗網絡的泛化能力。該過程的映射關系表示為
式中:wij表示記憶網絡的權重系數;ηj表示在輸入層中,此刻輸入層網絡神經元的權重數據;zjt表示在隱含層中,隱含層網絡的權重系數;rt表示在隱含層中,加入的偏置參量;xi(t-1)表示t-1 時刻的網絡數據;xi(t)表示t時刻的網絡數據。在第t=1 個時刻會進行網絡的初始化。其中f[*]和xi(t)中包含了激活函數,文章中f[*]激活函數采用了sigmoid 函數,xi(t)則采用了softmax函數。
鑒于網絡在一次迭代過程中,無法得到準確的輸出結果。因此,需要依靠時間反向傳播(Back-propagation Through Time,BPTT)的過程,將誤差信號從輸出層流入各中間層,逐層不斷修改隱含層的神經元權重值。在網絡的迭代過程中,網絡本身的全局誤差會不斷向最優值趨近,以此優化算法分類的有效性。其中隱含層權值的變化為
通過累計誤差方法去不斷調整RNN 算法網絡中記憶網絡的權值wij,使全局誤差E進一步優化,即
式中:λ 為網絡的學習率,對于p個輸入的數據樣本,采用x1,x2,…,xp來表示,第p個樣本輸入到RNN 神經網絡后得到輸出ypk,通過平方型誤差函數或者交叉熵損失函數得到第p個樣本的誤差Ep
式中:tpk為p數據樣本在第k個輸出層的期望輸出。神經網絡算法結構圖如圖1 所示。

圖1 神經網絡算法結構圖
當前,常見的回歸算法是通過特征選擇、降維[17-18]等數據預處理過程減少迭代過程中產生的經驗誤差,但該過程降低了數據內部的有效特征信息量,影響了后續組合模型的性能。
本文算法首先根據訓練樣本建立RNN 多層神經網絡初始化模型,再使用K-means 方法管理RNN 神經網絡的輸入層,計算多個輸入層數據的維度屬性價值量用來調整權重參數,使輸出層得到隱含層中迭代加權后的最佳響應值。然后,以最佳響應值對應的樣本聚類特征點計算同類樣本中最大信息維度,在輸出層神經元構建含有數據特征信息的預測模型。最后,在組合模型的輸出層調整樣本集遍歷后的數據測試結果,對照測試集并通過MSE和MAE函數來驗證準確率。
本文首先通過聚類方法對輸入層的多維數據進行權重融合,在數據維度信息價值分布不平衡時,有效地處理多維度數據。從而避免了類間信息價值差異大的部分樣本出現影響預測結果的問題。然后,使用K-means聚類方法中平滑更新的方式來保持模型可靠性。由于神經網絡共享了多個隱含層中的所有參數,因此節省了存儲空間并避免了網絡冗余。最后通過判斷最大響應值來對少數類樣本分類,避免了數據的過擬合[19-20]。
根據K-means 分類器方法把二維數據的結構抽象為T={V,S},T集合中S和V 參數表示維度特征,νi,Sk之間的距離表示2 個特征之間的關系,則T集合中的特征關系通過歐拉公式的長度定義為
式中:T集合中用來訓練數據點樣本集合,k表示數據集合中的聚類個數,分類的特征結果由模型分類器輸入,φu(*)表示特征數據在二維空間上的分布,根據數據中的不同聚類中心劃分聚類邊界,計算聚類模型的分布函數H(νi,sk)
式中:zjt為特征數據在第t次迭代上的權重系數,本文通過少數類的可靠度自適應函數得到權重值,公式(2)修改為
式中:ανt表示數據點中隱含層分數的最大值,但忽略了可靠性問題,如果分類區間劃分不佳,則會對后續預測結果造成很大的影響,所以需要沿著迭代過程更新超參數,計算各聚類結果的可靠度,其中每次迭代的可靠度用βν表示,公式如下
本文改進的神經網絡算法將2.1 節得到訓練樣本集合中的最大響應值對應的數據點,作為代表性較強的樣本特征點,然后在輸出層構建回歸預測模型。本文提取序列特征再進行K-means 聚類計算,得到了數據樣本特征集合。該過程是算法中區分特征顯著性的關鍵步驟[21-23]。
假設訓練樣本響應后集合為:Φ={(xi,yi),1≤i≤c},其中c為訓練后數據樣本的類別數,xi為第i類的訓練樣本特征點,yi為其輸出的參數,τi為第i類樣本的特征點總數。
其中正數ri為樣本特征點xi到異類樣本的歐式距離,然后定義一個以xi為中心ri為半徑的區域,顯然在半徑以外的數據點對RNN 網絡迭代幾乎沒有影響,而半徑內有較多相同類別的樣本特征點。此外依照數據樣本中特征最顯著的樣本,以此構建網絡中神經元的數量,如式(9)
式中:Φ(x1,x2,…,xn)為輸入的數據集合,θ 為網絡中用于數據平滑的閾值,f(*)為神經元中的激勵函數,通過RNN網絡中神經元的運算規則可以得到對應的低維數據超平面方程
式中:wi為輸出層神經元的權值,而表示為數據樣本集中第i個數據點離超平面的距離,當該點位于此超平面內,則數據輸出為0,否則為1。因此,對于高維數據的處理神經網絡神經元的數學模型可以表示為
該神經元相當于在樣本集中以核心W=(w1,w2,…,wn)為球心,以θ 為半徑作一個超球面,當數據點在此球面內則輸出為0,否則為1。
根據最優化K-means 聚類值構建的RNN 網絡的數據回歸分析模型,避免了模型向少數特異類樣本的傾斜。然而RNN 神經網絡輸出層的分析結果,是經過相對多數遴選生成,沒有考慮樣本上的泛化誤差。因此本文對RNN網絡輸出層進行必要的調整,來提高整體模型的性能。
數據分類任務是利用N個神經網絡組成的集合,對參數f:Rm→Rn進行近似,其中參數Rn為網絡輸出,假設N個樣本的期望輸出為D=[d1,d2,…,dN],其中dj為第j個樣本的期望輸出,第i個神經網絡的實際輸出為fi=[fi1,fi2,…,fiN],其中fiN表示第i個神經網絡在第N個樣本上的實際輸出。于是通過D和fi可知,第i個神經網絡在這N個樣本上泛化誤差為
式中,對于誤差公式定義為
若集成在第j個樣本上的實際輸出為,則集成在N個樣本上的泛化誤差為
根據泛化誤差調整輸出層的預測結果,能有效提高預測模型的準確性。
Step1:根據公式(5)構建K-means 聚類的輸入層邊界。
Step2:計算數據樣本的迭代模式,自適應各次迭代的權重值,建立訓練迭代后的聚類應的特征點xi,確定其分類,得到最優化聚類的輸出結果。
Step4:直到對剩余數據點尋找到同類的聚類區間,最后聚類結果的聚類中心對應于本文算法分類器中輸入層的神經元權重結果。
Step5:對輸出層計算樣本的泛化誤差,調整回歸分析結果輸出。算法流程圖如圖2 所示。

圖2 算法流程圖
損失函數定義為評價預測結果與測量值的誤差指標,本文指標依照文獻[24-25],取MSE和MAE為模型預測和測量值偏差的指標,準確率評價指標MSE和MAE表示為
式中:MSE當測試集和比較集的預測準確率都很高時,MSE的評價值較小。MAE的值較低時表示回歸預測模型的精確值比較高,算法的可靠性較好。
表1 列舉了本文在UCI 數據集上選取的3 個摩洛哥得土安市(Tetuan,Morocco)耗電量部分數據集,將數據劃分為80%訓練集和20%測試集,本文算法以神經網絡模型作為組合模型,根據MSE值與MAE值2 種不同的Loss 函數評價指標進行比較,實驗表明本文算法對電網用戶數據集進行短期預測具有良好的可靠性。本文設置的實驗配置處理器為IntelRi7-6700 2.60 GHz,內存為16 GB。采用TensorFlow2.1 框架實現。接下來通過實驗結果對4 種不同的算法進行實驗分析。

表1 實驗數據集
本文提出的基于聚類方法改進的神經網絡回歸算法與SVM 算法、基于統計學算法的AR 算法、基于BP改進的RNN 算法、基于時間序列的LSTM 和GRU 算法進行歸一化實驗對比分析。實驗結果表明,本文提出的模型回歸分析預測結果表現最佳,表2 和表3 為各算法的MSE值和MAE值對比結果,此外在圖3 和圖4 中展現了本文提出算法與真值的預測對比圖。

表2 不同算法的MSE 值對比結果

表3 不同算法的MAE 值對比結果

圖3 部分預測結果圖
從表2 和表3 的摩洛哥得土安電網(Tetuan,Morocco)數據集對比中,可以看出本文算法的MSE和MAE值相比其他算法得到明顯優化,主要是因為其他算法,在多維數據計算中因離群類的混雜過擬合,導致查準率較低,而本文通過K-means 方法改進的RNN神經網絡模型輸出,由聚類特征來對樣本分類進行訓練歸并后得出更合理的預測結果,避免了數據的過擬合,提高了預測的準確率。多維數據中存在的稀疏樣本數據點會影響整體模型的預測性能,導致其他算法預測結果較差,而本文是針對樣本維度特征點去計算同類樣本中的聚類區間,并依照各自聚類區間訓練,構建出合理的神經網絡預測模型。從不同區域的樣本數據集上,可以得出本文提出的改進算法在不同數據集中的數據分析效果同樣較優的結論。
由于傳統回歸模型對非單一維度數據集進行回歸分析時,少數奇異樣本具有較高的影響代價,導致回歸分析預測的準確率較低,因此,本文提出了一種基于K-means 的神經網絡數據集的回歸預測算法,即通過K-means 聚類算法結構優化RNN 神經網絡的輸入層,依照該聚類模型對應的樣本特征點計算出同類樣本中的最優化響應后,構建含有數據特征信息的聚類邊界,再對高維數據類別進行劃分從而平滑多維數據類別間因奇異值誤差造成的擬合代價,提高數據集樣本的預測可靠性。最后通過對比驗證結果表明,在回歸分析數據集中本文算法性能更優秀,超過了常見的回歸預測算法,具有一定的現實意義和實操性。但本文算法并沒有考慮到動態環境下,數據集中少數類樣本的分布變化,下一步的研究方向是在半監督學習框架下學習訓練有價值的標簽數據,提高聚類算法的魯棒性。