1
去年,谷歌發(fā)布了 Google Neural Machine Translation (GNMT),即谷歌神經(jīng)機器翻譯,一個 sequence-to-sequence (“seq2seq”) 的模型?,F(xiàn)在,它已經(jīng)用于谷歌翻譯的產(chǎn)品系統(tǒng)。
雖然消費者感受到的提升并不十分明顯,谷歌宣稱,GNMT 對翻譯質(zhì)量帶來了巨大飛躍。
但谷歌想做的顯然不止于此。其在官方博客表示:“由于外部研究人員無法獲取訓練這些模型的框架,GNMT 的影響力受到了束縛?!?/p>
如何把該技術的影響力最大化?答案只有一個——開源。
因而,谷歌于昨晚發(fā)布了 tf-seq2seq —— 基于 TensorFlow 的 seq2seq 框架。谷歌表示,它使開發(fā)者試驗 seq2seq 模型變得更方便,更容易達到一流的效果。另外,tf-seq2seq 的代碼庫很干凈并且模塊化,保留了全部的測試覆蓋,并把所有功能寫入文件。
該框架支持標準 seq2seq 模型的多種配置,比如編碼器/解碼器的深度、注意力機制(attention mechanism)、RNN 單元類型以及 beam size。這樣的多功能性,能幫助研究人員找到最優(yōu)的超參數(shù),也使它超過了其他框架。詳情請參考谷歌論文《Massive Exploration of Neural Machine Translation Architectures》。
上圖所示,是一個從中文到英文的 seq2seq 翻譯模型。每一個時間步驟,編碼器接收一個漢字以及它的上一個狀態(tài)(黑色箭頭),然后生成輸出矢量(藍色箭頭)。下一步,解碼器一個詞一個詞地生成英語翻譯。在每一個時間步驟,解碼器接收上一個字詞、上一個狀態(tài)、所有編碼器的加權輸出和,以生成下一個英語詞匯。雷鋒網(wǎng)提醒,在谷歌的執(zhí)行中,他們使用 wordpieces 來處理生僻字詞。
據(jù)雷鋒網(wǎng)了解,除了機器翻譯,tf-seq2seq 還能被應用到其他 sequence-to-sequence 任務上;即任何給定輸入順序、需要學習輸出順序的任務。這包括 machine summarization、圖像抓取、語音識別、對話建模。谷歌自承,在設計該框架時可以說是十分地仔細,才能維持這個層次的廣適性,并提供人性化的教程、預處理數(shù)據(jù)以及其他的機器翻譯功能。
谷歌在博客表示:
“我們希望,你會用 tf-seq2seq 來加速(或起步)你的深度學習研究。我們歡迎你對 GitHub 資源庫的貢獻。有一系列公開的問題需要你的幫助!”
GitHub 地址:https://github.com/google/seq2seq
GitHub 資源庫:https://google.github.io/seq2seq/nmt/
via googleblog,雷鋒網(wǎng)編譯
相關文章:
Google Brain:NMT訓練成本太高?用大規(guī)模神經(jīng)機器翻譯架構分析給出解決方案
漲姿勢!如何評價Google神經(jīng)機器翻譯(GNMT)系統(tǒng)?
雷峰網(wǎng)版權文章,未經(jīng)授權禁止轉載。詳情見轉載須知。