王 超,李敬兆,張金偉
(安徽理工大學(xué) a.人工智能學(xué)院;b.計算機(jī)科學(xué)與工程學(xué)院,安徽 淮南 232001)
傳統(tǒng)的異常聲音檢測通常基于有監(jiān)督學(xué)習(xí),需要事先對大量樣本進(jìn)行標(biāo)記和分類,才能建立有效的分類模型。然而,工業(yè)機(jī)器故障率低,異常數(shù)據(jù)難獲取,限制了有監(jiān)督學(xué)習(xí)在實際應(yīng)用中的適用性。
近年來,越來越多的研究人員開始探索基于無監(jiān)督學(xué)習(xí)的異常聲音檢測方法。張晨旭等人使用普通的全連接自編碼器對機(jī)器異常聲音進(jìn)行檢測,取得了一定的效果[1]。萬智勇等人則是提出一種雙通道自監(jiān)督編碼器,利用雙向循環(huán)網(wǎng)絡(luò)和全連接網(wǎng)絡(luò)提取聲音的時序信息和頻域信息,再進(jìn)行融合,以獲取更好的音頻特征進(jìn)行異常聲音檢測[2]。但是基于傳統(tǒng)自編碼器(Auto Encoder,AE)的異常聲音檢測方法存在低魯棒性、特征表達(dá)能力差等問題。
針對上述問題,本文提出了一種基于注意力-跳躍自編碼器-生成對抗網(wǎng)絡(luò)的無監(jiān)督異常聲音檢測方法ASAE-GAN(Attentional Skip-connected Auto Encoder and Generative Adversarial Network),使用重構(gòu)能力較強(qiáng)的跳躍自編碼器[3]作為生成對抗網(wǎng)絡(luò)(Generative Adversarial Network,GAN)的生成器。
自編碼器是一種無監(jiān)督學(xué)習(xí)模型,可以用于降維、特征提取和數(shù)據(jù)生成等任務(wù)。跳躍自編碼器則是在自編碼器的基礎(chǔ)上,在編碼器與解碼器間添加了跳躍連接。跳躍連接能將低層的信息直接傳遞到高層中,從而提高了特征提取的效率和精度。含跳躍結(jié)構(gòu)的自編碼器最早由Ronneberger等人提出,它是一種用于圖像分割任務(wù)的網(wǎng)絡(luò),被稱為UNET網(wǎng)絡(luò)[4]。
跳躍自編碼器的目標(biāo)是最小化輸入和重構(gòu)輸出之間的誤差。目標(biāo)函數(shù)為
(1)

GAN的基本思想是通過生成器和判別器的對抗實現(xiàn)數(shù)據(jù)生成。生成器從噪聲中生成樣本,判別器則區(qū)分真實樣本和生成器生成的樣本。GAN的目標(biāo)是讓生成器生成的樣本與真實樣本的分布盡可能相似,同時讓判別器盡可能準(zhǔn)確地判斷兩者之間的區(qū)別。GAN的目標(biāo)函數(shù)為
minGmaxDV(D,G)=Ex~Pdata(x)[logD(x)]+
Ez~Pz(z)[log(1-D(G(z)))],
(2)
式中:G為生成器;D為判別器;Pdata(x)是真實數(shù)據(jù)分布;Pz(z)是噪聲分布。
在傳統(tǒng)的神經(jīng)網(wǎng)絡(luò)中,每個輸入都被視為同等重要,模型無法分辨哪些輸入對于任務(wù)最關(guān)鍵。注意力機(jī)制則可以幫助神經(jīng)網(wǎng)絡(luò)聚焦于更重要的數(shù)據(jù)。
1) 通道間注意力機(jī)制。根據(jù)輸入特征張量中不同通道之間的相關(guān)性來調(diào)整每個通道的重要性權(quán)重,從而自適應(yīng)地選擇對當(dāng)前任務(wù)最為關(guān)鍵的通道。其數(shù)學(xué)表達(dá)式為
(3)
(4)
式中:xj,k為輸入特征的第j個通道的第k個位置的值;Wf為通道注意力權(quán)重矩陣;g為激活函數(shù);fi為第i個通道的注意力權(quán)重;Z為歸一化因子;xi為輸入特征的第i個通道的值;C為通道數(shù)量;y為加權(quán)求和后的輸出特征。
2) 時間注意力機(jī)制。根據(jù)序列中不同時間步的信息權(quán)重來加權(quán)總結(jié)輸入序列的信息,從而使模型集中關(guān)注更重要的時序特征。其數(shù)學(xué)表達(dá)式為
(5)

為了提取更優(yōu)越的數(shù)據(jù)特征,本文提出了ASAE-GAN無監(jiān)督異常聲音檢測方法。該網(wǎng)絡(luò)包括生成器和判別器2個主要部分,模型結(jié)構(gòu)見圖1。
生成器由1個編碼器和1個解碼器組成。編碼器通過4個卷積操作將輸入數(shù)據(jù)轉(zhuǎn)換為低維特征向量,并在每個卷積操作后引入通道間注意力機(jī)制以增強(qiáng)模型的對不同通道進(jìn)行加權(quán),使得網(wǎng)絡(luò)可以自適應(yīng)地選擇對當(dāng)前的任務(wù)最關(guān)鍵的通道。其中,卷積核的大小設(shè)置為3*3,步長為2*2,填充方式為same,激活函數(shù)使用的是LeakyReLU,卷積核數(shù)量分別為64、128、256和256。

圖1 ASAE-GAN模型結(jié)構(gòu)
解碼器通過4個反卷積操作將低維特征向量轉(zhuǎn)換為高維數(shù)據(jù),利用跳躍連接機(jī)制保留了輸入數(shù)據(jù)的細(xì)節(jié)和特征,提高了模型的準(zhǔn)確性和穩(wěn)定性。其中,卷積核的大小為3*3,步長為2,填充方式為same,激活函數(shù)使用的是ReLU,卷積核數(shù)量分別為256、128和64,最后一個反卷積的卷積核數(shù)量為1,不使用激活函數(shù)。
判別器先利用時間注意力機(jī)制把輸入的特征數(shù)據(jù)的不同時間步的特征加權(quán),再把加權(quán)后的特征向量輸入到卷積神經(jīng)網(wǎng)絡(luò)中。卷積操作一共5個,前4個卷積操作后,使用通道間注意力機(jī)制對通道加權(quán)。卷積核的大小都設(shè)置為3*3,步長設(shè)置為2,數(shù)量分別為16、32、64、128和10,激活函數(shù)使用ReLU。最后一層使用單神經(jīng)元的全連接層,激活函數(shù)為Sigmoid。
生成器的目標(biāo)函數(shù)為
Ladv=Ex~px[logD(G(x))],
(6)
Lrec=Ex~px||x-G(x)||1,
(7)
Llat=Ex~px||f(x)-f(G(x))||2,
(8)
LG=αLadv+βLrec+γLlat.
(9)
判別器的目標(biāo)函數(shù)為
LD=Ex~px[logD(x)]+Ex~px[log(1-D(G(x)))],
(10)
式中:G為生成器;D為判別器;x是輸入數(shù)據(jù);f是判別器的潛在特征;Ladv、Lrec和Llat分別是對抗損失、重構(gòu)損失和潛在損失;LG是生成器的總損失,由對抗損失、重構(gòu)損失、潛在損失加權(quán)組成;α、β、γ分別是它們的權(quán)重;LD是判別器的總損失。
本文實驗使用了MIMII數(shù)據(jù)集[5]中的pump聲音數(shù)據(jù)。該數(shù)據(jù)集包含了4臺機(jī)器的正常聲音和異常聲音樣本,每段音頻的采樣率為16 000 Hz,時長為10 s。這4臺機(jī)器的ID分別為0、2、4、6。具體數(shù)據(jù)集信息如表1所示。

表1 pump數(shù)據(jù)集統(tǒng)計信息 條
梅爾頻率倒譜系數(shù)(Mel-Frequency Ceptral Coefficients,MFCC)[6]是聲學(xué)領(lǐng)域常用的特征。MFCC仿照人類的聽覺原理進(jìn)行建模,將聲音信號從時域轉(zhuǎn)換到頻域,并提取其中對任務(wù)有用的信息。在本研究中,提取原始音頻的MFCC特征作為模型的輸入。
每個音頻樣本的時間長度是10 s,提取MFCC時,幀長設(shè)為1 138,幀移設(shè)為498,窗函數(shù)選漢明窗,取前30位系數(shù),最終得到的MFCC特征的形狀為(30,320)。為了更充分地利用MFCC特征,按順序復(fù)制每個特征,并將其拼接成形狀為(320,320)的特征數(shù)據(jù)。
然后再對訓(xùn)練集數(shù)據(jù)的每個特征分別進(jìn)行標(biāo)準(zhǔn)化處理,避免特征之間的數(shù)值差異對模型訓(xùn)練產(chǎn)生負(fù)面影響。具體而言,先將每個特征的數(shù)據(jù)類型轉(zhuǎn)換為單精度浮點數(shù)類型,然后計算訓(xùn)練集每個特征的均值和標(biāo)準(zhǔn)差,并使用它們對訓(xùn)練集和測試集的特征進(jìn)行標(biāo)準(zhǔn)化處理。
只使用正常聲音提取到的特征進(jìn)行訓(xùn)練。訓(xùn)練集數(shù)據(jù)一共訓(xùn)練10代,批處理大小為8。每代訓(xùn)練先訓(xùn)練1次判別器,再訓(xùn)練2次生成器。生成器和判別器的優(yōu)化器都使用自適應(yīng)矩估計優(yōu)化算法(Adaptive Moment Estimation,Adam)。學(xué)習(xí)率分別為0.001和0.000 1。生成器的損失函數(shù)權(quán)重分別設(shè)置為1、40和1。
訓(xùn)練完模型后,把測試集數(shù)據(jù)輸入模型。保存測試模型時的生成器重構(gòu)損失與判別器潛在損失。
由于模型的訓(xùn)練只使用了正常樣本,模型只學(xué)習(xí)到了正常樣本的數(shù)據(jù)分布。理想情況下,輸入異常樣本時,模型不能很好地重構(gòu)數(shù)據(jù),從而使得正常樣本與異常樣本的重構(gòu)損失與判別損失的差別足夠大。所以使用重構(gòu)損失與判別損失作為異常分?jǐn)?shù),異常分?jǐn)?shù)為
S=λrLrec+λlLlat,
(10)
式中:Lrec和Llat分別為生成器的重構(gòu)損失和判別器潛在特征層的潛在損失;λr和λl則分別為它們所對應(yīng)的權(quán)重系數(shù),本文中取0.1和0.9。
模型的評價指標(biāo)使用無監(jiān)督學(xué)習(xí)常用的評價指標(biāo):AUC(Area Under Curve)。AUC被定義為ROC(Receiver Operating Characteristic)曲線下的面積。AUC的取值范圍在0.5~1.0之間,AUC越接近1,說明模型性能越高。
1) 對比試驗。本文使用傳統(tǒng)的自編碼器AE、跳躍自編碼器UNET和基于GAN的異常檢測模型Skip-GANomaly[7]作為對比方法,實驗結(jié)果如圖2和表2(小數(shù)點2位后直接舍去)所示。
圖2展示了不同方法在機(jī)器0、機(jī)器2、機(jī)器4和機(jī)器6上的ROC曲線。通過觀察圖2中曲線的相對位置可以發(fā)現(xiàn), ASAE-GAN的ROC曲線均在其余方法的上方,證明ASAE-GAN的性能優(yōu)于AE、UNET和Skip-GANomaly。
表2是不同方法在機(jī)器0、機(jī)器2、機(jī)器4和機(jī)器6上的AUC分?jǐn)?shù)以及它們在全部機(jī)器上的平均AUC分?jǐn)?shù)。由表2可以看出:ASAE-GAN的平均AUC分?jǐn)?shù)為82.44%,相比于AE、UNET和Skip-GANomaly分別提升了16.27%、14.23%和6.55%。由此可見,本文所提方法ASAE-GAN具有良好的異常聲音檢測能力。另外,模型在ID為0和4的異常檢測任務(wù)中表現(xiàn)較好,但在ID為2和6的異常檢測任務(wù)中表現(xiàn)一般。這可能因為在ID 為0和4的數(shù)據(jù)中,異常聲音和正常聲音的差異較大,而在ID為2和6的數(shù)據(jù)中,異常聲音和正常聲音的差異較小,因此需要更加精細(xì)的特征提取和模型設(shè)計。

(a) 機(jī)器0

(b) 機(jī)器2

(c) 機(jī)器4

(d) 機(jī)器6圖2 對比試驗ROC曲線

表2 對比實驗AUC分?jǐn)?shù)
2) 消融實驗。為了驗證ASAE-GAN中的通道間注意力機(jī)制和時間注意力機(jī)制的有效性,本節(jié)進(jìn)行消融實驗驗證,4種模型結(jié)構(gòu)分別為:① SAE-GAN,該模型生成器使用帶跳躍連接的AE,判別器使用卷積神經(jīng)網(wǎng)絡(luò),未添加注意力機(jī)制;② CSAE-GAN,該模型在SAE-GAN的基礎(chǔ)上,添加了通道間注意力機(jī)制;③ TSAE-GAN,該模型在SAE-GAN的基礎(chǔ)上,添加了時間注意力機(jī)制;④ ASAE-GAN,本文所提模型,在SAE-GAN的基礎(chǔ)上,添加了通道間注意力機(jī)制和時間注意力機(jī)制。
實驗結(jié)果如表3(小數(shù)點2位后直接舍去)所示。

表3 消融實驗AUC分?jǐn)?shù)
由表3可知,加入通道間注意力機(jī)制的CSAE-GAN比未加入注意力機(jī)制的SAE-GAN的平均AUC高了1.34%,表明通道間注意力機(jī)制可以使模型能更好地捕捉重要的通道。加入時間注意力機(jī)制的TSAE-GAN比未加入注意力機(jī)制的SAE-GAN的平均AUC高了2.35%,表明時間注意力機(jī)制可以使模型獲取到更重要的時序特征。而同時加入了通道間注意力機(jī)制和時間注意力機(jī)制的ASAE-GAN相比于SAE-GAN、CSAE-GAN和TSAE-GAN的平均AUC分別提高了5.87%、4.53%和3.52%,證明了本文方法可以有效地提高模型的性能。
1) 本文方法ASAE-GAN相比較于傳統(tǒng)的自編碼器AE,平均AUC分?jǐn)?shù)提升了16.27%。
2) 消融實驗證明了單獨添加通道間注意力機(jī)制和時間注意力機(jī)制都能有效提升模型性能,同時添加2種注意力機(jī)制的效果更好。
3) 在未來的工作中,可以給模型添加長短時記憶網(wǎng)絡(luò)和其它類型的注意力機(jī)制,進(jìn)一步增強(qiáng)模型的特征表達(dá)能力。