亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        基于循環(huán)神經(jīng)網(wǎng)絡(luò)和卡爾曼濾波器的多變量混沌時間序列預(yù)測

        2021-04-15 03:48:50
        計算機應(yīng)用與軟件 2021年4期
        關(guān)鍵詞:卡爾曼濾波

        胡 艷

        (廣西財經(jīng)學(xué)院防城港學(xué)院 廣西 南寧 530003)

        0 引 言

        在許多工程應(yīng)用領(lǐng)域中均存在時間序列類型的數(shù)據(jù),對時間序列的挖掘處理必須考慮數(shù)據(jù)間的時間關(guān)系,從復(fù)雜的海量時間序列中挖掘有價值的知識,具有重要的意義[1-2]。混沌時間序列是一種由非線性動力系統(tǒng)所產(chǎn)生的復(fù)雜行為,是一種普遍存在的不規(guī)則運動,典型的混沌時間序列包括煤礦瓦斯?jié)舛萚3]、航站樓離港旅客流量[4]和數(shù)控機床熱誤差時間序列[5]等。許多研究表明混沌時間序列具備短期內(nèi)的可預(yù)測性[6-7],因此混沌時間序列的預(yù)測成為當(dāng)前的一個熱門研究領(lǐng)域。在多變量的混沌時間序列問題中,容易出現(xiàn)多重共線性的現(xiàn)象,多變量之間由于存在高度相關(guān)性,導(dǎo)致預(yù)測模型的泛化能力有限,預(yù)測性能降低,容易陷入局部極小,且收斂速度慢[8]。

        利用統(tǒng)計機器學(xué)習(xí)和深度學(xué)習(xí)技術(shù)對時間序列進行在線預(yù)測是當(dāng)前最為常見的一類方法,而向機器學(xué)習(xí)或神經(jīng)網(wǎng)絡(luò)加入多重非線性的處理機制存在一定的困難。文獻[9]為極限學(xué)習(xí)機的權(quán)重調(diào)節(jié)矩陣引入懲罰因子,通過懲罰因子降低高相關(guān)性變量的權(quán)重,從而緩解了多重共線性的效應(yīng)。文獻[10]為神經(jīng)網(wǎng)絡(luò)的輸出權(quán)重設(shè)計了平滑處理機制,通過正則項緩解混沌時間序列的多重共線性效應(yīng)。現(xiàn)有的多重共線性解決機制大多通過增加一個獨立的檢測和調(diào)節(jié)模塊,而這些模塊一般也通過若干次的迭代學(xué)習(xí)搜索最佳的輸出權(quán)重矩陣,導(dǎo)致計算負擔(dān)較重。

        多變量混沌時間序列預(yù)測算法為了保證較低的模型復(fù)雜性,大多采用單層神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)?;煦鐣r間序列的鞍點數(shù)量遠多于局部最優(yōu)點數(shù)量,許多研究表明,深度學(xué)習(xí)技術(shù)對這種問題的效果明顯好于單層神經(jīng)網(wǎng)絡(luò)。本文運用可擴展性較好的循環(huán)神經(jīng)網(wǎng)絡(luò)(Recurrent Neural Network,RNN)作為序列學(xué)習(xí)機,使用實時遞歸學(xué)習(xí)算法搜索最小化預(yù)測誤差的最優(yōu)網(wǎng)絡(luò)參數(shù),采用Levenberg-Marquardt算法對神經(jīng)網(wǎng)絡(luò)進行迭代訓(xùn)練。將序列的學(xué)習(xí)問題映射到動態(tài)線性模型是解決多重共線性問題的一個有效手段,本文利用卡爾曼濾波器對網(wǎng)絡(luò)的輸出權(quán)重進行調(diào)節(jié),緩解隱層輸出矩陣的多重共線性問題。此外,將卡爾曼濾波器和神經(jīng)網(wǎng)絡(luò)集成,能夠減少奇異矩陣的運算量,加快網(wǎng)絡(luò)的訓(xùn)練速度。

        1 基于循環(huán)神經(jīng)網(wǎng)絡(luò)的序列學(xué)習(xí)

        1.1 深度循環(huán)神經(jīng)網(wǎng)絡(luò)(DRNN)

        DRNN由棧式網(wǎng)絡(luò)層構(gòu)成,使用實時遞歸學(xué)習(xí)算法(Real Time Recurrent Learning,RTRL)進行非線性訓(xùn)練。本文DRNN序列學(xué)習(xí)機結(jié)構(gòu)如圖1所示。

        圖1 基于DRNN的時間序列預(yù)測流程

        Yn(k)=fANN(Yn(k-1),Yn(k-2),…,Yn(k-q),

        U(k-1),U(k-2),…,U(k-p),Φ)

        (1)

        式中:函數(shù)fANN表示輸入信號和輸出信號之間的非線性關(guān)系。

        將循環(huán)網(wǎng)絡(luò)關(guān)于時間展開,則變?yōu)樯疃惹梆伾窠?jīng)網(wǎng)絡(luò)。圖2所示為RNN關(guān)于時間展開的結(jié)構(gòu)示意圖。圖中每個圓形為一個網(wǎng)絡(luò)層,可能是輸入層、隱層和輸出層。單隱層RNN的展開結(jié)構(gòu)如圖2(a)所示,該RNN網(wǎng)絡(luò)以一定的步長采集當(dāng)前的輸入信號,單隱層的RNN結(jié)構(gòu)僅能處理時間t的輸入數(shù)據(jù),而多隱層的結(jié)構(gòu)可以采集當(dāng)前時間t輸入數(shù)據(jù)不同深度的數(shù)據(jù)空間,本文的多層RNN在時間域和空間域均達到了較高的深度。

        (a) 單層循環(huán)神經(jīng)網(wǎng)絡(luò)

        1.2 訓(xùn)練DRNN

        DRNN結(jié)構(gòu)的訓(xùn)練程序包括計算誤差和計算梯度兩個步驟。

        U(k)?U(k-1)?…?U(k-p)]

        (2)

        式中:“?”表示序列連接操作。隱層(s=1,2,…,n-1)和輸出層(s=n)的輸出向量分別定義為:

        nets(k)=[net1,net2,…,netNs]+Bs

        (3)

        式中:s=1,…,n-1,n;⊙表示矩陣元素間的乘法。

        (4)

        訓(xùn)練DRNN等價于調(diào)節(jié)DRNN網(wǎng)絡(luò)參數(shù)Φ的過程,訓(xùn)練過程中DRNN的輸出序列逐漸接近真實的序列。網(wǎng)絡(luò)的訓(xùn)練目標(biāo)定義為:

        (5)

        (6)

        (7)

        2) 計算梯度。使用RTRL算法[11]訓(xùn)練DRNN。以4層神經(jīng)網(wǎng)絡(luò)為例介紹本文梯度學(xué)習(xí)的過程,其包括1個輸入層、2個隱層和1個輸出層。輸出層誤差ei(k)關(guān)于W3,2的偏導(dǎo)數(shù)計算為:

        (8)

        (9)

        式中:zim=(i-1)q+m;σ表示克羅內(nèi)克函數(shù)。如果n3=d或n2=l,則σ(n3,d)(n2,l)=1;否則σ(n3,d)(n2,l)=0。

        隱層誤差ei(k)關(guān)于W2,1的偏導(dǎo)數(shù)計算為:

        (10)

        (11)

        (12)

        (13)

        輸入層誤差關(guān)于權(quán)重W1,0的偏導(dǎo)數(shù)計算為:

        (14)

        (15)

        (16)

        (17)

        采用基于梯度的Levenberg-Marquardt方法[12]訓(xùn)練DRNN模型。

        2 卡爾曼濾波器調(diào)節(jié)隱層輸出

        2.1 卡爾曼濾波器

        使用卡爾曼濾波器調(diào)節(jié)隱層的輸出權(quán)重,利用卡爾曼濾波器處理多重共線性問題??紤]一個動態(tài)系統(tǒng),其狀態(tài)向量定義為能夠唯一描述系統(tǒng)動態(tài)行為的最小數(shù)據(jù)集,記為xk,k表示離散序列的時間點。一個動態(tài)系統(tǒng)可定義為以下的方程組形式:

        xk+1=Ak+1|kxk+wk

        (18)

        yk=Hkxk+vk

        (19)

        式中:xk為狀態(tài)向量;yk為觀察序列的向量;Ak+1|k為狀態(tài)xk從時間k到時間k+1的轉(zhuǎn)移矩陣。yk為時間點k的觀察樣本,Hk為度量矩陣。式(18)和式(19)分別為系統(tǒng)的狀態(tài)方程和度量方程。噪聲表示為:

        (20)

        式中:wk表示加性高斯白噪聲,噪聲的均值為0;Qk為協(xié)方差矩陣。

        卡爾曼濾波器是一種回歸型估計器,算法1是估計狀態(tài)的卡爾曼濾波器遞歸程序。

        算法1估計狀態(tài)的卡爾曼濾波器遞歸算法

        2.P0=E[(x0-E[x0])(x0-E[x0])T]

        3. whilek≠n

        //傳播狀態(tài)的估計

        //傳播協(xié)方差的誤差

        //計算卡爾曼增益矩陣

        //更新狀態(tài)的估計

        //更新協(xié)方差的誤差

        9. endwhile

        在動態(tài)系統(tǒng)中,式(18)-式(20)的矩陣Hk、Ak、Rk(測量噪聲的協(xié)方差矩陣)、Qk是已知的,而在時間序列的學(xué)習(xí)問題中,這些參數(shù)的歷史數(shù)據(jù)是已知的,本文假設(shè)時間序列模型的矩陣依賴一個未知的向量參數(shù),記為ψ。ψ的經(jīng)典求解方案是最大似然估計,但這種方案增加了卡爾曼濾波器的矩陣求逆運算數(shù)量和矩陣乘法運算數(shù)量,所以導(dǎo)致序列學(xué)習(xí)算法的計算成本大幅度升高。

        本文采用低計算復(fù)雜度的噪聲自協(xié)方差估計算法[13]估計未知參數(shù)ψ,該方法將狀態(tài)方程映射為一個線性時不變模型,其解是離散矩陣Ak和Qk,兩個矩陣分別定義為:

        Ak=exp(FΔtk)

        (21)

        (22)

        式中:F、L、Qc為常量矩陣,描述了模型的行為;Δtk=tk+1-tk為離散變換尺度的增量。F為反饋矩陣,其值定義了狀態(tài)估計的傳播速率,如果F值接近0,其狀態(tài)估計類似于傳統(tǒng)的線性回歸過程,如果F值較大,其狀態(tài)估計的變化速度較快;L為噪聲效應(yīng)矩陣,一般設(shè)為單位矩陣;Qc為指定對角元素的密度矩陣,對角以外元素的缺省值為0。

        一些情況下通過式(22)無法計算出協(xié)方差矩陣Qk,此時通過以下的分數(shù)分解處理:

        (23)

        然后,協(xié)方差矩陣Qk可計算為:

        (24)

        該方法無需通過迭代程序來估計矩陣Ak和Qk,所以其計算復(fù)雜度明顯低于最大似然估計方法。

        2.2 非線性卡爾曼濾波器

        對卡爾曼濾波器進行擴展,使其滿足非線性系統(tǒng)優(yōu)化濾波器的條件。使用高斯近似聯(lián)合分布處理系統(tǒng)的狀態(tài)和度量,基于泰勒序列進行線性變換:

        x~N(m,P)y=g(x)

        (25)

        式中:x∈Rn,y∈Rm,g:∈Rn→Rm為非線性函數(shù);m為估計的狀態(tài)均值,P為狀態(tài)的協(xié)方差。變量x和y的線性近似值定義為:

        (26)

        (27)

        基于卡爾曼濾波器更新循環(huán)神經(jīng)網(wǎng)絡(luò)隱層的輸出權(quán)重。初始化階段使用式(21)和式(24)估計轉(zhuǎn)移矩陣A和協(xié)方差矩陣Qk,通過度量訓(xùn)練時間序列的協(xié)方差計算出矩陣Rk。然后對于每一批新到達的時間序列,通過卡爾曼濾波器更新網(wǎng)絡(luò)的輸出權(quán)重。在序列學(xué)習(xí)過程中矩陣A、Qk和Rk為常量,僅僅更新回歸系統(tǒng)的參數(shù)。最終,使用卡爾曼濾波器輸出的回歸系數(shù)調(diào)節(jié)網(wǎng)絡(luò)的輸出權(quán)重矩陣。

        3 實 驗

        仿真實驗在Intel Core i5-8265 CPU,主頻1.80 GHz,8 GB內(nèi)存,MATLAB R2011b編程環(huán)境下完成。

        3.1 實驗數(shù)據(jù)集

        為證明提出模型的有效性,選擇7個公開的多變量混沌時間序列數(shù)據(jù)集作為基準數(shù)據(jù)集,分別為Abalone、Auto MPG、Blog、Communities、Cycle、Energy和Housing數(shù)據(jù)集[14]。表1所示是基準數(shù)據(jù)集的數(shù)據(jù)量和屬性數(shù)量,將每個數(shù)據(jù)集按60%、10%和30%的比例分別劃分為訓(xùn)練集、驗證集和測試集。

        表1 實驗的基準數(shù)據(jù)集

        3.2 實驗方法

        實驗中時間序列的每批長度選定為5個觀察信號,采用1.2節(jié)的訓(xùn)練方法訓(xùn)練每個數(shù)據(jù)集。通過預(yù)處理實驗訓(xùn)練每個數(shù)據(jù)集的最優(yōu)網(wǎng)絡(luò)參數(shù),每個數(shù)據(jù)集的最優(yōu)結(jié)構(gòu)參數(shù)如表2所示。

        表2 每個實驗數(shù)據(jù)集的DRNN結(jié)構(gòu)

        每數(shù)據(jù)集的實驗采用表2所示的DRNN網(wǎng)絡(luò)結(jié)構(gòu),隱層采用log-sigmoid激活函數(shù)f(γ)=1/(1+e-γ),輸入層和輸出層采用線性激活函數(shù)。在線學(xué)習(xí)序列的過程中,僅通過卡爾曼濾波器實時計算遞歸位置參數(shù),并根據(jù)該參數(shù)調(diào)節(jié)DRNN隱層的輸出權(quán)重矩陣。

        每組實驗獨立地運行30次,統(tǒng)計30次的平均值和標(biāo)準偏差作為最終的性能結(jié)果。

        選擇5個考慮多重共線性問題的時間序列預(yù)測算法與本文算法比較,橫向驗證本文算法的有效性。對比方法如下:

        (1) CVEA[15]:采用交叉驗證解決自回歸模型的多重共線性問題。

        (2) DTS[16]:通過矩陣分解處理網(wǎng)絡(luò)的輸出權(quán)重矩陣,再通過距離度量評價分解元素之間共線性嚴重程度。

        (3) ROTSP[17]:一種基于單層循環(huán)神經(jīng)網(wǎng)絡(luò)的時間序列預(yù)測算法,并未包含多重共線性問題的處理機制。

        (4) LSTM[18]:一種基于長短期記憶的循環(huán)神經(jīng)網(wǎng)絡(luò)模型,其有效地提高了循環(huán)神經(jīng)網(wǎng)絡(luò)的學(xué)習(xí)效率。

        (5) AWNN[19]:一種基于小波神經(jīng)網(wǎng)絡(luò)的時間序列預(yù)測模型,通過小波函數(shù)實現(xiàn)了非線性預(yù)測能力,并且接近單層神經(jīng)網(wǎng)絡(luò)的效率。

        3.3 預(yù)測準確率實驗

        采用根均方根誤差(Root Mean Square Error,RMSE)作為預(yù)測性能的評價指標(biāo),定義如下:

        (28)

        圖3所示為6個時間序列預(yù)測算法對于7個測試數(shù)據(jù)集的預(yù)測誤差結(jié)果,本文算法對于Abalone、Auto MPG、Communities、Cycle、Energy和Housing數(shù)據(jù)集的預(yù)測誤差均低于其他對比方法。綜合比較圖中的結(jié)果,可看出深度神經(jīng)網(wǎng)絡(luò)的預(yù)測性能好于單層神經(jīng)網(wǎng)絡(luò)。DTS算法雖然考慮了多重共線性問題,但是單層神經(jīng)網(wǎng)絡(luò)也嚴重限制了總體的預(yù)測性能。

        圖3 時間序列的預(yù)測誤差實驗

        3.4 多重共線性實驗和結(jié)果分析

        多重共線性的出現(xiàn)情況一般為兩個以上的預(yù)測器之間高度相關(guān),這種情況下,模型包含的預(yù)測器越多,則預(yù)測的準確率越低。本文首先評估原數(shù)據(jù)集屬性之間的線性依賴程度,采用方差膨脹系數(shù)(Variance inflation factor, VIF)和條件指數(shù)(Condition Index, CI)評估每個屬性的多重共線性的嚴重程度。第k個屬性的VIF定義為:

        (29)

        CI定義為:

        (30)

        式中:λ1為矩陣的最大特征值;λl為第l大的特征值。如果CI值在0~10范圍表示屬性之間是弱依賴性;如果CI值在10~30范圍表示屬性之間是普通依賴性;如果CI值在30~100范圍表示屬性之間是高度依賴性;如果CI值大于100表示屬性之間是強依賴性。

        表3所示為原數(shù)據(jù)集的最大VIF值和最大CI值。經(jīng)多次測算,Blog數(shù)據(jù)集的最大VIF值很大,且無確切數(shù)值??梢钥闯?,Cycle數(shù)據(jù)集和Housing數(shù)據(jù)集的屬性之間依賴性較低,Abalone數(shù)據(jù)集和Auto MPG數(shù)據(jù)集的屬性之間依賴性中等,而Blog數(shù)據(jù)集、Communities數(shù)據(jù)集和Energy數(shù)據(jù)集的屬性之間依賴性很高。

        表3 數(shù)據(jù)集特征的多重共線性分析

        在神經(jīng)網(wǎng)絡(luò)模型中,經(jīng)過隱層映射之后的輸出矩陣列之間一般具有高度的相互依賴性,但如果依賴性過高,則會出現(xiàn)多重共線性問題,導(dǎo)致預(yù)測的性能受到嚴重影響。本文網(wǎng)絡(luò)模型對每個數(shù)據(jù)集分別獨立地訓(xùn)練50次,統(tǒng)計了其中最大的CI值和VIF值以及平均CI值和VIF值,結(jié)果如表4所示。結(jié)果顯示,原數(shù)據(jù)集中相關(guān)性過低的數(shù)據(jù)集經(jīng)過本文網(wǎng)絡(luò)模型的學(xué)習(xí),相關(guān)性得到提高,符合神經(jīng)網(wǎng)絡(luò)的特點;而原數(shù)據(jù)集中相關(guān)性過高的數(shù)據(jù)集經(jīng)過本文網(wǎng)絡(luò)模型的學(xué)習(xí),有效地降低相關(guān)性,體現(xiàn)了卡爾曼濾波器的權(quán)重調(diào)節(jié)效果。

        表4 數(shù)據(jù)集特征的多重共線性分析平均值(RBF激活函數(shù))

        3.5 訓(xùn)練時間對比

        對比本文DRNN模型與LSTM模型、AWNN模型的訓(xùn)練時間。將LSTM網(wǎng)絡(luò)的隱層數(shù)量設(shè)為和本文DRNN一致,將隱層深度記為L,每個數(shù)據(jù)集的L值設(shè)為參數(shù)優(yōu)化程序的平均值。

        統(tǒng)計平均訓(xùn)練100個觀察時間序列數(shù)據(jù)的平均時間,結(jié)果如表5所示。可以看出,AWNN的小波函數(shù)對于混沌時間序列的計算量依然很高,其訓(xùn)練時間高于DRNN。而LSTM在訓(xùn)練高維混沌時間序列的過程中,包含大量的矩陣求逆運算,導(dǎo)致其訓(xùn)練時間較長,而本文方法的激活函數(shù)較為簡潔,且卡爾曼濾波器避免了大部分的矩陣求逆運算,僅保留了非奇異矩陣的求逆運算,因此達到了較好的訓(xùn)練效率。

        表5 不同網(wǎng)絡(luò)模型的平均訓(xùn)練時間 s

        4 結(jié) 語

        本文利用具備時間域和空間域可擴展能力的循環(huán)神經(jīng)網(wǎng)絡(luò)作為序列學(xué)習(xí)機,使用實時遞歸學(xué)習(xí)算法搜索最小化預(yù)測誤差的最優(yōu)網(wǎng)絡(luò)參數(shù),采用Levenberg-Marquardt算法對神經(jīng)網(wǎng)絡(luò)進行迭代訓(xùn)練。利用卡爾曼濾波器對網(wǎng)絡(luò)的輸出權(quán)重進行調(diào)節(jié),緩解隱層輸出矩陣的多重共線性問題。此外,將卡爾曼濾波器和神經(jīng)網(wǎng)絡(luò)集成,能夠減少矩陣的運算量,加快網(wǎng)絡(luò)的訓(xùn)練速度。實驗表明,本文算法有效地緩解了多變量混沌時間序列的多重共線性問題,并且對時間序列實現(xiàn)了較好的預(yù)測性能,其時間效率也高于傳統(tǒng)的深度神經(jīng)網(wǎng)絡(luò)。

        本文DRNN的網(wǎng)絡(luò)結(jié)構(gòu)參數(shù)選定過程依然較為繁瑣,目前預(yù)處理的訓(xùn)練程序較為耗時。未來的研究重點是設(shè)計一套深度循環(huán)神經(jīng)網(wǎng)絡(luò)的結(jié)構(gòu)參數(shù)優(yōu)化程序,通過少量訓(xùn)練集選定最優(yōu)的網(wǎng)絡(luò)結(jié)構(gòu)參數(shù)。

        猜你喜歡
        卡爾曼濾波
        基于雙擴展卡爾曼濾波的電池荷電狀態(tài)估計
        改進的擴展卡爾曼濾波算法研究
        基于無跡卡爾曼濾波的行波波頭辨識
        基于遞推更新卡爾曼濾波的磁偶極子目標(biāo)跟蹤
        基于有色噪聲的改進卡爾曼濾波方法
        基于序貫卡爾曼濾波的OCT信號處理方法研究
        基于模糊卡爾曼濾波算法的動力電池SOC估計
        融合卡爾曼濾波的VFH避障算法
        基于擴展卡爾曼濾波的PMSM無位置傳感器控制
        基于EMD和卡爾曼濾波的振蕩信號檢測
        亚洲阿v天堂2018在线观看| 亚洲成人日韩| 日本一区二区精品88| 亚洲性啪啪无码AV天堂| 国产h视频在线观看网站免费 | 国产成人精品一区二三区孕妇| 尤物成av人片在线观看| 少妇人妻系列中文在线| 亚洲一区二区三区激情在线观看 | 爽爽午夜影视窝窝看片| 免费一区二区三区在线视频| 国产在线拍偷自拍偷精品| 亚洲一区二区观看网站| 色婷婷久色国产成人免费| 手机久草视频福利在线观看| 国产人妖乱国产精品人妖| 久久久亚洲av成人网站| 无码人妻一区二区三区在线视频| 中文字幕美人妻亅u乚一596| 中文人妻无码一区二区三区信息 | 日韩人妻久久中文字幕| 久久亚洲av无码西西人体| 中文字幕av无码一区二区三区| 国产精品嫩草影院AV| 欧美精品久久久久久三级| 亚洲av精品一区二区| 人妻久久久一区二区三区蜜臀| 国产人妻人伦精品1国产| 色视频www在线播放国产人成| 日本成人久久| 麻豆夫妻在线视频观看| 精品一区三区视频在线观看| 国产精品美女久久久久av福利 | 亚洲啪av永久无码精品放毛片| 亚洲 暴爽 av人人爽日日碰| 久久精品免费免费直播| 99久久久精品国产性黑人| 女人天堂国产精品资源麻豆| 久久精品国产av一级二级三级| 欧美极品少妇无套实战| 福利网址在线观看|