吳張倩,蘇兆品,2,3,4,武欽芳,張國富,2,3,4
(1.合肥工業(yè)大學計算機與信息學院,安徽 合肥 230601;2.智能互聯系統安徽省實驗室(合肥工業(yè)大學),安徽 合肥 230009; 3.工業(yè)安全與應急技術安徽省重點實驗室(合肥工業(yè)大學),安徽 合肥 230601; 4.安全關鍵工業(yè)測控技術教育部工程研究中心,安徽 合肥 230601)
隨著視頻、圖像和音頻等各種編輯軟件的普及以及操作的智能化,對多媒體數據進行編輯和修改越來越輕而易舉。用戶可能對信息進行惡意剪切或篡改,在不尊重事實和他人的基礎上謀取私人利益,從而帶來潛在的不利因素和惡劣影響。為此,多媒體取證技術[1]旨在能夠鑒別多媒體數據是否經過編輯、篡改,以及識別和驗證多媒體數據來源。
與視頻和圖像相比,音頻取證隱蔽性更強,且更容易操作。越來越多的人在交流、交易協商時會選擇使用語音聊天記錄或手機錄音取證方式固定曾經發(fā)生的客觀事實,以期在出現法律糾紛時作為證據進行使用。但是,手機語音是否可以作為有效證據被法庭采納的一個先決條件是需要確定其真?zhèn)?,而對手機語音的來源設備識別是語音證據鑒真和形成完備證據鏈的一個根本前提,已成為近年來多媒體取證領域中的一個研究熱點[1]。
近年來,手機來源識別研究取得了豐碩成果,從對語音信號處理對象的角度,語音信號可以分為對整體語音信號處理和對非語音部分信號處理2大類。
有觀點認為,利用語音信號的非語音部分可以降低計算復雜度,且能夠排除語音部分的干擾,從而挖掘手機設備的本質特征。在這方面,Hanilci等[2]采用信息論的方法提取非語音部分的特征,利用最大互信息訓練的高斯混合模型來表示特定設備的特征。Aggarwal等[3]從噪聲估計樣本中提取梅爾頻率倒譜系數MFCC(Mel Frequency Cepstral Coefficient)。Qi等[4]從背景噪聲中提取語音特征,并對比分析了在不同深度學習分類器下的識別性能。Jin等[5]將從噪聲中提取的光譜形狀特征和光譜分布特征用于手機來源識別。裴安山等[6]將本底噪聲作為手機的指紋,提出了一種基于本底噪聲的手機來源識別方法。在他們的后續(xù)研究中[7],通過使用自適應端點檢測算法得到語音的靜音段,然后將靜音段的梅爾頻譜系數的均值作為分類特征。Baldini等[8]在不同頻率下用非語音聲音刺激內置麥克風,利用手機內置麥克風的固有物理特性構建卷積神經網絡對智能手機進行識別和認證。上述針對非語音部分的研究可以有效降低計算開銷,但完全無視語音部分,可能會丟失語音部分包含的一些關鍵設備特征,從而影響識別效果。
因此,主流的研究大都致力于從整體語音信號中提取特征。特別是最近,Luo等[9]提出了一種新的帶能量描述符BED(Band Energy Descriptor)特征,并使用支持向量機SVM(Support Vector Machine)進行設備識別。BED主要利用不同生產商在音頻采集管道上不盡相同,從而產生可用于音頻取證的微小差異。Qin等[10]提出了一種常數Q變換域CQT(Constant Q Transform)的語音特征,并使用卷積神經網絡CNN(Convolutional Neural Network)進行訓練。在更早期,Hanilci等[11]提取MFCC作為設備特征,并利用SVM作為分類器。緊接著,Hanilci等[12]提出MFCC、線性頻率倒譜系數、巴克頻率倒譜系數和線性預測倒譜系數4種不同的聲學特征,并采用倒譜平均歸一化、倒譜方差歸一化、倒譜均值和方差歸一化3種不同的歸一化技術分別處理。Zou等[13]利用高斯混合模型-通用背景模型設計了一種基于MFCC和功率歸一化倒譜系數的識別方法。裴安山等[14]指出不同手機的語音頻譜特征是不同的,將語音的頻譜信息量、對數譜和相位譜特征串聯構成原始融合特征。上述已有方法均是從整體語音信號中提取特征,從而可以充分挖掘語音信號中的關鍵設備信息,均在手機來源識別上取得了較好的識別效果,但計算開銷稍大。
總的來說,雖然BED+SVM[9]和CQT+CNN[10]等方法在手機來源識別上取得了不錯的效果,但是一個突出的問題是,現有研究大都基于理想而又安靜的實驗室環(huán)境,利用純凈語音或添加人工噪聲語音來進行測試分析,而對實際環(huán)境噪聲語音卻鮮有涉及。在音頻取證中,充當證據的手機語音信號通常產生于人們交流和交易協商的生活和工作環(huán)境中,包含了各種自然環(huán)境背景噪聲。特別地,自然環(huán)境背景噪聲復雜多變,在不同天氣、地點,背景噪聲信號對手機語音信號產生的影響也不同。有時候,強自然環(huán)境背景噪聲甚至可能會完全掩蓋設備本身的噪聲。在對這些手機語音進行特征提取時,如何降低自然環(huán)境背景噪聲對手機設備本身噪聲的干擾是一個難點問題。當自然環(huán)境背景噪聲較小或人工背景噪聲具有一定先驗知識時,傳統方法提取的語音特征,如MFCC、BED和CQT等都可以較好地反映出設備的噪聲特征。但是,當背景噪聲較大且較復雜的時候,傳統方法提取的特征不能有效抵抗背景噪聲的干擾, 無法滿足司法領域的實際需求,必然導致識別準確率下降。因此,如何在實際環(huán)境噪聲干擾下提取出設備關鍵特征,是需要解決的第1個難點問題。此外,SVM和CNN這些分類器沒有充分利用音頻信號的時序特征,在串行信號的處理上,例如在一個關鍵性質“記憶力”上很難充分發(fā)揮價值,因此選取一個契合時序信號的分類器、充分挖掘語音時序特征是需要解決的第2個問題。
基于上述分析,為了滿足司法領域音頻證據的鑒真需求,提高實際環(huán)境噪聲下手機來源識別的準確率,本文首先利用線性判別分析LDA(Linear Discriminant Analysis)[15]優(yōu)化一個語音混合特征,并以此混合特征為輸入,基于時序卷積網絡TCN(Temporal Convolutional Network)[16]進行訓練和分類,提出一種基于LDA和TCN的手機來源識別方法,最后基于各種實際環(huán)境噪聲語音庫對所提方法進行了大量測試和驗證。
語音信號的不同特征能從不同側面反映語音的不同信息,因此可以使用融合特征來更加全面地表達語音信號。本文在已有工作基礎上,通過大量測試和分析,選取并嘗試將BED和CQT這2個特征結合起來,利用LDA優(yōu)化[15]從混合特征中降維出LQBED(LDA based CQT and BED),以獲得更全面的語音特征信息,從而在整體上提高特征的分辨力。
假設BED的特征維數為n,CQT的特征維數為m,則組合后的特征維數為n+m。雖然組合特征能更全面地反映語音特征,但特征值維數較大,其中可能包含很多對設備特征沒有貢獻或者貢獻較小的特征值,即存在一定相關性或冗余性,會帶來巨大的計算開銷,因此需要對這個混合特征進行降維,去除其中的冗余信息。在機器學習中,LDA[15]是一種典型的模式識別和降維方法。其基本思想是將高維模式樣本投影到最優(yōu)判別向量空間中,以提取分類信息并壓縮特征空間的維數。投影后,保證樣本有最大的類間距離和最小的類內距離,使得同一類數據盡可能緊湊,不同類的數據盡可能分散。LDA可以充分利用先驗知識,計算速度快。特別地,當數據滿足高斯分布時,LDA的降維效果非常顯著,而基于語音信號的手機來源識別主要是根據語音信號中含有的設備元器件(主要是麥克風)自身噪聲的微小差異來進行識別。通常,電路各元器件自身噪聲和相互作用產生的影響主要就是高斯噪聲。因此,本文選擇LDA對混合特征進行降維,提取出LQBED特征。
基于LDA的LQBED語音特征提取過程如圖1所示,具體描述如下所示:
步驟1針對每一類別,計算305維特征的均值向量得到ai,計算所有樣本的均值向量a。
步驟2構造類間散布矩陣SB和類內散布矩陣SW:
(1)
(2)
步驟5取前k大的奇異值對應的特征向量組成投影矩陣W。k是輸出特征的維數,最大為特征類別的個數減1,本文設置為46。
步驟6計算樣本集中每個樣本x在新的低維空間的投影Z=WTx。
Figure 1 Procedure of extracting the LQBED feature圖1 LQBED過程提取過程
Figure 2 t-SNE visualization of the LQBED feature圖2 LQBED分類能力的t-SNE可視化
Figure 3 TCN structure used for source cell-phone identification圖3 用于手機來源識別的TCN結構
為了更加直觀地表征LQBED的分類能力,圖2給出了LQBED分類能力的t-SNE(t-distributed Stochastic Neighbor Embedding)可視化結果[17]。t-SNE 方法不僅能夠關注原有數據的局部性特征,而且也保留了原始數據的全局特性,可以全面反映特征的分類能力。從圖2可以看出,簇與簇之間的區(qū)別非常明顯,這是因為LQBED保留了CQT和BED中的關鍵信息,同時又去除了不必要的冗余,減少了冗余信息的干擾,從而可以達到較好的可分性,也為后續(xù)的訓練和分類節(jié)省了計算開銷。
語音信號具有典型的時間序列性,在機器學習中,循環(huán)神經網絡通常被列為解決序列問題的首選工具。Bai等[16]研究成果表明,作為CNN家族中的一個成員,時序卷積網絡TCN在各種領域的測試數據上,都得到了比傳統循環(huán)神經網絡更為準確的結果,成為新的序列數據分析方面的佼佼者。
TCN主體包括一維全卷積網絡和因果卷積,同時采用擴張卷積和殘差模塊來獲取較長歷史信息,非常契合音頻信號的時序特性。此外,由于擴張卷積和殘差模塊的獨特特性,可以構建更深層的網絡,從而可以提取更多的歷史語音信息而不必擔心梯度消失和梯度爆炸。因此,本文根據音頻信號特征,選取并設計相應的TCN作為分類器,來進一步學習深度語音特征,然后利用深度特征進行手機來源的識別。
本文設計的用于手機來源識別的TCN結構如圖3所示。為了保證技術的可重復性,下面將詳細介紹框架中的一些具體技術細節(jié)。
首先,整體架構如圖3a所示。輸入為語音的LQBED特征,對于T幀的語音信號,zt∈R46是從語音第t幀中提取的特征。輸入Z∈RT×46是所有幀LQBED特征的串聯。輸入特征經過一維卷積過濾后進入殘差模塊進一步學習:
Y1=σ1(W1·Z0)
(3)
其中,Z0是網絡最初的輸入特征,W1是第一層網絡需要學習的參數,σ1是非線性激活函數tanh。
其次,在TCN架構中引入的殘差模塊共包括3個,每一個殘差模塊組成相同,如圖3b所示。每個殘差模塊深層網絡被分解成若干個殘差學習單元Res_unit,每一個Res_unit中的卷積核個數是128。在每一個殘差模塊中,本文采用擴張卷積,其中最關鍵的參數為擴張率(d)在連續(xù)多個Res_unit中以2的指數形式增加,即d=2n,n=0,1,2,3,4,從而能夠在不顯著增加參數數量的情況下擴大感受野。在TCN中,每個Res_unit的輸出通過添加到下一個Res_unit的輸入而簡單合并。令Yl代表第l層Res_unit的輸出,則:
Yl=Yl-1+F(Wl,Yl-1)
(4)
其中,Wl是第l層Res_unit需要學習的參數,F是在Res_unit中的非線性變換。
此外,每個Res_unit的具體結構如圖3c所示。將輸入信號進行卷積之后分別利用不同的激活函數(Sigmoid、tanh)進行線性變換,并將結果相乘。Sigmoid的值在0~1,與tanh相乘,相當于給每一維特征加權,提高學習到的特征性能和模型泛化能力。然后再次經過一維卷積和tanh激活函數之后輸出:
F(Wl,Yl-1)=
σ1(Wl2·(σ1(Wl1·Yl-1)·σ2(Wl1·Yl-1)))
(5)
其中,σ2是Sigmoid非線性激活函數,Wl1和Wl2分別代表第l層Res_unit中第1層conv和第2層conv的參數,Wl=Wl1+Wl2。在經過N個Res_unit的學習后,累加不同輸出,經過殘差模塊3非線性變換(ReLU函數)后得到YN:
(6)
YN+1=σ3(WN+1·YN)
(7)
YN+2=WN+2·YN+1
(8)
式(6)中,第1個Res_unit的輸出是Y2,TCN中的所有后續(xù)Res_unit均要在Y1的基礎上進行計算。本文利用網絡學習不同語音信號中有區(qū)別的語音特征, 整個模型的表示能力在很大程度上取決于第1層網絡參數W1確定的Y1。在圖3a中,本文在殘差模塊之后又添加了2層卷積層,即式(7)和式(8)。
對于預測,本文應用全局平均池化,將數據由三維降到二維,減少訓練參數的同時,提高模型的泛化能力,最后附加一個神經元數量等于類數量的Softmax層。
(9)
YN+3=GlobalMaxPooling1d(YN+2)
(10)
需要指出的是,圖3的整體網絡中還多次利用了加速神經網絡訓練的BatchNorm算法[18],以提高收斂速度和穩(wěn)定性。
為了測試本文所提方法在自然環(huán)境噪聲下的魯棒性,本節(jié)首先構建了一個具有實際環(huán)境噪聲的語音數據庫。該語音數據庫由來自表1所示的10個品牌、47種型號手機設備的MP3格式的音頻信號組成,采樣率為44 100 Hz或48 000 Hz,比特率為64 kbps或128 kbps。每種型號下的手機語音信號均收錄于不同性別的人在不同生活噪聲環(huán)境下的語音(包括日常對話、電影對話、無線電廣播等)。
Table 1 Model and ID of each mobile phone表1 實驗手機的品牌和型號
本文將每種型號收錄到的語音信號平均分割成3 s,最終每種型號的手機共收集700條語音片段,其中600條用于訓練,其余100條用于測試,從而構建了一個包含32 900條語音樣本的語音數據庫。其中,訓練庫包括28 200條語音,測試庫包括4 700條語音。本文涉及到的相關實驗均是在該語音數據庫上進行測試和分析。
對于TCN,訓練周期是一個關鍵參數。本文經過大量的測試發(fā)現,當訓練周期達到30時TCN的精度和損失基本不變。因此,為了保證充分的學習,本文最終將訓練周期設定為30,網絡學習率設置為0.01,損失函數為Categorical Crossentropy。其他的一些參數已在圖3的網絡結構中給出。
為了充分評估所提方法的性能,本文引入如下4種在機器學習中常用性能指標[6]:
(1)準確率(Accuracy):使用最普遍也是最直觀的性能指標,表示預測正確的樣本占所有樣本的比例,表示一個分類器的區(qū)分能力。
(2)召回率(Recall):指在所有實際為正例的樣本中,被預測為正例的樣本比例。
(3)精確率(Precision):指在所有被分類為正例的樣本中,真正是正例的比例。
(4)F1分數(F1-score):為精確率和召回率的調和平均數。
為了驗證LDA從混合特征中提取LQBED的有效性,第1個實驗將對比分析不同的降維算法。在深度學習中,除了LDA,常用的降維算法還有主成分分析PCA(Principal Component Analysis)、獨立成分分析ICA(Independent Component Analysis)、因子分析FC(Factor Analysis)和局部線性嵌入LLE(Locally Linear Embedding)等[19],不同的降維算法適用不同的應用場景。
表2給出了基于TCN和不同降維算法下得到的平均識別準確率。由表2可以看出,LDA降維之后獲得的識別性能最佳,尤其比不降維還略有提升。這是因為,LDA可以充分利用先驗知識,計算速度快,特別是當數據滿足高斯分布的時候效果顯著,而語音信號中含有的設備噪聲主要就是高斯噪聲。
為了驗證本文采用的LQBED特征的有效性,本節(jié)將LQBED與性能較好的BED和CQT進行對比分析?;诒?所示的47種不同手機型號,在TCN識別框架中檢測上述3種特征的性能。
Table 2 Average accuracies under different dimensionality reduction algorithms表2 不同降維算法下得到的平均識別準確率
圖4給出了3種特征在47種手機型號(對應1~47)上召回率、精確率和F1分數結果??梢钥闯觯趫D4a中,除了ID=8和ID=23,LQBED在其余不同ID上的召回率值均優(yōu)于BED和CQT的。在圖4b中,除了ID=9,ID=13和ID=18,LQBED在其余不同ID上的精確率值都要好于BED和CQT的。在圖4c中,除了ID=8和ID=23,LQBED在其余不同ID上的F1分數值均好于BED和CQT的。雖然在上述3個指標上,LQBED在少數幾個型號手機的數據上的表現不盡人意,但從整體上來看,LQBED優(yōu)勢明顯,在絕大多數型號的手機上,LQBED在召回率、精確率、F1分數3個指標上的值都能接近1。
Figure 4 Experimental results of different features on different metrics圖4 不同特征在不同指標上的實驗結果
此外,表3給出了基于TCN和3種特征在47種手機型號數據上的平均識別率。可以看出,基于相同的TCN框架,LQBED平均識別率為99.82%,好于BED和CQT的平均識別率,分別提升了0.29和0.46個百分點,這意味著LQBED特征進一步降低了錯判率,這在司法領域實際應用中顯得尤為重要。究其原因,LQBED保留了CQT和BED中的關鍵信息,同時又去除了不必要的冗余,減少了冗余信息尤其是環(huán)境噪聲的干擾,可在一定程度上提高TCN的學習效率。
Table 3 Average accuracies under different features表3 不同特征下得到的平均識別準確率
基于構建的實際環(huán)境噪聲下的手機語音數據庫,本節(jié)將所提的基于LQBED和TCN的手機來源識別方法(后稱LQBED+TCN),與文獻[9,10]中最新的BED+SVM和CQT+CNN方法進行對比實驗分析。
圖5給出了3種識別方法在47種型號手機數據上召回率、精確率和F1分數結果??梢钥闯?,在圖5a中,在ID=8時,本文所提的LQBED+TCN的召回率值好于CQT+CNN的,但略差于BED+SVM的;在ID=23時,LQBED+TCN的召回率值與BED+SVM的不相上下,均略差于CQT+CNN的;但是,LQBED+TCN在其余不同ID上的召回率值均明顯優(yōu)于BED+SVM和CQT+CNN的。在圖5b中,在ID=9時,LQBED+TCN的精確率值略差于CQT+CNN的,但明顯好于BED+SVM的;在ID=11時,LQBED+TCN的精確率值好于CQT+CNN的,略差于BED+SVM的;在ID=13和ID=18時,LQBED+TCN的精確率值與CQT+CNN的相當,均略差于BED+SVM的。不過,需要指出的是,LQBED+TCN在其余不同ID上的精確率值都要顯著好于BED+SVM和CQT+CNN的。在圖5c中,在ID=8時,3種方法的F1分數值旗鼓相當;在ID=13時,LQBED+TCN的F1分數值與CQT+CNN的不相上下,均略差于BED+SVM的;在ID=23時,LQBED+TCN的F1分數值與BED+SVM的相當,均略差于CQT+CNN的。但是,LQBED+TCN在其余不同ID上的F1分數值都要明顯好于BED+SVM和CQT+CNN的。從整體上來看,在絕大多數的手機ID上,LQBED+TCN在召回率、精確率和F1分數3個指標上的值都非常接近1,平均召回率分別提高了0.45和0.55個百分點,平均精確率分別提高了0.41和0.57個百分點,平均F1分數分別提高了0.49和0.55個百分點。
Figure 5 Experimental results of different identification methods on different metrics圖5 不同識別方法在不同指標上的實驗結果
此外,表4給出了不同識別方法在47種型號手機數據上的平均識別準確率。可以看出,本文LQBED+TCN方法的平均識別率最高,達到了99.82%,相比BED+SVM和CQT+CNN分別提高了0.44和0.54個百分點。而且,需要特別指出的是,與表3中的BED+TCN和CQT+TCN相比,BED+SVM和CQT+CNN的性能均有所下降。而且,與LQBED+TCN相比,LQBED+SVM和LQBED+CNN的性能也稍有下降。上述實驗結果表明了本文選取和設計TCN用于手機來源識別的優(yōu)勢,LQBED+TCN獲得了更高的識別準確率,進一步降低了出錯率。這是因為,語音信號具有典型的時間序列性,而TCN采用的一維卷積是在時間維度上進行訓練和學習,更加有利于捕捉時序上的依賴關系。
Table 4 Average accuracies of different identification methods表4 不同識別方法的平均識別準確率
最后,為了更加全面直觀地反映LQBED+TCN的性能,圖6給出了LQBED+TCN的詳細混淆矩陣[20]?;煜仃囍械拿恳恍写碓擃悩颖镜念A測結果,不同位置的值代表被預測成相應ID的個數,可以非常容易地顯示出多個類別是否有混淆,即一個類別被預測成另一個類別。由圖6可以看出,LQBED+TCN在絕大部分型號的手機數據上的識別準確率均達到了100%,最低準確率也有93%。在47個手機ID上,只有9個ID上有分類錯誤,其余ID全部分類正確,且除ID=7外其余ID上的識別率均不低于97%。
Figure 6 Confusion matrix obtained by LQBED+TCN圖6 LQBED+TCN的混淆矩陣結果
上述實驗結果表明,LQBED+TCN提升了在實際環(huán)境噪聲下的手機來源識別性能,對于在司法領域的語音證據鑒真的應用更有實際價值。究其原因,LQBED+TCN可在一定程度上獲得更加全面的語音特征,利用LDA去除了其冗余性,降低了說話人(年齡、性別等)、場景、內容(日常對白、唱歌、廣播等)和實際環(huán)境噪聲等因素的干擾,同時基于TCN進一步學習深度語音特征,對實際環(huán)境噪聲下的手機語音信號具有更好的適應性。
為解決司法領域中實際環(huán)境噪聲下的手機來源識別問題,本文首先提取含有實際環(huán)境噪聲的語音混合特征,然后基于LDA對混合特征進行降維得到LQBED特征,最后選擇并設計TCN進一步學習語音深度特征并進行分類,提出一種基于LDA和TCN的實際環(huán)境噪聲下的手機來源識別方法LQBED+TCN。根據10個品牌、47種型號的手機設備,本文構建了一個包含32 900條語音樣本的實際環(huán)境噪聲下的語音數據庫。在該語音庫上的測試結果顯示,本文所提LQBED+TCN對實際環(huán)境噪聲具有較好的綜合識別性能,平均識別率達到了99.82%,且在召回率、精確率和F1分數值上也優(yōu)于已有方法,進一步降低了錯判率,對司法領域中語音證據的鑒真具有一定的實際價值。
但是,本文工作只是針對司法領域實際需求,利用TCN在手機來源識別上的一個初步嘗試,仍有許多工作需要進一步深入研究。首先,由于實驗條件的限制,本文收錄的手機型號覆蓋范圍還不夠廣泛,因此語音庫仍需要進一步擴充;其次,本文創(chuàng)建的語音數據庫均是MP3格式,還需要考慮其它的手機語音格式;而且,還需要考慮語音信號受到信號處理攻擊下的魯棒性;最后,還需進一步考慮改善和挖掘TCN的優(yōu)勢。