(文章來源:雷鋒網(wǎng))
從 WaveNet 到 Tacotron,再到 RNN-T,谷歌一直站在語音人工智能技術(shù)的最前沿。近日,他們又將多人語音識別和說話人分類問題融合在了同一個網(wǎng)絡(luò)模型中,在模型性能上取得了重大的突破。對于自動理解人類音頻的任務(wù)來說,識別“誰說了什么”(或稱“說話人分類”)是一個關(guān)鍵的步驟。
傳統(tǒng)的說話人分類系統(tǒng)依賴于人聲的聲學(xué)差異識別出對話中不同的說話人。根據(jù)男人和女人的音高,僅僅使用簡單的聲學(xué)模型,就可以在一步中相對容易地將他們區(qū)分開來。然而,想要區(qū)分處音高可能相近的說話者,說話者分類系統(tǒng)就需要使用多步方法了。首先,基于檢測到的人聲特征,使用一個變化檢測算法將對話切分成均勻的片段,我們希望每段僅僅包含一個說話人。接著,使用一個深度學(xué)習(xí)模型將上述說話人的聲音片段映射到一個嵌入向量上。最后,在聚類階段,會對上述嵌入聚類在不同的簇中,追蹤對話中的同一個說話人。
在真實場景下,說話人分類系統(tǒng)與聲學(xué)語音識別(ASR)系統(tǒng)會并行化運行,這兩個系統(tǒng)的輸出將會被結(jié)合,從而為識別出的單詞分配標簽。傳統(tǒng)的說話人分類系統(tǒng)在聲學(xué)域中進行推斷,然后將說話人標簽覆蓋在由獨立的 ASR 系統(tǒng)生成的單詞上。這種方法存在很多不足,阻礙了該領(lǐng)域的發(fā)展。
我們需要將對話切分成僅僅包含以為說話人的語音的片段。否則,根據(jù)這些片段生成的嵌入就不能準確地表征說話人的聲學(xué)特征。然而,實際上,這里用到的變化檢測算法并不是十全十美的,會導(dǎo)致分割出的片段可能包含多位說話人的語音。聚類階段要求說話人的數(shù)量已知,并且這一階段對于輸入的準確性十分敏感。
系統(tǒng)需要在用于估計人聲特征的片段大小和期望的模型準確率之間做出艱難的權(quán)衡。片段越長,人聲特征的質(zhì)量就越高,因為此時模型擁有更多關(guān)于說話人的信息。這然而,這就帶來了將較短的插入語分配給錯誤的說話人的風(fēng)險。這將產(chǎn)生非常嚴重的后果,例如,在處理臨床醫(yī)學(xué)或金融領(lǐng)域的對話的環(huán)境下,我們需要準確地追蹤肯定和否定的陳述。
傳統(tǒng)的說話人分類系統(tǒng)并沒有一套方便的機制,從而利用在許多自然對話中非藏明顯的語言學(xué)線索。例如,“你多久服一次藥?”在臨床對話中最有可能是醫(yī)護人員說的,而不會是病人說的。類似地,“我們應(yīng)該什么時候上交作業(yè)?”則最有可能是學(xué)生說的,而不是老師說的。語言學(xué)的線索也標志著說話人有很高的概率發(fā)生了改變(例如,在一個問句之后)。
然而,傳統(tǒng)的說話人分類系統(tǒng)也有一些性能較好的例子,在谷歌此前發(fā)布的一篇博文中就介紹了其中之一。在此工作中,循環(huán)神經(jīng)網(wǎng)絡(luò)(RNN)的隱藏狀態(tài)會追蹤說話人,克服了聚類階段的缺點。而本文提出的模型則采用了不容的方法,引入了語言學(xué)線索。
我們研發(fā)出了一種簡單的新型模型,該模型不僅完美地融合了聲學(xué)和語音線索,而且將說話人分類和語音識別任務(wù)融合在了同一個系統(tǒng)中。相較于相同環(huán)境下僅僅進行語音識別的系統(tǒng)相比,這個集成模型并沒有顯著降低語音識別性能。
我們意識到,很關(guān)鍵的一點是:RNN-T 架構(gòu)非常適用于集成聲學(xué)和語言學(xué)線索。RNN-T 模型由三個不同的網(wǎng)絡(luò)組成:(1)轉(zhuǎn)錄網(wǎng)絡(luò)(或稱編碼器),將聲幀映射到一個潛在表征上。(2)預(yù)測網(wǎng)絡(luò),在給定先前的目標標簽的情況下,預(yù)測下一個目標標簽。(3)級聯(lián)網(wǎng)絡(luò),融合上述兩個網(wǎng)絡(luò)的輸出,并在該時間步生成這組輸出標簽的概率分布。
在圖形處理單元(GPU)或張量處理單元(TPU)這樣的加速器上訓(xùn)練 RNN-T 并不是一件容易的事,這是因為損失函數(shù)的計算需要運行“前向推導(dǎo)-反向傳播”算法,該過程涉及到所有可能的輸入和輸出序列的對齊。最近,該問題在一種對 TPU 友好的“前向-后向”算法中得到了解決,它將該問題重新定義為一個矩陣乘法的序列。我們還利用了TensorFlow 平臺中的一個高效的 RNN-T 損失的實現(xiàn),這使得模型開發(fā)可以迅速地進行迭代,從而訓(xùn)練了一個非常深的網(wǎng)絡(luò)。
這個集成模型可以直接像一個語音識別模型一樣訓(xùn)練。訓(xùn)練使用的參考譯文包含說話人所說的單詞,以及緊隨其后的指定說話人角色的標簽。例如,“作業(yè)的截止日期是什么時候?”<學(xué)生>,“我希望你們在明天上課之前上交作業(yè)”<老師>。當(dāng)模型根據(jù)音頻和相應(yīng)的參考譯文樣本訓(xùn)練好之后,用戶可以輸入對話記錄,然后得到形式相似的輸出結(jié)果。我們的分析說明,RNN-T 系統(tǒng)上的改進會影響到所有類型的誤差率(包括較快的說話者轉(zhuǎn)換,單詞邊界的切分,在存在語音覆蓋的情況下錯誤的說話者對齊,以及較差的音頻質(zhì)量)。此外,相較于傳統(tǒng)的系統(tǒng),RNN-T 系統(tǒng)展現(xiàn)出了一致的性能,以每段對話的平均誤差作為評價指標時,方差有明顯的降低。
傳統(tǒng)系統(tǒng)和 RNN-T 系統(tǒng)錯誤率的對比,由人類標注者進行分類。此外,該集成模型還可以預(yù)測其它一些標簽,這些標簽對于生成對讀者更加友好的 ASR 譯文是必需的。例如,我們已經(jīng)可以使用匹配好的訓(xùn)練數(shù)據(jù),通過標點符號和大小寫標志,提升譯文質(zhì)量。相較于我們之前的模型(單獨訓(xùn)練,并作為一個 ASR 的后處理步驟),我們的輸出在標點符號和大小寫上的誤差更小。
? ? ?(責(zé)任編輯:fqj)
評論
查看更多