陳玉娜,史曉東
(廈門大學信息學院,福建廈門361005)
(?通信作者電子郵箱mandel@xmu.edu.cn)
近年來,隨著自動語音識別(Automatic Speech Recognition,ASR)[1-3]和 神 經 機 器 翻 譯(Neural Machine Translation,NMT)[4-6]技術的快速發展,機器同傳(Machine Simultaneous Interpretation,MSI)越來越受到人們的重視。微軟、騰訊、搜狗、科大訊飛等公司為多語種會議推出MSI系統,以方便使用不同母語的參與者從演講者處獲取信息。
目前主流的MSI系統先將源語言語音用ASR系統進行識別,然后將輸出結果直接輸入到NMT 中,最后得到目標語言文本。然而在實際應用中,由于演講過程中的停頓、重新思考以及話語重組等現象會影響ASR 系統的性能,ASR 系統可能產生語義不完整的句子和不流暢的句子。同時目前的ASR系統并不完善,可能會輸出包含錯字的句子。這些問題都會影響NMT的性能,進而導致MSI輸出讓人難以閱讀和理解。
MSI系統的NMT收到的文本中包含的錯誤大體可以分為語義不完整、不流利及語音識別錯誤三大類問題,其中語義不完整問題可歸結為標點恢復任務,即將ASR 系統生成的幾個文本片段連接,然后恢復這段話的標點。標點恢復方法一般分為三類:基于聲學特征的、基于詞匯特征的及兩者結合的。Levy 等[7]采用基于聲學特征的方法,利用音強、暫停時間等特征預測標點符號。Cho等[8-9]使用序列到序列神經網絡處理基于詞匯特征的標點恢復,將不含標點文本翻譯為含標點的文本。雖然該方法取得一定成效,但是該方法比較復雜,需要先將文本進行編碼再進行解碼。Che 等[10]采用基于卷積神經網絡(Convolutional Neural Network,CNN)的序列標注模型直接預測標點符號。同時基于循環神經網絡(Recurrent Neural Network,RNN)的序列標注模型也被應用到標點預測任務中:例如Tikl 等[11]使用了長短期記憶(Long Short Term Memory,LSTM)網絡;Tikl 等[12]又使用了基于注意力的雙向循環神經網絡;李雅昆等[13]使用了雙向LSTM 同時訓練中文分詞和標點恢復任務。雖然上述方法都取得了良好效果,但是由于卷積網絡更注重局部信息,循環神經網絡存在長距離依賴問題,而標點符號與上下文聯系緊密,因此這些方法的預測效果都有待進一步提高。Tikl等[12]采用了基于兩個特征結合的方法進行標點符號預測,該方法可以綜合聲學特征和文本特征進行標點預測,從而提升正確率,但是同時擁有這兩個特征的訓練語料非常匱乏。對于不流利問題,Cho 等[14-16]用帶有BIO(Begin,Inside,Outside)標簽的序列標注方法,并分別使用條件隨機場、基于RNN的模型和基于CNN的模型進行處理。在ASR 識別錯誤方面,Sarma 等[17]構建了基于上下文的ASR 檢測器,并使用共現和基于語音的分析來糾正錯誤,該方法會產生累積錯誤。Guo等[18-19]提出一種基于注意力機制的編-解碼器循環神經網絡直接糾正錯誤的詞。
為了更好地研究上述問題在MSI 中的影響,本文在實際的MSI 數據上對比分析了語義不完整、不流利和語音識別錯誤這三個問題(見第1 章)。實驗結果表明,語義不完整問題是影響MSI 性能最普遍的問題,約占MSI 總錯誤的44.58%。因此,本文將語義不完整問題作為主要研究內容。首先緩存由ASR 系統生成的幾個片段,并將它們組合成一個詞串;然后使用基于BERT(Bidirectional Encoder Representation from Transformers)[20]的序列標注模型恢復該詞串的標點符號,并且使用了Focal Loss[21]作為訓練過程中的損失函數來緩解類別不平衡問題,即無標點樣本比有標點樣本多的問題;最后將標點恢復后的詞串輸入NMT中。
本文的主要工作為:
1)對真實場景下的MSI 數據進行分析,評估并論述了MSI 系統所存在的語義不完整、不流利和語音識別錯誤三類問題及這些問題對MSI 系統性能的影響,其中語義不完整問題是最迫切需要解決的問題。
2)提出了基于BERT 和Focal Loss 的標點恢復方法。通過BERT 學習較強的上下文特征,使用Focal Loss 緩解標點恢復任務的類別不平衡問題,提高了模型在標點恢復任務中的準確性。
3)本文提出的標點恢復模型緩解了MSI系統中的語義不完整問題,比使用基于注意力機制的雙向循環神經網絡標點恢復模型的MSI,該模型的翻譯質量也有顯著提升。
為了提高MSI 流水線系統的性能,本文對從網頁抓取的中文音頻片段的ASR 輸出結果進行分析,部分示例如圖1 所示。主要研究將ASR 的輸出直接輸入到NMT 過程所存在的三類問題,即語義不完整、不流利和語音識別錯誤。該輸出結果總共包含1 500條數據,數據大小為441 KB。

圖1 包含語義不完整、不流利和ASR錯誤問題的例子及其對應的機器翻譯Fig. 1 Examples containing problems of semantic incompleteness,disfluency and ASR errors and their corresponding machine translations
由于標點符號無發聲因素,通常ASR 系統對聲音識別只輸出文字,不輸出標點符號,因此一般沒有對輸出內容進行句子分割,或者只根據靜音段進行簡要的分割(例如說話者停頓時),ASR 輸出有的是很短的片段,有的是很長一串文字。這些文本通常未按語義分割成句,導致了明顯的語義不完整問題。如圖1 中的例1 原本屬于一句話,被分割成了兩個片段,例2 的幾個句子則被合成一個片段。由于機器翻譯的訓練數據來自于完整的且含有標點符號的句子,因此該問題會影響機器翻譯的質量。從圖1 中可以看到,具有語義不完整問題的例子的翻譯結果不僅不能表達完整的意思,而且還存在錯誤(用下劃線標出)。該問題存在于大部分例子中,約占MSI錯誤總數的44.58%,是影響MSI流水線系統性能的最普遍的問題。
通常情況下,由于演講者的重復、猶豫和語言重組,其演講內容會包含重復詞、填充詞和話語標記語,因此ASR 系統可能產生不流利的句子,如圖1的例3所示。由于機器翻譯的訓練數據來自流利的書面文本,因此訓練數據與ASR 輸出之間的不匹配可能導致翻譯質量下降。不流利問題約占總MSI錯誤的22.21%。
如圖1中的例4所示,ASR輸出中的一些單詞會被ASR系統識別為發音相似的其他單詞,該錯誤會被傳輸到下游NMT中,產生累積錯誤。從例4 可以看出,雖然有些識別出來的單詞是錯誤的,但在一定程度上可以根據字的發音來猜測其原義。然而,翻譯后的意義不僅被曲解,而且令讀者難以理解。語音識別錯誤問題約占33.20%,ASR 輸出的字錯誤率為4.34%。
從上述的分析可以看出,語義不完整問題是影響MSI 流水線系統性能最普遍的問題,本文主要解決句子中所存在的語義不完整問題。在ASR 和NMT 之間引入標點恢復層,為NMT提供完整的句子單元以提高MSI流水線系統的性能。整體框架如圖2所示。

圖2 機器同傳流水線系統整體框架Fig. 2 Overall framework of MSI pipeline system
本文在標點恢復層使用基于BERT 的序列標注模型,并使用Focal Loss 來緩解模型訓練過程所存在的類別不平衡問題。
本文將標點恢復任務轉化成序列標注任務,只考慮最重要和最常見的標點符號類型:逗號、句號、問號,因此共有四種類別:“,”類、“。”類、“?”類和“O”類(其中“O”表示無標點符號)。在數據處理階段,首先將訓練數據的感嘆號和分號當作句號處理,冒號則映射到逗號,并將其他標點符號移除。然后將由訓練數據轉化成的不含標點的文字作為模型輸入,令每個文字其后所跟的標點符號作為模型輸出。例如對于輸入句子:
“是的,他來了。”
轉化后的模型輸入為:
“是的他來了”
模型輸出為:
“O,O O。”
BERT 是一種基于自注意力機制(self-attention)的預訓練語言模型,使用多層Transformer編碼器框架,并利用屏蔽語言模型(Masked Language Model,MLM)任務(屏蔽一些詞讓BERT 進行預測)實現深層雙向,利用下一句預測(Next Sentence Prediction,NSP)任務學習句子間關系,具有較強的表達能力。

圖3 Transformer編碼器[6]Fig. 3 Encoder of Transformer[6]
BERT包含多層Transformer編碼器組件,如圖3[6]所示,每層由多頭自注意力層和前饋網絡全連接層組成。Transformer編碼器先將詞轉化為詞嵌入,并加入相對位置信息,然后輸入多頭自注意力層。自注意力機制可以為:

其中:Q代表查詢;K-V是文本向量鍵值對;dk表示維度。該過程先將查詢和每個key 進行相似度計算從而得到權重,再使用softmax 函數對權重進行歸一化;最后將權重和相應的鍵值value進行加權求和。多頭自注意力機制表示為:

循環神經網絡被應用于序列標注任務與標點恢復任務中,但該網絡存在長距離依賴問題,即在訓練過程中隨著序列長度的增加會產生梯度消失,不能保存有效信息的問題。為了解決這一問題,本文采用自注意力網絡。自注意力網絡能夠對全局信息進行有效處理,詞間距離縮小為1,更容易獲取文本內部依賴關系,表現出比RNN 更強的表達能力與效果。基于此,本文提出使用基于BERT 的序列標注模型來解決標點恢復任務,該模型由BERT和Softmax層組成,如圖4所示。

圖4 基于BERT的標點恢復模型Fig. 4 BERT-based model of punctuation recovery
下面給出該標點恢復模型的總體描述。將輸入序列表示為X = x1,x2,…,xT,其中:xt代表第t個詞的one-hot表示;T 代表輸入序列的長度。對于給定的輸入序列X,BERT 首先將其轉化成詞嵌入,并加入位置嵌入和分割嵌入,然后再進行特征抽取,表示為H = h1,h2,…,hT:

其中:ht表示第t個詞的特征抽取結果。最后將H輸入softmax層,并輸出標點預測概率,第t個詞標點預測概率分布為:

其中:Wo和bo為softmax層的參數。
在深度神經網絡訓練任務中,一般使用交叉熵作為模型訓練的損失函數,但是當樣本不平衡時,就導致神經網絡的訓練容易傾向于樣本數量多的類別或者傾向于易分的樣本,從而使得神經網絡學習不到更多有用的信息。在標點恢復任務中,由于無標點(“O”)樣本遠多于其他標點樣本,所以模型在訓練時更傾向于輸出無標點類別,網絡學習不到足夠的標點特征,從而降低了有標點類別的查全率。為了解決該問題,本文采用在交叉熵上改進的Focal Loss[21]作為模型的損失函數,它可以在訓練過程中平衡類別,并增加難分樣本的相對損失。由于它是在二分類的基礎上進行改進,因此本文將其擴展為多分類。下面給出Focal Loss的更具體的描述。
二分類的交叉熵為:

因為類別不平衡,Lin等[21]為類別1引入了一個系數α,類別0為1- α。改進的交叉熵公式可以表示為:

概率越高,說明樣本越容易分類。為了可以平衡類別并且區分難易樣本,因此Lin 等[21]為交叉熵增加了一個調制系數(1-來降低簡單樣本的關注度,并增加難分樣本的關注度。它表示為:

最后改進的交叉熵公式Focal Loss表示為:

由于本文分類任務不是二分類,因此將其擴展成多分類,表示為:

其中:n代表類別數;αi代表第i個標簽的可調因子;表第i個標簽的預測概率;yi代表真實標簽。
本章首先評估本文標點恢復模型在中文和英文數據集的準確性;然后將該模型集成到機器同傳中,以展示本文標點恢復模型對英-德和漢-英同傳翻譯任務的影響。
3.1.1 訓練細節和數據集
本文選擇BERT-base 模型,它包含12 層Transformer 編碼器組塊,768個隱藏單元,12個自注意頭和110 MB參數。訓練時,將模型的批大小設置為32,英語端學習率為5× 10-5,訓練輪數為5;中文端學習率為3× 10-5,訓練輪數為3。對于Focal Loss,英語端將所有類的α 值設置為1.0,γ 值設置為1.5。中文端將逗號、句號和問號類的α值設置為0.2,將其他類的α 值設置為0.1,γ 值設置為0.5。所有超參數都在開發集上調優。英語數據集來自國際口語機器翻譯評測比賽IWSLT (International Workshop on Spoken Language Translation),其數據主要來源于TED 演講語料。本文選擇IWSLT2012 機器翻譯訓練數據作為訓練集和開發集,數據大小分別為12.8 MB 和1.8 MB。IWSLT2011人工轉錄集和ASR輸出測試集用于測試,數據大小分別為78.1 KB 和76.9 KB。對于中文數據集,本文將網上爬取的中文新聞語料進行噪聲過濾后作為訓練集,數據大小為11.3 MB;開發集和測試集為從網頁抓取的中文音頻片段的ASR 輸出,開發集數據大小為507 KB,測試集數據大小為441 KB。
3.1.2 實驗結果
標點恢復預測效果使用查全率R(Recall)、查準率P(Precision)和F1 值衡量。表1 是不同模型在英文人工轉錄集(Ref.)及ASR輸出(ASR)測試集的標點恢復結果,表2是不同模型在中文ASR 輸出測試集的標點恢復結果。顯然,本文模型在英漢數據集中都顯著優于使用基于注意力機制及預訓練詞向量的雙向循環神經網絡模型(T-BRNN-pre)[12]。

表1 英文標點恢復效果對比 單位:%Tab. 1 Comparison of English punctuation recovery performance unit:%

表2 中文標點恢復效果對比 單位:%Tab. 2 Comparison of Chinese punctuation recovery performance unit:%
在英文測試集中,與T-BRNN-pre 相比,總體F1 值在英文人工轉錄集上提高了14.2個百分點,在英文ASR 輸出上提高了5.2個百分點。在英文人工轉錄集中,相對于T-BRNN-pre,本文模型在所有標點符號的查準率、查全率都顯著提升。在英文ASR 輸出中,逗號以及問號在提高查全率的同時,也降低了一定的查準率,但總體F1值都是提升的。
在中文測試集中,與T-BRNN-pre 相比,總體F1 值在中文ASR 輸出上提高了9.9 個百分點。句號和逗號相對于T-BRNN-pre,查準率和查全率都顯著提升,但問號的查準率有所降低。
在英文人工轉錄集中,本文模型在所有標點符號上查準率、查全率都顯著提升,但是在英文ASR 輸出及中文ASR 輸出中,逗號或者問號的查準率相對于T-BRNN-pre模型有所降低,本文認為該問題是受訓練集與測試集數據域不匹配的影響。在訓練時,用于英文和中文標點恢復模型的訓練語料是符合正常語法規范的文本;而測試時,英文ASR 輸出及中文ASR 輸出則是包含不流利及語音識別錯誤等問題的文本;同時因為本文模型在正常文本上擬合得更好,因此本文模型的查準率相對于T-BRNN-pre模型受到干擾的影響更大。
從實驗結果也可以看出,在英文人工轉錄集、英文ASR輸出及中文ASR輸出中,使用Focal Loss雖然使總體查準率降低,但是由于總體查全率相對提升更多,因此總體F1 值也有所提升。由此看來Focal Loss可以提升標點恢復模型效果。
本節將上述訓練的標點恢復模型應用到機器同傳中。首先將ASR 輸出用提出的標點恢復模型進行標點恢復,再將標點恢復后的ASR 輸出輸入機器翻譯中。本文使用的機器翻譯是線上系統,該系統基于Transformer架構,編碼器和解碼器各包含6 層,隱藏維度為1 024,自注意力頭個數為16。本文使用BLEU[22]作為機器同傳結果的評價指標。
對于英語-德語翻譯,使用英-德IWSLT2015 的口語翻譯(Spoken Language Translation,SLT)任 務 的 測 試 集:IWSLT2015 人工轉錄集和ASR 輸出,數據大小分別為97.6 KB 和109 KB。對于漢英翻譯,測試集與上文用于中文標點恢復模型的測試集相同,但刪除了一些包含不流利和語音識別錯誤的句子,數據大小為78.5 KB。
表3 為英-德和漢-英的實驗結果。第1~4 行表示機器翻譯的輸入來自ASR 輸出,第5 行表示來自人工轉錄文本。BasePunc 的標點符號由ASR 系統提供,作為實驗的基線;T-BRNN-pre 表示標點符號來自使用基于注意力機制的雙向循環神經網絡模型;BERT-FL 表示標點符號來自基于BERT和Focal Loss模型;GoldenPunc的標點符號是人工標注的。

表3 英-德和漢-英翻譯效果Tab. 3 Translation performance on English-German and Chinese-English
從英-德的同傳翻譯結果可以看到,當輸入的單詞和標點符號都是人工標注時,翻譯質量為36.86 BLEU,即為上限。對ASR 輸出使用本文模型進行標點恢復:與ASR 系統提供的標點符號基線相比,可以提高8.19 BLEU;與T-BRNN-pre 模型預測的標點符號相比,可以提高2.28 BLEU。結果表明,本文提出的模型可以顯著提高英-德的翻譯質量。
從漢-英的同傳翻譯結果可以觀察到,當將本文模型應用于中文ASR 輸出時,與ASR 系統提供的標點符號相比BLEU提高了4.24,與T-BRNN-pre模型預測的標點符號相比可以提高3.66 BLEU。由此看來提出模型可以顯著提高漢-英的翻譯質量。為了直接展示模型對翻譯性能的影響,在圖5 展示了從測試集中采樣的一些翻譯示例。顯然,引入了標點恢復模型的MSI 系統的翻譯不僅傳達了完整和正確的信息,而且更加流暢,可讀性也更強。此外,本文還進行了人工評估,以驗證提出的標點符號恢復模型對機器同傳的影響。本文在測試集中隨機選擇200 條數據進行人工翻譯評價;得分范圍為1~10(1 是最差,10 是最好)。人工評估結果無標點恢復為7.62分,使用本文標點恢復模型分數為8.37分,可以看出,引入本文的標點模型使得MSI系統比基線有更好的得分。

圖5 標點恢復前和后的ASR輸出的翻譯Fig. 5 Translation of ASR outputs before and after punctuation recovery
本文提出了一種基于BERT 和Focal Loss 的標點恢復模型用于MSI 流水線系統中。該模型既能利用BERT 有效提取句子的全局特征,又可以利用Focal Loss緩解標點任務的類別不平衡問題。實驗結果表明,本文提出的標點恢復模型可以顯著提升MSI 機器譯文質量,且優于使用基于注意力機制的循環神經網絡標點恢復模型的MSI流水線系統。
在未來的工作中會集中解決ASR 輸出中的不流利和語音識別錯誤問題以提高MSI的總體性能。