關(guān)于聲紋識(shí)別的N:N聚類(lèi)算法
本文將從如下方面為你一一解讀:
什么是聲紋?
聲紋識(shí)別的原理
聲紋識(shí)別的三個(gè)應(yīng)用大類(lèi):1:1痘括,1:N,N:N
N:N聚類(lèi)分析的技術(shù)原理與應(yīng)用流程滔吠,應(yīng)用場(chǎng)景
聲紋識(shí)別的幾類(lèi)攻擊
I. 什么是聲紋纲菌?
聲紋(Voiceprint),是用電聲學(xué)儀器顯示的攜帶言語(yǔ)信息的聲波頻譜疮绷,是由波長(zhǎng)翰舌、頻率以及強(qiáng)度等百余種特征維度組成的生物特征,具有穩(wěn)定性冬骚、可測(cè)量性椅贱、唯一性等特點(diǎn)。
人類(lèi)語(yǔ)言的產(chǎn)生是人體語(yǔ)言中樞與發(fā)音器官之間一個(gè)復(fù)雜的生理物理過(guò)程只冻,發(fā)聲器官--舌庇麦、牙齒、喉頭喜德、肺山橄、鼻腔在尺寸和形態(tài)方面每個(gè)人的差異很大,所以任何兩個(gè)人的聲紋圖譜都有差異住诸。每個(gè)人的語(yǔ)音聲學(xué)特征既有相對(duì)穩(wěn)定性驾胆,又有變異性,不是一成不變的贱呐。這種變異可來(lái)自生理丧诺、病理、心理奄薇、模擬驳阎、偽裝,也與環(huán)境干擾有關(guān)。盡管如此呵晚,由于每個(gè)人的發(fā)音器官都不盡相同蜘腌,因此在一般情況下,人們?nèi)阅軈^(qū)別不同的人的聲音或判斷是否是同一人的聲音饵隙。
II. 聲紋識(shí)別的原理
III. 聲紋識(shí)別的三個(gè)應(yīng)用大類(lèi):1:1撮珠,1:N,N:N
1.? 1:1 說(shuō)話人確認(rèn)
1:1 說(shuō)話人確認(rèn)是確認(rèn)說(shuō)話人身份的方法金矛,針對(duì)“對(duì)于同樣的文本內(nèi)容芯急,有兩段錄音,這兩段錄音到底是不是出自一人之口”這樣的問(wèn)題驶俊,也就是“兩句話到底是不是一個(gè)人說(shuō)“的問(wèn)題娶耍;該類(lèi)場(chǎng)景相對(duì)簡(jiǎn)單,主要應(yīng)用于用戶的注冊(cè)和驗(yàn)證饼酿,以及APP內(nèi)的聲紋核身榕酒;
2.? 1:N 說(shuō)話人確認(rèn)
1:N說(shuō)話人辨認(rèn)是辨認(rèn)說(shuō)話人身份的方法,針對(duì)“對(duì)于一段語(yǔ)音故俐,需要迅速在樣本庫(kù)中進(jìn)行搜尋比對(duì)想鹰,以確認(rèn)這段語(yǔ)音與樣本庫(kù)中哪段語(yǔ)音相似度最高”,也就是說(shuō)“給定的一段語(yǔ)音屬于樣本庫(kù)中誰(shuí)說(shuō)的”的問(wèn)題购披;該類(lèi)場(chǎng)景比較常見(jiàn)杖挣,主要應(yīng)用于黑名單用戶進(jìn)線檢測(cè)肩榕,提高安防能力等刚陡。
3.? N:N說(shuō)話人聚類(lèi)?
IV.? N:N聚類(lèi)分析的技術(shù)原理與應(yīng)用流程,應(yīng)用場(chǎng)景
對(duì)于千億級(jí)別的無(wú)標(biāo)簽錄音文件株汉,如何做有效的處理筐乳?舉個(gè)例子,假如說(shuō)你有很多的語(yǔ)音片段(語(yǔ)音的文本內(nèi)容是相同的)乔妈,這些語(yǔ)音片段分別歸屬于甲乙丙丁等人蝙云,僅憑人耳辨識(shí)是無(wú)法分辨出哪些語(yǔ)音片段屬于甲,哪些語(yǔ)音片段屬于乙路召,通過(guò)N:N聚類(lèi)的算法勃刨,進(jìn)行聲紋的相似度檢測(cè),將屬于同一個(gè)人說(shuō)話的語(yǔ)音片段不斷進(jìn)行合并歸類(lèi)股淡,最后屬于甲說(shuō)話的語(yǔ)音片段全部被歸為一類(lèi)身隐,屬于乙說(shuō)話的語(yǔ)音片段全部被歸為一類(lèi),以此類(lèi)推唯灵,類(lèi)內(nèi)語(yǔ)音的相似度極高贾铝,類(lèi)間語(yǔ)音的相似度較低,達(dá)到將這些語(yǔ)音片段分人整理的目的;
簡(jiǎn)單介紹一下聚類(lèi)分析:聚類(lèi)分析是根據(jù)在數(shù)據(jù)中發(fā)現(xiàn)的描述對(duì)象及其關(guān)系的信息垢揩,將數(shù)據(jù)對(duì)象分組玖绿。目的是,組內(nèi)的對(duì)象相互之間是相似的(相關(guān)的)叁巨,而不同組中的對(duì)象是不同的(不相關(guān)的)斑匪。組內(nèi)相似性越大,組間差距越大锋勺,說(shuō)明聚類(lèi)效果越好秤标。聚類(lèi)效果的好壞依賴于兩個(gè)因素:1.衡量距離的方法(distance measurement)?2.聚類(lèi)算法(algorithm)
目前主流的說(shuō)話人聚類(lèi)算法是在說(shuō)話人分割的基礎(chǔ)上,基于貝葉斯信息判據(jù)宙刘,采用凝聚分層聚類(lèi)算法苍姜,直接對(duì)說(shuō)話人分割后的語(yǔ)音段進(jìn)行判決,將屬于同一個(gè)說(shuō)話人的語(yǔ)音段合并為一類(lèi)悬包。其基本思想是從每個(gè)語(yǔ)片段中提取特征參數(shù)衙猪,例如梅爾倒譜參數(shù),計(jì)算每?jī)蓚€(gè)語(yǔ)音段之間特征參數(shù)的相似度布近,并利用BIC判斷相似度最高的兩個(gè)語(yǔ)音段是否合并為同一類(lèi)垫释。對(duì)任意兩段語(yǔ)音都進(jìn)行上述判決,直到所有的語(yǔ)音段不再合并撑瞧。---摘自“說(shuō)話人聚類(lèi)的初始類(lèi)生成方法”
聚類(lèi)&聲紋識(shí)別的主要場(chǎng)景:在跨渠道棵譬,跨場(chǎng)景收集語(yǔ)音同時(shí)建立聲紋庫(kù)的時(shí)候,由于各場(chǎng)景應(yīng)用的客戶賬號(hào)或許不同预伺,說(shuō)話人在不同場(chǎng)景中分別注冊(cè)過(guò)聲紋订咸,難以篩除重復(fù)注冊(cè)語(yǔ)音,建立統(tǒng)一聲紋庫(kù)酬诀;我們?nèi)绾慰焖俚娜ズY除屬于某一個(gè)人在不同情況下錄制的多條錄音文件脏嚷?也就是如何保證最終留下的錄音文件(聲紋庫(kù))是唯一的?每一個(gè)人只對(duì)應(yīng)一條音頻瞒御,這就要用到聚類(lèi)的算法父叙;利用聲紋識(shí)別N:N說(shuō)話人聚類(lèi),對(duì)所有收集到的語(yǔ)音進(jìn)行語(yǔ)音相似度檢測(cè)肴裙,將同一說(shuō)話人在不同場(chǎng)景中的多次錄制的語(yǔ)音篩選出來(lái)趾唱,并只保留其中一條,從而保證了聲紋庫(kù)的獨(dú)特性蜻懦,節(jié)省了大量的人力成本甜癞,資源成本。
對(duì)于目前的場(chǎng)景阻肩,我們選擇凝聚層次聚類(lèi)算法带欢,在這種場(chǎng)景下运授,我們是要篩除重復(fù)人說(shuō)話,那么我們可以將每一個(gè)錄音文件都當(dāng)作一個(gè)獨(dú)立的數(shù)據(jù)點(diǎn)乔煞,看最后有凝聚出多少個(gè)獨(dú)立的數(shù)據(jù)簇吁朦,此時(shí)可以理解為類(lèi)內(nèi)都是同一個(gè)人在說(shuō)話;
1. 我們首先將每個(gè)數(shù)據(jù)點(diǎn)(每一條錄音文件)視為一個(gè)單一的類(lèi)渡贾,即如果我們的數(shù)據(jù)集中有 X 個(gè)數(shù)據(jù)點(diǎn)逗宜,那么我們就有 X 個(gè)類(lèi)。然后空骚,我們選擇一個(gè)測(cè)量?jī)蓚€(gè)類(lèi)之間距離的距離度量標(biāo)準(zhǔn)纺讲。作為例子,我們將用 average linkage囤屹,它將兩個(gè)類(lèi)之間的距離定義為第一個(gè)類(lèi)中的數(shù)據(jù)點(diǎn)與第二個(gè)類(lèi)中的數(shù)據(jù)點(diǎn)之間的平均距離熬甚。 (這個(gè)距離度量標(biāo)準(zhǔn)可以選擇其他的)
2. 在每次迭代中,我們將兩個(gè)類(lèi)合并成一個(gè)肋坚。這兩個(gè)要合并的類(lèi)應(yīng)具有最小的 average linkage乡括。即根據(jù)我們選擇的距離度量標(biāo)準(zhǔn),這兩個(gè)類(lèi)之間的距離最小智厌,因此是最相似的诲泌,應(yīng)該合并在一起。?
3. 重復(fù)步驟 2 直到我們到達(dá)樹(shù)根铣鹏,即我們只有一個(gè)包含所有數(shù)據(jù)點(diǎn)的類(lèi)敷扫。這樣我們只需要選擇何時(shí)停止合并類(lèi),即何時(shí)停止構(gòu)建樹(shù)诚卸,來(lái)選擇最終需要多少個(gè)類(lèi)---摘自知乎
按照實(shí)際的場(chǎng)景葵第,如果我們最終要得到1000個(gè)不重復(fù)的錄音文件,為了防止過(guò)度合并惨险,定義的退出條件是最后想要得到的錄音文件數(shù)目羹幸;
V. 聲紋識(shí)別的幾類(lèi)攻擊及其策略
1. 錄音重放攻擊: 攻擊者錄制目標(biāo)說(shuō)話人的語(yǔ)音進(jìn)行播放脊髓,以目標(biāo)人身份試圖通過(guò)聲紋識(shí)別系統(tǒng)的認(rèn)證辫愉。
策略:基于隨機(jī)內(nèi)容聲紋的檢測(cè)技術(shù):利用隨機(jī)數(shù)字的不確定性,用戶在規(guī)定的時(shí)間內(nèi)(5-10S)需要念出指定的隨機(jī)內(nèi)容将硝,如果超時(shí)恭朗,則隨機(jī)內(nèi)容更新; 因?yàn)閷?duì)于錄音重放的內(nèi)容是固定的依疼,很不靈活痰腮,所以比較容易做限制
2.?波形拼接攻擊
攻擊者將目標(biāo)說(shuō)話人的語(yǔ)音錄制下來(lái),通過(guò)波形編輯工具律罢,拼接出指定內(nèi)容的語(yǔ)音數(shù)據(jù)膀值,以放音的方式假冒目標(biāo)說(shuō)話人棍丐,試圖以目標(biāo)人身份通過(guò)聲紋識(shí)別系統(tǒng)的認(rèn)證。
策略:同錄音重放
3.語(yǔ)音合成攻擊
攻擊者用語(yǔ)音合成技術(shù)生成目標(biāo)說(shuō)話人的語(yǔ)音沧踏,以放音的方式假冒目標(biāo)說(shuō)話人歌逢,試圖以目標(biāo)人的身份通過(guò)聲紋識(shí)別系統(tǒng)的認(rèn)證。
策略:1. 同錄音重放?
? ? ? ? ? ?2. 利用活體檢測(cè)技術(shù)翘狱,加強(qiáng)算法的識(shí)別度