機器翻譯,顧名思義,就是使用計算機來進行語言之間的翻譯。機器翻譯是乙個非常困難的人工智慧任務,研究了多年了,目前有一些可行的方法,但是效果還是不能與人工翻譯的效果相比。最簡單的乙個機器翻譯系統的實現,就是乙個查詞表的翻譯。
例如「我今天在學校吃的午餐」,現在手頭上有乙個詞表,可以得到每個詞的翻譯。
首先分詞「我今天在
學校吃的午餐」,
詞表內容「我
->i」,」
今天->today」,」
在->at」,」
學校->school」,」
吃->eat」,」
的->of」,」
午餐->lunch」.
直接使用一一對映,將查詢到的詞表列出來,那麼,對於上句的翻譯就是「
i today at school eat of lunch」.
這個翻譯讓人摸不著頭腦。
在上面這個例子中,我們可以看到,裡面存在下面這些問題: 1.
裡面使用了對映詞表,但是實際情況中,詞表存在著很多問題。(
1)同乙個詞的多種翻譯,例如,「我」的翻譯有「i」
, 」me」, 」myself」
等,如何結合語境,選擇合適的翻譯,是乙個很大的問題。(
2)不存在的詞,即未登陸詞,如果待翻譯的句子中出現乙個詞典中沒有的詞,該怎麼辦?比如,「午餐」這個詞,詞典中根本就沒有收錄其相應的英文翻譯。 2.
詞的順序。可以看到,翻譯出來的句子中詞的順序是混亂的。英文翻譯中詞的順序與中文詞的順序是不一樣的,所以翻譯出來的句子讓人看不懂。在翻譯之後,需要對翻譯出來的詞的順序進行一次重新排列,使其更符合人的閱讀習慣,這也是乙個很困難的問題。例如上面的翻譯「
i today at school eat of lunch
」應該重調順序為「
i eat lunch at school today」.
目前最為流行的是統計機器翻譯模型,最新出的還有基於例項的機器翻譯
,相關背景介紹在網上一搜就有,在這就不再累述了。
解決方法:
統計條件概率,在某種情況下表現為某個詞的概率。可以把其看成乙個狀態標引的過程,比如「我」和「今天」一起用時,「我」被翻譯為「
i」的概率較大。從所有的可能翻譯組合中搜尋一條最大化概率的翻譯方案。傳統的對條件概率建模的模型都可以用來對這個問題建模,如隱馬爾科夫模型
(hmm)
模型,將源語言看成原始訊號組成,將目標語言看成狀態表現,適用
viterbi
演算法找到概率最大的狀態序列。還有如條件隨機場模型
crf模型,最大熵模型
me等。另外,還有如基於模板匹配的方法,搜尋在已有的翻譯語料中找到最相似的源句子,然後對於其中不同的部分進行替換。
說說我與機器翻譯的故事:
當初加入
cir時,被分配到的是
pt組,複述與翻譯。實驗室主任
lt老師親自掛帥,優秀
zsq師兄作為組長,可見當時這個組在實驗室的地位。當初粗略的接觸了機器翻譯,另外在本科畢設時做得英漢詞對垂直搜尋引擎,保研時通過了國內機器翻譯研究水平最高的中科院計算所機器翻譯實驗室的筆試面試,差點就研究生階段就從事機器翻譯了。但是最後學校不讓保送中科院計算所,導致我與機器翻譯無緣了。
機器翻譯相關系統及開源專案:
最出名的就是
giza++
了,搞過機器翻譯的一定都知道,乙個詞對齊軟體。
主持開發的乙個機器翻譯開源專案。
基於短語的統計機器翻譯系統
pharaoh(法老)
,由南加州大學的一位博士編寫。
語言模型工具
中國眾高校開發的開源機器翻譯系統
-絲路(
摩西moses
基於句法的統計機器翻譯系統
評價機器翻譯效果的工具
機器翻譯及相關技術筆記
一 機器翻譯和資料集 機器翻譯 mt 將一段文字從一種語言自動翻譯為另一種語言,用神經網路解決這個問題通常稱為神經機器翻譯 nmt 主要特徵 輸出是單詞序列而不是單個單詞。輸出序列的長度可能與源序列的長度不同。字元在計算機裡是以編碼的形式存在,我們通常所用的空格是 x20 是在標準ascii可見字元...
機器翻譯及相關技術等打卡
一 機器翻譯及相關技術 1.機器翻譯 mt 將一段文字從一種語言自動翻譯為另一種語言,用神經網路解決這個問題通常稱為神經機器翻譯 nmt 主要特徵 輸出是單詞序列而不是單個單詞。輸出序列的長度可能與源序列的長度不同。all 函式 用於判斷給定的可迭代引數中所有元素是否都為true,返回 iterab...
機器翻譯技術的含義 發展和應用
機器翻譯是什麼?機器翻譯是計算語言學的乙個分支,也是人工智慧領域的乙個重要應用,其最早的相關研究可以追溯到20世紀50年代。隨著網際網路的飛速發展,人們對語言翻譯的需求與日俱增。根據維基百科的資料,目前網際網路上存在數百種不同的語言,其中英語內容佔網際網路全部內容的一半左右,而以英語為母語的網際網路...