張海龍,王利恒,吉昕冉
(武漢工程大學 電氣信息學院,武漢 430205)
在非接觸式身份驗證方案中,應用部署最廣泛的技術當屬面部識別。然而,面容作為人體特征中最顯眼的部分,若產生信息泄露,則會嚴重干擾被泄露人的工作生活[1]。因此,將聲紋識別技術部署到邊緣驗證設備上進行身份驗證,對被采集人的信息保密性高,具有良好的應用前景。
聲紋識別技術主要有模板匹配法,基于概率模型建模進行說話人確認,如混合高斯模型[2](gaussian mixture model,GMM)等。基于深度學習的聲紋識別技術目前備受矚目并取得了重要進展,如ResNet[3](residual network)模型引入殘差連接,解決了深網絡模型訓練困難和退化問題。E-TDNN[4](extend-time delay neural networks)模型改進了x-vector 結構,同時加入時延神經網絡結構增強了模型對于低維度語義信息的提取能力。ECAPA-TDNN(emphasized channel attention,propagation and aggregation in time delay neural network)[5]模型通過引入Res2-Net[6]結構和SENet[7](squeeze-and-excitation networks)注意力機制,能夠有效提取出語音信號的上下文全局語義特征,提升模型對于語音數據的特征表達能力。文獻[8]則是通過引入新型損失函數DV-Softmax[9]到ECAPA-TDNN 模型上進行訓練,并取得不錯的實驗效果。同時,聲紋識別任務在其它方向也具有廣泛的用途[10-11]。因此,使用深度學習模型用于聲紋識別身份驗證系統,具有較為重要的意義和作用。
本文將使用RK3568 芯片作為系統主控制器,為神經網絡模型的部署[12]提供算力支持。首先,聲紋注冊管理系統會對注冊人員進行聲紋特征注冊。當需要進行身份驗證時,設備首先采集待驗證說話人的音頻數據進行預處理。之后,通過ECAPA-TDNN模型對音頻數據進行嵌入特征向量提取,然后將其在特征向量數據庫中進行特征搜索匹配,從而確定待驗證人員的身份信息。
基于深度學習的聲紋識別身份驗證系統主要由聲紋注冊模塊、音頻采集和播放模塊、嵌入特征向量提取模塊和結果執行模塊組成。其中聲紋注冊模塊主要由聲紋信息注冊管理系統構成,它主要提取出待注冊人員的語音信息嵌入特征向量并完善相關權限信息。之后,客戶端將身份權限信息下發到各個邊緣身份驗證設備,從而在邊緣設備上構建身份權限數據庫。系統總體結構如圖1 所示。

圖1 系統整體示意圖Fig.1 Overall schematic diagram of the system
如圖1 中識別流程所示,當邊緣部署的身份驗證設備需要進行驗證時,主控制器會進行音頻采集與音頻預處理,之后經過嵌入特征提取器獲取具有辨識度的嵌入特征向量。獲得的嵌入特征向量將在聲紋特征數據庫中進行特征搜索和匹配,計算得出相似度數值與閾值進行比較,最后得到待驗證人員的身份權限信息并執行對應的動作。
聲紋識別身份驗證系統的硬件組成按照功能主要劃分為驗證信息采集模塊、主控制器模塊、電源管理模塊和執行控制機構。系統硬件架構如圖2所示。

圖2 系統硬件結構示意圖Fig.2 Schematic diagram of system hardware structure
為使邊緣聲紋驗證設備具有足夠性能部署深度學習模型,主處理器采用瑞芯微公司的RK3568芯片。該芯片具有四核Cortex-A55 架構的CPU,1TFLOPS 計算能力的神經網絡處理器單元(neural network processing unit,NPU),并且支持Caffe/ONNX 等主流神經網絡架構,因此滿足神經網絡模型部署的要求。
同時,主控制器會通過WiFi 模塊與聲紋信息注冊管理系統進行數據交互,構建獨立的身份權限數據庫。在外圍接口的配置中,I/O 接口主要用于驅動狀態指示燈和執行機構,USART 接口將會用于與外部設備之間的信息交互,以便于進行調試等操作。
驗證信息采集模塊將會采集待驗證人員的音頻特征或數字密碼,進行身份驗證。驗證過后,執行機構則會根據結果執行相對應的操作,如識別失敗進行語音和狀態燈提醒,識別成功則執行如開鎖等動作。
音頻信息采集系統的硬件部分由音頻控制模塊和電源供電模塊部分組成。在音頻采集與播放控制模塊中,采用型號為WM8978 芯片[13]作為音頻控制芯片。該音頻控制芯片是一種低功耗、高質量的立體聲多媒體數字信號編譯碼器,精簡了外圍組件,提高音頻質量。該系統的總體結構構成如圖3所示。

圖3 音頻信息采集子系統結構圖Fig.3 Structure of audio information acquisition subsystem
主控制器通過IIC 通訊總線對音頻管理芯片進行功能配置,之后便使用I2S 總線進行音頻數據傳輸,以達到音頻錄制和播放功能。為達到音頻數據量和失真度的均衡,音頻的采樣率設置為16 kHz、16 位深度的單通道數據。
聲紋識別身份權限驗證系統的軟件架構主要包含聲紋信息注冊管理系統和邊緣驗證設備身份識別程序兩個部分。其中嵌入特征提取模塊作為整個軟件架構的核心模型,需要具有性能優越和參數量較小等特點,以便于將模型部署到主控制器中。因此,將采用在聲紋識別任務中性能優異的ECAPA-TDNN 模型,它能夠在更少參數量的同時,提取出具有較強區分度的嵌入向量,以進行身份驗證。
上位機客戶端的聲紋信息注冊管理系統程序流程如圖4 所示。

圖4 注冊管理系統流程Fig.4 Registration management system flow chart
在聲紋注冊管理系統上使用管理員賬戶登錄后,可以進行添加新用戶、修改用戶信息和刪除用戶等操作。添加新用戶是進行個人權限信息注冊,包含聲紋特征和數字密碼兩部分。其中,注冊聲紋特征時會進行信息篩選判斷,若聲紋特征的有效信息量不足則注冊失敗,成功則進行下一步操作。記錄查詢是通過采集各個分布式驗證節點的登錄信息,供后期進行數據分析。
在聲紋信息注冊管理系統進行注冊后,通過WiFi 將身份信息下發到身份驗證設備中。身份驗證設備將信息進行整合處理,錄入身份權限數據庫中,可以有效縮短設備在身份驗證過程中的耗時。邊緣身份驗證設備進行身份驗證的程序流程如圖5 所示。

圖5 系統總體程序流程Fig.5 Overall system program flow chart
當進行身份驗證時,主控制器會根據外部開始信號控制音頻采集模塊進行音頻采集,直到出現外部結束信號或時長達到最大限制。在此之后,將音頻信號進行語音激活檢測(voice active detection,VAD),獲得音頻數據中有效的語音幀。再將音頻數據幀通過預加重、加窗、STFT 變換、Mel 濾波等操作,獲得原始音頻信號的FBank 特征。該特征更符合人耳聽取音頻頻率的非線性特點,提高聲紋識別的性能。
對連續語音信號進行預加重,可以突出語音信號中的共振峰,補償受抑制的高頻部分。在t 時刻,通過設置高通濾波器的方式對原始語音數據進行處理,預加重操作的計算公式如下:
式中:a 為預加重系數,一般選取0.97。預加重的音頻數據經過疊加和分幀,可以提升信號幀的平滑性。音頻數據通過加窗函數是為了使時域信號更好地滿足傅里葉變換的周期性要求,從而減少頻率泄漏。當信號采樣點的索引值n∈[0,N-1]時,窗函數w(n)的計算公式如下:
當采樣點索引值n>N-1 時,w(n)=0。其中a0取值為0.53836 時,則為漢明窗。
嵌入特征向量提取模塊中使用ECAPA-TDNN模型作為特征提取器,其結構圖如圖6 所示。
當模型中卷積層通道數為1024,在VoxCeleb1[14]驗證集中進行驗證,得到的等錯誤率(equal error rate,EER)為0.96,獲得的預訓練模型在轉換為rknn 格式后大小是31.64 MB,能夠滿足部署平臺對模型的要求。
原始語音數據預處理得到FBank 特征后,使用嵌入特征向量提取模塊對其進行特征向量提取,獲得維度為192 的嵌入特征向量。之后將其與特征數據庫中的特征向量進行余弦相似度計算,從而獲得范圍為[-1,1]相似度數值。其中余弦相似度的計算公式如下:
式中:向量a 和b 分別表示兩個說話人向量,當余弦相似度值為-1 時表明兩者之間為負相關,1 時則為正相關。最終獲得的最大余弦相似度值會與閾值進行比較,大于閾值則表明兩者為同一說話人。
在系統的驗證測試中,將會有4 名男性和4 名女性,總共8 名人員在注冊管理系統上進行聲紋注冊,之后每個人在身份驗證設備上進行10 次身份驗證測試,具體測試情況如表1 所示。

表1 身份驗證人員情況Tab.1 Identification of persons fact sheet
為準確對設備的性能數據進行評估分析,每次驗證系統驗證后都會計算并輸出待驗證語音與8 個已經注冊特征之間的余弦相似度數值。因此每個驗證人員測試10 次,其中1 號人員的測試結果如圖7 所示。

圖7 1 號人員測試結果分布圖Fig.7 Distribution map of test results for personnel 1
圖中檢驗次數表示該人員一共測試了10 次,每次按照系統注冊順序計算得出8 個余弦相似度值,最終該人員測試將獲得80 個數據。
從圖7 中觀察散點的分布可得出,該1 號人員每次測試都與自己注冊的特征之間的相似度最高,而且當余弦相似度閾值設置為0.3,發現其可以達到較好的身份驗證效果。為更好地進行性能測試,所有測試人員8 的測試結果分布圖如圖8 所示。

圖8 人員測試結果分布圖Fig.8 Distribution map of personnel test results
從圖8 中可以觀察得到,當余弦相似度的閾值設置為0.3 時,上方的結果點都是正確的驗證結果,因此能夠較好分辨出所有正確的驗證結果。最后在邊緣身份驗證設備的實際部署使用中,獲得較好的驗證結果。此外,該系統計算得出的余弦相似度結果表現出明顯的邊界特征,顯示出系統具有強大的魯棒性。
基于深度學習的聲紋識別身份驗證系統,本系統創新地使用當前性能優異的ECAPA-TDNN 模型作為嵌入特征向量提取器,同時設計了聲紋注冊管理系統作為身份注冊上位機,為使用聲紋識別技術進行身份驗證提供了強有力的算法和軟件保障。同時跟隨當前芯片產業的發展,將算法模型部署到性能優越的RK3568 芯片上,并搭配音頻采集模塊為系統部署提供硬件支持。在邊緣驗證系統的實際測試中,通過觀察計算結果,發現該系統能夠準確地辨別注冊人員的身份信息,并表現出較好的魯棒性。因此系統的性能達到了設計的要求,能夠在實際部署應用中獲得較好的身份驗證結果。