孫淑娥,姚 柳,趙 怡
(1.西安石油大學(xué) 理學(xué)院,陜西 西安 710065; 2.西安熱工研究院有限公司,陜西 西安 710054; 3.西安電子科技大學(xué) 數(shù)學(xué)與統(tǒng)計(jì)學(xué)院,陜西 西安 710126)
數(shù)據(jù)融合技術(shù)目的是通過(guò)多源信息來(lái)獲取更簡(jiǎn)單、準(zhǔn)確的判斷,即通過(guò)融合多個(gè)傳感器捕獲的實(shí)時(shí)數(shù)據(jù)與相關(guān)數(shù)據(jù)庫(kù)中的信息以獲取更準(zhǔn)確的數(shù)據(jù)。目前,該技術(shù)已被應(yīng)用于多個(gè)領(lǐng)域,如人臉識(shí)別[1]、疾病診斷[2]、目標(biāo)跟蹤[3]等。在現(xiàn)實(shí)生活中,很多數(shù)據(jù)都屬于時(shí)間序列數(shù)據(jù)。然而時(shí)間序列數(shù)據(jù)[4]除了具有數(shù)據(jù)量大、維度高、特征多、高噪聲等特性,還有一個(gè)非常重要的特征,即數(shù)據(jù)的連續(xù)性,這些連續(xù)數(shù)據(jù)通常被看作是一個(gè)整體而非獨(dú)立的個(gè)體。當(dāng)前,時(shí)間序列數(shù)據(jù)融合面臨著兩大難題:一是原始數(shù)據(jù)去噪。由傳感器捕獲的數(shù)據(jù)通常存在大量的環(huán)境噪音和設(shè)備噪音,而這些噪音會(huì)增加特征提取的難度,因此數(shù)據(jù)去噪是數(shù)據(jù)融合中的核心步驟之一。傳統(tǒng)去噪算法主要有小波閾值去噪、經(jīng)驗(yàn)?zāi)J椒纸?EMD)等。由于多源時(shí)序數(shù)據(jù)具有數(shù)據(jù)量大、結(jié)構(gòu)復(fù)雜等特點(diǎn),以致這些方法難以獲得穩(wěn)定的結(jié)果。二是從多源傳感器中提取序列數(shù)據(jù)的時(shí)間連續(xù)性特征?,F(xiàn)有的特征提取方法主要有主成分分析法、線性判別分析,但其難以提取到時(shí)序數(shù)據(jù)的連續(xù)特征。
目前,基于神經(jīng)網(wǎng)絡(luò)的時(shí)間序列數(shù)據(jù)融合算法有:層疊自動(dòng)編碼器[5]、徑向基函數(shù)(RBF)神經(jīng)網(wǎng)絡(luò)、BP神經(jīng)網(wǎng)絡(luò)[5-6]、深度神經(jīng)網(wǎng)絡(luò)(DNN)[7]、卷積神經(jīng)網(wǎng)絡(luò)(CNN)[8]。文獻(xiàn)[7]研究表明DNN網(wǎng)絡(luò)本身就是一個(gè)融合結(jié)構(gòu),通過(guò)網(wǎng)絡(luò)層之間的連接實(shí)現(xiàn)原始數(shù)據(jù)的特征提取以及逐層融合。然而,DNN用于數(shù)據(jù)融合時(shí),一方面復(fù)雜特征提取能力不高,另一方面忽略了序列數(shù)據(jù)的時(shí)間聯(lián)系性。文獻(xiàn)[8]研究表明,一維卷積神經(jīng)網(wǎng)絡(luò)可以有效的提取時(shí)序數(shù)據(jù)的時(shí)間聯(lián)系性特征。其中,JING等人[8]提出了深度卷積神經(jīng)網(wǎng)絡(luò)(DCNN)結(jié)構(gòu)。在DCNN網(wǎng)絡(luò)中,卷積層進(jìn)行特征提取,堆疊的卷積層和池化層結(jié)構(gòu)使得信息再次融合并構(gòu)建更復(fù)雜的特征,使得融合準(zhǔn)確性有了較大的提升。但DCNN網(wǎng)絡(luò)忽略了數(shù)據(jù)噪聲的影響,導(dǎo)致融合準(zhǔn)確度不高。文獻(xiàn)[9-10]研究表明,降噪編碼器(DAE)在原始數(shù)據(jù)的去噪重建方面效果顯著。數(shù)據(jù)原始特征對(duì)于深度學(xué)習(xí)網(wǎng)絡(luò)模型學(xué)習(xí)能力具有極大的影響,而降噪編碼器(DAE)的引入在一定程度去噪重建了原始數(shù)據(jù)的特征;注意力機(jī)制(attention)模型已廣泛應(yīng)用于機(jī)器翻譯、文本分類,推薦系統(tǒng)等領(lǐng)域。大量的研究[10-11]表明注意力機(jī)制模型在處理時(shí)序數(shù)據(jù)長(zhǎng)距離信息捕獲方面是有效的。因此,本文結(jié)合DAE與attention模型提出一種基于卷積神經(jīng)網(wǎng)絡(luò)的數(shù)據(jù)融合算法,即DAECNN_attention。
降噪自編碼器(DAE)[12]是一種人工神經(jīng)網(wǎng)絡(luò)的方法,能夠?qū)乖紨?shù)據(jù)污染、缺失等情況。其通過(guò)對(duì)原始數(shù)據(jù)添加高斯白噪聲進(jìn)行編碼與解碼并使用無(wú)監(jiān)督學(xué)習(xí)的方法來(lái)訓(xùn)練網(wǎng)絡(luò),以實(shí)現(xiàn)真實(shí)數(shù)據(jù)的復(fù)原,從而增強(qiáng)數(shù)據(jù)的魯棒性。DAE網(wǎng)絡(luò)使用梯度下降法最小化代價(jià)函數(shù):
(1)
來(lái)獲得一組參數(shù)(W,c)=((W1,c1),(W2,c2)),其中隱藏層為
(2)
輸出層為
y=δ(hW2+c2)。
(3)
一維卷積神經(jīng)網(wǎng)絡(luò)[8-13]的結(jié)構(gòu)如圖1所示。主要結(jié)構(gòu)由輸入層、卷積層、池化層、全連接層、輸出層組成。卷積層用以提取數(shù)據(jù)的抽象特征,池化層用以獲取關(guān)鍵信息并降低維度,全連接層用以綜合主要信息。用以聚合關(guān)鍵信息并降低維度,全連接層用以綜合主要信息。
圖1 一維卷積神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)Fig.1 Structure of one-dimensional convolutional neural network
在卷積層上,每個(gè)卷積核向下滑動(dòng)執(zhí)行卷積操作。卷積層通過(guò)卷積計(jì)算提取數(shù)據(jù)特征,通過(guò)多個(gè)卷積層結(jié)構(gòu)來(lái)獲得更多復(fù)雜的抽象特征。并且每個(gè)卷積層的卷積核是權(quán)值共享的,在很大程度上減小了神經(jīng)網(wǎng)絡(luò)的運(yùn)算復(fù)雜度。卷積計(jì)算過(guò)程式:
(4)
在池化層中,通過(guò)池化方法提取出特征圖中的關(guān)鍵點(diǎn)并減小參數(shù)維度。池化方法主要分為平均池化和最大池化:平均池化即將池化窗中數(shù)據(jù)的平均值作為輸出,最大池化即將池化窗中的最大數(shù)據(jù)作為輸出。通過(guò)池化操作進(jìn)行二次采樣形成新的特征圖。采樣公式為:
(5)
在全連接層中,可以將特征圖轉(zhuǎn)換為一維向量的形式,從而有效的增強(qiáng)原始信號(hào)的特性,減小數(shù)據(jù)的維數(shù),保存主要信息;并且全連接層深度的增加可以有效的提高模型的非線性表達(dá)能力。同時(shí)采用dropout正則化方法,用以防止過(guò)擬合。輸出層采用softmax函數(shù)進(jìn)行最終的決策(根據(jù)需要解決的不同問(wèn)題輸出層可進(jìn)行調(diào)整),輸出層有q個(gè)可能的結(jié)果,則softmax函數(shù)的輸出為:
(6)
其中,x為softmax函數(shù)相鄰全連接層的輸出結(jié)果。
Adam算法具備AdaGrad算法及RMSProp的優(yōu)勢(shì),在實(shí)踐中能適應(yīng)不同的問(wèn)題,故本文采用Adam優(yōu)化算法來(lái)訓(xùn)練網(wǎng)絡(luò)。網(wǎng)絡(luò)訓(xùn)練方式采用小批量訓(xùn)練,并使用交叉熵?fù)p失函數(shù)。損失函數(shù)式為:
(7)
其中,B,Y,y_分別為最小批量的大小,真實(shí)值和預(yù)測(cè)值。
ROY等[10]給出注意力機(jī)制模型的一般框架,如圖2所示。該模型思想來(lái)源于人類在觀察事物時(shí)注意力分布的不同,其數(shù)學(xué)本質(zhì)即為加權(quán)求和。注意力機(jī)制模型首先使用點(diǎn)積作為相似度函數(shù)來(lái)獲得序列的權(quán)重值,其次利用softmax函數(shù)將權(quán)重歸一化;最后將歸一化的權(quán)重矩陣與序列矩陣相乘。計(jì)算式為:
圖2 注意力機(jī)制Fig.2 Attention mechanism
(8)
其中Q∈Rn×dk,K∈Rm×dk,V∈Rm×dv,Q為查詢(query),表示目標(biāo)序列值;K,V分別為鍵(key)、值(value),是一組鍵值對(duì),表示序列中間狀態(tài)的鍵值對(duì);通過(guò)計(jì)算Q、K的相似度,獲得權(quán)重矩陣;dk為比例因子;當(dāng)Q=K=V時(shí)即為自注意力機(jī)制,用以獲得序列內(nèi)部的全局信息。
DAECNN_attention模型主要由兩部分組成:一是采用降噪編碼器(DAE)對(duì)原始數(shù)據(jù)進(jìn)行去噪重建處理,用以獲得更具有魯棒性的數(shù)據(jù);二是在DCNN[8]基礎(chǔ)上增加自注意力機(jī)制模塊(記為CNN_attention),用以捕獲時(shí)序數(shù)據(jù)的長(zhǎng)距離依賴性。數(shù)據(jù)的原始特征對(duì)于深度學(xué)習(xí)網(wǎng)絡(luò)的性能有極大的影響,而降噪編碼器在數(shù)據(jù)去噪復(fù)原方面具有良好的表現(xiàn)。因此,本文首先通過(guò)DAE網(wǎng)絡(luò)對(duì)原始數(shù)據(jù)進(jìn)行去噪重建處理,用以獲得具有魯棒性的數(shù)據(jù);然后將經(jīng)過(guò)DAE處理的多傳感器數(shù)據(jù)送入CNN_attention模型中。在CNN_attention模型中通過(guò)一維卷積操作來(lái)提取時(shí)序數(shù)據(jù)的局部特征,進(jìn)而通過(guò)池化層進(jìn)行關(guān)鍵信息的提取。然而卷積核只能提取到局部信息,難以獲得長(zhǎng)距離信息。故本文引入自注意力機(jī)制模型,用以彌補(bǔ)其捕獲序列的長(zhǎng)短距離依賴性的不足(其原理如2.3節(jié)所述)。因此本文結(jié)合DAE以及帶有注意力機(jī)制模塊的DCNN網(wǎng)絡(luò)提出一種新的DAECNN_attention算法。DAECNN_attention其結(jié)構(gòu)如圖3所示:
圖3 自注意力降噪編碼模型結(jié)構(gòu)Fig.3 Structure of DAECNN_attention model
DAECNN_attention算法包含DAE模型和CNN_attention模型。DAE模型包括:輸入層、隱藏層、輸出層,具體參數(shù)設(shè)置見(jiàn)表1,其中,n表示該層的神經(jīng)元個(gè)數(shù)。
表1 降噪編碼模型結(jié)構(gòu)及變量參數(shù)Tab.1 Structure and variable parameters of DAE model
CNN_attention模型由3個(gè)卷積層、2個(gè)池化層、1個(gè)注意力機(jī)制模塊、1個(gè)全連接層以及1個(gè)帶有softmax回歸的全連接層。CNN_attention結(jié)構(gòu)參數(shù)見(jiàn)表2。
表2 自注意力降噪編碼模型結(jié)構(gòu)及參數(shù)設(shè)置Tab.2 Structure and variable parameters of CNN_attention model
化操作的步長(zhǎng);a表示激活函數(shù);num_labels表示標(biāo)簽類別數(shù)。
本文采用UCI數(shù)據(jù)集AReM2016和HAR Dataset進(jìn)行試驗(yàn),通過(guò)與經(jīng)典算法DCNN、BPNN各項(xiàng)指標(biāo)進(jìn)行對(duì)比,以驗(yàn)證DAECNN_attention算法的性能。使用準(zhǔn)確率(ACC)[14]、精確率(P)[14]、召回率(R)[14]、F1分?jǐn)?shù)(F1)[14]度量DAECNN_attention算法的性能,其中ACC、P、R、F1的取值范圍均為[0,1],指標(biāo)越大,表明融合性能越好。
ACC、P、R、F1計(jì)算式分別為:
(9)
(10)
(11)
(12)
其中,TP,TN,FP,FN分別為正陽(yáng)性、正陰性、假陽(yáng)性、假陰性。
ACC、P、R、F1是機(jī)器學(xué)習(xí)中常用的評(píng)價(jià)指標(biāo),其中ACC表示正確分類的個(gè)數(shù)占總體測(cè)試樣本的比例,但在樣本不均衡時(shí)無(wú)法判斷模型的好壞;P表示預(yù)測(cè)為正例的測(cè)試樣本中預(yù)測(cè)正確的比例;R表示預(yù)測(cè)正確的樣本中正例所占比例;F1為P和R的調(diào)和均值,用以兼顧精確率和召回率。
本文使用的數(shù)據(jù)來(lái)源于UCI數(shù)據(jù)AReM2016[15]和HAR Dataset[16]。其中,AReM2016包含執(zhí)行人類活動(dòng)時(shí)志愿者所佩戴的無(wú)線傳感器獲得的時(shí)間序列數(shù)據(jù)。試驗(yàn)中使用的數(shù)據(jù)包含五種動(dòng)作類別的數(shù)據(jù):騎、臥、坐、站、走;每種類別的動(dòng)作包含15組采樣數(shù)據(jù),每組數(shù)據(jù)包含480個(gè)采樣點(diǎn);數(shù)據(jù)的采樣標(biāo)準(zhǔn)為:采樣頻率為20 Hz,每個(gè)動(dòng)作的持續(xù)時(shí)間為120 s;每個(gè)采樣點(diǎn)包含6個(gè)屬性,相當(dāng)于6個(gè)傳感器測(cè)量的結(jié)果。融合值等于活動(dòng)動(dòng)作的標(biāo)簽值見(jiàn)表3。
表3 人類活動(dòng)識(shí)別數(shù)據(jù)融合標(biāo)簽值Tab.3 AReM2016 label value
AReM2016首先通過(guò)DAE模型進(jìn)行歸一化和去噪重建處理;其次在75%重疊的固定寬度滑動(dòng)窗口(60個(gè)讀數(shù)/窗口)中進(jìn)行重采樣;通過(guò)這個(gè)方式獲得的樣本格式為60×6,試驗(yàn)數(shù)據(jù)樣本總量為2 100個(gè);樣本的80%作為訓(xùn)練集,20%作為測(cè)試集;并在訓(xùn)練之前將訓(xùn)練集中不同類別的數(shù)據(jù)按組打亂順序,用以提高網(wǎng)絡(luò)的收斂速度;最后送入CNN_attention網(wǎng)絡(luò)中。
HAR Dataset由30名志愿者佩戴智能手機(jī)執(zhí)行6個(gè)基本活動(dòng):站立、坐、平躺、走路、下樓、上樓,試驗(yàn)數(shù)據(jù)的采樣標(biāo)準(zhǔn)為:采樣頻率50Hz,采樣方式為固定窗口采樣,其中每個(gè)窗口的采樣時(shí)間為2.56 s,并且相鄰窗口具有50%重疊。本文試驗(yàn)數(shù)據(jù)主要包括:加速度信號(hào)total_acc、加速度減去重力獲得的body_acc以及角速度信號(hào)gyro_acc的X軸、Y軸和Z軸數(shù)據(jù),相當(dāng)于9個(gè)傳感器測(cè)量的結(jié)果。標(biāo)簽值描述見(jiàn)表4。
表4 歸一化去噪重建數(shù)據(jù)標(biāo)簽值Tab.4 HAR Dataset label value
HAR Dataset首先通過(guò)DAE模型進(jìn)行歸一化和去噪重建處理;樣本形式為128×9,訓(xùn)練樣本數(shù)為7 352,測(cè)試樣本數(shù)為2 947;最后送入CNN_attention網(wǎng)絡(luò)中。
本文分別測(cè)試了DAECNN_attention、DCNN和BPNN算法在AReM2016和HAR Dataset數(shù)據(jù)集上的融合性能,試驗(yàn)的最終結(jié)果為5次測(cè)試均值,如表5所示。
表5為DAECNN_attention、DCNN和BPNN算法在UCI數(shù)據(jù)集AReM2016以及HAR Dataset的實(shí)驗(yàn)結(jié)果。從表5可以看出,在2個(gè)數(shù)據(jù)集上DAECNN_attention算法的融合準(zhǔn)確度指標(biāo)均高于DCNN和BPNN算法;尤其是在AReM2016數(shù)據(jù)集,DAECNN_attention算法的融合準(zhǔn)確度指標(biāo)ACC、P、R、F1分別為99.52%、99.53%、99.52%和99.52%,遠(yuǎn)高于DCNN算法和BPNN算法。原因在于數(shù)據(jù)原始特征對(duì)于深度學(xué)習(xí)網(wǎng)絡(luò)模型學(xué)習(xí)能力具有極大的影響,而DAE模型的引入在一定程度去噪重建了原始數(shù)據(jù)的特征;并且自注意力機(jī)制模塊的引入,提高了網(wǎng)絡(luò)捕獲長(zhǎng)距離信息的性能。但在HAR Dataset數(shù)據(jù)集中DAECNN_attention算法的融合性能略高于DCNN算法,原因可能在于HAR Dataset數(shù)據(jù)集是經(jīng)過(guò)噪聲濾波器預(yù)先處理的。
表5 對(duì)比算法的平均測(cè)試精度Tab.5 Contrast of average test accuracy of algorithms
為了更直觀地說(shuō)明DAECNN_attention算法的融合性能,將DAECNN_attention、DCNN以及BPNN算法倒數(shù)第二層的輸出作為融合的特征向量;首先使用主成分分析法(PCA)將原始的實(shí)驗(yàn)數(shù)據(jù)、DAECNN_attention、DCNN和BPNN算法融合的特征向量映射為二維特征,對(duì)應(yīng)于圖3和圖4中的X1和X2坐標(biāo);其次利用得到的二維特征進(jìn)行最終的決策,標(biāo)簽分別對(duì)應(yīng)于表3和表4,從而可以在二維平面更好地展示算法的性能??梢暬Y(jié)果如圖4和圖5所示。
從圖4和圖5可以直觀看出,原始數(shù)據(jù)、DCNN、BPNN的重疊度較高,而經(jīng)過(guò)DAECNN_attention算法融合得出的特征向量能更好區(qū)分目標(biāo)的類別。
圖4 識(shí)別數(shù)據(jù)融合的主成分分析的可視化結(jié)果Fig.4 Visualization results of AReM2016 dataset PCA
圖5 歸一化去噪重建的主成分分析數(shù)據(jù)可視化結(jié)果Fig.5 Visualization results of HAR dataset PCA
提出了一種結(jié)合降噪編碼器和注意力機(jī)制模型的DAECNN_attention算法,DAE網(wǎng)絡(luò)對(duì)原始數(shù)據(jù)進(jìn)行預(yù)處理以及復(fù)原,以增強(qiáng)特征的魯棒性;自注意力機(jī)制模塊的引入,在一定程度上提高了捕獲時(shí)序數(shù)據(jù)長(zhǎng)距離時(shí)間相關(guān)性的能力。試驗(yàn)結(jié)果表明,DAECNN_attention算法具有良好的性能。