4/25/2018 3:57:00 PM
機器翻譯是如何執行的?原理是什么?
近年來,機器翻譯有了長足的進步,這是自然語言處理與人工智能的一次重大飛躍。
所謂的機器翻譯可以看作是如下這張圖:
我們的翻譯機器就是其中帶有問號的黑箱,它的作用就是能夠將一個語言的序列(如Economic growth has slowed down in recent years)轉化成目標語言序列(如La croissance economique sest ralentie ces dernieres annees)。其中翻譯機器在正式工作之前可以利用已有的語料庫(Corpora)來進行學習和訓練。
所謂的神經網絡機器翻譯就是利用神經網絡來實現上述的黑箱翻譯機器。基于神經網絡的很多技術都是從Bengio的那篇開創性論文(一種神經網絡的語言模型)衍生出來的。它的架構如下圖所示:
其中,我們用一個神經網絡替換了上圖中的黑箱。在神經網絡中存在著大量的鏈接權重,這些權重就是我們要通過數據訓練、學習的參數。訓練好的神經網絡可以將輸入的源語言轉換為輸出的目標語言。我們要讓神經網絡學習的目標就是要能準確的翻譯。這里的準確是指機器生成的語句是比較符合我們人類的說話習慣的。這里的log p(f|e)就是指給定源語言后機器所產生的語言f的概率,我們希望這個概率對于實際的數據來說越大越好,這就是所謂的語言模型。
基于神經網絡的機器翻譯模型的一個最大的優點就在于它不需要我們用復雜的特征工程去設計其過程中的環節,也就是所謂的End2End(端到端)的模型。這種模型設計還可以避免中間環節的誤差累計。