Meta翻譯大模型可模仿語氣語速!AI再也不“莫得感情”了|GitHub 9k標星
Meta發布了全新AI翻譯大模型,實時語音轉換延遲不超過2秒。
感受一把這個速度(西班牙語<=>英語):
不僅速度快,它的準確率還和離線模型一樣高。
最重要的是,像什么停頓、語氣、語速和情緒…… 它都可以復刻。
例如模仿耳語:
原聲1,量子位,3秒
翻譯1,量子位,3秒
例如模仿悲傷:
原聲2,量子位,3秒
翻譯2,量子位,3秒
有了它,再也不用吐槽AI翻譯“莫的感情”了。
有網友則表示:
AI這發展速度,再過幾年咱們學一門新語言就像學寫字一樣簡單。
不由地讓人想象70億人說同一種語言是什么感覺。
目前,此模型已在GitHub已攬獲近9k標星,可謂爆受歡迎。
除了開源下載,官方也提供了demo供大家嘗試體驗。
4種型號,非自回歸架構
Meta此次發布的是一個翻譯模型系列:Seamless Communication(無縫交流)。
4個不同型號分別為:
- SeamlessExpressive
可以保留跨語言語音復雜性的模型,包括停頓、語速、情緒等內容。
- SeamlessStreaming
大規模多語言模型,提供大約2秒延遲的語音和文本翻譯,與離線模型準確率幾乎一樣高。
支持近100種輸入語言和36種輸出語言的語音到語音翻譯,支持近100種輸入和輸出語言的自動語音識別和語音到文本翻譯。
- SeamlessM4T v2
前兩個模型的底座模型,多語言多任務,今年8月發布的第一個版本,實現跨語音和文本翻譯的SOTA結果。
這一新版本采用的是帶有非自回歸文本到單元解碼器的新架構,可提高文本和語音輸出之間的一致性。
- Seamless
將前三種模型的功能融為一體的模型。
開源的是前三個。
那么,這一系列模型具體怎么打造出來的?
據官方博客介紹,以上所有模型都由fairseq2提供支持。
后者是一個用于序列到序列任務的輕量建模工具包,支持機器翻譯、語音識別等任務,可與PyTorch生態系統庫組合。
此外,還包括具有非自回歸文本到單元(text-to-unit)解碼器的新架構UnitY2。
它的語音生成能力很強。
在SeamlessM4T v2 中,Meta使用multitask-UnitY2來啟用文本輸入。
在SeamlessStreaming和SeamlessExpressive中,UnitY2也作為模型架構構建基礎。
在此,Meta也特別解釋了一下為什么要采用非自回歸架構。
這是因為,自回歸模型雖然模擬語音很自然,但隨著序列長度的增加,它們的擴展性很差。
而非自回歸模型預測每個片段的持續時間,使得每個片段可以并行解碼。
因此它對長序列具有魯棒性,更適應流媒體場景。
那么,說到流媒體,Meta的模型是如何快速又準確地翻譯實時語音的呢?
核心算法是EMMA,一個可以智能決定何時已經擁有足夠的信息來生成下一個語音片段或目標文本的模型。
它還可以從離線模型中進行微調,讓準確率更高。
原理的最后一部分,主要說說Meta的模型又是如何讓翻譯不機械,富有表現力的。
在此,他們用PRETSSEL(一個語音到單元生成器)替換SeamlessM4T v2中的HiFi-GAN 聲碼器單元。
這個生成器以源語音為條件來生成波形,以此傳輸音調、情感表達和聲音風格質量等信息。
此外,團隊還開發了Prosody UnitY2,將它集成到SeamlessM4T v2中,讓它指導模型生成具有適當節奏、語速和停頓的單元生成。
兩項特別的工作
除了以上這些,Meta還介紹了兩項額外的工作。
一是“毒性緩解”。
指的是翻譯準確性的問題,在這種翻譯任務中,意外的錯誤或幻覺可能會導致兩個不同語言的人產生誤會。
由于這一問題的主要原因通常在于訓練數據。
所以Meta做的第一件事就是在訓練前過濾一遍數據中出現的“有毒內容”。
但這只是被動的,并不能完全防問題發生。
因此,他們提出直接在翻譯生成過程中自動檢測生成的有毒單詞,確有問題時自動重新調整生成過程并使用新單詞來表達。
這個過程在推理時就能做,不需要對翻譯模型進行任何微調。
最終,它顯著減少了翻譯“毒性”,并同時保持翻譯質量。
二是音頻水印。
為了防止可能的濫用風險,Meta翻譯模型也為音頻添加了水印。
方式是主動在音頻中嵌入人耳無法覺察的信號,用專門的檢測器模型可以檢測出來;通過這個水印,我們就可以準確追蹤音頻的來源。
除此之外,這一水印還可以對抗各種打擊,比如有人想通過添加噪音、回聲或過濾某范圍內的頻率來修改音頻、淡化水印以此來繞過檢測,就是行不通的。
One More Thing
除了模型、論文,Meta還同步開源了此系列翻譯模型的元數據、數據和數據對齊工具。
其中元數據包括58.5萬小時的語音文本對,涵蓋76種語言。
這是迄今為止總容量最大、語言覆蓋范圍最廣的語音語料庫。