『深度應用』NLP機器翻譯深度學習實戰課程·零(基礎概念)

0.前言

深度學習用的有一年多了,最近開始NLP天然處理方面的研發。恰好趁着這個機會寫一系列NLP機器翻譯深度學習實戰課程。html

本系列課程將從原理講解與數據處理深刻到如何動手實踐與應用部署,將包括如下內容:(更新ing)網絡

  • NLP機器翻譯深度學習實戰課程·零(基礎概念)
  • NLP機器翻譯深度學習實戰課程·壹(RNN base)
  • NLP機器翻譯深度學習實戰課程·貳(RNN+Attention base)
  • NLP機器翻譯深度學習實戰課程·叄(CNN base)
  • NLP機器翻譯深度學習實戰課程·肆(Self-Attention base)
  • NLP機器翻譯深度學習實戰課程·伍(應用部署)

本系列教程參考博客:https://me.csdn.net/chinatelecom08架構

 

1.NLP機器翻譯發展示狀

1.1 機器翻譯現狀

1.1.1 什麼是機器翻譯?框架

什麼是機器翻譯?
說白了就是經過計算機將一種語言轉化成其餘語言,就是機器翻譯。
這對咱們同窗們而言都很熟悉了,那麼機器翻譯背後的理論支持究竟是什麼呢?並且幾十年前的機器翻譯和如今咱們每天口中說的神經網絡到底有什麼區別呢?
首先咱們從機器翻譯歷史發展的角度來對它進行大體的講述一下,機器翻譯的歷史大體經歷了三個階段:學習

  • 基於規則的機器翻譯(70年代)
  • 基於統計的機器翻譯(1990年)
  • 基於神經網絡的機器翻譯(2014年)

基於規則的機器翻譯(70年代)優化

基於規則的機器翻譯的想法第一次出現是在70年代。科學家根據對翻譯者工做的觀察,試圖驅使計算機一樣進行翻譯行爲。這些翻譯系統的組成部分包括:編碼

雙語詞典(俄語->英文)
針對每種語言制定一套語言規則(例如,名詞以特定的後綴-heit、-keit、-ung等結尾)spa

如此而已。若是有必要,系統還能夠補充各類技巧性的規則,如名字、拼寫糾正、以及音譯詞等。
感興趣的同窗能夠去網上仔細查看一下相關的資料,這裏就貼上一個大體的流程圖,來表示基於規則的機器翻譯的實現流程。
在這裏插入圖片描述
根據規則調整句子結構,而後去字典中查找對應的詞片斷的意思,從新組成新的句子,最後利用一些方法來對生成的句子進行語法調整。
.net

基於統計的機器翻譯(1990年)翻譯

在1990年早期,IBM研究中心的一臺機器翻譯系統首次問世。它並不瞭解總體的規則和語言學,而是分析兩種語言中的類似文本,並試圖理解其中的模式。
統計模型的思路是把翻譯當成機率問題。原則上是須要利用平行語料,而後逐字進行統計。例如,機器雖然不知道「知識」的英文是什麼,可是在大多數的語料統計後,會發現只要有知識出現的句子,對應的英文例句就會出現「Knowledge」這個字。如此一來,即便不用人工維護詞典與文法規則,也能讓機器理解單詞的意思。
在這裏插入圖片描述
這個概念並不新,由於最先Warren Weave就提出過相似的概念,只不過那時並無足夠的平行語料以及限於當時計算機的能力太弱,所以沒有付諸實行。現代的統計機器翻譯要從哪裏去找來「現代的羅賽塔石碑」呢?最主要的來源實際上是聯合國,由於聯合國的決議以及公告都會有各個會員國的語言版本,但除此以外,要本身製做平行語料,以如今人工翻譯的成本換算一下就會知道這成本高到驚人。
如今咱們本身的系統使用的2000萬語料有一大部分是來自聯合國的平行語料。
https://cms.unov.org/UNCorpus/zh#format
在14年以前,你們所熟悉的Google翻譯都是基於統計機器翻譯。聽到這,應該你們就清楚統計翻譯模型是沒法成就通天塔大業的。在各位的印像中,機器翻譯還只停留在「堪用」而非是「有用」的程度。

基於神經網絡的機器翻譯(2014年)

神經網絡並非新東西,事實上神經網絡發明已經距今80多年了,可是自從2006年Geoffrey Hinton(深度學習三尊大神之首)改善了神經網絡優化過於緩慢的致命缺點後,深度學習就不斷地伴隨各類奇蹟似的成果頻繁出如今咱們的生活中。在2015年,機器首次實現圖像識別超越人類;2016年,Alpha Go打敗世界棋王;2017年,語音識別超過人類速記員;2018年,機器英文閱讀理解首次超越人類。固然機器翻譯這個領域也由於有了深度學習這個超級肥料而開始枝繁葉茂。

Yoshua Bengio在2014年的論文中,首次奠基了深度學習技術用於機器翻譯的基本架構。他主要是使用基於序列的遞歸神經網絡(RNN),讓機器能夠自動捕捉句子間的單詞特徵,進而可以自動書寫爲另外一種語言的翻譯結果。此文一出,Google如獲至寶。很快地,在Google供應充足火藥以及大神的加持之下,Google於2016年正式宣佈將全部統計機器翻譯下架,神經網絡機器翻譯上位,成爲現代機器翻譯的絕對主流。

簡單介紹一下基於神經網絡的機器翻譯的通用框架:編碼器-解碼器結構。
用通俗的話來說,編碼器是將信息壓縮的過程,解碼器就是將信息解碼回人可以理解的過程,這種過程信息的損失越少越好。
結構以下圖所示:

圖1 gnmt機器翻譯框架
在這裏插入圖片描述
這個是16年穀歌發表的gnmt框架的結構,使用lstm+attention的機制實現,感興趣的同窗能夠去查看論文或者百度相關的博客。

圖2 transformer機器翻譯框架
在這裏插入圖片描述

Transformer是谷歌在17年的一篇論文https://arxiv.org/pdf/1706.03762.pdf提出的具備開創性的架構,這個結構不一樣於以前全部的機器翻譯網絡結構,僅僅依靠模型的優點,就取得了state of the art的結果,優於以往任何方法的機器翻譯結果。

1.1.2 相關論文

若是想更深刻的瞭解其中的原理,仍是須要閱讀一些理論性的文章。若是僅僅想搭建這樣一個系統,按照下一篇實踐的內容,一步步的進行操做,你就能夠擁有搭建基於世界上最早進模型的機器翻譯系統的能力了。

這裏整理了一些機器翻譯中作須要的理論性介紹,包括如下一些內容:
詞嵌入向量簡單介紹:https://blog.csdn.net/u012052268/article/details/77170517
機器翻譯相關論文:
Sequence to Sequence Learning with Neural Networks(2014)
Attention機制的提出(2016)
谷歌基於attention的gnmt(2016)
自注意力機制:transformer(2017)

1.1.3 相關會議

機器翻譯最著名的頂級會議也是比賽就是WMT,世界上全部著名的具備機器翻譯引擎技術的巨頭公司都在該比賽中取得過名次,該比賽從17年開始,全部取得前幾名的隊伍都是經過搭建transformer模型來進行優化迭代的。

其中一些隊伍提出的方法和技巧,也被各個具備機器翻譯技術的公司蒐集整理,嘗試在本身的翻譯引擎中去。

除此以外,國內外一些重要比賽解決方案,也是咱們要須要參考的一些點。
http://www.statmt.org/wmt18/

原文出處:https://www.cnblogs.com/xiaosongshine/p/11356047.html

相關文章
相關標籤/搜索