機械翻譯

**機械翻譯**（；），或者叫**機器翻譯**，簡稱**機翻**，係運算語言學嘅一個子領域，專門研究點樣用電腦軟件嚟幫手翻譯一啲用自然語言寫嘅文「自然語言」係指好似廣東話同英文呢啲人類日常講嘢會用嘅語言。

喺最基本嘅層次，機翻嘅做法可以係將一種語言嘅字直接換做目標語言當中「相應」嘅字，但現實係，靠呢種做法通常都唔會俾到理想嘅翻譯出嚟呢種做法得出嘅結果幾乎實要用人手執吓先至會靚。要翻譯得流暢，部機器要識得睇嗮成句句子，甚至乎係成段嘢，了解嗮當中每一個字嘅意思，先至決定俾啲乜嘢輸出好。舉個簡單嘅例子嚟說明，以下有兩句英文句子：

:句子 1：The thriller movie is disturbing.
:句子 2：The noises he makes are disturbing me.

喺以上呢兩句句子裏面，講緊嘢嗰個人都用咗「disturbing」呢個現在分詞，但係呢個字要譯做粵文嘅話就起碼有兩個可能嘅意思：呢個字就噉睇可以譯做「令人不安」噉解，但係譯做「令人覺得佢煩」噉解又得，所以對於呢個字要點譯，就一定要睇嗮成句句子先可以做決定：句子 1 用「disturbing」嚟形容一套驚慄片，而句子 2 就用「disturbing」嚟形容某個人所發出嘅噪音。一般會認為喺前者嘅情況當中，「disturbing」比較可能係指「令人不安」，而喺後者嘅情況入面，呢個字就比較可能係指「令人覺得佢煩」。由呢個例子睇得出，一個字嘅意思可能會因為成句句子或者成段嘢當中嘅其他字而有所不同。一個完善嘅機翻程式一定要識處理自然語言當中嘅呢類細微問題，而呢個過程通常要用到統計學同埋人工神經網絡等嘅技巧。

機翻技術好有潛質。自從 1950 年代嗰陣開始，學界對機翻經已有唔少嘅討論，當中有唔少相關領域嘅科學家都唔覺得機翻會有一日完全取代人手翻譯。到咗廿一世紀，隨住機翻技術嘅進步，機翻經已成功噉俾人類廣泛噉用嚟幫手做翻譯，而喺某啲情況裏面，機翻俾出嚟嘅輸出仲可以直接即係唔使經人手執攞嚟用，好似係對天氣報告嘅翻譯就係噉樣。

## 基本定位

MT（）想做嘅係教電腦做自然語言嘅翻譯，將翻譯依樣工作自動化。响最抽象化（乜細節都唔諗）嘅層面，做翻譯嘅過程如下：

依個過程就噉望落好似好簡單噉，但實際上幾難搞。到咗廿一世紀初，仲有好多語言係未有令人滿意嘅 MT 程式嘅。

首先，想像家吓要做英到粵 MT，要將以下嘅句子譯做粵文：
:**I am drinking the soup that mom made.**
:原則上應該譯做：**我飲緊阿媽煲嘅湯。**
直譯（direct translation）係最原始嗰隻做法，將 input 入面嘅字或者短語遂隻遂隻變做目標語言入面「對應」嘅字同短語，然後畀 output：
:**I → 我，am drinking → 飲緊，the → 嗰，soup  → 湯，that → 嗰個，mom → 阿媽，made → 整**
:Output：**我飲緊嗰湯嗰個阿媽整。**
依段 output 明顯九唔答八。

進一步啲諗可以用轉移式嘅做法，研究者可以考慮到「唔同語言喺文法上有差異」依一樣事實，例如唔同語言嘅語序可以好唔同，有啲語言好似係廣東話同英文興用 SVO 型嘅句子，而又有啲語言好似係日本話噉就興用 SOV 型嘅句子；另一方面，英文興將一句關係子句擺喺句嘢褦住嘅名詞**後面**（NRel），而相比之下，廣東話通常會將啲噉嘅子句褦喺隻名詞**前面**（RelN），即係話
:**... the soup that mom made.**
:**mom made**（**阿媽整**）係一句關係子句，描述緊 **the soup**（**啲湯**）；
:但**阿媽整嘅湯**喺廣東話度聽落會比較似自然嘅名詞短語。
再進一步啲仲有所謂嘅中介語言（interlingual）做法，即係將 input 轉換做一啲淨係電腦識睇、形式化（簡化講，形式化 = 好似數學符號咁精確）噉表示句 input 嘅意思嘅符號（中介語言），再將段中介語言嘅字轉化做目標語言嘅 output 。

由上述例子睇得出，要將源文段字嘅意思完全噉解讀嗮出嚟，個翻譯者實要分析嗮成段字嘅特徵：依個過程要求個翻譯者要好詳細噉了解嗰隻語言嘅文法、語義、句法、慣用語以至講嗰隻語言嗰班人嘅文化。同一道理，翻譯者亦都要對隻目標語言有返咁上下認識。語音嘅 MT 就仲撈絞過文字嘅 MT，因為要考慮埋「個個人講嘢速度都唔同」等嘅問題。而 MT 依個領域最主要嘅挑戰就在於要寫程式教電腦學人噉做依樣嘢，而且出嘅 output 仲要望落同專業翻譯者做嘅冇分別。

## 資訊問題

除咗打前提到嗰啲問題之外，MT 嘅另一個難處係轉換過程成日會搞到有資訊唔見咗。

喺翻譯（包埋人手做嘅翻譯）上，「段 input 字入面包含咗咩資訊」係一個重要考量。要正確噉將段 input 譯做 output，就首先要準確噉知道嗮 input 包含嘅資訊，但呢樣嘢查實唔容易，例如語境（包括講嘢嘅人嘅表情或者打前嘅句子）同埋歧義等嘅情況，都會搞到電腦難以完全知道 input 內含嘅資訊。而且仲有個問題係淨係做翻譯嗰時至會撞到嘅：

舉個實際例子，廣東話、英文同日本話喺代名詞嘅使用上有明顯差異：
*英文啲第三人稱代詞（**he** 同 **she**）會分男女，但廣東話就唔會（男定女都一樣係**佢**），噉想像而家
*#Input：**She goes to the hospital.**；呢句想譯做粵文 →
*#Output：**佢去醫院。**
*#由於廣東話本身嘅特性，句粵文 output 唔包含「句子最頭嗰個**佢**，係女嘅」呢一件資訊，即係話由英文 input 變做粵文 output 嘅過程入面，有啲資訊唔見咗；如果研究者跟住叫部電腦將句粵文掉轉頭譯返做英文，就可能會變成 **He goes to the hospital.**句嘢嘅意思走咗樣。
*日本話啲人稱代詞（尤其係我同你）有相當複雜嘅變化，例如講自己嗰陣，**boku**（ぼく / 僕）同 **ore**（おれ / 俺）都係男性用嚟指自己嘅代名詞，但 **ore** 係比較粗魯嘅，喺正式場合用 **ore** 會畀人覺得好冇禮貌，噉想像而家
*#Input：**Ore wa shiraneena.**（**俺は知らねえな。**）；呢句想譯做粵文 →
*#Output：**我唔知。**
*#由於廣東話本身嘅特性，句粵文 output 唔包含「句子最頭嗰個**我**，係粗魯嘅男性我」噉嘅資訊（又係有資訊喪失），所以如果叫電腦將句粵文轉換返做日文，就可能會變成 **Boku wa shiraneena.**因為 **boku** 同 **ore** 帶有唔同嘅意思，所以呢種變化又係表示句嘢嘅意思走咗樣。
由上述嘅例子睇得出，做翻譯嗰陣成日會有某啲意思係「來源語言會分辨，但目標語言唔會分」嘅，例如英文會分**男嘅佢**同**女嘅佢**，日本話會分**有禮嘅男性我**同**粗魯嘅男性我**，而呢啲噉嘅分辨係廣東話唔會做嘅；同一道理，廣東話又有一啲概念區分，係第啲語言冇嘅，例如
*廣東話會分阿嫲同阿婆，但英文日常用語通常都係用 **grandmother** 一隻字包嗮兩個概念；
*亦可以睇吓**多謝**同**唔該**之間嘅差異；
噉就表示，翻譯嘅過程成日都會造成資訊喪失。

## 重要概念

有關「啲文字數據要點做事前處理」，可以睇吓 NLP 當中嘅文字分割、詞形還原同埋解析。
### 規則為本

規則為本機械翻譯（ruled-based machine translation，RBMT）可以話係最原始嗰隻 MT 做法，會運用對來源語言同目標語言嘅文法嘅認識同埋對兩隻語言嘅語義嘅分析。基本個諗頭係要運用對來源語言嘅分析，將 input 句嘢嘅結構同 output 句嘢嘅結構連繫埋一齊，再產生一句 output 句子。例如以下呢段翻譯噉：
:Input（法文）：**Une fille mange une pomme.**
:目標語言：廣東話
RBMT 會搵本字典，同 input 句每隻字都搵隻粵文嘅字對應（睇埋雙文本字對應）：
:**Une → 一個（[[文法性別|陰柔]]），fille → 女仔，mange → 食（[[人稱|第一或者第三人身]]），une → 一個（陰柔），pomme → 蘋果**
跟住 RBMT 就會分析法文同廣東話分別嘅造句法則（可以睇吓語序等嘅概念），再攞住啲對應字、跟廣東話嘅造句法則砌返句 output 出嚟，最後就畀出：
:**一個女仔食一個蘋果。**
不過廿世紀嘅研究已經表明咗 RBMT 根本唔掂：要靠 RBMT 做翻譯，就實要明文噉將兩隻語言內含嘅規則列嗮出嚟，但噉做有好多問題：
#自然語言呢家嘢複雜度高得好交關，淨係講「英文啲詞句要點組成」嘅規則就已經講緊最少有幾百條；
#語言有陣時有好多不成文嘅規定（語用），例如好多人會覺得「某某食某樣嘢」喺廣東話入面聽落有啲怪描述動作嗰陣，廣東話比較常會講「某某喺度食某樣嘢」或者「某某食咗某樣嘢」，但係呢條係不成文嘅規則；
#語言會有歧義，同一隻字有時可能有多個唔同意思，吓吓都要人手噉講清楚「咩情況下譯做意思 1 咩情況下譯做意思 2」又係好撈絞；
#語言可能會演變，吓吓要人手噉更新啲規則不切實際；
... 等等。因為呢啲緣故，RBMT 限制多得滯，喺好多情況之下都行唔通。

### 統計為本

統計機械翻譯（statistical machine translation；SMT）就係嘗試用統計學嘅方法嚟做 MT 。簡單噉講，可以首先諗吓字詞層面嘅翻譯：
*想像研究者手上有一大拃語料，啲語料包含咗（例如）由隻語言寫出嚟嘅文，仲講明嗮邊句粵文句子對應緊邊句法文句子；
*個 MT 程式想知 **pomme** 呢隻法文嘅字（input）要點譯做廣東話；
*佢可以摷勻嗮啲語料，睇吓啲有隻 **pomme** 字嘅法文句子，佢哋對應嗰啲粵文句子有咩共通點；
*假設啲粵文句子夠代表到「好多唔同意思但都有提到蘋果」嘅句子，個程式應該會發現啲對應嘅粵文句子冚唪唥都有**蘋果**呢隻字詞喺入面；
個 MT 程式可以畀**蘋果**做 outputSMT 嘅重點就係在於想由啲語料度搵出啲字詞之間嘅（例：已知句嘢入面有**蘋果**呢隻字詞，句嘢有幾大機率會有**食**呢隻字詞？），靠呢啲統計關係嚟做「呢隻呢隻字應該點譯」嘅判斷。有關統計關係嘅概念，可以睇吓概率論同統計學等嘅課題。

呢種機翻嘅原理係揾一大柞事先人手翻譯咗嘅兩種語言嘅句子返嚟做樣本，再寫啲程式去教部電腦揾出唔同字之間嘅統計關係。舉個例說明：如果部電腦撞到一句英文句子入面有「disturbing」呢個字，噉佢會嘗試透過啲樣本嚟計吓個字應該譯做「令人不安」嘅機會率係幾多幾多，同埋呢個機會率會點樣隨住「句句子入面仲有乜嘢字」變化（如果個字俾寫嘢嗰個人用嚟形容一套驚慄片，噉應該譯做「令人不安」嘅機會率就會高啲）。喺部電腦處理完個樣本之後，佢內部會產生一個統計模型，而呢個統計模型嗰柞參數會由個樣本嗰度導出。一般嚟講，個樣本愈大，統計機翻嘅準確性就愈高。到咗廿一世紀，世界上有多個政府都興用呢種手法翻譯佢哋啲文件，例如加拿大嘅聯邦政府就用咗呢種方法同佢啲文件做英法（佢嗰兩個官方語言）翻譯，而且 Google 翻譯都有用咗呢種手法。

統計機翻相當受歡迎，有唔少科學家都想進一步發展佢，甚至有人提倡話再進步啲嘅統計機翻能夠淨係用一種語言嘅樣本就可以做到機翻。

### 混合型

混合型機械翻譯（hybrid machine translation；HMT）係指運用多過一種手法做機翻嘅方法。有多個做機翻方面工作嘅組織都興結合基於規則方法同統計方法嚟做機翻，而佢哋主要有兩大做法：
***用統計處理過嘅規則（rules post-processed by statistics）**：個程式會用明文規則嚟做翻譯，但係啲規則唔係由個程式員指定嘅，而係由個程式自己由數據嗰度推論出嚟嘅。
***用規則引導統計（statistics guided by rules）**：個程式會用（好多時由語言學嗰度學到嘅）明文規則引導統計，亦都會用規則及後處理統計翻譯所俾嘅結果。呢種做法喺做翻譯嗰陣有大好多嘅彈性同控制，而且仲俾個設計者有得控制個程式喺翻譯前後點樣處理段文字嘅內容。

### 神經

神經機械翻譯（neural machine translation；NMT）係廿一世紀初興起嘅一種機翻手法，連 Google 都開始用神經機翻取代舊陣時嗰啲機翻方法。神經機翻係指運用人工神經網絡（artificial neural network）嚟做機翻。人工神經網絡係一種特殊嘅電腦程式，會攞一啲特定嘅輸入，再靠一大柞閒閒地數以百計嘅人工神經細胞做運算，每一粒人工神經細胞都會按照佢由第啲神經細胞嗰度收到嘅輸入運算一個輸出數值，最後俾出一個運算結果。如果有一個極龐大有數以萬計嘅神經細胞嘅人工神經網絡嘅輸入設做（例如）一篇來源語言嘅文章，而輸出設做目標語言嘅譯文，就有可能做到機翻。
### 中介語言

## 評估機翻

「評估一個 MT 程式嘅 output」係 MT 上一項重要嘅工序：無論係邊門工程學都好，研究者喺設計一件嘢嗰陣都實要評估件嘢「有幾掂」，件嘢解決問題嘅能力要有返咁上下勁，先至可以攞去出街當產品噉賣。不過 MT 評估一啲都唔易做首先，翻譯呢家嘢有啲主觀，一位專家覺得掂嘅翻譯，另一位專家可能會覺得唔掂；除此之外，同一句句子要譯做第隻語言，好多時會有多過一個可能嘅譯法，而且兩個譯法都係普遍覺得可以接受嘅。

喺決定「要點樣做評估」嗰陣，研究者有唔少嘢要考慮：
*評估單位要係句子（sentence-level）定係成份文件（document-level）？如果話「用句子做評估單位」，意思係指研究者會將啲句子逐句逐句攞嚟睇，睇吓係咪句句都「譯得靚」，而如果話「用成份文件做評估單位」，意思係指研究者會一吓過睇嗮成段字，即係會諗埋「某啲語言，可能會慣例上將某啲類嘅句子擺喺段落最頭」噉嘅問題。
*夠掂同流暢（adequacy and fluency）：呢個概念係講緊「評估重心要係語義定係句法？」噉嘅問題；
**「評估重點係語義」（夠掂）意思係指，研究者睇重嘅係要將句嘢包含嘅意思全部 output 好佢，而
**「評估重點係句法」（流暢）意思係指，研究者想個 MT 程式出到嘅 output 要「好似一個能夠流暢使用目標語言嘅人」噉，
**如果有句 output 係「以目標語言做母語嘅人  到想講乜，但文法唔係好啱」嘅，追求「夠掂」嘅研究者會接受，而追求「流暢」嘅研究者就唔會。
... 呀噉。
### 人手評估

用人手嚟評估 MT 系統嘅做法如下。

首先，研究者要搵一大班人返嚟做評判，評判一定要係識目標語言又識來源語言嘅。喺實際應用上，評判好多時仲會係對翻譯起碼有啲認識嘅人。

假定而家有 5 個英到粵 MT 系統要評估，研究者會要求啲評判坐定定喺部電腦前面，電腦嘅熒幕會顯示類似噉嘅字：

當中嗰 5 個譯法，就係 5 個 MT 系統分別出嘅 output。正常嚟講，啲 output 嘅出現次序係隨機化嘅，即係唔會（例如）其中一個系統出嘅 output 永遠擺喺「譯法 1」嗰個位，費事「句子出現嘅次序」對研究結果造成干擾。

研究者會重複噉要評判睇好似上面噉嘅問題，可能睇成幾千次。搞掂之後，研究者手上就會有一拃數據，啲數據會（簡化噉講）包含「每一句 input，嗰 5 個系統平均喺嗰句 input 上得到幾高嘅名次」噉嘅資訊，跟住研究者就有得睇吓「邊個系統傾向攞到高嘅名次」名次傾向高嗰個 MT 系統，就算係「最掂」。

### 自動評估

靠人手嚟評 MT 系統有一大唔好處，就係又貴又慢：要搵「識來源語言又識目標語言、仲對翻譯有啲認識」嘅人唔容易，而請呢啲人幫手評 MT 系統就要使錢；除此之外，要請人睇成數以千計嘅 output 句子，實會花好多時間。因為噉，有啲 MT 研究者就想採用自動化嘅 MT 評估，簡單噉講即係諗啲數出嚟畀電腦計，部電腦會攞個 MT 系統出嘅字做 input，再根據嗰啲計法計若干個數值出嚟，呢啲數值會反映個系統嘅翻譯「質素有幾高」。

當中雙語替換評測（bilingual evaluation understudy，BLEU）可以話係廿一世紀初最常用嗰隻自動評估做法。首先，BLEU 建基於一個諗頭：

用 BLEU 做評估，步驟大致上係噉嘅：
#攞住
#*一句 input 句子、
#*若干句對照翻譯 (y^{(1)}, ..., y^{(N)}) 、同埋
#*由被評系統對句嘢畀嘅 output（\hat y）。
#計吓 \hat y 入面嘅字，有幾多 % 係有喺 (y^{(1)}, ..., y^{(N)}) 裏面出現嘅。
#*步驟 2 得出嘅數，唔可以用嚟做評估，例如 \hat y 係**貓貓貓貓**，而 y^{(1)} 係**隻貓瞓緊**\hat y 喺步驟 2 會攞到高分，但 \hat y 明顯唔係一個好嘅翻譯。
#Foreach \hat y 入面嘅字，計吓佢喺 (y^{(1)}, ..., y^{(N)}) 裏面最多出現咗幾多次（~m_\textit{max}）。
#*例如 \hat y 係**貓貓貓貓**，y^{(1)} 係**隻貓瞓緊**，y^{(2)} 係**隻貓喺度瞓**，**貓**一字喺 (y^{(1)}, ..., y^{(N)}) 當中最多出現咗 1 次~m_\textit{max} = 1。
#1-gram 準確度分數 = \frac{1}{4} = 0.25
#重複 2 同 3 噉嘅步驟，不過用嘅係 2-gram 同 3-gram... 等等。可以睇吓 N-gram 呢個概念。
#短得滯嘅 \hat y「要受罰」，
#*設 r 做對照嘅長度而 c 做 \hat y 嘅長度，如果 c ，個系統就要受罰扣分；
#*喺最基本嗰種計法下，要扣嘅分數 = e^{1-r/c}，當中 e 係自然底數；
#重複到（例如）4-gram 之後，用幾何平均值計吓個系統平均攞到幾高分，分數愈高就表示個系統愈掂。
亦都有啲做法係用機械學習，教電腦自動噉分「咩係優質嘅翻譯，咩係劣質嘅翻譯」。

## 機翻本體

## 手語機翻

## 應用

## 機翻史

機械翻譯嘅意見可能會搵返去喺十七世紀度。喺1629年, René Descartes 建議整個普及嘅語言同啲相關嘅意見喺唔同嘅發音分享一個標誌。「機械翻譯」個區入面所出現嘅會喺Warren Weaver備忘錄嘅翻譯度 (1949年). 第一個搜索嘅人喺個區入面係 Yehosha Bar-Hillel, 佢開始去進行佢嘅搜索喺MIT 嗰度(1951年)。搜索者繼續咁樣去加入個區域機械翻譯同電腦性共同語嘅組織邊個係喺美國度組成嘅 (1962年)。1972年,佢畀保護性搜索同工程總監(簡稱DDR&E)寫報告, 全面MT嘅可能性已經重新再建立嘅由啲成功嘅MT系統喺翻緊譯軍用手册轉成越南文當打緊仗嘅時候。

## 評價
喺翻譯界，機械翻譯一直都好受爭議，原因係機械翻譯要做後編嘅工序，但係事後執手尾用嘅時間可能同自己成篇譯過冇分別，但係因為理論上機器已經譯咗，翻譯社畀嘅錢會少過正常。另外，有翻譯人員指機械翻譯令人嘅思維框死咗思路，翻譯社甚至會要求儘量保留原字，令譯得唔好嘅文想執都冇辦法執得好。

有翻譯人員指出，現代機械翻譯係喺唔問原作者嘅情形之下，攞咗人譯嘅文去教人工神經網絡點譯，其實係一種知識產權嘅盗竊行為。

## 睇埋
*語言類型學
## 註釋

## 參考同工具
### 基礎知識
* 日本MT研討會
* 關于翻譯軟體嘅基本概念
* AAMT——亞太地區機械翻譯協會 
* AAMT——日文進入端口 

### 日本
響20世紀80年代末，日本文部省、大藏省都極力主張大搞人工智能同機器譯，並由野村研究所專門負責協調各項MT技術研究。搞出好多款實用嘅MT軟體，以下為有代表性嘅幾款。
* 東芝翻譯機器 
* LogoVista - ''''' e-Trans'''''
* 富士通嘅ATLAS
* 聲寶翻譯範文系統 
* 兄弟工業-Brother-TransLand
* 高電社翻譯•J•E•T
* 巴比倫（''Babylon''）電子學辭典嘅機械翻譯

### 經典書籍

* 機械翻譯文獻網  ——  該網址由以上同一作者維護，An electronic repository (and bibliography) of articles, books and papers in the field of machine translation and computer-based translation technology

### 機翻引擎
* KODENSHA エキサイト翻訳ほか
* クロスランゲージ Yahoo!翻訳、Infoseek マルチ翻訳ほか
* World Lingo Googleほか
* 自動翻訳サービス熟考 (英-日)
* GoKorea—日韓翻譯 (日-韓)
* 中葡機器翻譯 (中-葡) 

* DeepL翻譯

## 攷

## 拎
* Blast，一件用嚟同 MT output 標示「邊度出咗錯」嘅架生。
* 機械翻譯同辭典嘅檢索 - FeelWordsSearch
* Spanish English 免费翻译
*   Green and White——專門評述機械翻譯軟體嘅網址
* 翻訳のためのインターネットリソース
* Online Translator
*  多種語言同日語對譯嘅口岸網址（''portal''）