機器翻譯,英文為Machine Translation,又稱為自動翻譯,就是通過計算機,把一種自然語言(如中文)變成另外一種自然語言(如英語),這樣一個轉換的過程。
通過機器進行翻譯的設想很早就有,而直到世界上第一臺電子計算機ENIAC誕生,這一設想才成為可能。後來到了1954年,IBM公司協同美國喬治敦大學,通過IBM-701計算機首次完成英俄機器翻譯試驗,拉開了機器翻譯的序幕。我國也在1956年就開始將機器翻譯研究列入全國科學工作發展規劃。不過後續的發展並不順利,機器翻譯遭遇了許多瓶頸,翻譯質量總是很不理想,一直到近期才有了重大突破。
圖1 IBM與喬治敦大學語言學家合作開發翻譯軟體,1954年1月7日在IBM 701計算機進行英俄翻譯實驗
轉換層面上的機器翻譯類型
機器翻譯的實現方法多種多樣,可以按不同的標準進行分類。如果按轉換層面進行劃分,可以分為直接翻譯、轉換翻譯和中間語言翻譯,其中轉換翻譯又可以分為短語層、句法層、語義層等(圖2)。
圖2 機器翻譯的轉換類型
早期的機器翻譯系統常用「直接翻譯法」,也就是我們常說的「詞到詞」的翻譯方式,將一種語言句子中的每個單詞或固定詞組直接替換成目標語言對應的詞或詞組。這有點類似我們用金山詞霸一個一個把單詞翻譯過來再直接連接到一起(當然翻譯系統會做一些簡單的分析調整)。顯然,對於像漢英這樣語法結構差別較大的語言翻譯,其結果大部分很難接受,根本看不懂。
「中間語言法」比較好理解,首先就是建立一個標準語言作為中介,這個中介語言有點類似曾經流行過一段時間的「世界語」,當然機器翻譯的中間語言通常不會是真正的語言,而是類似邏輯表達式等(如果是以自然語言如英語作為中介,則這一中介語往往稱作「樞紐語言」)。首先將要翻譯的語言經過分析轉換成中間語言,再將生成的中間語言轉換成目標語言。兩人之間互相不懂對方的語言沒有關係,只要他們共同懂一門其他的語言就行。這也有點像HTML網頁代碼,可以在完全不同的瀏覽器上顯示相似的結果(圖3)。
圖3 左側是轉換方法示意,右側是中間語言法示意,可以看出,中間語言法是比較經濟的方式
「轉換翻譯法」則需要三個階段:分析、轉換、生成。先對要翻譯的句子進行詞、句、結構的深層解析(圖4),再把解析的深層結構轉換成目標語言的深層結構,最後由目標語言深層結構生成為目標語言句子。
圖4 通過喬姆斯基的短語結構語法規則,既可以解析句子(圖上)也可以生成句子(圖下)
基於實例的機器翻譯
如果按知識表示的標準來劃分,機器翻譯可分基於規則(Rule-Based)和基於語料庫(Corpus-Based)。基於語料庫又可分為基於實例和統計翻譯等。
基於規則的翻譯方法,採用一系列的規則來解析句子,如單詞切分規則、標註規則、句法分析規則、語義分析規則、結構轉換規則等,再與目標語言的語法結構對應,置換相應詞彙,最後生成譯文(一般採用的是「轉換翻譯法」)。
而在基於實例的機器翻譯系統中,關鍵是雙語對照的實例庫。雙語實例庫一般有兩個欄位,分別保存源語言句子及其對應的譯文。進行翻譯的時候,首先將要譯的句子與雙語實例庫中的源語言句子比較,找到最相似的那句,然後再模擬這個句子相對應的譯文,進行一些必要的置換處理等,最後輸出譯文。
基於實例的機器翻譯系統,一個關鍵技術是平行語料庫對齊,對齊的級別有句法結構、詞語、短語、句子、段落、篇章等。其中的段落及句子對齊,要求必須保持順序。一般來說,基於實例的機器翻譯系統會具有翻譯記憶功能,就是把你已經翻譯過的句子保存起來,下次遇到相同的句子,就可以直接輸出譯文了。這樣積少成多,翻譯的工作會越來越輕鬆。這在計算機輔助翻譯軟體(CAT)軟體中,被廣泛採用。
雙語語料庫示意
英語 漢語
How much is that red umbrella? 那把紅傘多少錢?
How much is that small camera? 那個小相機多少錢?
最笨的聰明翻譯法——統計機器翻譯
有一種思想認為,翻譯實際上是一個概率問題。比如說英語「This is a book.」,它的譯文可以是任意中文句子,如「今天天氣不錯」、「我想看會書」、「這裡有棵樹」、「這是一塊蛋糕」、「這是一本書」……這不是胡扯嗎?當然不是!你覺得胡扯的譯文,只是它和原文對應的概率比較低而已,顯然,上面的許多譯文中,「這是一本書」對應的概率是最高的。那麼,統計機器翻譯的任務就是要找出這個概率最大的句子。
這一思想實際上在1947年就已有專家提出了,但是語言是無限的,在無限的語言中找出最高概率的譯文,在當時無異於天文夜譚。如今,隨著計算機運算速度的巨大提升,當時認為是最笨最不可能的實現方法,如今卻成了極為有效的方法。
這一方法的關鍵,在於建立概率模型。IBM的專家於1993年提出基於詞對齊的翻譯模型,開啟現代統計機器翻譯方法之路,其後隨著短語翻譯模型、層次短語模型、語法樹模型等一系列模型的推出,統計機器翻譯法開始獨領風騷,成為當前大部分翻譯產品的核心運行機制。
為什麼機器翻譯無法完美
當下,各種機器翻譯的產品百花齊放,如蘋果Siri,微軟小娜、Skype,訊飛語音翻譯及多種在線翻譯等,雖然他們融入了語音識別等新的技術,但其核心的翻譯機制則大同小異,不同的可能就是算法上的優化,讓翻譯處理(如實時翻譯)更快更流暢而已。
隨著經濟全球化,以及快速增長的網際網路,自動翻譯的需求越來越迫切。但是機器翻譯目前尚不能完全替代人類翻譯,翻譯效果並不是很理想。這是因為,人類的語言,不僅僅只有字面的意思,還會因為不同的語境而產生大量的「言外之意」,這是機器很難判斷的。也許統計機器翻譯方法能部分解決這一問題,但那絕對是超乎想像的龐大數據處理。更完美的機器翻譯,只有期待更好的算法及更強大的運算能力來共同完成了。