仇 睿 ,張晨旭 ,姚 瑤 ,李圣辰 ,邵 曦
(1.南京郵電大學(xué) 通信與信息工程學(xué)院,江蘇 南京 210003;2.西交利物浦大學(xué) 先進(jìn)工程學(xué)院,江蘇 蘇州 215123)
長(zhǎng)久以來聲音是人類傳遞信息的重要途徑,較為常見的聲音形式為人說話聲、破碎聲、槍聲、爆炸聲等。隨著音頻信號(hào)獲取技術(shù)、計(jì)算機(jī)技術(shù)、信號(hào)處理技術(shù)和模式識(shí)別等相關(guān)技術(shù)的發(fā)展,音頻信號(hào)監(jiān)控逐漸成為熱點(diǎn)問題。相較于視頻信號(hào),音頻數(shù)據(jù)具有無死角,對(duì)周圍環(huán)境要求較低且其信號(hào)數(shù)據(jù)量小、傳輸速度快等優(yōu)勢(shì)。在工業(yè)生產(chǎn)中,檢測(cè)到異常聲音可能表明一臺(tái)機(jī)器出現(xiàn)了異常,系統(tǒng)可以及時(shí)發(fā)出報(bào)警信息,提醒安全監(jiān)控人員進(jìn)行相應(yīng)的緊急處理。
但是,在現(xiàn)代工業(yè)生產(chǎn)中,機(jī)器運(yùn)行聲往往會(huì)受到工業(yè)環(huán)境噪聲的影響,這些噪聲具有功率大、多變且難以估計(jì)的特點(diǎn),大大減少了聲音信號(hào)的信息量,給異常聲音檢測(cè)帶來了很大的困難。對(duì)于這些復(fù)雜的環(huán)境噪聲,可以采用音頻去噪的方法對(duì)其進(jìn)行去噪處理,增強(qiáng)信息的特征性。常用的音頻去噪的方法有最小均方(Least Mean Square,LMS)算法[1]、歸一化最小均方(Normalized Least Mean Square,NLMS)算法[2]、遞推最小二乘(Recursive Least Square,RLS)算法[3]以及基于梯度加權(quán)平均的變步長(zhǎng)歸一化最小平均p范數(shù)(Variable Step-Size-Normalized Least Meanp-norm,VSS-NLMP)算法[4]等。本文選擇了基于深度學(xué)習(xí)(Deep learning)的譜減法模型[5],其基于一個(gè)簡(jiǎn)單的假設(shè): 假設(shè)語音中的噪聲只有加性噪聲,只要用帶噪語音譜減去噪聲譜,就可以得到純凈語音,且這么做的前提是噪聲信號(hào)的頻譜在短時(shí)間內(nèi)是平穩(wěn)不變的。通過去噪系統(tǒng)處理的音頻將會(huì)是更接近機(jī)器本身的聲音,有利于進(jìn)行異常聲音檢測(cè)而不會(huì)發(fā)生誤判。
對(duì)于音頻分類異常檢測(cè),目前主流的音頻信號(hào)分類算法主要包括以下兩種: 一種是神經(jīng)網(wǎng)絡(luò)模型,例如深度前饋網(wǎng)絡(luò)、深度循環(huán)神經(jīng)網(wǎng)絡(luò)和長(zhǎng)短時(shí)記憶網(wǎng)絡(luò)等;另一種是采用Adboost和隨機(jī)森林等分類器進(jìn)行音頻數(shù)據(jù)分類[6]。最近,一種基于深度可分離卷積的輕量級(jí)卷積神經(jīng)網(wǎng)絡(luò)(Convolutional Neural Network,CNN)MobileNet V2[7]被應(yīng)用于異常檢測(cè),其可以用較少的參數(shù)和運(yùn)算量得到較為理想的檢測(cè)效果。本文的方案是在MobileNet V2異常檢測(cè)系統(tǒng)的基礎(chǔ)上,先對(duì)原始音頻集進(jìn)行去噪處理,消減環(huán)境噪聲的影響后再進(jìn)行異常聲音檢測(cè)。
本文提出的基于頻譜感知音頻去噪的機(jī)器異常聲音檢測(cè)系統(tǒng)的框架如圖1所示,該系統(tǒng)主要包括3個(gè)部分: 音頻去噪、模型訓(xùn)練和測(cè)試階段。首先,在音頻去噪階段,由開源的音頻集訓(xùn)練出一個(gè)基于頻譜感知的去噪系統(tǒng),降低環(huán)境噪聲對(duì)異常聲音檢測(cè)的影響。其次,在模型訓(xùn)練階段,集中提取出所有去噪訓(xùn)練集音頻的對(duì)數(shù)Mel譜特征,然后將音頻通過輕量級(jí)卷積神經(jīng)網(wǎng)絡(luò)訓(xùn)練并輸出音頻的每幀的邏輯回歸分類預(yù)測(cè)值,由每幀預(yù)測(cè)值的平均負(fù)對(duì)數(shù)計(jì)算整段音頻的異常分?jǐn)?shù),結(jié)合異常值的分布情況確定異常閾值。最后,在測(cè)試階段,通過比較每個(gè)去噪測(cè)試集音頻的異常分?jǐn)?shù)與異常閾值的大小來確定機(jī)器運(yùn)行是否異常。
圖1 異常聲音檢測(cè)系統(tǒng)的框架Fig.1 The framework of abnormal sound detection system
隨著深度神經(jīng)網(wǎng)絡(luò)的發(fā)展,音頻去噪研究的重點(diǎn)已從最小均方誤差(Minimum Mean Square Error,MMSE)方法,如基于短時(shí)頻譜分析的MMSE方法(MMSE-Short Time Spectrum Analysis,MMSE-STSA)轉(zhuǎn)移到基于掩蔽和映射的深度學(xué)習(xí)方法。為了彌合這兩種不同的音頻去噪方法之間的差距,本文采用基于對(duì)數(shù)頻譜分析的MMSE方法(MMSE-Logarithmic Spectrum Analysis,MMSE-LSA)的Deep Xi[8]算法來進(jìn)行音頻增強(qiáng),目標(biāo)是產(chǎn)生與異常檢測(cè)任務(wù)更相關(guān)的增強(qiáng)音頻,消除環(huán)境噪聲對(duì)檢測(cè)的影響。音頻增強(qiáng)方法的結(jié)構(gòu)如圖2所示。
圖2 音頻增強(qiáng)算法的結(jié)構(gòu)Fig.2 The structure of audio enhancement algorithm
算法的基本思想是: 輸入為一個(gè)含噪信號(hào)X(m),即
式中:S(m)表示音頻信號(hào);d(m)表示噪音信號(hào)。再通過短時(shí)傅里葉變換(Short Time Fourier Transform,STFT),將信號(hào)變換到頻域上,在頻域上感知含噪信號(hào)頻譜的統(tǒng)計(jì)特征,其極坐標(biāo)形式可以表示為
式中:X(n,k)是X(m)通過STFT而來的極坐標(biāo)表示;j為虛部;∠X(n,k)表示相位;n是幀索引;k為離散頻率索引。
假設(shè)增強(qiáng)后的音頻信號(hào)的估計(jì)幅度譜為|?(n,k)|,在人耳對(duì)音頻感知的過程中,音頻的短時(shí)譜對(duì)音頻感知起決定性作用,其中以幅度信息為主導(dǎo),而對(duì)相位信息不是很敏感,所以,純凈音頻信號(hào)的相位信息可以由含噪音頻信號(hào)的相位信息代替。假設(shè)增強(qiáng)后音頻信號(hào)譜為
最后通過STFT的逆變換將信號(hào)變換回時(shí)域,形成去噪音頻。
在此過程中,定義了增益函數(shù):
則
基于MMSE-LSA的特定增益函數(shù)
式中:ξ(n,k)是先驗(yàn)信噪比的估計(jì);γ(n,k)是后驗(yàn)信噪比的估計(jì);v(n,k)是先驗(yàn)信噪比與后驗(yàn)信噪比的非線性組合,且v(n,k)=γ(n,k)。在假設(shè)含噪信號(hào)為平穩(wěn)且噪聲與音頻信號(hào)不相關(guān)時(shí),后驗(yàn)信噪比可以簡(jiǎn)化為先驗(yàn)信噪比加一,所以增益函數(shù)G(n,k)的估計(jì)就變?yōu)閷?duì)信噪比的估計(jì),但其無法預(yù)先知道,只能從含噪信號(hào)譜X(n,k)中獲取。為了得到準(zhǔn)確的先驗(yàn)信噪比的估計(jì),本文使用了時(shí)間卷積網(wǎng)絡(luò)(Time Convolution Network,TCN)來準(zhǔn)確估計(jì)先驗(yàn)信噪比。TCN包含輸入全連接層和5個(gè)殘差塊以及1個(gè)全連接的輸出層,每個(gè)殘差塊的單元大小設(shè)置為512。
為了驗(yàn)證去噪系統(tǒng)的實(shí)際效果,本文將所有訓(xùn)練集及測(cè)試集音頻都通過去噪系統(tǒng)消減噪聲而不僅僅只針對(duì)某些機(jī)器的個(gè)別類型所得到的音頻,得到了更加純凈的機(jī)器聲,生成了新的純凈機(jī)器聲訓(xùn)練集及測(cè)試集來進(jìn)行異常檢測(cè)。
通過上一步去噪后的音頻數(shù)據(jù)量十分龐大,因此需要對(duì)音頻特征進(jìn)行提取和選擇,即將數(shù)據(jù)從模式空間轉(zhuǎn)換到特征子空間,使其在特征子空間中能很好地被區(qū)分。音頻信號(hào)具有隨機(jī)性和短時(shí)平穩(wěn)性,要首先進(jìn)行預(yù)加重,使音頻信號(hào)的頻譜變得平緩,然后進(jìn)行分幀處理,最后對(duì)每一幀計(jì)算其特征。目前應(yīng)用較多的特征表示形式有線性預(yù)測(cè)系數(shù)(Linear Prediction Coefficient,LPC)、感知線性預(yù)測(cè)(Perceptual Linear Predictive,PLP)、Mel頻率倒譜系數(shù)(Mel Frequency Cepstral Coefficients,MFCC)[9-10]。相對(duì)于在時(shí)域上進(jìn)行分析,在頻域上可以更好地區(qū)分異常音頻與正常音頻的特征。人耳聽到的聲音高低和聲音的實(shí)際頻率不呈線性關(guān)系,在1 000 Hz以下呈線性分布,在1 000 Hz以上呈對(duì)數(shù)增長(zhǎng)。Mel頻率由此特點(diǎn)啟發(fā),故其更能表征人耳的聽覺特性,這正是用Mel聲譜圖的一個(gè)動(dòng)機(jī),因此Mel頻率被廣泛應(yīng)用于異常聲學(xué)事件檢測(cè)。在本次任務(wù)中因?yàn)楫惓B曇舻慕y(tǒng)計(jì)能量在頻率域非均勻分布,且每種類型機(jī)器特性以及異常程度不盡相同,為了提升本文所提出系統(tǒng)的泛化性能,選用對(duì)數(shù)Mel頻譜特征。對(duì)數(shù)Mel譜特征是線性時(shí)譜經(jīng)過Mel濾波器過濾后取對(duì)數(shù)處理,將線性能量譜轉(zhuǎn)換到對(duì)數(shù)能量譜上得到的特征矩陣。該特征沒有經(jīng)過離散余弦變換(Discrete Cosine Transform,DCT),與MFCC相比特征相關(guān)性更高。因此,對(duì)數(shù)Mel頻譜特性能夠很好地用于本次音頻異常檢測(cè)任務(wù)。
對(duì)音頻進(jìn)行分類,國際聲學(xué)場(chǎng)景和事件檢測(cè)及分類挑戰(zhàn)賽(Detection and Classification of Acoustic Scenes and Events challenge,DCASE challenge)2021提供了兩種基線系統(tǒng)(Baseline system),分別是基于自編碼器(Auto-Encoder,AE)[11-12]的異常檢測(cè)分類器和基于MobileNet V2架構(gòu)的異常檢測(cè)分類器。本文主要遵循MobileNet V2基線系統(tǒng)。該網(wǎng)絡(luò)是在殘差網(wǎng)絡(luò)的基礎(chǔ)上改進(jìn)的輕量級(jí)卷積神經(jīng)網(wǎng)絡(luò),此前已經(jīng)被應(yīng)用于計(jì)算機(jī)視覺識(shí)別任務(wù),如目標(biāo)檢測(cè)、分類和語義分割,取得了較好的實(shí)驗(yàn)效果。本實(shí)驗(yàn)使用現(xiàn)成的Keras實(shí)現(xiàn)的MobileNet V2架構(gòu),與常規(guī)卷積神經(jīng)網(wǎng)絡(luò)相比,其參數(shù)量降低了20%但精度卻得到了提升。該體系結(jié)構(gòu)專門為移動(dòng)和資源受限的環(huán)境量身定制,推動(dòng)了需要輕量化定制的音頻異常檢測(cè)模型的最新發(fā)展。MobileNet V2架構(gòu)主要包含的特性有:1) 使用深度可分離卷積代替普通卷積以降低計(jì)算量和參數(shù)量;2) 采用了倒殘差結(jié)構(gòu)加深了網(wǎng)絡(luò)層數(shù)和增強(qiáng)了特征的表達(dá)能力。其基本結(jié)構(gòu)如圖3所示。
圖3 MobileNet V2架構(gòu)的框架Fig.3 The framework of Mobile Net V2 architecture
由圖3可以看出此系統(tǒng)的結(jié)構(gòu)是音頻特征向量先通過擴(kuò)展層(Expansion layer)來擴(kuò)展維度,再用深度可分離卷積層(Depthwise separable convolution layer)來提取特征,深度可分離卷積層與常規(guī)的卷積層的操作不同,其是由深度卷積(Depthwise convolution,DW)和逐點(diǎn)卷積(Pointwise convolution,PW)組成。在深度卷積過程中,特征的一個(gè)通道僅由一個(gè)卷積核進(jìn)行卷積,提取每個(gè)通道的特征;而逐點(diǎn)卷積和普通卷積類似,只是將卷積核設(shè)置為1×1,負(fù)責(zé)轉(zhuǎn)換通道并輸出特征映射。所以整個(gè)卷積層可以做到參數(shù)量少且運(yùn)算成本低,網(wǎng)絡(luò)層數(shù)可以做的更深,并且使用映射層(Projection layer)來降低特征維度,讓網(wǎng)絡(luò)重新變小,最后通過全局池化層將深度可分離卷積層的輸出映射到音頻分類的類別中。此結(jié)構(gòu)與殘差網(wǎng)絡(luò)先降維,卷積再升維的結(jié)構(gòu)相反,故稱為倒殘差結(jié)構(gòu)。倒殘差結(jié)構(gòu)的設(shè)計(jì)可以讓系統(tǒng)在高維度下獲取更多的特征,對(duì)音頻進(jìn)行準(zhǔn)確的分類,而在低維度下運(yùn)算速度變快,有利于提升運(yùn)行效率。同時(shí)殘差連接還可以提升梯度的傳播效率,使網(wǎng)絡(luò)層數(shù)能設(shè)計(jì)得更深。此外,擴(kuò)展層和映射層都有可以學(xué)習(xí)的參數(shù),所以整個(gè)網(wǎng)絡(luò)結(jié)構(gòu)可以更好地?cái)U(kuò)展和重新壓縮數(shù)據(jù)。
通過MobileNet V2卷積神經(jīng)網(wǎng)絡(luò)系統(tǒng)輸出了音頻每幀的邏輯回歸預(yù)測(cè)值,并建立了每種機(jī)器各個(gè)類別的邊界,可以更好地進(jìn)行接下來的異常檢測(cè)。
本文設(shè)計(jì)的音頻異常得分是由音頻片段每幀的邏輯回歸預(yù)測(cè)值的平均負(fù)對(duì)數(shù)來計(jì)算的[13],如下所示:
式中:B是音頻的幀數(shù);t(b)是頻譜圖像的幀索引;函數(shù)φ是聲學(xué)特征;pθ是通過Mobile Net V2系統(tǒng)輸出的邏輯回歸預(yù)測(cè)值。
為了測(cè)定異常分?jǐn)?shù)Aθ的異常閾值,本文設(shè)定Aθ服從伽馬分布,并根據(jù)每段音頻的Aθ分布的直方圖確定伽馬分布的參數(shù),設(shè)定異常檢測(cè)閾值為Aθ的伽馬分布的第90百分位的數(shù)值。如果音頻的Aθ值大于該閾值,則判定該音頻異常;如果更小,則判定為該音頻正常。
本文使用Interspeech 2020深度噪聲抑制挑戰(zhàn)賽(Interspeech 2020 deep noise suppression challenge 2020)[14]推薦的噪聲集和音頻集合成的-10~20 d B的23 000條帶噪音頻與其對(duì)應(yīng)的純凈音頻來訓(xùn)練Deep Xi去噪系統(tǒng),并用DCASE Challenge 2021 Task2[15]數(shù)據(jù)集來評(píng)價(jià)基于頻譜感知音頻去噪的異常聲音檢測(cè)方法。異常檢測(cè)數(shù)據(jù)集由Toy ADMOS數(shù)據(jù)集[16]和MIMII數(shù)據(jù)集[17]組成??偟臄?shù)據(jù)集分為開發(fā)集和補(bǔ)充集,均包含了7種真實(shí)機(jī)器,即Fan、Gearbox、Pump、Slider、ToyCar、Toy Train和Valve的正常與異常聲音。在開發(fā)集中,作者通過修改每種機(jī)器的正常運(yùn)行方式和運(yùn)行環(huán)境,為每種機(jī)器分別設(shè)置了3種小類別Section00、Section01、Section02,其數(shù)據(jù)構(gòu)成如表1所示。每個(gè)音頻片段時(shí)長(zhǎng)為10 s且都是單聲道音頻,包含了機(jī)器聲和其所處的環(huán)境噪聲。
表1 開發(fā)集的統(tǒng)計(jì)信息Tab.1 The statistics of development set
此外,對(duì)于每種機(jī)器,作者還將Section00、Section01、Section02中的音頻線性組合構(gòu)成補(bǔ)充集Section03、Section04、Section05投入異常檢測(cè)系統(tǒng)訓(xùn)練以增強(qiáng)系統(tǒng)泛化性能,每個(gè)類別均含有103個(gè)訓(xùn)練集中的正常音頻,其線性組成如表2所示。
表2 補(bǔ)充集的構(gòu)成Tab.2 The composition of supplementary set
在特征提取部分,設(shè)置采樣窗口的長(zhǎng)度為64 ms,幀移為32 ms,濾波器的數(shù)量為128,最大采樣頻率為8 000 Hz,以此來獲取對(duì)數(shù)Mel譜圖特征。最后,對(duì)于10 s音頻得到一個(gè)形狀為251×64×128×1的特征矩陣。
在分類器部分,網(wǎng)絡(luò)包含初始的32個(gè)卷積核的全卷積層,卷積核為3×3,后接7個(gè)瓶頸層,網(wǎng)絡(luò)中使用ReLU6作為激活函數(shù),輸出層用softmax函數(shù),設(shè)置模型寬度縮放因子為0.5,并且利用丟棄和批標(biāo)準(zhǔn)化技術(shù)防止過擬合,實(shí)驗(yàn)用多分類交叉熵(Classification Cross Entropy,CCE)[18]作為損失函數(shù)。采用亞當(dāng)(Adam)優(yōu)化算法,學(xué)習(xí)率為0.000 01。訓(xùn)練時(shí)迭代次數(shù)設(shè)置為50次,每一批數(shù)據(jù)的大小(Batch size)為32。
本文使用曲線下面積(Area Under Curve,AUC)[19]和部分曲線下面積(partial Area Under Curve,p AUC)兩種指標(biāo)來評(píng)估實(shí)驗(yàn)結(jié)果。AUC是一個(gè)概率值,被定義為受試者操作特征(Receiver Operating Characteristic,ROC)曲線下與坐標(biāo)軸圍成的面積。當(dāng)隨機(jī)挑選一個(gè)正樣本以及負(fù)樣本,當(dāng)前的分類算法根據(jù)計(jì)算得到的Score值將這個(gè)正樣本排在負(fù)樣本前面的概率就是AUC值,AUC值越大,當(dāng)前分類算法越有可能將正樣本排在負(fù)樣本前面,從而能夠更好地分類。p AUC的構(gòu)造與上述過程基本一致,只是需要再計(jì)算出精確度(Precision)。
式中:SAUC和SpAUC分別為AUC和p AUC的值;M代表機(jī)器的類型;n代表具體機(jī)器為M類型的某個(gè)類別;d值可以確定是目標(biāo)域還是源域;p設(shè)置為0.1;H(X)是一個(gè)閾值函數(shù),當(dāng)x>0時(shí)輸出為1,當(dāng)x<0時(shí)輸出為0;分別為具體某種機(jī)器的某個(gè)類別的某個(gè)域中的正常樣本和異常樣本;N-和N+分別是對(duì)應(yīng)的正常樣本和異常樣本的數(shù)量;符號(hào)表示向下取整。
本實(shí)驗(yàn)選取DCASE Challenge 2021 Task2的兩種基線系統(tǒng)作為參照對(duì)象,這兩種方法分別是基于自編碼器架構(gòu)的異常檢測(cè)系統(tǒng)和基于MobileNet V2架構(gòu)的異常檢測(cè)系統(tǒng),兩種方法的音頻集均采用沒有進(jìn)行去噪處理的原始音頻數(shù)據(jù),其中基于自編碼器架構(gòu)的系統(tǒng)建立了正常聲音的模型,然后用異常聲音特征值很高的重建損失作為異常分?jǐn)?shù),而基于Mobile Net V2架構(gòu)的基線系統(tǒng)與本文方法相比,其缺少對(duì)音頻去噪的預(yù)處理。實(shí)驗(yàn)對(duì)本文方法與兩種基線系統(tǒng)方法的性能進(jìn)行了比較,具體數(shù)據(jù)如表3所示。
表3 所有機(jī)器的實(shí)驗(yàn)結(jié)果與基線系統(tǒng)的對(duì)比Tab.3 The comparison of all machine experiment results with baseline system
通過實(shí)驗(yàn),發(fā)現(xiàn)在7種機(jī)器中,進(jìn)行去噪處理的機(jī)器Fan、Gearbox、Pump、Slider、ToyCar、Valve的算術(shù)平均AUC(p AUC)分別提升了8.60%(6.51%)、8.43%(6.00%)、8.60%(3.98%)、5.17%(7.65%)、5.00%(0.74%)、7.74%(3.86%),只有機(jī)器Toy Train的算術(shù)平均AUC(p AUC)下降了7.84%(2.50%)。
本文描述了一種基于頻譜感知音頻去噪的異常聲音檢測(cè)方法,主要是對(duì)收集到的音頻進(jìn)行去噪預(yù)處理以獲得與機(jī)器運(yùn)行本身更有關(guān)的聲音,降低環(huán)境聲對(duì)異常檢測(cè)的干擾,再通過基于Mobile Net V2架構(gòu)的分類器輸出的邏輯回歸值來計(jì)算異常分?jǐn)?shù)和確定異常閾值,然后判斷機(jī)器是否異常。實(shí)驗(yàn)證明了通過對(duì)原始音頻進(jìn)行去噪處理可以獲得更好的異常檢測(cè)效果。在未來的工作中,將考慮其他成熟的去噪方法,增強(qiáng)去噪效果,并選擇更加適合的分類器,以進(jìn)一步提高異常檢測(cè)的效果。