Machine Translation/zh
| Article | |
|---|---|
| Topic area | Natural Language Processing |
| Prerequisites | Transformer, Cross-Entropy Loss |
概述
機器翻譯是將文本或語音從一種自然語言自動轉換為另一種自然語言並保留其含義的任務。它是計算語言學最古老的應用之一,實際嘗試可以追溯到 20 世紀 50 年代,並且仍然是自然語言技術在經濟上最重要的應用之一,為多語種網頁搜索、實時消息、文檔本地化和無障礙工具提供支撐。現代系統將該問題表述為條件序列生成:給定一個源句,輸出一個在參數化模型下使學習到的概率最大化的目標語言句子。
該領域經歷了三個寬泛的範式。20 世紀 70 至 80 年代的基於規則的系統依賴於人工構建的詞典和轉換規則。從 20 世紀 90 年代末到 21 世紀 10 年代初占主導地位的統計機器翻譯,從平行語料中學習短語級翻譯表和重排序模型。神經機器翻譯是當前範式,它使用單個神經網絡(通常是基於 Transformer 的編碼器-解碼器)端到端地建模從源語言到目標語言的條件分布。每一次轉變與其說源於某項單一的技術突破,不如說源於更優質的數據、更多的算力以及諸如 BLEU Score 等使進展可衡量的指標的匯聚,而這些因素使得進展得以量化。
問題表述
給定源詞表上的一個源序列 $ x = (x_1, \ldots, x_S) $ 與目標詞表上的一個目標序列 $ y = (y_1, \ldots, y_T) $,機器翻譯尋求如下條件分布
$ {\displaystyle p(y \mid x) = \prod_{t=1}^{T} p(y_t \mid y_{<t}, x).} $
該分解為從左到右的自回歸形式;每個詞元都根據所有源詞元和所有先前已生成的目標詞元進行預測。訓練目標通常是在教師強制(teacher forcing)下參考譯文的負對數似然,
$ {\displaystyle \mathcal{L}(\theta) = -\sum_{(x, y) \in \mathcal{D}} \sum_{t=1}^{T} \log p_\theta(y_t \mid y_{<t}, x),} $
也即按位置應用的Cross-Entropy Loss。推理時用模型自身先前的輸出替代參考前綴 $ y_{<t} $,從而在訓練與解碼之間產生了曝光失配,這促使了一系列長期的修複方案,包括預定採樣、最小風險訓練,以及以翻譯質量為獎勵的強化學習微調。
統計機器翻譯
統計機器翻譯通過噪聲信道模型將 $ p(y \mid x) $ 分解為翻譯模型 $ p(x \mid y) $ 與目標側語言模型 $ p(y) $,然後選擇 $ \arg\max_y p(x \mid y)\, p(y) $。詞級對齊模型(如 IBM 模型 1 至 5)使用期望最大化從句對齊語料中估計哪些源詞生成哪些目標詞。21 世紀 00 年代的主力——基於短語的統計機器翻譯,將對齊推廣到連續短語對,並通過對數線性判別模型加入重排序和長度懲罰項。層次化與基於句法的擴展則嘗試用同步語法捕捉長程重排序。這些系統產生了首批可部署的網頁翻譯服務,並設立了神經系統最終超越的 BLEU 基線。
神經機器翻譯
早期的神經系統,從 2014 年的編碼器-解碼器循環架構開始,將源語句編碼成定長向量,並使用Long Short-Term Memory網絡解碼出目標序列。定長瓶頸限制了對長句的翻譯質量,加性注意力機制對此進行了緩解,使解碼器在每一步都能關注編碼器各狀態的加權和。2017 年提出的Transformer用堆疊的自注意力與Cross-Attention層完全取代了循環結構,並迅速成為翻譯以及大多數其他序列任務的標準架構。
現代翻譯用的 Transformer 是編碼器-解碼器結構。編碼器對源詞元的嵌入施加多頭自注意力和前饋子層;解碼器在目標前綴上施加掩碼自注意力,在編碼器輸出上施加交叉注意力,並附加一個前饋子層;兩套堆棧都使用殘差連接和層歸一化。輸入是由Byte-Pair Encoding或一元語言模型分詞生成的子詞單元,這能保持詞表較小,並規避形態豐富語言上的開放詞表問題。
訓練與推理
訓練數據由平行語料——兩種語言的句子對——組成,並通過回譯用單語數據加以補充:一個目標到源的模型從真實的目標語文本生成合成的源語句子。常用技巧包括標籤平滑、學習率預熱後接逆平方根衰減,以及混合精度優化。梯度通過隨時間Backpropagation在兩套堆棧中流經整個編碼器-解碼器。
推理使用近似搜索,因為對目標序列求精確的 argmax 是不可行的。帶有長度歸一化項、束寬為 4 到 8 的束搜索是默認方法;不過近期工作表明,使用低溫度過濾器的祖先採樣可以在無參考指標下產出更具多樣性而精度相當的譯文。解碼速度往往是生產環境中的瓶頸,由此產生了一次性並行輸出整段目標的非自回歸變體、從大型教師模型到較小學生模型的Knowledge Distillation以及對解碼器權重的量化等做法。
多語種與零樣本翻譯
通過在源句前添加目標語言標記,可以訓練一個模型在多對語言之間進行翻譯。這類多語種系統在各語言間攤銷編碼器容量,並且常常通過來自高資源對的正向遷移來改進低資源對的翻譯質量。引人注目的是,它們往往能在從未在訓練數據中共現過的語言對之間產生合理的譯文,這一現象被稱為零樣本翻譯。代價是腳本或句法差異很大的語言之間的干擾,表現為單語基線不會出現的系統性錯誤。
評估
翻譯質量難以衡量,因為對任意給定的句子,可接受的譯文有很多。BLEU Score 針對一份或多份參考譯文計算修正後的 n 元組精確率,儘管已有充分的文獻記錄其弱點,它仍是被報告最多的頭條數字。更新的基於參考的指標如 chrF、COMET 和 BLEURT 與人工判斷的相關性更好,尤其是對於高質量系統而言,BLEU 上的小差異並不可靠。無參考指標通過質量估計模型把候選譯文與源語對比,在生產環境中越來越多地用於標記低置信度輸出。沿充分性和流暢性維度進行的人工評估,或通過直接評估,仍是系統比較的黃金標準,並且是諸如 Conference on Machine Translation 等大型共享任務所要求的。
局限性與活躍研究
即便是當前最強的系統也會犯系統性錯誤。幻覺——與源語無關的流暢目標句——在領域漂移或異常標點下會出現。當源端代詞模糊時,性別和其他社會偏見會被放大。文檔級一致性較差,因為大多數系統逐句翻譯,丟失了指代和風格上下文。低資源和形態豐富的語言仍然大幅落後於英法或英德組合。活躍的研究方向包括文檔級與篇章感知翻譯、與檢索集成以錨定生僻名稱和術語、把翻譯作為眾多能力之一來執行的指令微調大型語言模型,以及輸入模態本身就不是文本的語音到語音和手語翻譯。
參考文獻
- ↑ Template:Cite arxiv
- ↑ Template:Cite arxiv
- ↑ Koehn, P. Statistical Machine Translation. Cambridge University Press, 2010.
- ↑ Brown, P. F. et al. The Mathematics of Statistical Machine Translation: Parameter Estimation. Computational Linguistics, 1993.
- ↑ Papineni, K. et al. BLEU: a Method for Automatic Evaluation of Machine Translation. ACL, 2002.
- ↑ Template:Cite arxiv
- ↑ Template:Cite arxiv