?

一種基于信息熵的LSTM 時間序列數據預測模型

2024-03-18 05:12孫夢覺周植高范培忠
科技創新與應用 2024年7期
關鍵詞:信息熵神經網絡樣本

田 園,孫夢覺,周植高,范培忠

(1.云南電網有限責任公司信息中心,昆明 650000;2.云南云電同方有限責任公司,昆明 650000)

隨著智能電網信息化的研究發展,基于用戶數據的時間序列預測分析是推動智能電網一體化建模的重要技術。其在電網控制系統運行調整、電網運營智能化、設備異常預警等諸多廣泛應用中發揮著至關重要的作用。時間序列預測有助于實時掌握數據的未來發展趨勢,提前做出最優決策。例如,文獻[1]指出如果能夠準確預測電網負載的趨勢,并根據數據實時調整相應的調度計劃,那么就可以更好地節約或控制決策成本。

現實世界中有許多不同的應用程序,相應的數據流將生成。這些不同的數據流通常具有不同的分布特征和統計信息,預測這些數據通常意味著構建不同的預測模型。為了減少資源消耗,有必要構建一個更適用于電網用戶系統的時間序列預測模型。

時間序列預測建模的眾多算法中,傳統時間預測算法模型AR(Auto Regressive)模型及其衍生模型,因數據隨機性和離散性較強,對于時間序列的時間特征信息保留效果不佳,而人工神經網絡(Artificial Neural Network,ANN)算法因其對于時間序列數據的時間特征的遺傳信息保留程度高,相較于類馬爾科夫過程當前狀態只取決于前一狀態的模型預測可靠性更好,因而ANN 模型預測時間序列的方法應用取得了長足性發展,如圖1 所示[2]。此外,因為伴隨著深度置信網絡的進一步研究與使用,深度置信網絡與注意力機制相結合,創造出了一種名為深度置信網絡(Deep Confidence Network,DCN)的混合模型。同時,在序列學習任務的需求中延伸出了循環式神經網絡(Recurrent Neural Network,RNN),在RNN 中出現了3 個特殊門機制:記憶門,遺忘門,輸出門。通過3 個特殊門機制的相互作用,構造了長短時記憶網絡(Long -Short-Term Memory,LSTM),在對有時間特性的序列數據的回歸預測中,優化了傳統RNN 中時間序列過長導致的梯度下降問題,避免了傳統模型中存在的梯度爆炸問題,優化了反向傳播神經網絡(Back Propagation Neural Network,BPNN)的缺陷。

圖1 ANN 結構圖

目前,國內外研究者在時間序列的回歸和分類方面已經取得了不少的研究成果,其具體應用如對于股票行情,電網負載的預測等。關于時間序列預測在電網方面的運用,Sheikh 在文獻[3]基于極限學習機和電網消費用戶的行為規律,提出了一個新的數據挖掘框架來分析電網消費者的用戶行為,以期預測未來短時間內,在智能電網中特定消費者群體的用電負載,并同時分析集群用戶電力行為模式的相似度,把收集到的用戶電力負荷時間序列數據和具有相似行為的電網用戶分類到相同的模型中預測。

LSTM 網絡和門循環單元(Gate Recurrent Unit ,GRU)網絡,在處理長時間序列預測問題時,由于其特殊門機制的作用,在序列的回歸分析和預測任務上表現優秀,如文獻[4]采用LSTM 進行負荷預測,在模型算法的預測過程中使用了搜索方法,基于搜索算法的隨機性,來優化整個神經網絡的普適性,以確保獲得最優的網絡設定參數。文獻[5]為了進一步提升模型的有效性,通過誤差參數指標,再通過倒數相關方法將LSTM和極端梯度提升方法(eXtreme Gradient Boosting,XGBoost)構建了一種基于混合模型的時間序列預測方法,用于負載的短期預測。文獻[6]提出了一種卷積神經網絡和門循環單元網絡的混合模型。文獻[7]提出了一種卷積神經網絡和長短時記憶網絡結合的混合神經網絡模型。上述提到的算法都是通過卷積神經網絡的相關方法,來對多維數據序列特征進行提取,之后再利用GRU 或LSTM 神經網絡進行預測。這種混合模型算法的優勢在于能夠更加充分地挖掘序列的數據特征,從而減小了由于人工標注帶來的誤差,提高了時間序列預測模型的算法有效性。

1 相關理論基礎

在傳統時間序列預測模型中,普遍存在部分參數存在異常和缺省的情況,常見的預測過程中會使用缺省值估計和均值填充的方法來補全數據集,其中通過機器學習的估算方法一般有K 鄰近法、BPNN 等。其中K 鄰近算法模型的算法流程是通過找出與缺省值的直線距離最近的K 個完整數據,然后通過計算這K 個數據的算術平均值來補全缺省數據以增強模型的兼容性和普適性。

BPNN 則通過利用當前已經獲取到的完備序列數據來優化網絡模型,其過程:首先將所獲取到的完備序列數據集作為整個神經網絡的輸入層,然后把缺失的序列數據作為神經網絡訓練的輸出結果,將有缺失值的樣本和記錄中擁有其他已知數據的樣本輸入訓練好的網絡,最終網絡輸出的結果是對整個數據樣本基于缺失值的估計。統計學方法只針對整個序列和部分序列進行特征的整體提取,仍然會丟失數據集中的部分數據特征。此外基于時間序列分解的相關研究在針對于金融領域表現尚可,且可處理存在缺省值的時間序列數據并自行預測,但時間序列數據中往往包含有周期性特征和趨勢不顯著的諸多分量,在此類特性較強的時間序列中該模型表現一般。

通常在真實環境中獲取到的傳感器記錄的時序數據,具有非線性、非平穩的特征,上述傳統方法不能夠十分顯著地提取和預測序列的特征和趨勢,而本文基于LSTM 對于時間序列數據趨勢預測的基礎上,提出了一種基于信息熵的數據預處理方法,并且同時依照數據熵值特征對數據樣本進行神經網絡訓練并建立趨勢預測模型。

循環神經網絡RNN 因其本身特性,是一種主要用于預測和處理序列數據的神經網絡方法,而時間序列數據,究其本身是指在諸多不同的時刻節點上采集到的帶有高度實時特性和時間特性的數據,這類數據往往將伴隨著很強的離散性同時也代表了數據本身的狀態轉移和變化情況。

RNN 依靠隱藏層把時間序列中帶有的信息進行傳遞,但會存在問題,一是時間序列中數據各種各樣,可能伴隨著對下一輸出時刻沒有太多信息價值的數據或謬誤,將會對預測結果產生誤差,二是當時間序列過長,RNN 的計算負擔將會急劇增加,對于長時間序列預測,RNN 的運算復雜度會激增,三是RNN 本質上也是利用BPTT 的方法訓練,將會存在一定程度上的傳統BPNN 的局限性。

圖2 是在RNN 的一個單元中每一次的迭代計算流程,除了當前時刻的狀態量xt輸入以外,還需要輸入上一次迭代的狀態量ht-1,該數據取決于之前t-1 個時刻的數據,因而RNN 神經元還將輸出一個ht包含了之前t個時刻的信息的狀態量,時間序列數據也具有相應信息特征,在RNN 的隱藏層中多次迭代的信息將會對結果產生預測作用。

圖2 RNN 結構圖

信息熵(Information Entropy),被信息論的創立者香農(Shannon)從傳統熱力學中借鑒后提出,在傳統物理的熱力學體系中,熵值是用于闡述物質本身其內部混亂程度的一個量綱,而香農信息論中則使用該數值闡述信息的價值,本文基于信息熵理論,通過信息熵的大小來對事件信息的無序程度進行合理的評估和度量,事件狀態的轉移程度越大,或者事件本身的離散程度越大則信息熵也越大。

信息熵在相關研究中,過去多用于決策樹等算法的權值計算和閾值分類[8],而本文就信息熵理論,對時間序列的時間特征信息進行提取,把熵值相近的事件進行聚類歸并,歸并后的數據再進行相關神經網絡訓練架構組合模型。其數學意義在于:熵值較大在時間序列中就代表該組數據的特征越明顯,把各種可能表示出的信息量乘以其發生的概率之后求和,就表示了整個時間序列所有信息量的一種期望值。

假設某一事件X其事件本身存在n種狀態,記錄為X{x1,x2,x3,…,xi},P(i=1,2,3,…,n)表示事件的狀態xi在整體事件X中發生的概率,則把事件X的信息熵H(x)定義為

LSTM 作為RNN 中的一種發展型網絡,在原有的RNN 基礎上增加了一個新的狀態參量c來實現網絡中的遺忘功能。

圖3 為本文中相關LSTM 網絡單元的迭代流程,LSTM 算法模型通常在輸入層有3 個不同的狀態參量,分別是ct-1、ht-1和xt,3 個輸出層的狀態參量分別為ct、ht和yt,其中xt代表了當前迭代過程中的輸入參量,ht-1為上一次迭代過程的狀態輸出參量,ct-1代表上一次迭代的全局信息載體;其次yt為本次迭代的輸出參量,ht為本次迭代的狀態參量的輸出值,ct為本次全局參量的信息載體。

圖3 LSTM 結構圖

在構建的基于信息熵的LSTM 時間序列復合模型中,每次迭代首先會計算當前時刻t下的數據xt與前一個時刻t-1 下的ht-1,并由二者得出一個中間參量,再與ct-1構建的遺忘門繼續篩選完成本次迭代[9]。

2 基于時間序列信息熵的LSTM 改進模型

2.1 數據信息熵處理

本文基于電網用戶的時間序列數據,提出了一種基于信息熵優化處理的LSTM 改進模型,時間序列數據集來自于華東某地區,把數據集內的時間序列數據進行熵值處理用于提取特征,由于傳統的RNN 主要依靠隱藏層,把時間序列數據中帶有信息進行傳遞,會存在局限性:時間序列數據中的數據特征不明顯時,在迭代中可能會出現對于預測結果的負面影響。伴隨著對下一輸出時刻沒有太多信息價值的數據或謬誤,將會對最終趨勢預測的結果產生誤差和錯誤。

本文對于時間序列數據的處理過程包括:首先對時間序列數據進行極差標準化,其次把極差標準化的結果,再進行信息熵值的統一計算,依照熵值閾值大小評估特征類型。最后,特征分類之后用于LSTM 網絡的下一步學習預測。

2.1.1 極差標準化

在機器學習的諸多數據處理方法中,在數據的預處理上,通常會選擇采用極差的方法來描述一組序列數據的離散特性,同時反映了該時間序列數據中,數據分布的變異范圍和離散幅度。且要求在該序列數據的樣本總體中任意2 個序列樣本數據的標準值之差都不能超過極差[10]。

文章提出的方法在對數據集的時間序列數據的處理中,首先對數據集中選取的樣本數據序列進行了極差標準化運算,同時篩選剔除離群特征過高的點。

此外,時間序列數據的離散程度是其具有的固有屬性,因為時間序列數據的特殊性,具有很強的離散性和隨機性,因而極差標準化之后的數據在一定程度上反映了其信息量的大小,體現了該時間序列數據對于預測的價值。

2.1.2 信息熵值計算

依照公式(1)中的計算方法把極差標準化后的數據樣本進行熵值計算,將時間序列數據得出的結果進行排序后,各個樣本之間由于信息熵本身特性可知,信息量越大熵值越高,信息量越小熵值越低,同時熵值相近的數據樣本,則表明其離散程度越接近,以此設置信息熵閾值見表1[10]。

表1 特征分類閾值表

2.1.3 K-Means 聚類歸并數據特征

利用K-Means 聚類法,對一維時間序列數據進行聚類后分為六類特征。特征則表示聚類后,具有相同特性一類樣本,便于之后的神經網絡訓練。

表2 表示在多次通過K-Means 迭代處理后的樣本聚類特征取均值結果,依照樣本特征2 為界,把特征1 作為低熵模型,樣本2 作為中熵模型,特征3,特征4,特征5,特征6 作為高熵模型,共抽取了40 個時間序列樣本數據,依照樣本熵值進行迭代歸并,時間序列數據的樣本數量模型分布符合高斯分布。

表2 樣本特征歸并表

2.2 LSTM 結構設計

在本文的LSTM 模型設計中,一個LSTM 神經元由4 個參量構成,分別是被用來代表狀態的神經元和用來處理和保留序列信息的記憶門,以及負責篩除序列信息的遺忘門,和輸出序列信息的輸出門,神經元狀態是指代模型本身的狀態和模型在數據多維空間中記錄的信息,因而神經元狀態由門的參量變化決定,本文的門機制選擇了sigmoid 函數,sigmoid 的取值在0 至1[11]。

遺忘門的sigmoid 函數通常決定丟棄何種信息,公式如下

式中:a<t-1>是t-1 時刻的輸出,x<t>是t時刻本層迭代神經元的輸入,wf是各個變量的權重,bf是偏置項,δ 是sigmoid 函數,δ(x)= (1+e-x)-1,Γf參量的取值范圍被定義在0 至1,當參量函數取值為0 的時刻,則表示在序列數據流中,當前時刻的序列特征信息被完全遺忘,而當參量函數的取值為1 的時刻,則表示在序列數據流中,當前時刻的序列特征信息被完全記憶。

記憶門的運作流程,首先sigmoid 函數計算結果Γu,其次,記憶門依照運作機制設定,將會根據tanh激活函數自行生成一個新的迭代參量向量,之后把這個向量添加到神經元狀態中[12]。再通過舊的神經元狀態去點乘遺忘門函數(Γf),來遺忘當前的神經元狀態中部分舊的信息,之后再加上新產生的候選值。由此更新當前時刻的神經元狀態,公式為

式中:tanh表示一個雙曲正切激勵函數[13],c<t-1>表示神經元狀態值在時間序列中<t-1>時刻的大小,表示從時間序列中t時刻的輸入信息中提取出的需要記憶的信息,c<t>表示記憶門工作之后的神經元狀態值[14]。輸出門依照神經元狀態,基于sigmoid 函數確定輸出的信息量,使用tanh函數處理c<t>,Γu和c<t>相乘得到輸出,公式為

LSTM 神經網絡的預測表現相較于傳統RNN 網絡,有較高的效果提升,3 個門機制在很大程度上確保了時間序列預測模型的有效性[15]。

3 實驗驗證

3.1 實驗環境

操作系統:Windows 10。

處理器:Inter CoreI7-6700HQ 2.60 GHz。

內存:16 GB。

編程語言:Python 3.6.1。

深度學習框架:TensorFlow 2.1。

3.2 實驗數據集

本文實驗的數據集來自國內東部某地區部分居民用戶2015 年1 月1 日到2016 年8 月31 日電網用戶負載的時間序列數據,本文采用的時間序列數據時間跨度為609 d,用戶樣本數量40 個。

3.3 實驗結果

實驗中基于信息熵選取的特征6 種類型并依照其熵值差異,建立3 種不同的預測模型,即低熵、中熵和高熵模型,并對熵模型進行了預測分析。由圖4—圖8中可觀察出,預測結果及趨勢大致符合實際值。對于近120 d 的時間序列數據預測具有指導價值。同時實驗的對比結果對比傳統LSTM 模型和GRU 模型在相同數據集上建立預測模型,作為實驗對照。

圖4 低熵模型預測

圖5 中熵模型預測

圖6 高熵模型預測

圖7 傳統LSTM 模型預測

圖8 GRU 模型預測

3.4 評價指標

本實驗評價指標采用Loss 函數,Loss 函數的作用是主要用于描述網絡模型質量的一個重要指標,體現了預測模型的結果與實際值之間的差值,體現了網絡預測結果的誤差大小。通過觀察圖9 至圖13 實驗中的評價指標,可知預測的時間序列數據在200 次迭代以后趨于穩定,在迭代至500 到600 次以后趨于穩定。本文實驗中的Loss 函數采用MSE(均值平方差),如公式(10)和圖9 至圖13 所示。

圖9 低熵模型Loss 函數

圖10 中熵模型Loss 函數

圖11 高熵模型Loss 函數

圖12 傳統LSTM Loss 函數

圖13 GRU 模型Loss 函數

4 結束語

本文通過信息熵優化的LSTM 預測模型,對時間序列數據的預測結果表明(表3),在不增加神經網絡的深度和復雜度的基礎上,利用本文提出的方法,尤其在離散程度較大的高熵模型中,數據收斂的梯度更快更平滑,而中熵模型和低熵模型中,時間序列數據趨勢的預測結果收斂的速度較低,在Loss 函數的表現上多次迭代結果顯示,在時間序列數據總體熵值逐漸上升的過程中,趨勢預測的學習結果逐步上升,均在0.1 以下,且高熵模型的Loss 函數值最低,則其代表著,離散程度越高的時間序列,所包含的信息量也就越高,則其序列本身在相同的LSTM 模型下學習的效果越好。其次MSE 函數表明預測結果與實際值差距較小,在時間序列預測中有一定的指導意義[15]。

猜你喜歡
信息熵神經網絡樣本
基于信息熵可信度的測試點選擇方法研究
用樣本估計總體復習點撥
神經網絡抑制無線通信干擾探究
推動醫改的“直銷樣本”
基于信息熵的實驗教學量化研究
一種基于信息熵的雷達動態自適應選擇跟蹤方法
隨機微分方程的樣本Lyapunov二次型估計
基于神經網絡的拉矯機控制模型建立
村企共贏的樣本
基于信息熵的IITFN多屬性決策方法
91香蕉高清国产线观看免费-97夜夜澡人人爽人人喊a-99久久久无码国产精品9-国产亚洲日韩欧美综合