上海大眾燃?xì)庥邢薰?彭怡偉
目前城市燃?xì)饣A(chǔ)設(shè)施已經(jīng)基本完善,相應(yīng)地為了服務(wù)于天然氣行業(yè),促進(jìn)天然氣健康合理的發(fā)展,也形成了許多系統(tǒng)應(yīng)用。其中以SCADA 系統(tǒng)、燃?xì)庹{(diào)壓器預(yù)警系統(tǒng)和GIS系統(tǒng)在燃?xì)庑袠I(yè)的應(yīng)用尤為突出。無論是SCADA 系統(tǒng)和燃?xì)庹{(diào)壓器預(yù)警系統(tǒng)還是GIS 系統(tǒng)都具有數(shù)據(jù)的初步分析功能,但是這些數(shù)據(jù)的分析都只是基礎(chǔ)的統(tǒng)計學(xué)分析。利用當(dāng)前人工智能的最新成果對數(shù)據(jù)進(jìn)行分析,不僅可以解決以上設(shè)備之間的相關(guān)性問題,甚至還可以發(fā)掘設(shè)備之間潛在的信息,這些信息對燃?xì)夤芾碚?、供?yīng)者和消費者而言都存在著十分大的潛在價值。
長短期記憶網(wǎng)絡(luò)(LSTM,Long Short-Term Memory)是一種時間循環(huán)神經(jīng)網(wǎng)絡(luò),適合于處理和預(yù)測時間序列中間隔和延遲非常長的重要事件。在燃?xì)鈹?shù)據(jù)的分析中,利用LSTM 將歷史數(shù)據(jù)和實時數(shù)據(jù)作為輸入,將預(yù)測的未來數(shù)據(jù)作為輸出,通過梯度下降算法對神經(jīng)網(wǎng)絡(luò)進(jìn)行訓(xùn)練,可以完成由序列到序列的壓力、流量和溫度的未來數(shù)據(jù)。對于燃?xì)夤芾碚叨?,如果知道了未來燃?xì)獾挠昧孔兓厔?,便可以對燃?xì)獾墓?yīng)在源頭上進(jìn)行適當(dāng)調(diào)整,以滿足不同用戶的消費需求,一方面方便了燃?xì)夤镜娜粴夤芾?,另一方面推動了智慧燃?xì)獍l(fā)展。
燃?xì)庀到y(tǒng)中采集的數(shù)據(jù)有許多不同種類,不同的設(shè)備采樣頻率不一定相同。嚴(yán)格來說,從模型建立的角度考慮只有同一時刻采集的數(shù)據(jù)才能參加同樣的計算,也就是需要保持采樣時間相同,但是由于對于多個設(shè)備而言,這是非常困難的。這時可以使用數(shù)據(jù)預(yù)處理的方式,使得數(shù)據(jù)滿足模型的需求。
任何算法,不可能完全消除噪聲,只能在一定的理論基礎(chǔ)上,一定程度地降低噪聲,本文中使用的數(shù)據(jù)預(yù)處理,目的有兩個:一是將小數(shù)據(jù)的噪聲,盡可能使數(shù)據(jù)趨于可靠;二是減小數(shù)據(jù)的稠密程度,也就是將數(shù)據(jù)變稀疏,因為如果相鄰的數(shù)據(jù)變化不大,這樣的數(shù)據(jù)幾乎提供不了多少有用的信息,只是徒勞增加模型的計算量,所以要使用數(shù)據(jù)預(yù)處理的方式達(dá)到以上目的。
1.2.1 歸一化、標(biāo)準(zhǔn)化
此處的歸一化是將數(shù)據(jù)d 根據(jù)最大值和最小值歸一化到0~1 之間。此歸一化最重要的優(yōu)點在于,可以統(tǒng)一各種不同的單位。同樣的數(shù)據(jù),在不一樣的數(shù)據(jù)測量標(biāo)準(zhǔn)下的得到的數(shù)據(jù)在數(shù)值上差距非常大,如果將魚龍混雜的標(biāo)準(zhǔn)下測得的數(shù)據(jù)放到同樣的模型下進(jìn)行數(shù)據(jù)計算顯然是非常不科學(xué)的。我們選擇在不改變原有數(shù)據(jù)所包含的數(shù)據(jù)信息的基礎(chǔ)上將數(shù)據(jù)轉(zhuǎn)換到第三者的機制上,0 和1 范圍的規(guī)范化提供了最好的選擇。
采用歸一化可以提高網(wǎng)絡(luò)對數(shù)據(jù)的敏感度,使得每一次的數(shù)據(jù)輸入,網(wǎng)絡(luò)都會有相應(yīng)的參數(shù)調(diào)整,有效利用數(shù)據(jù),節(jié)約魔性訓(xùn)練時間;但是這種歸一化的處理不具備初步去除噪聲的功能,為了彌補這一缺點的另外一種歸一化方法是標(biāo)準(zhǔn)化。當(dāng)神經(jīng)網(wǎng)絡(luò)的激活使用的是sigmoid 或者tanh 這樣的函數(shù)時,數(shù)據(jù)均勻分布在0 附近,更有利于網(wǎng)絡(luò)的學(xué)習(xí),更有利于訓(xùn)練網(wǎng)絡(luò),挖掘數(shù)據(jù)中潛藏的信息。
1.2.2 取均值、去奇點
為了減少數(shù)據(jù)量,簡化模型的計算成本,數(shù)據(jù)預(yù)處理時可將一個小時內(nèi)采集的數(shù)據(jù)(無論是每一分鐘一次,每三分鐘一次或每五分鐘一次),都取一個平均值作為這一個小時所對應(yīng)的數(shù)據(jù),于是就相當(dāng)于每一臺設(shè)備,每小時有一個數(shù)據(jù)。這些數(shù)據(jù)對應(yīng)的時刻,當(dāng)作是同一時刻,也就是對于模型的搭建而言,它們處于同一個時間步。
首先,在大多數(shù)情況下都假設(shè)噪聲數(shù)據(jù)時服從正態(tài)分布的,那么在一個小時內(nèi)的噪聲數(shù)據(jù)也可以認(rèn)為是服從正態(tài)分布的。如果對一個小時內(nèi)的數(shù)據(jù)求平均值的話,噪聲剛好可以疊加抵消,對于整個一小時的數(shù)據(jù)而言,相當(dāng)于去除了噪聲。其次,用戶燃?xì)獾氖褂靡?guī)律往往是一些時段使用量比較大,一些時段使用量比較小,這樣在大小使用量的時段之間往往間隔著很多個小時。一般情況下,在傍晚四點半到八點之間用戶使用燃?xì)獾挠昧渴潜容^大的,在這時段數(shù)據(jù)會有較大的變動,使用一小時為單位,可以很好的反映出這種用量的變化,當(dāng)然也許半小時會更好一些,但是在處理上就變得比較繁瑣了。再者,數(shù)據(jù)采集終端采集到的數(shù)據(jù)不是同步的,而LSTM 神經(jīng)網(wǎng)絡(luò)在預(yù)測下一個時間點的數(shù)據(jù)時會依賴前幾個時間點的壓力數(shù)據(jù),因此將數(shù)據(jù)統(tǒng)一到相同的時間步長上才好使用LSTM 建立數(shù)學(xué)模型,而將數(shù)據(jù)一個小時取一個平均值作為時間步,可以滿足模型在相同的時間步下進(jìn)行計算的需求。最后,對于一個片區(qū),如果在城市燃?xì)夤芫W(wǎng)整體保持不變的情況下,燃?xì)獍l(fā)展已經(jīng)成熟的區(qū)域用戶的變動相對較少?;谶@樣的情況,地區(qū)的天然氣使用情況會呈現(xiàn)一定的時間周期性,這種周期性可能包含在日周期性,周周期性,月周期性,年周期性,考慮到設(shè)備的壓力數(shù)據(jù)基本遵循日周期性規(guī)律,因此按照小時為最低的單位,處理為相同時間點的壓力數(shù)據(jù),為挖掘這些周期性奠定了數(shù)據(jù)基礎(chǔ)。
去奇點就是去除小概率出現(xiàn)的數(shù)據(jù)或者異常數(shù)據(jù),一般做法是看概率分布規(guī)律去除出現(xiàn)概率小的數(shù)據(jù)。去奇點是基本的數(shù)據(jù)處理方法,能夠去除明顯的數(shù)據(jù)噪聲,多數(shù)時候需要配合其他數(shù)據(jù)預(yù)處理過程。
使用LSTM 模型進(jìn)行數(shù)據(jù)擬合的目的是用一段歷史時期的數(shù)據(jù)對未來的數(shù)據(jù)進(jìn)行預(yù)測。燃?xì)庠O(shè)備上的數(shù)據(jù)只有壓力數(shù)據(jù),且與時間相關(guān),因此可將其表示為時間維度的序列數(shù)據(jù),即與時間T1、T2、T3…Tn相對應(yīng)的P1、P2、P3…Pn。
由于LSTM 處理的數(shù)據(jù)時間相關(guān)的,所以必要對時間相關(guān)的幾個概念進(jìn)行描述。模型是利用歷史數(shù)據(jù)對未來數(shù)據(jù)進(jìn)行預(yù)測,本文把預(yù)測數(shù)據(jù)時所使用的數(shù)據(jù)個數(shù)稱為time_step,把預(yù)測的數(shù)據(jù)時刻與使用的最后一個數(shù)據(jù)的時刻之間的差值稱為look_back,如利用T1、T2、T3預(yù)測T5,則time_step= 3,look_back = 5-3 = 2。
此部分實驗只考慮一臺設(shè)備的數(shù)據(jù),使用一臺數(shù)據(jù)的設(shè)備進(jìn)行模型建立、訓(xùn)練、測試,不考慮多臺設(shè)備之間數(shù)據(jù)的相關(guān)性。模型的訓(xùn)練過程中使用數(shù)據(jù)的三分之二進(jìn)行訓(xùn)練,另外的三分之一進(jìn)行測試,設(shè)備的采集頻率是一分鐘采集一次,因此在數(shù)據(jù)預(yù)處理的時候首先將數(shù)據(jù)每小時的數(shù)據(jù)去平均值,然后將數(shù)據(jù)歸一化到0~1 范圍。實驗中的參數(shù)過多,為了探討數(shù)據(jù)的事件相關(guān)性,主要考慮time_step 和look_back 兩個參數(shù)對模型在壓力數(shù)據(jù)上的影響。試驗中使用了控制變量的方法,測評模型的標(biāo)準(zhǔn)是均方根誤差。
單一設(shè)備實驗在建立模型的時候主要考慮一臺設(shè)備的運行情況,實際上燃?xì)夤艿谰W(wǎng)絡(luò)是很復(fù)雜的相互連接的網(wǎng)狀網(wǎng)絡(luò),門站之間,調(diào)壓站之間往往相互影響,上級門站和下級門站之間數(shù)據(jù)具有一定程度的相關(guān)性,因此有必要考慮這種多個門站之間的相關(guān)性。
本實驗是一個對比實驗,控制實驗的變量是模型的輸入是一臺設(shè)備的壓力數(shù)據(jù)和多臺設(shè)備的壓力數(shù)據(jù),其余的試驗參數(shù)設(shè)置相同,具體的是網(wǎng)絡(luò)的結(jié)構(gòu),訓(xùn)練的參數(shù),數(shù)據(jù)的time_step=5,look_back=1。目的是研究只使用該設(shè)備的歷史數(shù)據(jù)作為輸入、對該設(shè)備未來設(shè)備進(jìn)行預(yù)測的情況和使用與使用該設(shè)備的歷史數(shù)據(jù)加上該設(shè)備相鄰的設(shè)備作為輸入、對該設(shè)備的未來數(shù)據(jù)進(jìn)行預(yù)測的情況。
3.3.1 短期預(yù)測
燃?xì)獾氖褂猛哂兄芷谛?,由于周期性比較多,在做無模型分析的時候如果都考慮則是非常不明智的,而在研究長期預(yù)測的過程中往往使用到了幾個小周期的數(shù)據(jù)。因此,本實驗研究的是一個星期所表示出來的周期性,這樣的時間間隔比一天長,比一個月更短。
實驗的網(wǎng)絡(luò)設(shè)置基于預(yù)測模型的復(fù)雜度和實際情況,LSTM 模型定義為3 層,第一層定義為4個LSTM 神經(jīng)元,第二層定義為2 個LSTM 神經(jīng)元,最后一層為輸出層,選擇的設(shè)備是編號為601 的設(shè)備,設(shè)置實驗的look_back=1。
3.3.2 溫度和濕度因素
燃?xì)獾氖褂帽憩F(xiàn)出季節(jié)性因素的最主要原因是收到天氣的影響,主要是氣溫。為了探尋天氣對燃?xì)馐褂玫挠绊?,本實驗考慮使用模型中加入溫濕度和未加入溫濕度作為對比實驗進(jìn)行過驗證。
實驗設(shè)置兩組實驗,一組是實驗?zāi)P图尤霚貪穸茸鳛檩斎耄唤M實驗沒有加溫濕度,使用同一臺設(shè)備同一段時間的數(shù)據(jù)作為實驗數(shù)據(jù),網(wǎng)絡(luò)結(jié)構(gòu)設(shè)置相同LSTM 模型定義為3 層,第一層定義為4 個LSTM 神經(jīng)元,第二層定義為2 個LSTM 神經(jīng)元,最后一層為輸出層。為了確保實驗結(jié)果的可靠,排除實驗結(jié)果的偶然性,選取三個設(shè)備,使用LSTM模型分別對加入溫濕度特征和未加入溫濕度的數(shù)據(jù)進(jìn)行建模,使用time_step = 5,look_back = 1 建立模型。
本文所有實驗所使用的模型都是LSTM 模型,四層神經(jīng)網(wǎng)絡(luò),第一層輸入層不參與神經(jīng)元之間的計算,只負(fù)責(zé)數(shù)據(jù)的輸入;第二層4 個LSTM 單元;第二層2 個神經(jīng)元;第四層輸出層神經(jīng)元的數(shù)目視情況而定。
這樣的網(wǎng)絡(luò)結(jié)構(gòu)是根據(jù)現(xiàn)已公開發(fā)表的關(guān)于神經(jīng)網(wǎng)絡(luò)選擇和訓(xùn)練的經(jīng)驗分析得出:使用一臺設(shè)備或者是多臺設(shè)備的壓力數(shù)據(jù)預(yù)測未來的壓力數(shù)據(jù),由于數(shù)據(jù)都整理為每小時的平均值,所以數(shù)據(jù)相對比較少,而且只是使用一兩個月的數(shù)據(jù),根據(jù)一般數(shù)據(jù)的數(shù)量大概是模型參數(shù)的5-15 倍來恒定。
隨著網(wǎng)絡(luò)的復(fù)雜化,模型訓(xùn)練所需的時間隨著增加,權(quán)衡效率和時間的關(guān)系,確定網(wǎng)絡(luò)結(jié)構(gòu)為In-4-2-Out 的網(wǎng)絡(luò)結(jié)構(gòu),不僅可以滿足一臺設(shè)備一個特征值作為輸入的情況,還滿足了多臺設(shè)備或者多個特征數(shù)據(jù)作為輸入的情況。
實驗結(jié)果分析:LSTM 模型對壓力數(shù)據(jù)的預(yù)測,使用越多的歷史數(shù)據(jù),預(yù)測距離越近的未來數(shù)據(jù),模型的表現(xiàn)就越好。當(dāng)然,對于不是太遙遠(yuǎn)的時刻,LSTM 對未來數(shù)據(jù)的預(yù)測也具有很好的表現(xiàn),即使是預(yù)測五個小時之后的壓力數(shù)據(jù),模型也具有一定的預(yù)測能力,如果使用更深層次的網(wǎng)絡(luò),利用更多地歷史數(shù)據(jù),必定可以實現(xiàn)對更為長遠(yuǎn)的未來數(shù)據(jù)進(jìn)行預(yù)測,只是這樣伴隨著的是更復(fù)雜的網(wǎng)絡(luò),更大的計算量,對于實時應(yīng)用,預(yù)測未來的三到五個小時的數(shù)據(jù),便可以滿足系統(tǒng)的需求,使燃?xì)夤芾碚咭罁?jù)模型的預(yù)測對未來整體趨勢變化有一個很好的把握,根據(jù)可能的變化情況進(jìn)行及時地燃?xì)庹{(diào)度。
實驗結(jié)果分析:從模型建立的角度,每增加一臺設(shè)備的壓力數(shù)據(jù)值相當(dāng)于增加了模型輸入的一個屬性,只要這個屬性是和輸出相關(guān)的,無論是何種程度的相關(guān)性,都可以在一定程度上改善模型對原始數(shù)據(jù)的表現(xiàn),所以從結(jié)論反過來推導(dǎo),也就是在燃?xì)夤芫W(wǎng)中,相鄰的設(shè)備的運行狀況是相關(guān)的,反映到燃?xì)庀到y(tǒng)中就是附近調(diào)壓站出口壓力的變化是相關(guān)的,因此這樣的數(shù)據(jù)之間具有相關(guān)性。因此使用多臺設(shè)備作為輸入,可以明顯提高LSTM 模型對某臺設(shè)備壓力數(shù)據(jù)的預(yù)測。
實驗結(jié)果分析:對于燃?xì)獾膲毫Χ唐冢ㄒ粋€星期)的數(shù)據(jù)預(yù)測比較長期(一個月)的數(shù)據(jù)預(yù)測效果更好。
實驗結(jié)果分析:加入溫濕度特征值之后,模型無論是對訓(xùn)練集還是對測試集表現(xiàn)都有一定程度的降低,因此與假設(shè)不合,不能驗證假設(shè)成立。
但是并不能說明溫度對燃?xì)獾氖褂脹]有影響,溫度對燃?xì)庥昧康挠绊懯且粋€長周期的影響因素,反應(yīng)的應(yīng)該是年周期性,短時期內(nèi)的加入了溫濕度后反而增加了數(shù)據(jù)的噪聲,導(dǎo)致模型對數(shù)據(jù)的處理能力有所下降。所以,在考慮短期燃?xì)鈮毫︻A(yù)測的時候,不考慮溫濕度特征值的模型效果反而更好。
使用LSTM 對燃?xì)鈹?shù)據(jù)進(jìn)行分析,首先圍繞著time_step 和look_back 的設(shè)置進(jìn)行試驗研究,發(fā)現(xiàn)使用較多的歷史數(shù)據(jù),預(yù)測較近的未來數(shù)據(jù),LSTM的表現(xiàn)更好,預(yù)測的情況更接近真實情況,由此可見LSTM 對燃?xì)鈮毫?shù)據(jù)的預(yù)測可以用在燃?xì)庀到y(tǒng)中,使燃?xì)夤芾碚呖梢蕴崆邦A(yù)知未來一段時間的壓力變化,對即將可能出現(xiàn)的異常情況及時做好應(yīng)對的措施。使用LSTM 研究溫濕度對燃?xì)獾挠昧坑绊懓l(fā)現(xiàn),在短期的燃?xì)馐褂弥?,溫濕度特征值會降低模型的表現(xiàn),因此使用LSTM 對燃?xì)鈹?shù)據(jù)在月為單位的時間周期上進(jìn)行分析時,不必要考慮溫濕度特征;使用LSTM 對一個周內(nèi)的數(shù)據(jù)進(jìn)行分析發(fā)現(xiàn),由于一周的時間太短,模型很難從短暫的壓力數(shù)據(jù)中發(fā)現(xiàn)其隱藏的規(guī)律,因此模型對一周的燃?xì)鈮毫?shù)據(jù)表現(xiàn)不如對兩個月的燃?xì)鈮毫?shù)據(jù)。由此可以看出,當(dāng)使用LSTM 模型對燃?xì)鈮毫M(jìn)行分析時,適當(dāng)增加周期的長度,有利于模型挖掘更深層次的數(shù)據(jù)信息,提高模型的表現(xiàn)??紤]到實際運行在燃?xì)夤艿郎系娜魏我慌_壓力檢測設(shè)備都不是單獨存在的,相鄰的設(shè)備之間的數(shù)據(jù)收到網(wǎng)管連通性的影響,必然存在著某種相關(guān)性,因此使用LSTM模型研究多臺設(shè)備數(shù)據(jù)于一臺設(shè)備數(shù)據(jù)的影響,發(fā)現(xiàn)在模型的輸入中逐漸增加其他的設(shè)備數(shù)據(jù)作為輸入的時候,模型的表現(xiàn)得到不小的改善,因此可以看出,在實際運行的設(shè)備之間,數(shù)據(jù)是存在關(guān)聯(lián)的,這種關(guān)聯(lián)其實表現(xiàn)的是設(shè)備運行背后的地理、氣候等自然因素和人們生活習(xí)性,用氣習(xí)慣等人為因素的總和。
本文中引入了LSTM 算法對燃?xì)鈹?shù)據(jù)進(jìn)行分析,這在很大程度上彌補了燃?xì)鈹?shù)據(jù)分析的空白,同時也可以更加充分的挖掘隱藏在數(shù)據(jù)中的深層關(guān)系,促進(jìn)了燃?xì)庑袠I(yè)數(shù)據(jù)分析的智能化。由于任何系統(tǒng)不是一蹴而就的,同時新興技術(shù)的使用也需要一定的時間檢驗,因此該數(shù)據(jù)分析模型也必然存在一些現(xiàn)今理論下有待改進(jìn)和提高的地方。