基于帶丟包自動編碼技術(shù)的時間序列數(shù)據(jù)圖形化分析方法
【專利摘要】本發(fā)明是一種基于帶丟包自動編碼技術(shù)的時間序列數(shù)據(jù)圖形化分析方法,它有4個步驟:步驟1.數(shù)據(jù)預處理,將時間序列數(shù)據(jù)轉(zhuǎn)化為特定的圖像格式;步驟2.預訓練,通過帶丟包的自動編碼技術(shù)提取時間序列的圖形特征;步驟3.訓練分類器,利用預訓練過程中得到的編碼機權(quán)重和訓練樣本類標進行分類器訓練;步驟4.應用,利用訓練好的分類器實現(xiàn)時間序列相似度匹配和分類功能。本發(fā)明克服了現(xiàn)有時間序列分析方法注重時間序列的數(shù)據(jù)特征而對數(shù)據(jù)的變化十分敏感的缺點,模擬人類視覺處理時間序列數(shù)據(jù)的方式。在相似度匹配上有較高的準確度和極低的時間復雜度;在分類中,既保證了良好的分類精度又對不同類型的時間序列數(shù)據(jù)有良好的普適性和魯棒性。
【專利說明】基于帶丟包自動編碼技術(shù)的時間序列數(shù)據(jù)圖形化分析方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及一種基于帶丟包自動編碼技術(shù)的時間序列數(shù)據(jù)圖形化分析方法,該方法受到人類視覺對數(shù)據(jù)處理方式的啟發(fā),針對傳統(tǒng)時間序列分析方法注重時間序列的數(shù)據(jù)特征而對數(shù)據(jù)的變化十分敏感的缺點,利用帶丟包的堆棧式自動編碼技術(shù)自動學習時間序列數(shù)據(jù)的圖形特征,并將時間序列數(shù)據(jù)重新抽象表達,然后利用習得的特征用于誤差反向傳播神經(jīng)網(wǎng)絡(luò)分類器的訓練,進而實現(xiàn)對時間序列數(shù)據(jù)的相似性匹配與分類功能,屬于數(shù)據(jù)挖掘與機器學習領(lǐng)域。
【背景技術(shù)】
[0002]在過去的二十年里,不同的時間序列分析、挖掘的技術(shù)不斷產(chǎn)生。這些技術(shù)主要集中在時間序列的相似度匹配、分類、聚類和分割上。但是,由于這些技術(shù)都是建立在時間序列的數(shù)據(jù)特征基礎(chǔ)之上,所以它們對于某些符合自身數(shù)據(jù)處理要求的時間序列數(shù)據(jù)有很好的分析處理效果,而在另外的數(shù)據(jù)上的處理能力可能大幅下降。這使得這些技術(shù)對于現(xiàn)實問題僅有很有限的意義。
[0003]效力與效率是時間序列分析的最終目標,而目前的技術(shù)可以分為兩大類,一類是表示,另一類是測量。基于表示的方法有主要目的是通過降低時間序列數(shù)據(jù)的維數(shù)來對其進行處理,常見的方法有:離散傅里葉變換(DFT)、奇異值變換(SVD)、離散余弦變換(DCT)、離散小波變換(DWT)、線性平均分段累積近似方法(PPA)、自適應逐段常量近似(APCA)、符號聚集近似(SAX)和可轉(zhuǎn)位分段線性近似(IPLA)等等。但是,由于時間序列數(shù)據(jù)通常是非常高維的,在降低數(shù)據(jù)維度的同時還能保持數(shù)據(jù)的基本特征幾乎是一件不可能完成的事。相較而言,基于距離測量的時間序列分析方法更加容易實現(xiàn)。最常見的就是歐式距離,它非常易于應用于不同的問題中。然而,歐式距離(ED)對于噪聲和有時間位移的時間序列數(shù)據(jù)沒有很好的處理效果。為此,有學者提出了動態(tài)時間彎曲距離(DTW)來解決有時間位移的時間序列分析問題,并得到了廣泛的使用。然而,動態(tài)時間彎曲距離的最大弱點是它的算法復雜度太高,常常達不到實際問題中的時效性。另外,還有一類基于距離的度量方法被廣泛用于處理字符串、語音和生物信息。如最長公共子序列(LCSS)、實序列編輯距離(EDR)、實補償編輯距離(ERP)。實序列編輯距離比歐氏距離和動態(tài)彎曲距離的魯棒性更好,而相較最長公共子序列,它的精度有比較高,但是它也不能處理帶時間位移的時間序列數(shù)據(jù)分析問題,所以實補償編輯距離的提出彌補了它的這個缺點。然而,實補償編輯距離和動態(tài)時間彎曲距離一樣,對噪聲比較敏感。綜上所述如何能夠找到一種時間序列分析方法能夠既具有效力和效率,又具有魯棒性,是一個十分迫切的問題。
【發(fā)明內(nèi)容】
[0004]1、發(fā)明目的
[0005]本發(fā)明的目的是:針對現(xiàn)有的時間序列數(shù)據(jù)處理方法注重時間序列的數(shù)據(jù)特征而對數(shù)據(jù)的變化十分敏感的缺點,提供一種基于帶丟包自動編碼技術(shù)的時間序列數(shù)據(jù)圖形化分析方法,它是一種更具有魯棒性和準確性的時間序列數(shù)據(jù)分析方法。本發(fā)明與現(xiàn)有方法的最大差異在于本發(fā)明是基于時間序列數(shù)據(jù)的圖像特征進行時間序列分析,克服了現(xiàn)有時間序列數(shù)據(jù)分析方法僅針對特有數(shù)據(jù)形式有良好性能而沒有普適性的不足,在相似度匹配中,本發(fā)明相較現(xiàn)有方法擁有良好的準確度與極低的時間復雜度,而在分類當中,又比現(xiàn)有方法更具魯棒性,其分類精度在不同數(shù)據(jù)集中的綜合表現(xiàn)也非常優(yōu)異。
[0006]2、技術(shù)方案
[0007]本發(fā)明是一種基于帶丟包自動編碼技術(shù)的時間序列數(shù)據(jù)圖形化分析方法,其設(shè)計思想是:模擬人類視覺系統(tǒng)處理時間序列數(shù)據(jù)的過程,先將時間序列數(shù)據(jù)轉(zhuǎn)化成帶有圖形特征的圖像,再利用帶丟包的自動編碼技術(shù)抽象提取時間序列數(shù)據(jù)的圖像特征,并利用該特征訓練神經(jīng)網(wǎng)絡(luò)分類器,最后將訓練得到的神經(jīng)網(wǎng)絡(luò)分類器應用于時間序列數(shù)據(jù)的相似度匹配和分類當中。
[0008]下面結(jié)合流程框圖1中所示的步驟,具體介紹本發(fā)明的技術(shù)方案。
[0009]步驟1:數(shù)據(jù)預處理
[0010]數(shù)據(jù)預處理階段的主要內(nèi)容及作用是將時間序列數(shù)據(jù)轉(zhuǎn)化為能讓自動編碼機獲得圖像特征的圖像格式。該處理的好壞會直接影響圖像特征抽象的質(zhì)量。本方法最終采用黑白兩色的面積圖作為時間序列數(shù)據(jù)圖像化形式,即將時間序列轉(zhuǎn)化為同等長度的正方形像素矩陣,每一列像素表示了一個數(shù)據(jù)。由于在預處理階段采用了堆棧式自動編碼機,所以在得到時間序列數(shù)據(jù)圖像化形式后還要將其轉(zhuǎn)化為堆棧式向量,最終形成堆棧式自動編碼機的訓練樣本的輸入與輸出。
[0011 ] 步驟2:預訓練
[0012]處理完了自動編碼機的輸入與輸出后,即可開始訓練自動編碼機,其結(jié)構(gòu)框架如圖2所示。該結(jié)構(gòu)是以一個標準的三層神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)為基礎(chǔ),進行了適當?shù)母倪M得到的。首先,在輸入層中,由于圖片轉(zhuǎn)化后的堆棧式向量輸入往往是很高維的,本方法為了提高神經(jīng)網(wǎng)絡(luò)自學習的能力,在輸入層加入了丟包機制,即以一定的概率使輸入層節(jié)點的輸入為零,這樣,整個神經(jīng)網(wǎng)絡(luò)的有效輸入層節(jié)點數(shù)會顯著地降低,網(wǎng)絡(luò)結(jié)構(gòu)也就變得簡單,隨之帶來的好處就是神經(jīng)網(wǎng)絡(luò)的學習性能有了大幅提升。該過程也類似與人類視覺處理的特點,當一個物體的某一個局部被遮擋時,人依然可以成功識別該物體的特征。此外,神經(jīng)網(wǎng)絡(luò)通過前向傳播機制與誤差反向傳播機制進行訓練,這兩個機制可以保證整個網(wǎng)絡(luò)結(jié)構(gòu)的誤差可以不斷降低,最終達到期望的誤差精度。
[0013]由于自動編碼機的目的是使訓練樣本的輸出能盡可能地接近輸入,在這個過程中,通常把輸入層到隱藏層的數(shù)據(jù)傳遞過程稱為編碼過程,而把隱藏層到輸出層之間的數(shù)據(jù)傳遞過程稱為解碼過程。下面將針對這兩個過程進行數(shù)學上的描述:
[0014]編碼機:將輸入轉(zhuǎn)化成隱藏層特征的映射稱為編碼機。每一個輸入向量X和權(quán)重矩陣W將應用于一個非線性的激活函數(shù)a (U),比如tanh、sigmoid或者relu,這個過程可以表示為:
[0015]V = f 9 (X) = a (WX+b)
[0016]V是一個由編碼機獲得的特征矩陣。是一個仿射的映射,它的參數(shù)集為Θ ={W,b},其中,W是一個dXn的權(quán)重矩陣,而b是一個d維的隱藏層補償向量。
[0017]解碼機:解碼映射ge,被用于重構(gòu)自動編碼機的輸出Y。它可以看作是編碼機的逆過程。因此,解碼機的結(jié)構(gòu)與編碼機相類似,其表達形式為:
[0018]Y = g 0 ’(V) = ο (W,V+b’ )
[0019]其中,0(V)為輸出層的激活函數(shù),W’為一個nXd維隱藏層到輸出層之間的連接權(quán)重,而b’是一個η維的輸出層補償向量。解碼機的參數(shù)集為Θ’ =
[0020]根據(jù)信息量最大化原理,一個好的表示應該從輸入中獲取盡可能多的信息,而在自動編碼機里面,這種信息被隱藏在參數(shù)集{θ,Θ’}中。而獲得最優(yōu)的參數(shù)集途徑,即為最小化全局信息損失函數(shù)的過程。這個函數(shù)可以表示為:
[0021]Ininfi1(X5K)^miny Α(Χ, Υ\θ,θ')
[0022]而在實際應用中,通常采用平方差損失函數(shù),它的表示形式為:
[0023]L2(XJ) = ^ixj-y )
i^l
[0024]通過誤差梯度反向傳播機制,可以通過最小化信息損失函數(shù)來使得自動編碼機達到輸出盡可能地等于輸入的效果。
[0025]而在本方法中,由于時間序列往往是高維數(shù)據(jù),其轉(zhuǎn)化為圖像之后形成的堆棧式向量輸入的維數(shù)將會比時間序列數(shù)據(jù)本身的維數(shù)有平方式的增長,這導致了自動編碼機的輸入節(jié)點數(shù)量極其龐大。龐大的輸入節(jié)點數(shù)量會帶來兩個方面的弊端,其一,節(jié)點數(shù)量增加導致了自動編碼機的神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)復雜度增加,使得訓練時間大大延長;其二,節(jié)點數(shù)量增加也會使整個網(wǎng)絡(luò)的收斂性能下降,即神經(jīng)網(wǎng)絡(luò)的訓練精度會有所下降。所以,本方法在這個問題上引入了丟包算法這個改進方案,即以一定的概率使得輸入節(jié)點的輸入值為零。這樣,一定程度上削減了自動編碼機的網(wǎng)絡(luò)復雜程度,使得隱藏層的特征表示更加稀疏。實驗結(jié)果表明,這種方法大大增加了自動編碼機的訓練精度,并且減少了訓練所使用的時間。
[0026]所以,根據(jù)上面的描述,編碼機映射f e可以被重新表示為:
[0027]
V = a{W( mX ) + b) = a((M'o W)X + h)
[0028]其中,m是一個n維的二值向量,它的每一個元素!?」都服從Bernoulli (p)的伯努利分布,而M’是一個dXn維的帶丟包連接矩陣,它的每一行都是相同的一個二值元素。在此基礎(chǔ)之上,化簡損失函數(shù)的形式,可以表達為:
[0029]
'o W)X + b) ^ α(^((Μ '。W)X + b))
MM
[0030]這樣,一些輸入節(jié)點對于隱藏層節(jié)點的作用就會被屏蔽,而如果將|m|記為矩陣μ中元素的個數(shù),那么整個自動編碼機網(wǎng)絡(luò)的可能的形式就從2|M|降到了種。
[0031]通過上述過程,即可訓練得到含有訓練樣本圖像特征的自動編碼機網(wǎng)絡(luò)。該網(wǎng)絡(luò)可用于后續(xù)分類器的訓練,減少分類器訓練過程出現(xiàn)的過擬合現(xiàn)象,并且極大地提高了分類器的訓練精度與訓練效率。
[0032]步驟3:訓練分類器
[0033]當自動編碼機訓練完畢,對于輸入樣本的良好表示就可以從編碼機的權(quán)重當中獲取。此時,可以利用這種良好的表示訓練分類器。在本方法中,選取了誤差反向傳播神經(jīng)網(wǎng)絡(luò)分類器。訓練分類器首先需要構(gòu)造訓練樣本的期望輸出。將本方法運用在不同的應用環(huán)境中,其分類器的期望輸出是不相同的。例如,如果將本方法用于相似度匹配,那么期望輸出應該構(gòu)造成一個單位矩陣,這樣相當于每一個訓練樣本都是一個,而分類器的最終目的是將訓練樣本歸結(jié)到與自身所對應的那個類標中去;而如果將本方法應用于分類中,那么構(gòu)造的期望輸出就是訓練樣本自身的期望類標。在構(gòu)造完期望輸出之后,即可對分類器進行訓練。由于選擇了神經(jīng)網(wǎng)絡(luò)分類器,其結(jié)構(gòu)與上面所提到的自動編碼機所用到的神將網(wǎng)絡(luò)結(jié)構(gòu)類似,亦是一個標準三層神經(jīng)網(wǎng)絡(luò)。設(shè)置該網(wǎng)絡(luò)的輸入層到隱藏層之間的連接矩陣為已經(jīng)在預訓練階段得到的編碼機權(quán)重,這樣就可以用到在與訓練階段得利用自動編碼機得到的時間序列圖像特征來提升分類器的分類精度。除此之外,選擇合適的學習率,即可得到一個訓練精度相當高的分類器。
[0034]步驟4:應用階段
[0035]當預訓練階段與分類器訓練階段都完成后,會得到一個訓練過的分類器,這個分類器里包含了時間序列樣本的圖像特征信息,并且已經(jīng)把具有類似圖像特征的樣本映射到相應的類標上。利用這個訓練好的分類器,就可以實現(xiàn)相似度匹配與分類的功能。
[0036]在實現(xiàn)相似度匹配時,將需要匹配的時間序列片段轉(zhuǎn)化為與預訓練階段訓練樣本相同的圖像轉(zhuǎn)換格式,再將其轉(zhuǎn)化為堆棧式向量,即可作為分類器的輸入。通過分類器神經(jīng)網(wǎng)絡(luò)的計算,輸出是該時間序列片段匹配最相近的時間序列片段序號。而在實現(xiàn)分類時,只需要將分類樣本轉(zhuǎn)化為圖像格式,再將其轉(zhuǎn)化為堆棧式向量作為分類器的輸入。分類器的輸出結(jié)果為該輸入片段的分類類標。
[0037]在應用階段,該方法的明顯優(yōu)勢是:無論是被匹配的時間序列數(shù)據(jù)樣本有多少,神經(jīng)網(wǎng)絡(luò)分類器僅需計算一次即可得出結(jié)果,這比現(xiàn)有的基于距離度量的相似度測量方法高效得多。同時,雖然預訓練、分類器訓練和應用這三個階段有依次的參數(shù)依賴關(guān)系,但是由于自動編碼機高效的特征抽象提取能力,參數(shù)的實時性并不會對分類器的性能造成很大的影響,換言之,如果需要數(shù)據(jù)更新,這三個階段可以在不同的計算機上進行分布式并行計算更新。
[0038]優(yōu)點及功效:本發(fā)明一種基于帶丟包自動編碼技術(shù)的時間序列數(shù)據(jù)圖形化分析方法,其優(yōu)點是:克服了現(xiàn)有時間序列分析方法注重時間序列數(shù)據(jù)特征而對數(shù)據(jù)形式變化十分敏感的缺點,模擬人類視覺系統(tǒng)處理時間序列數(shù)據(jù)的方式,通過時間序列數(shù)據(jù)的曲線圖像特征來對時間序列數(shù)據(jù)進行相似度匹配與分類處理,對于不同特性的時間序列數(shù)據(jù)都有良好的匹配、分類精度,即大大提高了時間序列分析方法的魯棒性與普適性。同時,在算法復雜度方面相較現(xiàn)有方法也有極大的優(yōu)勢。
【專利附圖】
【附圖說明】
[0039]圖1:帶丟包自動編碼技術(shù)的時間序列數(shù)據(jù)圖形化分析方法流程圖
[0040]圖2:帶丟包的自動編碼機結(jié)構(gòu)圖
[0041]圖3:編碼機權(quán)重可視化結(jié)果
[0042]圖4:6組匹配對象和4種方法分別匹配結(jié)果對比
【具體實施方式】
[0043]圖1為帶丟包自動編碼技術(shù)的時間序列數(shù)據(jù)圖形化分析方法流程圖,圖2為帶丟包的自動編碼機結(jié)構(gòu)圖。
[0044]本發(fā)明設(shè)計目標包括兩個方面:其一,實現(xiàn)基于數(shù)據(jù)圖形化的時間序列數(shù)據(jù)相似度匹配;其二,實現(xiàn)基于數(shù)據(jù)圖形化的時間序列數(shù)據(jù)分類。具體實施中,相似度匹配采用2007.07.26至2014.06.06的美國納斯達克100指數(shù)數(shù)據(jù)集,而在分類實驗中采用了 UCR實驗室提供的 Cyliner-Bell-Funnel (CBF)數(shù)據(jù)集,ECG200 數(shù)據(jù)集,Synthetic Control 數(shù)據(jù)集和Trace數(shù)據(jù)集,仿真和檢驗都借助于Matlab來實現(xiàn)。
[0045]實驗一:時間序列數(shù)據(jù)相似度匹配
[0046]第一步:訓練樣本構(gòu)造與參數(shù)初始化
[0047]根據(jù)自動編碼機的結(jié)構(gòu)特點,將納斯達克100指數(shù)數(shù)據(jù)分割成長度為30的時間序列片段,每個片段之間間隔為5,這樣,能夠得到340張時間序列圖像,每張圖像的大小為30X30像素點。為了匹配圖像大小,自動編碼神經(jīng)網(wǎng)絡(luò)的輸入節(jié)點的個數(shù)為900個,隱藏層節(jié)點為100個,相對應的輸出節(jié)點也為900個。設(shè)置輸入層的丟包概率為70%,輸入層和輸出層的激活函數(shù)都是sigm函數(shù),神經(jīng)網(wǎng)絡(luò)學習率為I。通過反向傳播的誤差梯度下降算法,可以使輸入與輸出之間的誤差逐步縮小。
[0048]第二步:預訓練自動編碼機
[0049]訓練自動編碼機3000次,使其訓練均方誤差達到10 —下,表明整個網(wǎng)絡(luò)的訓練精度已經(jīng)較高。將編碼機權(quán)重進行可視化處理,結(jié)果顯示在圖3中,可以看出,經(jīng)過自動編碼機的訓練,樣本中的圖像特征被隱藏層節(jié)點抽象提取出來,但是由于輸入層丟包的稀疏表達,一些隱藏層節(jié)點并沒有獲得特征,說明網(wǎng)絡(luò)并沒有處于過擬合狀態(tài)。
[0050]第三步:訓練神經(jīng)網(wǎng)絡(luò)分類器
[0051]神經(jīng)網(wǎng)絡(luò)分類器的結(jié)構(gòu)與自動編碼機相類似,也是一個三層神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)。輸入層的節(jié)點個數(shù)為900個,隱藏層節(jié)點個數(shù)為100個,輸出層的節(jié)點個數(shù)為340個。分類器的輸入層和隱藏層之間的初始連接權(quán)重不再是隨機產(chǎn)生,而是將預訓練中自動編碼機的編碼機權(quán)重傳遞過來。通過這樣的方式,使得在自動編碼機中抽象獲取的時間序列圖像特征能夠被神經(jīng)網(wǎng)絡(luò)分類器所有效利用。由于應用背景是相似度匹配,所以在構(gòu)造分類器訓練樣本類標的時候相當于是將每一個樣本映射到自身的類當中,如果一個時間序列片段與某個訓練樣本相似度最高,分類器的理想輸出應該為對應訓練樣本的類標,即在對應的輸出節(jié)點上輸出1,而其余的節(jié)點輸出為O。實際應用過程中幾乎不會有這么完美的情況,所以一般選擇所有節(jié)點輸出值中最大的那個節(jié)點對應的類標為最終的分類結(jié)果。本實驗中,對該分類器訓練1000次,訓練算法仍然采用誤差梯度反向傳播算法。訓練后的網(wǎng)絡(luò)誤差降到了
0.0001以下,并且訓練速度相較自動編碼機有明顯提升。
[0052]第四步:相似度匹配
[0053]當分類器訓練達到了期望的精度,該分類器就可以用于相似度匹配。為了驗證本方法的精度與效率,我們構(gòu)造了六組具有特殊走勢特征的時間序列標準樣本作為本次試驗的匹配對象。這六組時間序列樣本和由歐氏距離(ED),動態(tài)彎曲距離(DTW)和本方法(TSV)分別匹配出來的最符合該樣本測試集的時間序列片段顯示在圖4中。此外,為了衡量各個方法匹配的片段的相似度情況,選取了余弦相似度指標作為參考評判標準。其表達式為:
[0054]COS(DiiDj) =......................................Wik y Auk^iwJ*
[0055]利用該指標評判各個方法的相似度匹配性能,其結(jié)果和三種方法的運行時間在表I中顯示。
[0056]表I三種方法匹配結(jié)果的余弦相似度和運行時間比較
[0057]
樣本余弦相似度運行時間(秒)—
編號 TSV DTW ED TSV DTW ED
10.9311 0.881 0.96390.0014 0.7197 0.016 !
20.9804 0.9804 0.98040.0013 0.7091 0.01H5
30.9946 0.9651 0.99460.0013 0.7203 0.0186
40.9294 0.9355 0.92190.0016 0.7260 0.0127
50.8755 0.87,15 0.93760.0012 0.7336 0.0137
60.9877 0.9211 0.99120.0013 0.7071 0,0147
[0058]從上表可以看出,本方法在相似度精度上對比DTW有很大的優(yōu)勢,對比ED幾乎不相上下,但是在運行時間上來看,本方法的運行時間遠遠低于其它兩種方法,說明本方法在不丟失精度的情況下,效率相較于其他方法有了大幅度提升。
[0059]實驗二:時間序列數(shù)據(jù)分類
[0060]第一步:訓練樣本構(gòu)造與參數(shù)初始化
[0061]該步驟與相似度匹配中的第一步過程基本類似,只是在訓練樣本構(gòu)造中,由于測試時間序列數(shù)據(jù)集的特性不同,導致輸入的樣本數(shù)據(jù)格式不一致。在轉(zhuǎn)化為圖像后,可能導致圖像大小不相同的情況,從而導致自動編碼機輸入節(jié)點個需要更改。當時間序列數(shù)據(jù)長度比較大的時候,其轉(zhuǎn)換后的堆棧式輸入向量就會以平方增長,使得自動編碼機神經(jīng)網(wǎng)絡(luò)的性能快速下降。所以,必須對不同長度的時間序列數(shù)據(jù)做統(tǒng)一處理,使最終的輸入向量長度一致,也在合理范圍之內(nèi)。而這個過程,也是為了使得本方法可以應用于各種長度的時間序列數(shù)據(jù)集,增強了算法的魯棒性。幸運的是,圖像的大小變換是一個極其容易實現(xiàn)的過程,通過插值的方法,在本實驗中,將所有的時間序列數(shù)據(jù)圖像伸縮到與上一個實驗相同的30X30像素大小的圖像,并將之轉(zhuǎn)化為堆棧式輸入向量。
[0062]四個本實驗采用的時間序列分類測試集的屬性顯示在下表中:
[0063]表2四個分類測試時間序列數(shù)據(jù)集的屬性統(tǒng)計
[0064] 數(shù)據(jù)集分類數(shù)?測=本麵 ___個數(shù)個數(shù)長度__
CBF330900128 模擬
Synthetict ,
630030060 模擬
/-Λ.1^ ^ '
Contro丄
ECG200 2__100__100__96 真實
Trace 4__100__100__275 模擬
[0065]可見,長度最長的Trace數(shù)據(jù)集的長度為275,遠遠高于壓縮之后的長度30,但是從分類實驗結(jié)果可以看出,該分類測試集的準確率為100 %,這也證明了本方法具有卓越的普適性和魯棒性。
[0066]第二步:預訓練自動編碼機
[0067]該過程與上一個實驗的第二步相同,參數(shù)為:輸入節(jié)點數(shù)900個,隱藏層節(jié)點數(shù)100個,輸出層節(jié)點900個,輸入層的丟包概率為70%,輸入層和輸出層的激活函數(shù)都是sigm函數(shù),神經(jīng)網(wǎng)絡(luò)學習率為I。訓練次數(shù)為3000次。
[0068]第三步:訓練分類器
[0069]該過程與上一個實驗的第三步相同,參數(shù)為:輸入節(jié)點數(shù)900個,隱藏層節(jié)點數(shù)100個,輸出層節(jié)點數(shù)與分類數(shù)相同,輸入層和輸出層的激活函數(shù)都是Sigm函數(shù),神經(jīng)網(wǎng)絡(luò)學習率為I。訓練次數(shù)為1000次。
[0070]第四步:分類
[0071]本次分類測試選取了表2中列出的4種時間序列數(shù)據(jù)集作為測試集,并選取了常用6種時間序列分類方法與本方法進行比較,它們分別為:基于歐式距離的I近鄰分類法(1-NN Euclidean Distance)、基于動態(tài)彎曲距離的I近鄰分類法(1_NN DTW)、基于實序列編輯距離的I近鄰分類法(1-NN EDR)、基于實補償編輯距離的I近鄰分類法(1-NN ERP)、基于最長公共子序列的I近鄰分類法(1-NN LCSS)和基于歐氏距離的支持向量機分類法(SVMEuclidean Distance)。此外,為了排除隨機性對本分類實驗的影響,每個時間序列測試集的分類實驗都重復了 50次,并且取平均分類誤差率,在表3中顯示:
[0072]表37種時間序列分類方法在4個標準測試集中的分類誤差率
[0073]
CBF Synthetic Control ECG200 Trace
1-NN Euclidean Distance 0.0870.1430.16 0.36
1-NN DTW 0.003 0.02 0.23 0.02
1-NN EDR 0.013 0.117 0.21 0.15
1-NN ERP 0 0.037 0.21 0.08
1-NN LCSS 0.017 0, 06 0.17 0.12
SVM Euclidean Distance 0.123 0.0767 0.19 0.27
_TSV_ 0.004 0.023 0.15 0
[0074]從上表中可以看出,本方法在ECG200和Trace時間序列數(shù)據(jù)集中表現(xiàn)為7種分類方法中最好的,而在CBF數(shù)據(jù)集和Synthetic Control數(shù)據(jù)集中準確率分別名列第三和第二位,且與表現(xiàn)最好的方法差距很小。從這四個測試集的表現(xiàn)可以看出,本方法在不同特性的時間序列數(shù)據(jù)集中的分類效果十分優(yōu)異且穩(wěn)定,但是其它基于距離度量的分類方法往往在某一些測試集上有良好的表現(xiàn),而在其它數(shù)據(jù)集上表現(xiàn)不佳。
[0075]至此,基于帶丟包自動編碼技術(shù)的時間序列數(shù)據(jù)圖形化相似度匹配和分類功能已全部實現(xiàn),實驗結(jié)果證明了該方法在普適性、魯棒性和時間復雜度上有很大的優(yōu)勢。最后所應說明的是:以上實施案例僅用以說明而非限制本發(fā)明的技術(shù)方案,盡管參照上述實施例對本發(fā)明進行了詳細說明,本領(lǐng)域的普通技術(shù)人員應當理解:依然可以對本發(fā)明進行修改或者等同替換,而不脫離本發(fā)明的精神和范圍的任何修改或局部替換,其均應涵蓋在本發(fā)明的權(quán)利要求范圍當中。
【權(quán)利要求】
1.基于帶丟包自動編碼技術(shù)的時間序列數(shù)據(jù)圖形化分析方法,其特征在于:該方法具體步驟如下: 步驟1:數(shù)據(jù)預處理 數(shù)據(jù)預處理階段是將時間序列數(shù)據(jù)轉(zhuǎn)化為能讓自動編碼機獲得圖像特征的圖像格式;該處理的好壞會直接影響圖像特征抽象的質(zhì)量,最終采用黑白兩色的面積圖作為時間序列數(shù)據(jù)圖像化形式,即將時間序列轉(zhuǎn)化為同等長度的正方形像素矩陣,每一列像素表示了一個數(shù)據(jù),由于在預處理階段采用了堆棧式自動編碼機,所以在得到時間序列數(shù)據(jù)圖像化形式后還要將其轉(zhuǎn)化為堆棧式向量,最終形成堆棧式自動編碼機的訓練樣本的輸入與輸出; 步驟2:預訓練 處理完了自動編碼機的輸入與輸出后,即開始訓練自動編碼機,該結(jié)構(gòu)是以一個標準的三層神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)為基礎(chǔ),進行了適當?shù)母倪M得到;首先,在輸入層中,由于圖片轉(zhuǎn)化后的堆棧式向量輸入往往是很高維的,為了提高神經(jīng)網(wǎng)絡(luò)自學習的能力,在輸入層加入了丟包機制,即以一定的概率使輸入層節(jié)點的輸入為零,這樣,整個神經(jīng)網(wǎng)絡(luò)的有效輸入層節(jié)點數(shù)會顯著地降低,網(wǎng)絡(luò)結(jié)構(gòu)也就變得簡單,隨之帶來的好處就是神經(jīng)網(wǎng)絡(luò)的學習性能有了大幅提升;該過程也類似與人類視覺處理的特點,當一個物體的某一個局部被遮擋時,人依然可以成功識別該物體的特征;此外,神經(jīng)網(wǎng)絡(luò)通過前向傳播機制與誤差反向傳播機制進行訓練,這兩個機制能保證整個網(wǎng)絡(luò)結(jié)構(gòu)的誤差不斷降低,最終達到期望的誤差精度; 由于自動編碼機的目的是使訓練樣本的輸出能盡可能地接近輸入,在這個過程中,通常把輸入層到隱藏層的數(shù)據(jù)傳遞過程稱為編碼過程,而把隱藏層到輸出層之間的數(shù)據(jù)傳遞過程稱為解碼過程,下面將針對這兩個過程進行數(shù)學上的描述: 編碼機:將輸入轉(zhuǎn)化成隱藏層特征的映射稱為編碼機,每一個輸入向量X和權(quán)重矩陣W將應用于一個非線性的激活函數(shù)a (U),這個過程表示為:
V= f e (X) = a (WX+b) V是一個由編碼機獲得的特征矩陣,是一個仿射的映射,它的參數(shù)集為Θ = {W,b},其中,W是一個dXn的權(quán)重矩陣,而b是一個d維的隱藏層補償向量; 解碼機:解碼映射ge,被用于重構(gòu)自動編碼機的輸出Y,它看作是編碼機的逆過程,因此,解碼機的結(jié)構(gòu)與編碼機相類似,其表達形式為:
Y= g0> (V) = ο (W,V+b,) 其中,o(v)為輸出層的激活函數(shù),W’為一個nXd維隱藏層到輸出層之間的連接權(quán)重,而b’是一個η維的輸出層補償向量,解碼機的參數(shù)集為Θ’ =; 根據(jù)信息量最大化原理,一個好的表示應該從輸入中獲取盡可能多的信息,而在自動編碼機里面,這種信息被隱藏在參數(shù)集{ θ,Θ ’}中;而獲得最優(yōu)的參數(shù)集途徑,即為最小化全局信息損失函數(shù)的過程,這個函數(shù)表示為:
mill E(X, Y) = min T Α(Χ, Υ\θ,θ')
θ,θ'
/=1 而在實際應用中,通常采用平方差損失函數(shù),它的表示形式為:
L2(XJ) = J^ixi ~y,)2
1-1 通過誤差梯度反向傳播機制,能通過最小化信息損失函數(shù)來使得自動編碼機達到輸出盡可能地等于輸入的效果; 由于時間序列往往是高維數(shù)據(jù),其轉(zhuǎn)化為圖像之后形成的堆棧式向量輸入的維數(shù)將會比時間序列數(shù)據(jù)本身的維數(shù)有平方式的增長,這導致了自動編碼機的輸入節(jié)點數(shù)量極其龐大;龐大的輸入節(jié)點數(shù)量會帶來兩個方面的弊端,其一,節(jié)點數(shù)量增加導致了自動編碼機的神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)復雜度增加,使得訓練時間大大延長;其二,節(jié)點數(shù)量增加也會使整個網(wǎng)絡(luò)的收斂性能下降,即神經(jīng)網(wǎng)絡(luò)的訓練精度會有所下降;所以,引入了丟包算法這個改進方案,即以一定的概率使得輸入節(jié)點的輸入值為零,這樣,一定程度上削減了自動編碼機的網(wǎng)絡(luò)復雜程度,使得隱藏層的特征表示更加稀疏;實驗結(jié)果表明,該方法大大增加了自動編碼機的訓練精度,并且減少了訓練所使用的時間; 根據(jù)上面的描述,編碼機映射被重新表示為:V = a(W(mX) + b) = a((M '。W)X + b) 其中,m是一個η維的二值向量,它的每一個元素Iiij都服從Bernoulli (P)的伯努利分布,而M’是一個dXn維的帶丟包連接矩陣,它的每一行都是相同的一個二值元素;在此基礎(chǔ)之上,化簡損失函數(shù)的形式,表達為:
[“((/W 'o W)X -1- b) * α(^((Μ 'o W)X + />)) MM 這樣,一些輸入節(jié)點對于隱藏層節(jié)點的作用就會被屏蔽,而如果將|m|記為矩陣μ中元素的個數(shù),那么整個自動編碼機網(wǎng)絡(luò)的可能的形式就從2|M|降到了 種; 通過上述過程,即可訓練得到含有訓練樣本圖像特征的自動編碼機網(wǎng)絡(luò);該網(wǎng)絡(luò)可用于后續(xù)分類器的訓練,減少分類器訓練過程出現(xiàn)的過擬合現(xiàn)象,并且極大地提高了分類器的訓練精度與訓練效率; 步驟3:訓練分類器 當自動編碼機訓練完畢,對于輸入樣本的良好表示就從編碼機的權(quán)重當中獲取,此時,能利用這種良好的表示訓練分類器;這里選取了誤差反向傳播神經(jīng)網(wǎng)絡(luò)分類器,訓練分類器首先需要構(gòu)造訓練樣本的期望輸出,運用在不同的應用環(huán)境中,其分類器的期望輸出是不相同的;如果將用于相似度匹配,那么期望輸出應該構(gòu)造成一個單位矩陣,這樣相當于每一個訓練樣本都是一個,而分類器的最終目的是將訓練樣本歸結(jié)到與自身所對應的那個類標中去;如果應用于分類中,那么構(gòu)造的期望輸出就是訓練樣本自身的期望類標,在構(gòu)造完期望輸出之后,即對分類器進行訓練;由于選擇了神經(jīng)網(wǎng)絡(luò)分類器,其結(jié)構(gòu)與上面所提到的自動編碼機所用到的神將網(wǎng)絡(luò)結(jié)構(gòu)類似,亦是一個標準三層神經(jīng)網(wǎng)絡(luò);設(shè)置該網(wǎng)絡(luò)的輸入層到隱藏層之間的連接矩陣為已經(jīng)在預訓練階段得到的編碼機權(quán)重,這樣就用到在與訓練階段得利用自動編碼機得到的時間序列圖像特征來提升分類器的分類精度;除此之外,選擇合適的學習率,即得到一個訓練精度相當高的分類器; 步驟4:應用階段 當預訓練階段與分類器訓練階段都完成后,會得到一個訓練過的分類器,該分類器里包含了時間序列樣本的圖像特征信息,并且已經(jīng)把具有類似圖像特征的樣本映射到相應的類標上;利用這個訓練好的分類器,就能實現(xiàn)相似度匹配與分類的功能; 在實現(xiàn)相似度匹配時,將需要匹配的時間序列片段轉(zhuǎn)化為與預訓練階段訓練樣本相同的圖像轉(zhuǎn)換格式,再將其轉(zhuǎn)化為堆棧式向量,即作為分類器的輸入;通過分類器神經(jīng)網(wǎng)絡(luò)的計算,輸出是該時間序列片段匹配最相近的時間序列片段序號,而在實現(xiàn)分類時,只需要將分類樣本轉(zhuǎn)化為圖像格式,再將其轉(zhuǎn)化為堆棧式向量作為分類器的輸入;分類器的輸出結(jié)果為該輸入片段的分類類標; 在應用階段,無論是被匹配的時間序列數(shù)據(jù)樣本有多少,神經(jīng)網(wǎng)絡(luò)分類器僅需計算一次即可得出結(jié)果,這比現(xiàn)有的基于距離度量的相似度測量方法高效得多;同時,雖然預訓練、分類器訓練和應用這三個階段有依次的參數(shù)依賴關(guān)系,但是由于自動編碼機高效的特征抽象提取能力,參數(shù)的實時性并不會對分類器的性能造成很大的影響,換言之,如果需要數(shù)據(jù)更新,這三個階段能在不同的計算機上進行分布式并行計算更新。
【文檔編號】G06K9/46GK104182771SQ201410371240
【公開日】2014年12月3日 申請日期:2014年7月30日 優(yōu)先權(quán)日:2014年7月30日
【發(fā)明者】王巖, 錢琛, 郭雷 申請人:北京航空航天大學