像編輯文字一樣編輯語音,可能嗎?

語言: CN / TW / HK

(本文閱讀時間:19分鐘)

編者按:如今在各種社交網路平臺上釋出的影片,因拍攝便捷、可實時分享、互動交流等特點而深受大眾喜愛。影片深刻影響和改變了人們觀察世界、記錄生活和表達情感的方式。然而,現在市面上許多影片或音訊剪輯軟體為了滿足使用者需求儘管擁有豐富的功能,但操作卻很複雜,很多簡單的剪輯任務都還需要在軟體中逐幀對照確定剪下時間點。對於以語音為主要背景聲音的影片,如線上會議錄影、演示影片、vlog 等,如果我們能通過編輯文字的形式,直接編輯音影片中的語音內容,讓音影片的編輯自動根據文字完成,那麼將大大降低音影片的編輯難度,提高創作者的效率。為此,微軟亞洲研究院的研究員們研發了一個基於文字的語音編輯系統。本文將詳細介紹這個基於文字的語音編輯系統和研究員們研發的語音合成及填充詞檢測技術。

無論是演示影片、教學影片、會議錄影還是記錄生活片段的 vlog,在很多實際的應用場景中,人們常常需要重新錄製語音(影片)或對語音(影片)進行編輯。因為拍攝的素材中往往會存在大量停頓和脫口而出、詞不達意的語句,或者是冗餘的內容。但由於聲音的特性,我們沒有辦法在錄音底本的基礎上去修改字詞,只能一幀一幀在剪輯上下功夫,因此聲音的剪輯工作繁瑣又充滿挑戰。如果擁有一個基於文字的語音編輯系統,可以通過直接編輯語音對應的文字,完成對語音(影片)的編輯,那麼普通使用者也能成為一個有創意的剪輯師,把一段冗雜的音影片變得清晰、自然又專業。

市場上現在已經有一些類似的產品或相關的研究工作,但都有一些限制:有的研究工作可以根據文字合成匹配上下文的語音,但是必須是模型訓練過程中學習過的音色;有的產品想合成定製化的聲音,比如使用者自己的音色,但需要使用者準備至少10分鐘的聲音,並將聲音上傳,然後再等待2-24小時,通過後臺對聲音進行訓練之後,軟體才可以合成定製化的聲音。這些限制無疑都給基於文字的語音編輯在現實中的使用帶來了極大的不便。為此,微軟亞洲研究院的研究員們研發了一個基於文字的語音編輯系統,來解決這些技術難點。

技術難點

在以語音為主的音影片中,語音中的內容和文字有著時間上的一一對應。研究員們發現,若要讓基於文字的語音編輯系統可以直接編輯文字,再根據語音和文字的對應關係自動完成語音的編輯,需要著重關注以下技術要點:

圖1:語音和文字的對應關係

1. 自動語音識別 :如果語音不是按照已有指令碼讀的,那就沒有文字資訊,需要 ASR(自動語音識別)來識別得到文字,現有的 ASR 系統已經能夠準確地識別語音,但受限於訓練資料,部分 ASR 系統並不能完全檢測出語音中的填充詞。

2. 語音和文字對齊 :研究中需要一個語音文字對齊(forced alignment)模組來提供準確的文字和語音的對齊結果,以便可以精確定位到要編輯的文字在語音中的時間戳。這是一個非常基礎但十分重要的技術點,也是一個傳統的研究問題,一般用於語言學研究或發音評估或為 TTS(語音合成)提供對齊的訓練資料。現有的強制對齊方法幾乎可以滿足這些需求,但是對於基於文字的語音編輯,則需要更準確的對齊方式。現有的對齊方法在幾十毫秒的誤差級別下仍不能做到完美,而一旦出現幾十毫秒的誤差,比如切割語音的時候多切或少切了幾十毫秒,人的聽覺會很容易察覺到,併產生不適。

3. 語音合成 :當插入或修改文字時,需要語音合成模組來生成新的聲音。語音合成的最大挑戰是自然和流暢,對於基於文字的語音編輯尤其重要,因為如果只修改語音的一部分,稍有不連貫就會非常明顯。而且研究員們期望在使用語音編輯技術的時候,可以隨意進行編輯而不需要準備足量的語音資料去微調模型。因此一個零樣本上下文感知(zero-shot context-aware 的 TTS 是必不可少的。

4. 填充詞檢測 :填充詞檢測模組可以自動檢測語音中的填充詞,使用者可以選擇手動刪除部分或自動全部刪除。上文提到,部分 ASR 系統並不能檢測到全部填充詞,所以此時就沒辦法通過文字刪除填充詞來編輯語音。有的詞是否是填充詞可能取決於語境,比如“you know”是英語中常用的填充詞,但是在“Do you know him?”這句話中它並不是填充詞,這時就需要一個語言模型來進行判斷。

基於文字的語音編輯系統

研究員們首先呼叫微軟雲端計算平臺 Azure 上的 ASR 服務將上傳的語音檔案轉化為文字,同時呼叫自行研發的填充詞檢測模型,並將填充詞檢測結果和 ASR 識別結果合併。然後就可以對文字進行編輯——對於刪除操作,系統會根據對齊結果刪除對應的語音片段;對於插入操作,系統會呼叫語音合成模型合成要插入的語音並插入原有語音中。下面是幾個通過上述方法完成的基於文字的語音編輯樣例:

修改文字樣例

原始文字:understand for the question and answer benchmark we're also the first  reach human parity

修改後文字 understand for the question and answer benchmark we're also the  second  reach human parity

原始語音:

修改後語音:

插入文字 樣例

原始文字:The song of the wretched

修改後文字:The famous  song of the wretched

原始語音:

修改後語音:

刪除文字 樣例

原始文字:some have accepted it as a miracle  without physical explanation 

修改後文字:some have accepted it without physical explanation

原始語音:

修改後語音:

填充詞檢測和去除 樣例

原始文字:We can edit your speech uh  by just editing. You know,  its transcript.

修改後文字:We can edit your speech by just editing its transcript.

原始語音:

修改後語音:

基於文字的語音編輯系統

關鍵技術點一:語音合成

服務於語音編輯的語音合成模型需要做到三點: 零樣本自然流暢 。其中自然又可細化為兩點子要求:生成與目標說話人相似的音色,以及足夠高的音質。經過不斷探索,微軟亞洲研究院的研究員們達成了以上目標,開發了一個零樣本上下文感知 TTS 模型 RetrieverTTS,並在語音領域的頂級學術會議 InterSpeech 2022上發表了論文“RetrieverTTS: Modeling Decomposed Factors for Text-Based Speech Insertion”(欲瞭解論文詳情,請檢視:https://arxiv.org/pdf/2206.13865.pdf )。

設計思路

不同於已有方法中將語音插入任務視為文字-語音模態融合的思路 [3,5],如圖2所示,研究員們將語音先解耦成文字、韻律(音素序列的音高、音量、時長)、音色、風格四個要素,再在每個要素上進行可控的編輯操作,最後將四部分合成為插入後的語音。一言以蔽之,即“ 先解耦再編輯 ”。

圖2:語音合成設計思路

但是,在執行插入操作時對四種要素的操作是不同的:文字可以直接使用使用者編輯後的文字;對於韻律而言,未被編輯的部分無需改變,而插入詞的部分需要由模型根據上下文預測得到;由於說話人沒有改變,因此音色和風格兩個要素保持不變。文字和韻律在一句話的不同時刻是不同的,而音色和風格在一句話甚至連續的幾句話中都不會改變,所以前者為局域要素,而後者為全域性要素。

模型架構

研究員們使用 Fastpitch[1] 作為語音合成的主幹網路。為了準確地以零樣本的方式適應到任意說話者的音色,全域性要素與局域要素之間的解耦應足夠精準,全域性要素的表徵需足夠完備且應泛化至任意說話人。研究員們在 ICLR 2022 發表的論文“Retriever: Learning Content-Style Representation as a Token-Level Bipartite Graph”[2] 中,已經在很大程度上解決了這一問題,並在零樣本語音風格轉換任務中取得了最先進的效能。在此,研究員們將“Retriever”中的全域性要素建模方法引入到了語音插入任務中。

圖3:語音合成模型架構

實驗結果

如表1所示,RetrieverTTS 的語音插入效果對插入長度並不敏感。對於訓練中沒見過的說話人,即使插入語音長度超過兩秒乃至生成一整句(long insert, full generation),其語音自然度仍然保持在較高水平。在插入少於6個詞時 (short insert, mid insert),甚至達到與真人錄音相近的自然度評分。

表1:語音合成對不同插入長度的魯棒性測試

在表2的消融實驗中,研究員們分別去掉了對抗訓練(- adv),韻律平滑任務(- prosody-smooth),以及 Retriever 的全域性要素建模方法 (- retriever),結果均發現明顯的效能下降。在三次實驗的測試樣例中,研究員們分別發現了音質差、韻律不連貫以及音色不像的問題。這驗證了 RetrieverTTS 三方面設計均達到了設計初衷。

表2:語音合成消融實驗

在表3中,研究員們與其他方法進行了對比,發現基於模態融合的方法[3]在插入較長語音的情形下語音自然度表現較差,而其他的零樣本說話人自適應語音合成(zero-shot speaker adaptive TTS [4] 在音色相似度方面與 RetrieverTTS 的方法有較大差距。上述對比體現出了 RetrieverTTS 方法的優越性。

表3:語音合成系統對比

基於文字的語音編輯系統

關鍵技術點二:填充詞檢測

很多 ASR 模型由於受限於訓練資料,不能完整的檢測到填充詞,因此需要一個單獨的模組進行填充詞的檢測。事實上,基於語音的填充詞檢測技術屬於語音關鍵詞檢測的一個特例,所以研究員們將語音關鍵詞檢測視為目標檢測問題,而不是語音分類問題。受計算機視覺中目標檢測方法的啟發[6], 研究員們提出了一種名為 AF-KWS(anchor free detector for continuous speech keyword spotting) 的關鍵詞檢測方法。

在 AF-KWS 方法中,研究員們通過預測一個關鍵詞熱力圖,得到每一類關鍵詞在連續語音中的位置,然後通過兩個預測模組,分別預測關鍵詞的長度和用於矯正關鍵詞位置誤差的位置偏移量。不同於計算機視覺中的目標檢測演算法[6][7][8],研究員們引入了一個“unknown”類別,表示非目標關鍵詞的其他詞,這種設計將“unknown”和語音中的背景噪音和安靜片段分開,能夠顯著提高關鍵詞檢測的準確性。該方法的論文“An Anchor-Free Detector for Continuous Speech Keyword Spotting”已經被 InterSpeech 2022 接收(更多論文細節,請檢視:https://arxiv.org/pdf/2208.04622.pdf )。

演算法框架

如圖4所示,對於輸入語音,研究員們首先提取了語音的 STFT 頻譜圖,然後使用 ResNet[9] 進一步提取特徵,然後將特徵輸入三個預測模組,分別用於預測關鍵詞的熱力圖、關鍵詞的長度和關鍵詞位置偏置。在訓練階段,熱力圖以關鍵詞的位置為中心,使用高斯核函式將關鍵詞的位置擴充套件。在預測階段,研究員們取預測得到的熱力圖的峰值點作為預測得到的關鍵詞的位置,然後提取對應位置的關鍵詞長度和偏置的預測結果,計算得到最終的關鍵詞的位置和類別。

圖4:AF-KWS 演算法框架

實驗結論

研究員們選用了兩個先進的關鍵詞檢測模型[10][11]做對比,在連續語音關鍵詞檢測的實驗設定中,AF-KWS 的模型在可比的執行速度下,平均準確率遠超其他模型。

表4:填充詞檢測效能對比

為了驗證 AF-KWS 方法的提升不是因為 backbone 更強大,研究員們將三個預測模組替換成了一個分類模組(AF-KWS-cls),發現模型效能明顯下降。為了驗證引入的“unknown”類別的有效性,研究員們去掉了這個類別(w/o unknown),發現模型效能也明顯下降。

表5:填充詞檢測消融實驗

關鍵詞檢測模型用於填充詞檢測

由於填充詞也可以看作一種特殊的關鍵詞,所以研究員們基於 SwitchBoard 資料集[12],製作了一個語音填充詞檢測資料集,並在這個資料集上重新訓練關鍵詞檢測模型。在真實的測試資料中,AF-KWS 方法得到了與市面上最好的方法幾乎相同的效能。針對填充詞的特點,比如填充詞一般包含的音節較少,更容易與特定類別的詞混淆,研究員們會繼續改進模型。

未來展望

儘管現有的技術和本文中的語音編輯系統已經實現了基於文字的語音編輯的部分功能,但仍有很多研究需要持續探索,其中包括:開發富文字格式,進行語音解耦,精準控制語音的重度,語氣語調和情緒;開發更精確的語音文字對齊演算法;在 TTS 中背景噪音或背景音樂進行建模,讓合成的語音包含匹配的背景噪聲或背景音樂;開發結合語音和文字的多模態填充詞檢測檢測演算法;等等。

參考文獻:

[1] A. Lancucki, “Fastpitch: Parallel text-to-speech with pitch prediction,” in ICASSP, 2021.

[2] Y. Dacheng, R. Xuanchi, L. Chong, W. Yuwang, X. Zhiwei, and Z. Wenjun, “Retriever: Learning content-style representation as a token-level bipartite graph,” in ICLR, 2022.

[3] C. Tang, C. Luo, Z. Zhao, D. Yin, Y. Zhao, and W. Zeng, “Zero-shot text-to-speech for text-based insertion in audio narration,” in Interspeech, 2021. 

[4] D. Min, D. B. Lee, E. Yang, and S. J. Hwang, “Meta-stylespeech : Multi-speaker adaptive text-to-speech generation,” in ICML, 2021. 

[5] Z. Borsos, M. Sharifi, and M. Tagliasacchi, “Speechpainter: Textconditioned speech inpainting,” arXiv preprint arXiv:2202.07273, 2022.

[6] X. Zhou, D. Wang, and P. Kr¨ahenb¨uhl, “Objects as points,” arXiv preprint arXiv:1904.07850, 2019.

[7] C. Zhu, Y. He, and M. Savvides, “Feature selective anchor-free module for single-shot object detection,” in Proceedings of the IEEE/CVF conference on computer vision and pattern recognition, 2019, pp. 840–849.

[8] T. Kong, F. Sun, H. Liu, Y. Jiang, L. Li, and J. Shi, “Foveabox: Beyound anchor-based object detection,” IEEE Transactions on Image Processing, vol. 29, pp. 7389–7398, 2020.

[9] B. Xiao, H. Wu, and Y. Wei, “Simple baselines for human pose estimation and tracking,” in Proceedings of the European conference on computer vision (ECCV), 2018, pp. 466–481.

[10] O. Rybakov, N. Kononenko, N. Subrahmanya, M. Visontai, and S. Laurenzo, “Streaming keyword spotting on mobile devices,” Proc. Interspeech 2020, pp. 2277–2281, 2020.

[11] S. Majumdar and B. Ginsburg, “Matchboxnet: 1d time-channel separable convolutional neural network architecture for speech commands recognition,” Proc. Interspeech 2020, pp. 3356–3360, 2020.

[12] John J Godfrey, Edward C Holliman, and Jane Mc-Daniel, “Switchboard: Telephone speech corpus for research and development,” in Acoustics, Speech, and Signal Processing, 1992. ICASSP-92., 1992 IEEE International Conference on. IEEE, 1992, vol. 1, pp. 517–520.

你也許還想看