日日操夜夜添-日日操影院-日日草夜夜操-日日干干-精品一区二区三区波多野结衣-精品一区二区三区高清免费不卡

公告:魔扣目錄網為廣大站長提供免費收錄網站服務,提交前請做好本站友鏈:【 網站目錄:http://www.ylptlb.cn 】, 免友鏈快審服務(50元/站),

點擊這里在線咨詢客服
新站提交
  • 網站:51998
  • 待審:31
  • 小程序:12
  • 文章:1030137
  • 會員:747

編者按:近年來,許多智能語音技術服務商開始布局聲紋識別領域,聲紋識別逐漸進入大眾視野。隨著技術的發展和在產業內的不斷滲透,聲紋識別的市場占比也逐年上升,但目前聲紋識別需要解決的關鍵問題還有很多。本文中,百分點感知智能實驗室梳理了聲紋識別技術的發展歷史,并分析了每一階段的關鍵技術原理,以及遇到的困難與挑戰,希望能夠讓大家對聲紋識別技術有進一步了解。

聲紋(Voiceprint),是用電聲學儀器顯示的攜帶言語信息的聲波頻譜。人類語言的產生是人體語言中樞與發音器官之間一個復雜的生理物理過程,不同的人在講話時使用的發聲器官(舌、牙齒、喉頭、肺、鼻腔)在尺寸和形態方面有著很大的差異,所以任何兩個人的聲紋圖譜都是不同的。

每個人的語音聲學特征既有相對穩定性,又有變異性,不是絕對的、一成不變的。這種變異可來自生理、病理、心理、模擬、偽裝,也與環境干擾有關。

盡管如此,由于每個人的發音器官都不盡相同,因此在一般情況下,人們仍能區別不同的人的聲音或判斷是否是同一人的聲音。因此聲紋也就成為一種鑒別說話人身份的識別手段。

圖一 發聲器官示意圖

所謂聲紋識別,是生物識別技術的一種,也叫做說話人識別,是一項根據語音波形中反映說話人生理和行為特征的語音參數,自動識別語音說話者身份的技術。首先需要對發音人進行注冊,即輸入發音人的一段說話音頻,系統提取特征后存入模型庫中,然后輸入待識別音頻,系統提取特征后經過比對打分從而判斷所輸入音頻中說話人的身份。

從功能上來講,聲紋識別技術應有兩類,分別為“1:N”和“1:1”。前者是判斷某段音頻是若干人中的哪一個人所說;后者則是確認某段音頻是否為某個人所說。因此不同的功能適用于不同的應用領域,比如公安領域中重點人員布控、偵查破案、反電信欺詐、治安防控、司法鑒定等經常用到的是“1:N”功能,即辨認音頻若干人中的哪一個人所說;而“1:1”功能則更多應用于金融領域的交易確認、賬戶登錄、身份核驗等。

從技術發展角度來說,聲紋識別技術經歷了三個大階段:

第一階段,基于模板匹配的聲紋識別技術;

第二階段,基于統計機器學習的聲紋識別技術;

第三階段,基于深度學習框架的聲紋識別技術。

一、模板匹配的聲紋識別

下圖是最早的聲紋識別技術框架,是一種非參數模型。

特點:基于信號比對差別,通常要求注冊和待識別的說話內容相同,屬于文本相關,因此局限性很強。

圖二 兩人對于同一數字發音與譜圖

此方法將訓練特征參數和測試的特征參數進行比較,兩者之間的失真(Distortion)作為相似度。例如VQ(Vector Quantization矢量量化)模型和動態時間規整法DTW(Dynamic Time Warping)模型。

DTW 通過將輸入待識別的特征矢量序列與訓練時提取的特征矢量進行比較,通過最優路徑匹配的方法來進行識別。而VQ 方法則是通過聚類、量化的方法生成碼本,識別時對測試數據進行量化編碼,以失真度的大小作為判決的標準。

二、基于統計機器學習的技術框架

但由于第一階段只能用于文本相關的識別,即注冊語音的內容需要跟識別語音內容一致,因此具有很強的局限性,同時受益于統計機器學習的快速發展,聲紋識別技術也迎來了第二階段。此階段可細分為四個小階段,即GMM > GMM-UBM/GMM-SVM > JFA > GMM-iVector-PLDA。

1. 高斯混合模型(GMM)

特點:采用大量數據為每個說話人訓練(注冊)模型。注冊要求很長的有效說話人語音。

高斯混合模型(Gaussian Mixture Model, GMM)是統計學中一個極為重要的模型,其中機器學習、計算機視覺和語音識別等領域均有廣泛的應用,甚至可以算是神經網絡和深度學習普及之前的主流模型。

GMM之所以強大,在于其能夠通過對多個簡單的正態分布進行加權平均,從而用較少的參數模擬出十分復雜的概率分布。

在聲紋識別領域,高斯混合模型的核心設定是:將每個說話人的音頻特征用一個高斯混合模型來表示。采用高斯混合模型的動機也可以直觀的理解為:每個說話人的聲紋特征可以分解為一系列簡單的子概率分布,例如發出的某個音節的概率、該音節的頻率分布等。這些簡單的概率分布可以近似的認為是正態分布(高斯分布)。但是由于GMM規模越龐大,表征力越強,其負面效應也會越明顯:參數規模也會等比例膨脹,需要更多的數據來驅動GMM的參數訓練才能得到一個更加通用(或泛化)的GMM模型。

假設對維度為50的聲學特征進行建模,GMM包含1024個高斯分量,并簡化多維高斯的協方差為對角矩陣,則一個GMM待估參數總量為1024(高斯分量的總權重數)+1024×50(高斯分量的總均值數)+1024×50(高斯分量的總方差數)=103424,超過10萬個參數需要估計。

這種規模的變量就算是將目標用戶的訓練數據量增大到幾個小時,都遠遠無法滿足GMM的充分訓練要求,而數據量的稀缺又容易讓GMM陷入到一個過擬合(Over-fitting)的陷阱中,導致泛化能力急劇衰退。因此,盡管一開始GMM在小規模的文本無關數據集合上表現出了超越傳統技術框架的性能,但它卻遠遠無法滿足實際場景下的需求。

2. 高斯混合背景模型(GMM-UBM)和支持向量機(GMM-SVM)

特點:使用適應模型的方法減少建模注冊所需要的有效語音數據量,但對跨信道分辨能力不強。

UBM的一個重要優勢在于它是通過最大后驗估計(Maximum A Posterior,MAP)的算法對模型參數進行估計,避免了過擬合的發生。MAP算法的另外一個優勢是我們不必再去調整目標用戶GMM的所有參數(權重、均值、方差),只需要對各個高斯成分的均值參數進行估計,就能實現最好的識別性能。這樣待估的參數一下減少了一半多(103424 -> 51200),越少的參數也意味著更快的收斂,不需要那么多的目標用戶數據即可完成對模型的良好訓練。

GMM-UBM系統框架,是GMM模型的一個推廣,是用于解決當前目標說話人數據量不夠的問題的一種方式。通過收集其他說話人數據來進行一個預先的訓練。通過MAP算法的自適應,將預先訓練過的模型向目標說話人模型進行微調。這種方式可以大大減少訓練所需要的樣本量和訓練時間(通過減少訓練參數)。

但是GMM-UBM缺乏對應于信道多變性的補償能力,因此后來WM Campbell將支持向量機(Support Vector Machine,SVM)引入了GMM-UBM的建模中,通過將GMM每個高斯分量的均值單獨拎出來,構建一個高斯超向量(Gaussian SuperVector,GSV)作為SVM的樣本,利用SVM核函數的強大非線性分類能力,在原始GMM-UBM的基礎上大幅提升了識別的性能,同時基于GSV的一些規整算法,例如擾動屬性投影(Nuisance Attribute Projection, NAP),類內方差規整(Within Class Covariance Normalization,WCCN)等,都在一定程度上補償了由于信道易變形對聲紋建模帶來的影響。

3. 聯合因子分析法(JFA)

特點:分別建模說話人空間、信道空間以及殘差噪聲,但每一步都會引入誤差。

在傳統的基于GMM-UBM的識別系統中,由于訓練環境和測試環境的失配問題,導致系統性能不穩定。于是Patrick Kenny在05年左右提出了一個設想:既然聲紋信息可以用一個低秩的超向量子空間來表示,那噪聲和其他信道效應是不是也能用一個不相關的超向量子空間進行表達呢?

基于這個假設,Kenny提出了聯合因子分析(Joint Factor Analysis,JFA)的理論分析框架,將說話人所處的空間和信道所處的空間做了獨立不相關的假設,在JFA的假設下,與聲紋相關的信息全部可以由特征音空間(Eigenvoice)進行表達,并且同一個說話人的多段語音在這個特征音空間上都能得到相同的參數映射,之所以實際的GMM模型參數有差異,這個差異信息是由說話人差異和信道差異這兩個不可觀測的部分組成的公式如下:

M=s+c

其中,s為說話人相關的超矢量,表示說話人之間的差異;c為信道相關的超矢量,表示同一個說話人不同語音段的差異;M為GMM均值超矢量,表述為說話人相關部分s和信道相關部分c的疊加。

圖五 均值超矢量

如上圖所示,聯合因子分析實際上是用GMM超矢量空間的子空間對說話人差異及信道差異進行建模,從而可以去除信道的干擾,得到對說話人身份更精確的描述。

JFA定義公式如下:

s = m + Vy + dZ

c = Ux

其中,s為說話人相關的超矢量,表示說話人之間的差異;m為與說話人以及信道無關的均值超矢量;V為低秩的本征音矩陣;y為說話人相關因子;D為對角的殘差矩陣;z為殘差因子;c為信道相關的超矢量,表示同一個說話人不同語音段的差異;U為本征信道矩陣;x為與特定說話人的某一段語音相關的因子。這里的超參數集合{V,D,U}即為需要評估的模型參數。有了上面的定義公式,我們可以將均值超矢量重新改寫為如下形式:

M = m + Vy + Ux + Dz

為了得到JFA模型的超參數,我們可以使用EM算法訓練出UBM模型,使用UBM模型提取Baum-Welch統計量。

盡管JFA對于特征音空間與特征信道空間的獨立假設看似合理,但絕對的獨立同分布的假設是一個過于強的假設,這種獨立同分布的假設往往為數學的推導提供了便利,卻限制了模型的泛化能力。

4. 基于GMM的i-vector方法及PLDA

特點:統一建模所有空間,進一步減少注冊和識別所需語音時長,使用PLDA分辨說話人特征,但噪聲對GMM仍然有很大影響。

N.Dehak提出了一個更加寬松的假設:既然聲紋信息與信道信息不能做到完全獨立,那就用一個超向量子空間對兩種信息同時建模。即用一個子空間同時描述說話人信息和信道信息。這時候,同一個說話人,不管怎么采集語音,采集了多少段語音,在這個子空間上的映射坐標都會有差異,這也更符合實際的情況。這個既模擬說話人差異性又模擬信道差異性的空間稱為全因子空間(Total Factor Matrix),每段語音在這個空間上的映射坐標稱作身份向量(IdentityVector, i-vector),i-vector向量通常維度也不會太高,一般在400-600左右。

i-vector方法采用一個空間來代替這兩個空間,這個新的空間可以成為全局差異空間,它既包含了說話人之間的差異又包含了信道間的差異。所以i-vector的建模過程在GMM均值超矢量中不嚴格區分說話人的影響和信道的影響。這一建模方法動機來源于Dehak的又一研究:JFA建模后的信道因子不僅包含了信道效應也夾雜著說話人的信息。

i-vector中Total Variability的做法(M = m + Tw),將JFA復雜的訓練過程以及對語料的復雜要求,瞬間降到了極致,尤其是將Length-Variable Speech映射到了一個fixed- andlow-dimension的vector(IdentityVector,即i-vector)上。于是,所有機器學習的算法都可以用來解決聲紋識別的問題了。

現在,主要用的特征是i-vector。這是通過高斯超向量基于因子分析而得到的。是基于單一空間的跨信道算法,該空間既包含了說話人空間的信息也包含了信道空間信息,相當于用因子分析方法將語音從高位空間投影到低維。

可以把i-vector看作是一種特征,也可以看作是簡單的模型。最后,在測試階段,我們只要計算測試語音i-vector和模型的i-vector之間的consine距離,就可以作為最后的得分。這種方法也通常被作為基于i-vector說話人識別系統的基線系統。

i-vector簡潔的背后是它舍棄了太多的東西,其中就包括了文本差異性,在文本無關識別中,由于注冊和訓練的語音在內容上的差異性比較大,因此我們需要抑制這種差異性。但在文本相關識別中,我們又需要放大訓練和識別語音在內容上的相似性,這時候牽一發而動全身的i-vector就顯得不是那么合適了。雖然i-vector在文本無關聲紋識別上表現非常好,但在看似更簡單的文本相關聲紋識別任務上,i-vector表現得卻并不比傳統的GMM-UBM框架更好。

i-vector的出現使得說話人識別的研究一下子簡化抽象為了一個數值分析與數據分析的問題:任意的一段音頻,不管長度怎樣,內容如何,最后都會被映射為一段低維度的定長i-vector。只需要找到一些優化手段與測量方法,在海量數據中能夠將同一個說話人的幾段i-vector盡可能分類得近一些,將不同說話人的i-vector盡可能分得遠一些。并且Dehak在實驗中還發現i-vector具有良好的空間方向區分性,即便上SVM做區分,也只需要選擇一個簡單的余弦核就能實現非常好的區分性。

i-vector在大多數情況下仍然是文本無關聲紋識別中表現性能最好的建??蚣?學者們后續的改進都是基于對i-vector進行優化,包括線性區分分析(Linear DiscriminantAnalysis,LDA),基于概率的線性預測區分分析(Probabilisticlinear Discriminant Analysis,PLDA)甚至是度量學習(Metric Learning)等。

概率線性判別分析(PLDA)是一種信道補償算法,被用于對i-vector進行建模、分類,實驗證明其效果最好。因為i-vector中,既包含說話人的信息,也包含信道信息,而我們只關心說話人信息,所以才需要做信道補償。我們假設訓練數據語音由 i 個說話人的語音組成,其中每個說話人有 j 段自己不同的語音。那么,我們定義第 i 個人的第 j 條語音為 Xij 。根據因子分析,我們定義 Xij 的生成模型為:

如上公式中,n1和n2分別是兩個語音的i-vector矢量,這兩條語音來自同一空間的假設為Hs,來自不同的空間的假設為Hd。

其中p(n1, n2 | hs)為兩條語音來自同一空間的似然函數;p(n1 | hd),p(n2 | hd)分別為n1和n2來自不同空間的似然函數。通過計算對數似然比,就能衡量兩條語音的相似程度。

比值越高,得分越高,兩條語音屬于同一說話人的可能性越大;比值越低,得分越低,則兩條語音屬于同一說話人的可能性越小。

三、基于深度神經網絡的技術框架

隨著深度神經網絡技術的迅速發展,聲紋識別技術也逐漸采用了基于深度神經網絡的技術框架,目前有DNN-iVector-PLDA和最新的End-2-End。

1. 基于深度神經網絡(DNN)的方法(D-Vector)

特點:DNN可以從大量樣本中學習到高度抽象的音素特征,同時它具有很強的抗噪能力,可以排除噪聲對聲紋識別的干擾。

在論文《Deep Neural Networks for SmallFootprint Text-Dependent Speaker Verification》中,作者對DNN在聲紋識別中的應用做了研究。

conv64-s:單純的卷積層。

卷積核尺寸為5*5(卷積核實際上是5*5*c,其中c為輸入數據的通道數);個數為64,也就代表著輸出數據的第三維了;步長為2*2,會改變數據維度的前2維,也就是高和寬。

res64:是一個ResBlock(殘差塊),并不是一層網絡,實際層數是這個ResBlock中包含的層數,這里殘差塊中包含2個卷積層:卷積核尺寸3*3;個數64;步長為1*1(也就是上文的 Cov+ReLU+Cov,也就是2層,中間激活不算)。后面的乘3是指有三個ResBlock。所以說這個res64部分是指經過3個ResBlock,而且每一個ResBlock中包含2個卷積層,其實是6層網絡。

Average層,本來數據是三維的,分別代表(時間幀數 * 每幀特征維度 * 通道數),通道數也就是經過不同方式提取的每幀的特征(Fbank或MFCC這種)。將時間平均,這樣一段語音就對應一段特征了,而不是每一幀都對應一段特征。

Affine層:仿射層,就是將維度2048的特征變為512維。

ln層(length normalization layer):標準化層,特征標準化之后,得到的向量來表示說話者語音。

關于dim 維度這一列,開始時輸入語音數據是三維:(時間幀數 * 每幀特征維度 * 通道數)。本文中,時間幀數根據語音長度可變,每幀特征維度為64,通道數為3(代表Fbank、一階、二階)。所以輸入維度:時間幀數 * 64 * 3。經過第一層conv64-s后:因為卷積層步長2*2,所以時間幀數 和每幀特征維度都減半了,特征維度變為了32,通道數變為了卷積核個數64。32*64=2048,也就是dim的值。所以,這里的dim維度指的是除去時間維的頻率特征維度。

訓練的時候,使用Triplet loss作為損失函數。通過隨機梯度下降,使得來自同一個人的向量相似度盡可能大,不是同一個說話者的向量相似度盡可能小。

總結

從聲紋識別技術發展綜述中,我們不難看出,聲紋識別的研究趨勢正在快速朝著深度學習和端到端方向發展,其中最典型的就是基于句子層面的做法。在網絡結構設計、數據增強、損失函數設計等方面還有很多的工作去做,還有很大的提升空間,此外,聲紋識別系統在保持高性能的情況下對語音長度的需求在不斷減小。

聲紋識別是百分點科技一直關注和研究的技術領域之一。目前,百分點科技的聲紋識別系統使用大規模數據訓練,準確度可達95%以上,1:N支持萬級以上聲紋庫建設,在國內數字政府、公共安全等多個領域已有實際項目落地。未來,我們將繼續朝著聲紋識別技術的深度學習方向進行重點研究。

分享到:
標簽:百分點 技術發展 識別 趨勢 未來 研究 科技
用戶無頭像

網友整理

注冊時間:

網站:5 個   小程序:0 個  文章:12 篇

  • 51998

    網站

  • 12

    小程序

  • 1030137

    文章

  • 747

    會員

趕快注冊賬號,推廣您的網站吧!
最新入駐小程序

數獨大挑戰2018-06-03

數獨一種數學游戲,玩家需要根據9

答題星2018-06-03

您可以通過答題星輕松地創建試卷

全階人生考試2018-06-03

各種考試題,題庫,初中,高中,大學四六

運動步數有氧達人2018-06-03

記錄運動步數,積累氧氣值。還可偷

每日養生app2018-06-03

每日養生,天天健康

體育訓練成績評定2018-06-03

通用課目體育訓練成績評定