截止至2019年,世界上共有200多個國家和地區(qū),人們使用的語言數(shù)量也高達7000多種,其中還不乏上千種瀕危語言或者是不成文語言 (unwritten language),語言不通往往是不同地區(qū)政治、經(jīng)濟、文化等交流的重要阻礙。 幸運的是,隨著近年來機器翻譯技術(shù)的快速發(fā)展,尤其是自2017年 Transformer 模型提出以來,基于神經(jīng)網(wǎng)絡(luò)的機器翻譯方法漸漸受到更多關(guān)注并且已經(jīng)應(yīng)用到了各大商業(yè)機器翻譯系統(tǒng)當(dāng)中,大大減少了語言障礙帶來的不便,促進了人與人之間的交流。但與此同時,隨著互聯(lián)網(wǎng)的發(fā)展,人們?nèi)粘D塬@取到的信息也不再局限于文本,音視頻形式如今同樣成為信息傳遞的主要手段。因此,如何將語音信息翻譯成不同語言的文本也是一個要攻克的難題。 快速了解文章大致內(nèi)容: 語音翻譯概述 語音翻譯建模方法 端到端語音翻譯的潛力和挑戰(zhàn) 一些探索和嘗試 結(jié)語 01 語音翻譯概述 語音翻譯 (Speech Translation, ST) 就是將一種語言的語音翻譯成另一種語言的文本。它有非常多重要且有趣的應(yīng)用,例如: 視頻字幕自動生成 ![]() 大會同傳 ![]() 智能翻譯硬件 ![]() 如今,實用的商業(yè)語音翻譯系統(tǒng)都是通過串接自動語音識別系統(tǒng) (Automatic Speech Recognition, ASR) 和機器翻譯系統(tǒng) (Machine Translation, MT) 實現(xiàn)的,語音翻譯的效果一定程度上隨著語音識別和機器翻譯技術(shù)的發(fā)展而提升。然而這類級聯(lián)的系統(tǒng)往往會存在錯誤累積的問題,即語音識別錯誤會直接導(dǎo)致機器翻譯結(jié)果出錯。為了解決這個問題,隨著近幾年序列到序列建模 (sequene-to-sequence modeling) 方法在機器翻譯和語音識別上的應(yīng)用和發(fā)展[1-4],研究者也開始探索能夠直接將音頻翻譯成文本的端到端 (end-to-end) 語音翻譯技術(shù)。 02 語音翻譯建模方法 1. 級聯(lián)語音翻譯 (Cascade) 級聯(lián)語音翻譯系統(tǒng)就是先使用一個語音識別模塊將音頻識別成文本,再用一個機器翻譯模塊將文本翻譯成不同的語言。這種方法的優(yōu)勢是可以利用大規(guī)模的語音識別數(shù)據(jù)和機器翻譯數(shù)據(jù)分別將兩個模塊優(yōu)化到極致。但是,語音識別的文本有以下一些特征或常見的錯誤: - 無大小寫和標點信息 - 存在口語現(xiàn)象,如語氣詞、重復(fù)等 - 識別錯誤,如同音異形字識別錯誤、漏詞等 因此在實際應(yīng)用的時候,還需要經(jīng)過一定的后處理才能輸入到翻譯模塊中。例如: - 口語順滑:識別并刪除識別文本中所包含的重復(fù)、冗余等口語現(xiàn)象; - 文本逆規(guī)范化 (ITN):將識別文本轉(zhuǎn)換為書面化的文本(如數(shù)字轉(zhuǎn)換等) - 改寫/糾錯:根據(jù)上下文語義,對文本進行改寫或糾錯從而提升譯文準確度 - 加標點、規(guī)范大小寫 ![]() 可以看到,級聯(lián)系統(tǒng)支持我們插入各種優(yōu)化處理模塊,并且各個模塊可以被單獨優(yōu)化和替換。但各種被引入用于修正/糾錯的模塊又可能會引入更多的錯誤,因此級聯(lián)語音翻譯系統(tǒng)面臨最大的挑戰(zhàn)就是錯誤傳播問題 (error propagation) 以及計算復(fù)雜度高。 2. 端到端語音翻譯 (End-to-end) 端到端語音翻譯是一個統(tǒng)一的直接將語音翻譯成文本的模型。這得益于“編碼器-解碼器”框架的發(fā)展,尤其是其在機器翻譯[1]和語音識別[2-4]上的應(yīng)用。相比級聯(lián)模型,端到端模型的優(yōu)勢是可以緩解錯誤傳播的問題,還可以簡化模型部署的過程。 ![]() 目前,比較常用的端到端語音翻譯模型還是基于 Transformer,如下圖所示: ![]() 它的“編碼器-解碼器”主干結(jié)構(gòu)就是標準的 Transformer,而與基于 Transformer 的神經(jīng)機器翻譯唯一不同的是輸入端的詞向量變成了音頻的表示 (representation)。而我們知道,音頻文件被讀入到計算機程序之后,他的表示方式是一串離散的采樣點(即聲音在介質(zhì)中振動的幅度),假設(shè)音頻的采樣率是16,000(即每秒16,000個采樣點),那么即便是一段只有幾秒的音頻,讀入到程序中的序列也會非常長,因此在正式輸入到 Transformer 之前,還需要進行音頻特征抽取。如下圖所示是兩種目前最常用的端到端語音翻譯模型中的音頻特征提取方式: ![]() (1)基于聲學(xué)特征:首先提取傳統(tǒng)的聲學(xué)特征,如梅爾倒頻譜系數(shù) (mel-frequency cepstral coefficient,MFCC) 和梅爾濾波器組特征 (log-mel filterbank coefficient,F(xiàn)Bank) 等。得到的聲學(xué)特征是一個“音頻幀數(shù) × 聲學(xué)特征數(shù)”的矩陣,其中的音頻幀可以看作是一個時序上維度,但相比文本中的句子單詞數(shù)還是稍長,因此在 FBank/MFCC 之后往往還會接若干層卷積神經(jīng)網(wǎng)絡(luò),進一步對聲學(xué)特征進行特征提取和降維。 (2)基于無監(jiān)督預(yù)訓(xùn)練模型:無監(jiān)督語音預(yù)訓(xùn)練模型是近兩年比較熱門的研究方向,它無需抽取聲學(xué)特征,而是利用深層神經(jīng)網(wǎng)絡(luò)模型直接基于大規(guī)模的音頻數(shù)據(jù)訓(xùn)練語音的特征表示,目前在多項下游語音任務(wù)上的實驗表明,預(yù)訓(xùn)練語音表示比傳統(tǒng)的聲學(xué)特征效果更好[5]。如上圖(2)是比較經(jīng)典的wav2vec2.0[6],音頻信號會通過7層卷積網(wǎng)絡(luò)進行特征提取和降維,然后再經(jīng)過若干層 Transformer Block 獲得具備上下文信息的音頻特征表示。 03 端到端語音翻譯的潛力和挑戰(zhàn) 端到端的建模方法比傳統(tǒng)的級聯(lián)語音翻譯更具備潛力,我們可以通過如下推導(dǎo)進行論證(X表示音頻輸入,S和T分別表示語音識別結(jié)果和翻譯結(jié)果)[7]: ![]() 式(1):即為端到端語音翻譯模型,它直接從音頻X生成譯文T; 式(2):引入了一個新的變量S且為(1)的條件概率展開形式; 式(3):我們用一個文本翻譯翻譯模型來近似P(T | S, X),顯然這一步存在信息損失,因為我們忽略了原始的音頻輸入,導(dǎo)致翻譯模型無法真實捕捉到說話人的語氣、情感、態(tài)度等,進而可能存在歧義; 式(4):即為級聯(lián)語音翻譯模型,它直接取語音識別模型輸出的Top 1結(jié)果,并傳給機器翻譯模型。這就回到了前文所述的級聯(lián)模型的不足之處:一個是語音識別的輸出與機器翻譯不匹配(如口語化現(xiàn)象、無標點、甚至領(lǐng)域不匹配等),二是錯誤傳播的問題,尤其是在商業(yè)語音翻譯系統(tǒng)中,往往還包含口語順滑、標點恢復(fù)等模塊,潛在累積更多的機器學(xué)習(xí)模型的預(yù)測錯誤,同時增加了模型復(fù)雜度。 因此,無論是從模型復(fù)雜度,還是從效果而言,端到端的建模方法都具備更強的潛力。 我們其實可以通過增強機器翻譯模型的魯棒性、使用 ASR 輸出的Top K結(jié)果(如lattice)、或者在標點模塊/翻譯模塊中結(jié)合更多的音頻信息來提升級聯(lián)模型的效果,但本文對此不作過多討論,因為要公平地比較這些方法需要大規(guī)模且相匹配的訓(xùn)練數(shù)據(jù)做支撐,目前端到端語音翻譯的數(shù)據(jù)規(guī)模還不足以做到這一點。 如果端到端語音翻譯具備強大的潛力,那為什么現(xiàn)在商業(yè)的語音翻譯系統(tǒng)還都是級聯(lián)的? 這就關(guān)系到端到端方法最大的不足:數(shù)據(jù)資源稀缺。 ![]() 以學(xué)術(shù)界開源的數(shù)據(jù)為例,機器翻譯研究中比較常用的有 WMT 數(shù)據(jù),WMT21 En-De 就包含4000多萬平行語料,再加上 OpenSubtitles(影視字幕)、CCMatrix(清洗自CommonCrawl)[8]等,光 En-De 語向就能積累到上億的平行語料。對于語音識別任務(wù),2021年也有研究者發(fā)布了GigaSpeech 數(shù)據(jù)集,包含1萬小時有標注的英文音頻數(shù)據(jù)。而對于端到端語音翻譯任務(wù),目前比較常用的數(shù)據(jù)集為MuST-C [9],其中 En-De 語向包含400小時的音頻以及對應(yīng)25萬句轉(zhuǎn)寫和翻譯,數(shù)據(jù)規(guī)模遠不如機器翻譯和語音識別任務(wù)。 究其原因,主要在于語音翻譯數(shù)據(jù)集構(gòu)建流程復(fù)雜、成本高。比如我們需要先找到一個數(shù)據(jù)源,能夠同時滿足:帶有公開或者已授權(quán)的音頻,對應(yīng)的轉(zhuǎn)寫和翻譯。接著需要對音頻、轉(zhuǎn)寫和翻譯進行切分,最后還要對齊以及過濾。經(jīng)過這一系列的操作,最后獲得的有效數(shù)據(jù)的規(guī)模也不會很可觀。而對于工業(yè)界而言,標注一份數(shù)千或者上萬小時的語音翻譯數(shù)據(jù)也要消耗大量的人力、財力和時間。 為此,研究者們提出了許多方法來提升端到端語音翻譯的效果,比如更有效地利用大規(guī)模的語音識別和機器翻譯的數(shù)據(jù)、引入預(yù)訓(xùn)練模型、重新設(shè)計編碼器和解碼器等,我們也在這一方向上積累了一系列工作。 04 一些探索和嘗試 我們嘗試利用語音識別和機器翻譯的數(shù)據(jù)來增強端到端語音翻譯,主要圍繞三個方面:更有效的編碼器和解碼器、訓(xùn)練技巧和策略、數(shù)據(jù)增強。 LUT (AAAI 2021):聽,理解,再翻譯 ![]() 論文地址:https://ojs./index.php/AAAI/article/view/17509 深入閱讀: https://mp.weixin.qq.com/s/D0BnXHh1w0AuCBBhv0nFBQ 文章認為,現(xiàn)有基于 Transformer 的端到端語音翻譯模型存在兩點不足:(1) 只用一個編碼器,很難同時做好音頻信號解析和語義理解;(2) 無法利用ASR轉(zhuǎn)寫的信息。因此,文章引入了兩個編碼器:聲學(xué)編碼器和語義編碼器。其中聲學(xué)編碼器負責(zé)解析音頻信號,并和轉(zhuǎn)寫的文字表示進行匹配,這里就可以用上ASR轉(zhuǎn)寫的監(jiān)督信號。而語義編碼器則接收聲學(xué)編碼器的輸出,并進行語義理解。 COSTT (AAAI 2021):同時識別聲音和翻譯 ![]() 論文地址: https://ojs./index.php/AAAI/article/view/17508 深入閱讀: https://mp.weixin.qq.com/s/Af6p1jVlkePrIZmUrjIaNw 雖然端到端語音翻譯直接接收音頻作為輸入,但語音到文本的跨模態(tài)翻譯難度會更大。另一方面,聯(lián)想到人類譯員在做交傳或同傳的時候,通常會記錄一些源語言的關(guān)鍵詞來幫助翻譯,文章便基于此,提出了在序列到序列模型的解碼過程中“連續(xù)預(yù)測”的方式,即讓端到端語音翻譯模型的解碼器先預(yù)測原音頻的轉(zhuǎn)寫結(jié)果,再繼續(xù)預(yù)測翻譯結(jié)果。這樣一來,解碼器端的自注意力機制可以使得在生成翻譯的時候“參考”到音頻的轉(zhuǎn)寫內(nèi)容,同時單獨看解碼器其實是一個雙語的語言模型,可以利用文本翻譯的中的平行語料進行預(yù)訓(xùn)練,也有效緩解了語音翻譯訓(xùn)練數(shù)據(jù)稀缺的問題。 Chimera (ACL 2021):統(tǒng)一理解語音和文本 ![]() 論文地址: https:///2021.findings-acl.195/ 深入閱讀: https://mp.weixin.qq.com/s/G_sqv9kAebm-PvIcu1hGHQ 日常生活中,我們是否會有這樣的經(jīng)歷,就是在聽一些節(jié)奏感強、有歌詞的歌的時候,工作效率會嚴重下降。認知神經(jīng)科學(xué)對此有過相關(guān)的解釋,就是聲音和文字信號傳入大腦之后會共享部分處理路徑。文章提出的 Chimera 模型就建模了這一思路,語音/文本輸入之后,會先經(jīng)過各自的聲學(xué)編碼器/文本編碼器進行編碼,然后再通過若干個公共的“記憶元”提取真正有用的語義信息,而對于這套語義信息最開始是來自音頻還是文本,模型不做區(qū)分,由此模型便可以得到一個同時建模音頻和文本的共享語義空間。此外,從文本輸入到譯文輸出這部分鏈路還可以用更多額外的文本翻譯數(shù)據(jù)進行訓(xùn)練,進一步緩解了語音翻譯語料不足的問題。 XSTNet (InterSpeech 2021): 漸進多任務(wù)學(xué)習(xí)框架 ![]() 論文地址: https://www./archive/interspeech_2021/ye21_interspeech.html 文章為了更充分地利用語音識別、文本翻譯和語音翻譯三種數(shù)據(jù),設(shè)計了一種能夠同時做這三類任務(wù)的模型。模型的編碼器支持同時輸入文本和音頻,并且它們共享整個編碼器的參數(shù),在解碼生成的時候,用生成句子的語言當(dāng)作句子開始標記(如果跟音頻語言一致,那么做的就是識別任務(wù);如果不一致,就是翻譯任務(wù))。此外,文章還提出一種漸進式的學(xué)習(xí)方式 (progressive training),就是先用文本翻譯的數(shù)據(jù)預(yù)訓(xùn)練整個網(wǎng)絡(luò),再逐步加上語音識別和語音翻譯任務(wù)一起調(diào)優(yōu)。實驗表明,這樣的模型訓(xùn)練方式會比只用語音翻譯任務(wù)去微調(diào)效果更好。 IWSLT 2021 離線語音翻譯評測系統(tǒng) ![]() 論文地址: https:///2021.iwslt-1.6 文章嘗試探索端到端系統(tǒng)的能力上限,引入了更多的語音識別數(shù)據(jù)和機器翻譯數(shù)據(jù),并結(jié)合多任務(wù)學(xué)習(xí)方法、偽標簽技術(shù)、模型集成等方法,將端到端語音翻譯的性能提高了將近8 BLEU,也逐步縮小跟級聯(lián)系統(tǒng)的效果差距。 NeurST (ACL 2021 Demo): 端到端語音翻譯工具包和實驗基準 ![]() 論文地址: https:///2021.acl-demo.7/ 項目地址: https://github.com/bytedance/neurst 文章推出了一套端到端語音翻譯工具包,基于結(jié)構(gòu)化的設(shè)計可以方便地插入和修改各種數(shù)據(jù)預(yù)處理模塊、編碼器、解碼器結(jié)構(gòu)等。并提供標準化的libri-trans、MuST-C等語音翻譯數(shù)據(jù)集的數(shù)據(jù)預(yù)處理、訓(xùn)練和推理腳本,以及實驗基準結(jié)果。 STEMM (ACL 2022): 跨模態(tài)混合訓(xùn)練緩解模態(tài)鴻溝 ![]() 論文地址: https:///2022.acl-long.486/ 深入閱讀: https://mp.weixin.qq.com/s/_XKl3fhjLLAOmUH6IfHdpg 近期的一些研究工作都在嘗試引入更多的文本翻譯數(shù)據(jù)來緩解端到端語音翻譯數(shù)據(jù)稀缺的問題,但是語音和文本之間存在著表示不一致的問題,文章稱之為模態(tài)鴻溝 (Modality Gap) ,這時模型難以從文本翻譯數(shù)據(jù)中學(xué)習(xí)到對語音翻譯有用的知識。為了更有效地利用文本翻譯數(shù)據(jù),文章提出在訓(xùn)練的時候在語音表示中隨機替換一部分為對應(yīng)的文本表示,得到混合了語音和文本表示的序列,使模型學(xué)習(xí)到語音和文本模態(tài)間共享的語義空間。同時,模型使用多任務(wù)學(xué)習(xí)的方式,讓原始音頻生成的翻譯結(jié)果和混合表示生成的結(jié)果更接近,進而提升最后解碼時候的語音翻譯質(zhì)量。 ConST (NAACL 2022):對比學(xué)習(xí)解決模態(tài)鴻溝 ![]() 論文地址: https:///abs/2205.02444 文章在XSTNet的基礎(chǔ)上,探討模態(tài)鴻溝的問題。文章認為,在多任務(wù)學(xué)習(xí)的框架下同一個句子的語音表示和文本表示在語義空間中應(yīng)該是相近的。為此,文章提出使用一個對比學(xué)習(xí)損失項來拉近相同句子的語音和文本表示,進而更加充分地利用額外的文本翻譯數(shù)據(jù)提升語音翻譯的性能。 MOSST (ACL 2022): 基于單詞切分的端到端同傳 ![]() 論文地址: https:///2022.acl-long.50/ 流式語音翻譯需要將實時的語音輸入翻譯成文本。傳統(tǒng)的端到端式語音翻譯系統(tǒng)一般把固定的輸入時長作為判斷系統(tǒng)讀寫的依據(jù),這種做法面臨著兩大問題:一方面對于長語音信息它無法保證每次讀入的語音信息是完整的,造成翻譯質(zhì)量下降;另一方面對于短語音信息它也無法提前結(jié)束讀入,造成翻譯延遲升高。為了更好地判斷流式語音翻譯的讀寫時機,文章引入了一種單調(diào)切分模塊,能夠檢測音頻流的邊界,實現(xiàn)動態(tài)讀寫。實驗發(fā)現(xiàn),新模塊在延遲和質(zhì)量兩個維度上全面超越以往的流式語音翻譯模型,同時還能夠讓模型在非流式的場景下也有不錯的表現(xiàn)。 05 結(jié)語 我們認為,端到端語音翻譯不僅比級聯(lián)系統(tǒng)復(fù)雜度低,同時效果上更具備潛力?;谖覀兊那捌诘奶剿?,我們嘗試結(jié)合數(shù)據(jù)增強、多任務(wù)學(xué)習(xí)、預(yù)訓(xùn)練等方式構(gòu)建了中-英和英-中端到端語音翻譯系統(tǒng),在日常對話翻譯上具備不錯的翻譯效果。同時,我們使用了LightSeq[10] 來提高模型推理速度,服務(wù)響應(yīng)時間比級聯(lián)系統(tǒng)快了70%以上,目前可以在“火山翻譯小程序-音頻翻譯”中體驗到。 |
|