一周論文 神經網絡機器翻譯下的字符級方法

2021-02-21 機器之心

神經網絡機器翻譯(NMT)是seq2seq模型的典型應用,從2014年提出開始,其性能就接近於傳統的基於詞組的機器翻譯方法,隨後,研究人員不斷改進seq2seq模型,包括引入注意力模型、使用外部記憶機制、使用半監督學習和修改訓練準則等方法,在短短2年時間內使得NMT的性能超過了傳統的基於詞組的機器翻譯方法。在27號谷歌宣布推出谷歌神經網絡機器翻譯系統,實現了NMT的首個商業化部署,使得NMT真正從高校實驗室走向了實際應用。本期Paperweekly的主題是神經網絡機器翻譯下的字符級方法,主要用來解決NMT中的out-of-vocabulary詞問題,分別是:

1、A Character-Level Decoder without Explicit Segmentation for Neural Machine Translation,2016

2、Achieving Open Vocabulary Neural Machine Translation with Hybrid Word-Character Models,2016

3、Character-based Neural Machine Translation,Costa-Jussa, 2016

4、Character-based Neural Machine Translation,Ling, 2016

5、Neural Machine Translation of Rare Words with Subword Units,2016


A Character-Level Decoder without Explicit Segmentation for Neural Machine Translation

作者

Junyoung Chung, Kyunghyun Cho, Yoshua Bengio

單位

Universite de Montreal

關鍵詞

Segmentation, Character-level, Bi-scale recurrent network

文章來源

ACL 2016

問題

能否在不需要分詞的前提下直接在字符級進行神經機器翻譯。

模型

在講模型之前,本文花了大量篇幅論證為何需要在不分詞的前提下進行字符級翻譯,首先作者總結了詞級翻譯的缺點。

詞級翻譯的缺點包括:

1、任何一個語言都沒有完美的分詞算法,完美的分詞算法應該能夠將任意句子劃分為lexemes和morphemes組成的序列

2、導致的問題就是在詞典中經常充斥著許多共享一個lexeme但有著不同morphology的詞,比如run,runs,ran,running可能都存在於詞典中,每個詞都對應一個詞向量,但是它們明顯共享相同的lexeme——run

3、存在unknown word問題和rare word問題,rare word問題是指某些詞典中詞在訓練集中出現次數過少,導致無法訓練得到很好的詞向量;unknown word問題是指不在詞典中的詞被標記為UNK(OOV詞)

接著作者指出使用字符集翻譯可以解決上述問題:

1、使用LSTM或GRU可以解決長時依賴問題

2、使用字符級建模可以避免許多詞態變形詞出現在詞典中

然而上述字符級方法依然需要進行分詞,然後對每個詞的字符序列進行編碼,因此引出了本文的motivation,即是否能直接在不分詞的字符序列上進行翻譯。

本文使用的模型同樣是經典的seq2seq模型,其創新點主要在decoder端,引入了一種新的網絡結構biscale RNN,來捕獲字符和詞兩個timescale上的信息。具體來說,主要分為faster層和slower層,faster層的gated激活值取決於上一步的faster和slower層的激活值,faster層要想影響slower層,則必須要是faster層處理完當前數據,並且進行重置。換句話說,slower層無法接受faster層輸入,直到faster層處理完其數據,因此比faster層要慢,而這樣的層次結構也對應字符和詞在timescale上的關係。下圖為網絡結構示意圖。

在4種語言翻譯任務上的實驗顯示完全可以在不分詞的情況下進行字符級翻譯,性能優於state-of-the-art的非神經翻譯系統

相關工作

Sennrich ACL2016提出使用BPE算法對subword建模。Kim AAAI2016中提出直接對字符進行encode,Costa-jussa ICLR2016中將該模型用在了NMT任務中。Ling ICLR2016的工作中使用Bi-RNN來編碼字符序列。以上工作基於字符級展開,但它們都依賴於知道如何將字符分為詞,即分詞。本文研究能否在不分詞的情況下進行字符級翻譯。

簡評

本文是Bengio組工作,Bi-scale RNN受啟發於該組之前提出的GF-RNN,本文創新點主要是提出了一種新的RNN結構,可以在字符和詞兩個timescales上進行處理,輸出字符序列不需要進行分詞。不足是未考慮encoder端是否也可以直接使用未分詞的字符序列,而是僅僅使用了分詞後的BPE序列。

Achieving Open Vocabulary Neural Machine Translation with Hybrid Word-Character Models作者

Minh-Thang Luong and Christopher D. Manning

單位

Stanford University

關鍵詞

OOV, hybrid word-character models, NMT

文章來源

ACL 2016

問題

機器翻譯裡面的OOV問題, 如何處理UNK

模型

提出了一種混合word-character的NMT模型.在訓練難度和複雜度不是很高的情況下,同時解決源語言和目標語言的OOV問題.

這個圖表達了模型的整體思路. 大多數情況下,模型在word-level進行translation. 當出現<unk>的時候,則會啟用character-level的模型. 對source <unk>, 由character-level模型來得到它的representation; 對target <unk> , 用character-level模型來產生word.

1、整體上採用他們組以前提出的基於global attention的encoder-decoder模型. RNN採用的是deep LSTM.

2、源語言端和目標語言端的character-level模型都是基於character的deep LSTM. 對源語言端來說, 它的character-level模型是context independent的. 隱層狀態全部初始化為0, 因此在訓練時可以預先計算mini-batch裡的每一個rare word的representation. 而對於目標語言端來說, 它的character-level模型是context dependent的.它的第一層的hidden state要根據當前context來初始化, 其它部分都初始化為0.訓練時, 在目標語言的decoder階段, 首先用word-level的decoder產生句子, 這時句子裡包含了一些<unk>. 接著對這些<unk>, 用character-level模型以batch mode來產生rare word.

3、對於目標語言端character-level模型的初始化問題, 作者提出了兩種方法來表示當前的context. 一種叫做same-path, 用預測<unk>的softmax層之前的ht來表達. 但是因為ht是用來預測<unk>的, 所以所有ht的值都會比較相似,這樣很難用來產生不同的目標rare word. 因此作者提出了第二種表達叫做separate-path, 用ht』來表達context. ht』不用預測<unk>, 是專門作為context在character-level的輸入的. 它的計算方法和ht』相同,只是用了一個不一樣的矩陣.

4、模型訓練的目標函數是cross-entropy loss, 同時考慮了word level和character level的loss.

相關工作

NMT的模型分為word-level和character-level的. 對於word-level模型,要解決OOV問題, 之前的工作提出了unk replacement(Luong et al. 2015b), 使用大字典並在softmax時進行採樣(Jean et al. 2015), 對unk進行Huffman編碼(Chitnis et al. 2015)等方法. 而對於character-level的模型, 本身可以處理OOV詞, 但是訓練難度和複雜度會增加.

簡評

本文的創新之處在於提出了混合word-character model的NMT模型. 這個混合模型結合了二者的優點, 在保證模型複雜度較低的同時,實現了很好的效果.因為加入了character, 特別適合單詞有豐富變形的語言.

Character-based Neural Machine Translation作者

Marta R. Costa-jussa and Jose A. R. Fonollosa

單位

TALP Research Center, Universitat Politecnica de Catalunya, Barcelona

關鍵詞

NMT,character-based word embeddings,CNN

文章來源

ICLR2016

問題

本文提出使用character-based word embeddings的NMT,可以在一定程度上克服機器翻譯中OOV問題。

模型

如上圖所示,這篇論文使用的基本模型架構是一個帶attention機制的seq2seq的encoder-decoder的架構,使用的神經網絡單元是GRU。encoder把源句子轉化成一個向量(雙向),使用attention的機制來捕獲context信息,decoder把context解碼成目標句子。網絡的輸入仍然使用word embedding,但是作者在獲取word embedding的時候使用的方法不同。本文是基於詞中的character來生成word embedding的,具體方法如下圖所示。

上圖中,最底層是一個character-based embedding組成的序列,對應的是每個詞中的字母。然後這個序列被送入一個由不同長度的一維卷積過濾器組成的集合中進行處理,不同的長度對應單詞中不同數量的字母(從1到7)。對於每個卷積過濾器,只取最大的值作為輸出。然後把每個卷積過濾器輸出的最大值連接起來組成一個向量。最後這個向量再通過兩層Highway layer的處理作為最終的word embeddings。這個方法的詳細信息可以參考Kim的論文Character-Aware Neural Language Models(2016)。

資源

1、本文數據集[German-English WMT data] (http://www.statmt.org/wmt15/translation-task.html) 

2、建立對比模型使用的軟體包DL4MT

相關工作

1、2003年,基於短語的統計機器翻譯模型。Statistical Phrase-Based Translation 
2、2013年,基於神經網絡的機器翻譯模型。Recurrent continuous translation models 
3、2014年,seq2seq的神經網絡模型用於機器翻譯。Sequence to sequence learning with neural networks

簡評

本文作者將基於character來產生word embedding的方法應用於機器翻譯,可以在一定程度上克服OOV的問題。同時,由於利用了單詞內部的信息,這篇論文提出的方法對於詞形變化豐富的語言的翻譯也產生了更好的效果。但是,作者只是在source side使用了上述方法,對於target side,仍然面臨詞典大小的限制。

Character-based Neural Machine Translation作者

Wang Ling, Isabel Trancoso, Chris Dyer, Alan W Black

單位

1、LF Spoken Systems Lab,Instituto Superior Tecnico Lisbon, Portugal

2、Language Technologies Institute, Carnegie Mellon University Pittsburga, PA 15213, USA

關鍵詞

NMT, Character-Based

文章來源

ICLR 2016

問題

嘗試在字符級別上應用神經機器學習方法

模型

在帶注意力機制的神經機器學習模型的前後端增加字符到詞(C2W)和詞向量到字符(V2C)的模塊。

圖中,小矩形是一個雙向LSTM,雙向LSTM的前向和後向的最終狀態以及bias之和為詞的向量表示。

這個模塊主要由三個步驟組成:

1、將字符轉換為向量表示。

2、將字符向量和之前模型產生注意力向量的a和目標詞在前向LSTM中產生的向量表示做拼接並輸入到LSTM。

3、將得到的向量輸入到softmax層得到結果。

相關工作

1、Neural machine translation by jointly learning to align and translate.

簡評

這篇文章在基於注意力機制的機器翻譯模型上增加了兩個模塊。由於是基於字符集別的模型,該模型自然可以學得一些語言中的前後綴在翻譯中的關係。此外,基於字符級別的模型在翻譯未知詞時有靈活性。可是,文中也提到,該模型為能夠準確的翻譯未知詞。並且該文也沒有明確表明該模型和其他模型相比具有哪些明顯的優勢。從實際上來說,該模型在V2C部分的訓練速度慢是一個很大的弱點,因此若僅根據文章的表述,該模型的實際應用價值應該有限。


Neural Machine Translation of Rare Words with Subword Units作者

Rico Sennrich and Barry Haddow and Alexandra Birch

單位

School of Informatics, University of Edinburgh

關鍵詞

NMT, Rare Words, Subword Units, BPE

文章來源

ACL 2016

問題

NMT中的OOV(集外詞)和罕見詞(Rare Words)問題通常用back-off 詞典的方式來解決,本文嘗試用一種更簡單有效的方式(Subword Units)來表示開放詞表。

模型

本文從命名實體、同根詞、外來語、組合詞(罕見詞有相當大比例是上述幾種)的翻譯策略中得到啟發,認為把這些罕見詞拆分為「子詞單元」(subword units)的組合,可以有效的緩解NMT的OOV和罕見詞翻譯的問題。
子詞單元的拆分策略,則是借鑑了一種數據壓縮算法:Byte Pair Encoding(BPE)(Gage,1994)算法。該算法的操作過程和示例如Figure1所示。

不同於(Chitnis and DeNero,2015)提出的霍夫曼編碼,這裡的壓縮算法不是針對於詞做變長編碼,而是對於子詞來操作。這樣,即使是訓練語料裡未見過的新詞,也可以通過子詞的拼接來生成翻譯。
本文還探討了BPE的兩種編碼方式:一種是源語言詞彙和目標語言詞彙分別編碼,另一種是雙語詞彙聯合編碼。前者的優勢是讓詞表和文本的表示更緊湊,後者則可以儘可能保證原文和譯文的子詞切分方式統一。從實驗結果來看,在音譯或簡單複製較多的情形下(比如英德)翻譯,聯合編碼的效果更佳。
實驗結果分別在WMT15英德和英俄的任務上得到1.1和1.3個BLEU值的提升。

資源

本文提出的子詞拆分算法代碼在 https://github.com/rsennrich/subword-nmt
實驗所用的NMT系統為Groundhog: github.com/sebastien-j/LV_groundhog
實驗數據來自WMT 2015

相關工作

OOV的處理一直是機器翻譯研究的重點。
基於字符的翻譯在短語SMT模型中就已被提出,並在緊密相關的語種對上驗證是成功的(Vilar et al., 2007; Tiedemann,2009; Neubig et al., 2012)。 此外還有各種形態素切分方法應用於短語模型,(Nießen and Ney,2000; Koehn and Knight, 2003; Virpioja et al.,2007; Stallard et al., 2012)。
對於NMT,也有很多基於字符或形態素的方法用於生成定長連續詞向量(Luong et al., 2013; Botha and Blunsom, 2014; Ling et al., 2015a; Kim et al., 2015)。與本文類似的一項工作 (Ling et al., 2015b)發現在基於詞的方法上沒有明顯提升。其與本文的一個區別在於,attention機制仍然在詞層級進行操作,而本文在子詞層級上。

簡評

這篇文章的創新點在於提出了一種介乎字符和單詞之間,也不同於字符n-gram的文本表示單元,並借鑑BPE壓縮算法,在詞表大小和文本長度兩個方面取得一個較為平衡的狀態。應用在非同源/近源的語言對(如英漢)是否可以有類似的效果,尚待研究。在NMT模型的優化上,也還有探討的空間。
本文的實驗評價方法值得學習,單看BLEU值並不覺得有驚豔之處,但加上CHR F3和(對所有詞、罕見詞和集外詞分別統計的)unigram F1這兩個評價指標,尤其是Figure2和3畫出來的效果,還是讓人比較信服的。

OOV詞對於翻譯性能和實用性的影響非常巨大,如何處理OOV詞並達到open vocabulary一直是NMT的主要研究方向。傳統方法基於單詞級別來處理該問題,比如使用UNK替換、擴大詞典規模等方法,往往治標不治本。因此最近一些研究者提出基於字符的NMT模型,取得了不錯的成績,字符級方法的主要優勢包括不受語言的形態變化、能預測出詞典中未出現的單詞並降低詞典大小等。值得一提的是,基於字符的模型不僅局限於NMT上,任何生成模型都面臨OOV詞問題,因此是否能夠將字符級方法用在其他NLP任務,比如閱讀理解或文本摘要上,讓我們拭目以待。以上為本期Paperweekly的主要內容,感謝EdwardHuxMygod9Jaylee1992SusieAllenCai五位同學的整理。

相關焦點

  • 重磅 谷歌翻譯整合神經網絡:機器翻譯實現顛覆性突破(附論文)
    Human and Machine Translation》介紹谷歌的神經機器翻譯系統(GNMT),當日機器之心就對該論文進行了摘要翻譯並推薦到網站(www.jiqizhixin.com)上。自那時起,機器智能的快速發展已經給我們的語音識別和圖像識別能力帶來了巨大的提升,但改進機器翻譯仍然是一個高難度的目標。今天,我們宣布發布穀歌神經機器翻譯(GNMT:Google Neural Machine Translation)系統,該系統使用了當前最先進的訓練技術,能夠實現到目前為止機器翻譯質量的最大提升。
  • 重磅 谷歌翻譯整合神經網絡:機器翻譯實現顛覆性突破,正確率最高87%(附論文)
    》介紹谷歌的神經機器翻譯系統(GNMT),以下是翻譯內容。今天,我們宣布發布穀歌神經機器翻譯(GNMT:Google Neural Machine Translation)系統,該系統使用了當前最先進的訓練技術,能夠實現到目前為止機器翻譯質量的最大提升。
  • Facebook上的機器翻譯也全面擁抱神經網絡了
    換句話說,Facebook目前開始使用卷積神經網絡(CNN)和遞歸神經網絡(RNN)去自動翻譯Facebook平臺上的內容。Facebook使用Caffe2深度學習框架來部署他們的神經機器翻譯,同時還把他們為這個項目開發的LSTM等RNN模塊作為Caffe2的組件開源出來。
  • 重磅 谷歌神經機器翻譯再突破:實現高質量多語言翻譯和zero-shot翻譯(附論文)
    the Gap between Human and Machine Translation》,介紹了谷歌的神經機器翻譯系統(GNMT),該系統實現了機器翻譯領域的重大突破,參見報導《重磅 | 谷歌翻譯整合神經網絡:機器翻譯實現顛覆性突破》。
  • 教程 | 如何為神經機器翻譯配置編碼器-解碼器模型?
    參與:Panda神經機器翻譯已經成為了當前表現最好的機器翻譯方法,這在很大程度上得益於編碼器-解碼器架構的應用。Jason Brownlee 近日發表文章對論文《Massive Exploration of Neural Machine Translation Architectures》的研究成果進行了介紹,給出了為神經機器翻譯配置編碼器-解碼器模型的方法和一些實用的建議。
  • 谷歌神經機器翻譯系統 Zero-Shot 正式上線
    在過去的十年裡,谷歌翻譯(Google Translate)從最初僅支持幾種語言發展到今天的 103 種,每天翻譯的字詞超過 1400 億個。為了做到這一點,在任意兩種語言之間,谷歌翻譯都要運行多個翻譯系統,這帶來巨大的計算成本。如今,許多領域都正在被神經網絡技術顛覆。谷歌確信他們可以利用神經網絡進一步提升翻譯質量。這要求谷歌重新思考谷歌翻譯的算法架構。
  • 谷歌神經機器翻譯系統Zero-Shot正式上線
    為了做到這一點,在任意兩種語言之間,谷歌翻譯都要運行多個翻譯系統,這帶來巨大的計算成本。如今,許多領域都正在被神經網絡技術顛覆。谷歌確信他們可以利用神經網絡進一步提升翻譯質量。這要求谷歌重新思考谷歌翻譯的算法架構。今年九月,谷歌發表聲明,基於神經機器翻譯的谷歌翻譯全新上線。(GNMT,Google Neural Machine Translation)。
  • 熱點 谷歌用神經機器系統把漢語翻譯成英語 錯誤率最高下降85%
  • 清華大學開源神經機器翻譯工具包THUMT(附資源)
    [ 導讀 ]機器翻譯是自然語言處理的重要組成部分,其目的是使用計算機自動將文本翻譯成其他語言的形式。近年來,端到端的神經機器翻譯發展迅速,已經成為機器翻譯系統的新主流。近日,清華大學自然語言處理組發布了機器翻譯工具包 THUMT,為業內人士的研究和開發工作提供了便利。
  • 論文淺嘗 - ICLR2020 | 具有通用視覺表示的神經機器翻譯
    ,當前多模態機器翻譯模型無法充分利用視覺信息。取出出現次數最多的m張圖片,這個圖片集合可以和文本輸入一起送入後續的網絡,增強翻譯的效果。由於機器翻譯任務最終需要生成的是另一種語言的文本序列,圖像只是起輔助作用,所以需要調整下兩個模態信息的權重。最終得到的H向量即可送入解碼器進行解碼。
  • 百度何中軍:機器翻譯 —— 從設想到大規模應用
    報告內容:70多年前,第一臺計算機誕生後不久,科學家就提出了利用計算機進行翻譯的設想。此後,隨著技術不斷更迭,算力大幅提升,以及網際網路帶來的數據井噴式增長,機器翻譯質量持續提高。尤其近年來神經網絡機器翻譯的出現及快速發展,使得機器翻譯水平大幅躍升,在人們的生產生活中得到了廣泛應用。
  • 專訪 搜狗+NMT+團隊:神經機器翻譯將消除跨語言溝通障礙
    近三年來,「神經網絡機器翻譯技術」成為人工智慧翻譯主流。該技術通過「端到端」的方法將翻譯平行語料進行映射,以「編碼器—注意力機制—解碼器」的結構,解決翻譯問題。自 2016 年 8 月搜狗 NMT 團隊成立至今,其自主研發的「機器翻譯·一期系統」基本搭建完成。近日,人工智慧媒體《機器之心》對搜狗 NMT 團隊進行了專訪。
  • 前沿 | 簡述脈衝神經網絡SNN:下一代神經網絡
    本文將簡要介紹這種神秘的神經網絡形式。所有對目前機器學習有所了解的人都聽說過這樣一個事實:目前的人工神經網絡是第二代神經網絡。它們通常是全連接的,接收連續的值,輸出連續的值。儘管當代神經網絡已經讓我們在很多領域中實現了突破,但它們在生物學上是不精確的,其實並不能模仿生物大腦神經元的運作機制。
  • 學界 | 谷歌的機器翻譯模型 Transformer,現在可以用來做任何事了
    機器之心編輯部去年,谷歌發布了機器學習模型 Transformer,該模型在機器翻譯及其他語言理解任務上的表現遠遠超越了以往算法。去年,谷歌發布了一種新的機器學習模型 Transformer(參見:機器翻譯新突破:谷歌實現完全基於 attention 的翻譯架構),該模型在機器翻譯及其他語言理解任務上的表現遠遠超越了現有算法。在 Transformer 之前,多數基於神經網絡的機器翻譯方法依賴於循環神經網絡(RNN),後者利用循環(即每一步的輸出饋入下一步)進行順序操作(例如,逐詞地翻譯句子)。
  • 遞歸神經網絡之父:打造無監督式通用神經網絡人工智慧
    從1991年開始,他成為深度學習神經網絡領域的開拓者。他在IDSIA和慕尼黑工業大學的研究團隊開發了一種遞歸神經網絡,並率先在正式的國際性比賽中獲勝。這些技術革新了連續手寫識別、語音識別、機器翻譯和圖片注釋,現在被谷歌、微軟、IBM、百度和其他很多公司應用。DeepMind深受他以前博士學生的影響。從2009年起,施米德休伯教授成為了歐洲科學與藝術學院的院士。
  • 【論文解讀】LGN: 基於詞典構建的中文NER圖神經網絡
    論文連結:https://www.aclweb.org/anthology/D19-1096.pdf論文代碼:https://github.com/RowitZou/LGN一.介紹Motivation基於字符的中文NER中,同一個字符可能屬於多個lexicon word,存在 overlapping ambiguity 的現象, 這會對最終標註結果造成誤導。例如圖1中, 「河流」 也可屬於 "流經" 兩個詞中,都含有同一個"流"字。
  • ICLR 2019論文解讀:量化神經網絡
    、Panda今年五月舉辦 ICLR 2019 會議共接收論文 502 篇,本文將解讀其中兩篇有關量化神經網絡的研究。id=ryM_IoAqYX深度神經網絡(DNN)已經極大推升了機器學習(ML)/人工智慧(AI)在許多不同任務中的性能,並由此帶來了許多我們日常生活中所見的成熟應用。
  • 谷歌翻譯竟預言世界末日,專家解密神經翻譯6大難題
    這段驚悚的「預言」來自谷歌翻譯。2016年,谷歌宣布機器翻譯「重大突破」——神經機器翻譯(GNMT),將翻譯質量提高到接近人類筆譯的水平。然而,它將無意義的文本翻譯成怪異的宗教預言引起了新的恐慌。這次,要怪AI是「黑盒」,還是拖出谷歌員工來背鍋?
  • 是時候放棄遞歸神經網絡了!
    我們來看:不久前,人工智慧科學家侯世達(Douglas Hofstadter) 就在 The Atlantic 上發表的一篇論文中指出,目前機器翻譯尚處於「淺薄」的階段。儘管機器翻譯存在局限性,但難以否認的是,自動翻譯軟體在許多情況下都有良好的效果,而其背後的技術在任何存在信息從一個領域流動到另一個領域的語境中都具有廣泛的應用,例如基因組學中從 RNA 到蛋白質編碼的翻譯過程。直到 2015年,序列到序列的映射(或者說翻譯)使用的主要方法都是遞歸神經網絡,特別是長短期記憶(LSTM)網絡。
  • 專訪 谷歌神經網絡翻譯系統發布後,我們和Google Brain的工程師聊了聊
    Bridging the Gap between Human and Machine Translation》介紹谷歌的神經網絡翻譯系統(GNMT)後,「機器之心」第一時間進行了詳細的解讀和報導,重磅 | 谷歌翻譯整合神經網絡:機器翻譯實現顛覆性突破(附論文)。