伊拉克戰爭的重要影響之一就是檢驗新技術的實用水平,其中從聲音識別人就特別引人注目,其中最關鍵的是如何做到萬無一失。
伊拉克戰爭正在如火如荼地進行著,雙方在媒體宣傳上也是戰況激烈。在美國第一輪“斬首”行動之后,伊拉克總統薩達姆馬上發表電視講話,鼓舞士氣,同時證明自己的存在。然而,美國聯邦調查局的情報人員則稱,發表電視講話的并非薩達姆其人。此時,德國科學家分別從圖像理解與分析、聲紋識別兩個方面證明發表講話的就是薩達姆本人。隨后薩達姆又發表了與戰事內容相關的講話,證明了他確實還“健在”。這樣一則不惹人注意的新聞消息背后,卻有著一個不同尋常然而又為各國情報部門所大力研發的軍事科技:聲紋識別。
聲紋識別源于語音識別,聲紋識別類似于指紋識別。指紋經過數字化處理以后,以人的手指表面皮膚紋理圖像的形式存儲于計算機。假如我們從犯罪現場提取罪犯的指紋,然后和計算機的存儲資料對比,或者與嫌犯的指紋對比,就可以確定罪犯的身份或者犯罪證據。同樣,聲音也攜帶著每個說話人的個體信息。所謂聲紋是指能惟一識別某人或某物的聲音特征。例如,在上邊的例子中,無論薩達姆在何時、何地發表不同內容的講話,他的聲紋始終是不變的,因此可以此斷定一種聲音是否是其本人發出的。當然,是事先錄好還是現場直播,則另當別論。 然而,只是理解聲紋還是不夠的,人們還需要準確地知道聲紋的具體參數,才能準確地從很多人中辨認出說話者是誰,或者是什么東西發出的聲音。如何提取聲紋,怎樣提取才能保證識別的準確性,有了聲紋如何比對,怎樣處理和分離海量聲頻數據中的其他不相關信息,都是這項技術實現的難點。
其實聲紋識別(speaker recognition)是一種廣義的語音識別。在司法、公安、通信、機要等領域具有重要的應用價值。近年來,這一技術發展迅速,已經出現了一些實用系統。
目前聲紋識別一般利用包含話者語音波形中特有的個體信息(聲紋),自動識別話者身份。從學術研究的角度上講,它屬于統計模式識別和人工智能應用領域。 聲紋識別分為話者辨認和確認。辨認是從有限的話者集合中分辨不同的人,系統性能隨著話者集增大而降低;確認是系統只給出接受或拒絕兩種選擇。從電視講話判定說話人,如薩達姆是否是其人,就屬于確認的過程,它的難度往往更大一些。 從處理的語言內容上看,聲紋識別又分成限定文本和非限定文本兩種。如果說無論美國總統布什說什么,系統都能認出是他,而不是別人,這就是非限定文本識別,這種識別更難一些。目前最流行的用于識別的短時譜特征是LPC(linear Predictive Coefficients)及MFCC (Mel Frequency Cepstral Coefficients)。當然技術的發展有兩面性,伴隨語音技術的發展,偽裝語音或偽裝聲紋技術也有相應的進步,所以才需要人們去認識和把握一項科技的應用。 聲紋識別的過程及參數提取 一般的聲紋識別過程如圖1所示。
圖1 聲紋識別的一般過程
我們需要一份想要識別的人的原始語音信號作為對照。而這段語音信號必須經過聲紋提取,形成一個模板,才能與下一次的輸入做比較,從而判斷是不是要找的人。 那么構成聲紋的參數有哪些呢?從已有的研究可以歸納為短時頻譜、基音周期、短時能量、短時過零率、倒譜、LPC參數和MFCC參數。 語音信號是一種典型的時變信號。如果把觀察時間縮短到十毫秒或幾十毫秒,則語言信號是近似平穩的,這是由于人的發音器官不可能是毫無規律地快速變化。例如,具有重大意義的LPC參數,就可以非常好地表達人的發音過程,即所謂的聲管模型。這些參數的計算也往往基于語音信號的短時信息(幀)。如果把它們配合使用,則可以大大提高識別效率和準確性。
目前主要的難度在于能不能找到、發現可惟一標識某人或某物的這組參數,而且這組參數還是在開集條件下不限定文本的。 神經計算與聲紋識別 神經計算泛指應用人工神經網絡(ANN,Artificial Neural Network)進行的各種智能計算,它能體現人的某些智能特性。ANN的模型本身就是模擬人腦自身生物神經元及其連接而構造的;盡管由于計算機計算能力至今還不足以完成像人腦(1000億左右神經細胞)那樣復雜神經網絡的學習和計算,但它所表現出的能力和潛力已被大家所認同,并在各行各業中大顯身手。 其實ANN也是由若干單個神經元互連而成的。每個神經元可以由圖2所示的數學模型模擬。
圖2 單神經元模型
我們可以把它看成一種映射關系,當一個音頻特征輸入時,通過神經連接強度[w1,w2,…wn]和激活函數f的運算來決定這個神經元是否被激活。如果被激活,它就向與它連接的其他神經元發出刺激信號,相反就發出抑制信號。那么復雜一點的網絡如圖3所示,它的詳細參數如圖4所示。
圖3 4個神經元組成的網絡
圖4 4個神經元組成的網絡(詳圖)
這里就出現了4個神經元,它們共同形成網絡,對輸入的信號做出反應。于是,所謂的學習就是當某些共性的輸入反復出現時,我們讓ANN給出一個穩定的輸出,代表它對這一組共性輸入已經有所掌握,學術上可以把這稱做聚類分析。
人工神經網絡模型已被應用在語音技術的許多方面。筆者考慮到ANN的統計特性、魯棒性、學習能力、非線性映射能力,所以決定用它來分析一個特定人的聲紋信息,找到和發現他的聲紋。 從聲紋識別特定人要識別一個特定人需要找到特定人的一組聲紋參數,并是在開集條件下、限定文本的。首先從電視上采錄下一個特定人的音頻波形,如圖5所示;然后進行參數提取,采用240點的分幀,計算基頻及其16階LPCC譜參數,然后把有效的LPCC參數畫出來,如圖6所示。
圖5 特定人的音頻波形
圖6 特定人的聲紋分布曲線
可見特定人的聲紋在這一段采樣中是穩定的。但是哪一個才能真正代表特定人而非他人呢?這里還需要做一些統計和聚類的工作,我們采用ANN技術,用2×2的SOFM(Self Organizing Feature Map)神經網分析過后發現了一種聲紋模式(圖6中的一條線),可以代表特定人的特征,這種特征使得特定人說話時學習過這一特征的神經元十分活躍。于是就把這條線所代表的參數定義為特定人的聲紋。以后要判定某一種聲音是否是所說的特定人的聲音,用此聲紋模式做比對就可以做出判斷。
根據不同的需要,如何提取有效的研究對象的聲紋、怎樣提取、如何保證準確性、如何處理與去除不相關干擾等,都是聲紋識別研究中的難題。
另外,聲紋不只是指人的語音特征,它可以是任何物體發出的可聞或不可聞的信號,這就如同海豚可以發出、聽見并且辨認幾海里之外的魚群一樣,因此它的應用領域和前景不可預估。