1. 程式人生 > >MTGAN:通過多工三元生成對抗性網路對說話人進行驗證

MTGAN:通過多工三元生成對抗性網路對說話人進行驗證

MTGAN: Speaker Verification through Multitasking Triplet Generative Adversarial Networks

MTGAN:通過多工三元生成對抗性網路對說話人進行驗證

摘要

在本文中,我們提出了一種增強的三元組方法,它通過聯合利用生成對抗機制和多工優化來改進嵌入的編碼過程。 我們擴充套件了具有生成性對抗網路(GAN)和softmax丟失功能的三重編碼器。 引入GAN是為了增加樣本的通用性和多樣性,而softmax則用於增強揚聲器的功能。 為簡化起見,我們將我們的方法稱為多工三元組生成對抗網路(MTGAN)。 短話語實驗表明,MTGAN分別比傳統的i-vector方法和最先進的三元組丟失方法將驗證等錯誤率(EER)降低了67%(相對)和32%(相對)。 這有效地表明MT-GAN在表達說話者資訊的高階特徵方面優於三元組方法。

索引術語:生成對抗性網路,說話者驗證,三元組丟失

1.簡介

自動說話人驗證(ASV)是指在給定註冊的語音資料庫的情況下識別說話者的未知話語的ID的過程。作為一種重要的非接觸式生物識別技術,它已被廣泛研究[1,2,3,4]。

在過去幾年中,ASV領域已形成了i-vector / PLDA的主流[2,5]。然而,大量的工作發現,由深度神經網路(DNN)組成的端到端系統在某些方面超過了傳統方法,特別是在短話語條件下。此外,短語的說話人驗證具有很大的實用價值,這使我們對DNN方法的研究起到了重要作用。

最近,一些使用DNN的度量學習方法引起了很多關注。三聯體損失是其中之一,並且由於FaceNet [6]而在模式識別領域中很受歡迎,這是一種新穎的人臉識別方法。之後,張等人。 [4]將此方法應用於說話人驗證。三重方法已被證明是有用的,並且在此基礎上改進了大量的工作[7,8,9]。

三重損失的基本思想是最小化類內距離,同時最大化類間距離。從理論上講,它對所有分類任務都有效,但考慮到有限的訓練樣本,混響和錄音時的環境噪聲,三重態丟失對說話人驗證的任務有限制。在沒有任何指導或限制的情況下,具有香草三聯體損失的編碼器通常會提取與說話者ID無關的功能,從而導致效能不佳。此外,泛化能力對零射擊學習很重要。完全在訓練集上訓練編碼器而沒有任何增強,使得三元組方法在測試集上不那麼通用。為了解決上述問題,我們建議通過多工學習和生成對抗性機制來增強三重態損失。

至於我們的架構(如圖1所示),除了基本編碼器之外,還引入了兩個模組。首先,我們在編碼器後面新增一個條件GAN。該發生器通過嵌入編碼器和隨機噪聲生成新樣本。將編碼器與GAN合併類似於[10]和[11]的框架,這證明了它們的優越性。在通過具有噪聲的編碼器 - 解碼器結構之後,新樣本在語音上下文和不相關的環境資訊方面具有更多的泛化能力和多樣性。鑑別器保證了生成的樣本的真實性和相似性,而揚聲器的特徵仍然存在以下限制。分類器將來自生成器和原始資料的樣本作為輸入。該分類器的最後一層用於softmax損失,其標籤是訓練集的說話者ID。這樣的模組提高了編碼器提取揚聲器的獨特特徵的能力。

我們在兩個不同的資料集上訓練和測試我們的方法,以分析演算法的可轉移性。我們的基線包括i-vector / PLDA系統,softmax方法[3]和三重方法[4]。實驗結果表明,我們的演算法實現了1.81%的EER和92.65%的準確率,遠遠優於基線系統。通過更廣泛的實驗(參見實驗部分),我們確認MTGAN比香草三重損失方法更能提取說話者相關的功能。

 

 

2.相關作品

2.1深刻的中性網路

d-vector [3]的出現標誌著整個DNN框架下ASV系統的誕生。這是ASV領域的一個里程碑,它引領了大量關於DNN的工作。之後,越來越多的作品[12,13,14]實現了與i-vector / PLDA方法一樣好的結果。例如,[14]提出了一種卷積時延深度神經網路結構(CT-DNN),並聲稱它們在短時間語音的情況下比i-vector系統好得多。

在這方面,許多工作都集中在網路結構的調整和新培訓技術的使用上。然而,就像ASV這樣的零射擊任務而言,其訓練集和測試集無關緊要,應該提出更合適的方法而不是優化網路結構。 [13]聲稱只使用像[3]和[14]這樣的softmax損失導致測試集上的效能很差,這些測試集與他們的訓練集非常不同。

2.2三重度量學習

為了解決零射擊問題,在[15]中首次提出了三重態損失。雖然它已經出現了很長時間,但仍有許多後續作品[7,8,9]。

[7]採用多通道方法來增強類內樣本的緊密性。 [8]提出了一種四聯網結構,以提高測試集上三重態損失的可轉移性。像[9]這樣的其他一些作品直接修改了距離和邊距的定義。靈感來自FaceNet [6],改進了三重態損失的取樣方法,[4]結合三重態損失與ResNet

  1. 並首次將其應用於ASV。在此之後,[17]還提出了一種名為TRISTOUNET的結構,用於使用雙向LSTM和三重態損耗的組合進行揚聲器驗證。 [13]提出Deep Speaker來解決與文字相關的任務和與文字無關的任務。 Deep Speaker還證明了預先訓練的softmax網路有助於改善三聯體方法。

上述方法採用了多種改進方法,但沒有一種方法將三重損失與其他多工方法結合起來。儘管深度揚聲器使用預先訓練的softmax網路,但在訓練過程中只有一個損失專案。

 

2.3生成性對抗網路

GAN [18]是一個基於博弈論的框架,於2014年提出。經過原始GAN的提議,出現了許多變體[19,20,21,22],並在許多領域得到廣泛應用。

GAN的框架包含兩個參與者,一個是生成者,另一個是鑑別者。發生器和鑑別器使用值函式V(G,D)進行以下極小極大遊戲

其中z是為避免模式崩潰而引入的隨機噪聲。 G(z)是從發生器產生的假樣本。 等式的第一項表示判別者持有實際樣本的概率為真,第二項表示判別者持有假樣本的概率為假。

直覺上,GAN通常用於生成任務,但最近有一些使用GAN進行分類任務的工作[10,11]。 我們的架構類似於[10],它將編碼器與GAN結合在一起。

GAN的大多數應用都與計算機視覺有關。 然而,研究人員最近在語言領域使用了GAN。

[23]和[24]應用GAN去噪和增強聲音。 [25]用GAN改進語音識別過程。 有些人還將三聯體損失與GAN [26,27]結合起來探索新的應用。 具體而言,[26]提出了一種三重網路來生成專門用於三重態損失的樣本。 [27]建議使用TripletGAN來最小化實際資料和虛假資料之間的距離,同時最大化不同假資料之間的距離。 在語音領域,大多數以前使用GAN的工作都是關於資料增強。 據我們所知,沒有人提議用GAN來增強三重態損失

演講者驗證。

 

3.多工三聯生成對抗網路

3.1網路架構

圖1顯示了我們網路的架構。 它由四個模組組成,所有模組都已標記為不同的顏色。

•編碼器:該模組用於從樣本中提取特徵。它的最後一個完全連線層輸出512維嵌入,表示原始樣本的說話者資訊。在登記/測試階段,該嵌入用於計算未知話語和登記話語之間的距離。

GAN:更具體地說,這是一個帶條件架構的GAN。發生器的輸入不僅是隨機噪聲,還包括編碼器的嵌入。生成器的輸出是假樣本,預計看起來像原始樣本。鑑別器有兩種輸入,一種是真實樣本,另一種是來自發生器的假樣本。

•分類器:同樣,我們將假樣本和真實樣本都提供給分類器模組。該模組的輸出是單熱向量,其大小等於訓練集中揚聲器的數量。

在整個框架中,我們只使用卷積層和完全連線層。所有卷積層的核心大小為5×5,我們也使用批量標準化。 [28]

 

3.2 損失函式

我們演算法的損失函式有四個分量,每個分量都有一個權重係數。 第一個是標準三重態損失,已在[4]中詳細解釋:

3.3三重取樣方法

三重態方法的準確性和收斂速度在很大程度上取決於取樣方法,這個問題已在[29]中詳細討論過。所有話語之間都有巨大的組合,因此,不可能考慮所有可能性。 [6]提出使用半硬否定探索來對三元組進行取樣,[4]遵循它。該方法在一個小批量內搜尋三元組對,因此有效且省時。 Deep Speaker [13]也建議在多個GPU上搜索錨負對。

在將隨機選擇與半硬陰性選擇[6](實驗部分的細節)進行比較後,我們發現只要在一個時期使用大量的人,選擇方法就無關緊要了。因此,我們在演算法中直接使用隨機抽樣方法。總的來說,我們在一個時期獲得n * A * P * K * J三聯體對,其中n代表選定的人數,A是錨的數量,P是正數,K是其他類的數量n和N是每個K的負數。

 

3.4培訓網路的詳細資訊

過濾器,因此輸入的維數是128 128.不可否認,GAN很難訓練,因為它不穩定,特別是在我們的多工情況下。像大多數作品一樣,我們選擇修改[20]提出的DCGAN架構,並利用WGAN-GP最先進的訓練技能[22]。培訓過程中的一些生成樣本如圖2所示。

4.實驗和討論

4.1資料集和基線

我們用於訓練的資料集是Librispeech [30],它由“乾淨”部分和“其他”部分組成。 我們僅將“其他”部分用於探索發言人數量影響的實驗。 測試資料集是TIMIT [31],因為該資料集涵蓋了所有英語音素。 我們在不同資料集上進行訓練和測試的原因是探索演算法的可轉移性。 在評估設定方面,我們隨機選擇3個語句進行招生,7個語句進行測試。

我們有四個基線進行比較。其中兩個是i-vector系統,另一個是監督的softmax系統[3],最後一個是三重系統[4]。

 

4.2效能比較實驗

在本節中,我們在相同的實驗設定下對我們的方法和基線進行了比較(培訓了1252名Lib-rispeech人員),結果顯示在表1中。我們使用EER和ACC作為我們的評估標準。 EER評估系統的整體效能,ACC為我們揭示了最佳結果。為了進行更全面的評估,我們繪製了所有五個系統的檢測誤差折衷(DET)曲線(如圖3左側所示)。

通過表1中的結果,我們總結出三元組方法[4]的確優於i-vector和softmax方法。然而,我們的方法比[4]獲得了更好的結果,並且具有更快的收斂速度。通過分析,我們認為簡單三元組方法受到特徵提取能力的限制,並且資料傳輸效能較差。在訓練後期,[4]的三聯體損失接近於零(不過度擬合)。這種現象表明它已達到具有當前特徵的說話者驗證任務的極限。編碼器不僅從揚聲器資訊中提取特徵,還從其他獨立因素中提取特徵。

4.3相關實驗

在本節中,我們進行了更多的消融實驗,以證明我們的框架是可行的。不同條件下的結果如表2所示。首先,我們驗證了結構中每個模組的必要性。我們一次刪除了三個模組,並在相同的設定下進行了實驗。結果證明,移除模組後的結構不能像MTGAN那樣有效。在三種情況下,分類器的去除影響最大,這意味著softmax損失對於改進特徵提取過程非常重要。

然後我們比較了隨機抽樣方法和[6]提出的半硬陰性方法之間的差異。我們應用的網路架構是Inception-Resnet-v1,我們測試了每個時期選擇60和600人最後一個實驗是探索訓練集中人數的影響。我們將Lib-rispeech的“其他”部分新增到訓練集中(總共2484個),並且對具有1252人的那個進行了相同的實驗。雖然收斂速度變慢,但EER和ACC在擴大訓練集後增加。我們不能不注意一個現象:分類器的輸出層與訓練揚聲器的數量有關。如果我們使用更大的資料集來訓練模型,網路的大小將會增加。

5.結論

在這項研究中,我們提出了一種新的端到端文字無關的簡短話語驗證系統,名為MTGAN。我們利用分類器和生成對抗網路擴充套件三重態損失,以形成多工框架。三重丟失設計用於群集,而GAN和softmax丟失有助於提取有關揚聲器資訊的功能。

實驗結果表明,與i-vector方法和三元組方法相比,我們的演算法實現了更低的EER和更高的準確性。此外,我們的方法比香草三聯方法具有更快的收斂速度。通過更多的消融實驗,我們得到其他結論。我們確認軟最大損失在提取特徵中起著重要作用,在一批選擇大量人群的情況下,半硬方法和隨機方法之間的差距很小。我們還觀察到,正如預期的那樣,培訓更多人有助於提高績效。

我們相信這項工作為演講者驗證界提供了更多的想法和靈感,並引入了更多的DNN方法。雖然我們的框架有很大的改進空間,但我們認為我們的實驗結果將有助於其他人更清楚地理解說話人驗證的任務。