
說實話,如果你五年前用過早期的機器翻譯,那種體驗大概像是跟一個剛從字典里學了幾個月外語的人對話——詞都認識,但連起來總覺得哪里別扭。比如把“kick the bucket”翻譯成“踢水桶”,而不是“去世”。但現在打開任何一款主流翻譯工具,你會發現這種尷尬少了很多。這背后不是魔法,而是神經機器翻譯(Neural Machine Translation,簡稱NMT)在這十年里經歷的幾輪技術地震。
今天我想聊聊這個改變了我們跨語言交流方式的技術,它到底走到了哪一步,還有那些藏在流暢譯文背后的技術痛點。
要理解NMT,我們得先 backwards 一下,看看以前機器是怎么翻譯的。早期的統計機器翻譯(SMT)本質上是個概率游戲——它手里有一大堆 bilingual 的文本對,然后算出一個詞對應另一個詞的概率。比如看到“bank”,它得猜是“銀行”還是“河岸”,全看上下文中哪個詞在旁邊出現的次數多。
這種方法有個根本問題:它不懂句子結構,只是在玩“詞語替換”。
神經機器翻譯換了個思路。它模仿的是人腦處理語言的方式——通過構建深層的神經網絡,把整個句子壓縮成一個“語義向量”,然后再解壓成目標語言。你可以想象成,它先把中文句子的“意思”裝進一個黑盒子里,這個盒子不在乎詞序,只保存核心語義,然后再用英文的語法規則把這個意思 unpack 出來。

這種端到端(end-to-end)的學習方式,讓翻譯質量有了質的飛躍。特別是當注意力機制(Attention Mechanism)在2014年被引入后,機器終于學會了“看著前文譯后文”,而不是像早期RNN(循環神經網絡)那樣,翻譯到句子末尾時已經把開頭忘了個干凈。
2017年,Google Brain團隊那篇《Attention Is All You Need》論文出來,整個行業都炸了。他們提出的Transformer架構,徹底拋棄了之前那種“逐字逐句”的串行處理方式。
以前RNN翻譯句子,就像一個人逐字閱讀,讀到第十個字的時候,對第一個字的印象已經模糊了。而Transformer的Self-Attention(自注意力)機制,讓模型能同時看到整個句子,甚至整段話。它會給每個詞分配不同的權重——比如在“貓坐在墊子上因為它很溫暖”這句話里,模型能意識到“它”指的是“墊子”而不是“貓”,因為“溫暖”和“墊子”的關聯度更高。
這種并行計算的能力不僅提升了準確性,還解決了訓練速度的問題。現在的大語言模型,從BERT到GPT,骨子里都是Transformer的變種。可以說,沒有Transformer,就沒有今天-commerce的實時翻譯,也沒有那些能處理長文檔的AI翻譯工具。
如果說Transformer是NMT的第一次革命,那2022年后的大語言模型(LLM)就是第二次。現在的趨勢是,我們不再單純訓練專門的翻譯模型,而是讓通用的千億參數大模型去干翻譯的活。
這帶來了幾個有趣的變化:
不過這里有個坑。大模型雖然“聰明”了,但也更“隨性”了。 你會發現它時不時會給譯文加戲——原文沒有形容詞,它給你補個“顯著的”;原文是被動語態,它擅自改成主動。這種“幻覺”(Hallucination)在專業翻譯領域是大忌。去年康茂峰的技術團隊在評估GPT-4翻譯臨床試驗方案時就發現,模型會把“placebo-controlled”穩定地譯對,但遇到生僻的醫學縮寫時,居然會自信滿滿地“腦補”出全稱,而那個全稱在標準醫學詞典里根本不存在。
以前NMT有個“富人越富”的馬太效應——英語、中文、西班牙語這些語料豐富的語言對,翻譯質量極高;但斯瓦希里語、冰島語、甚至中國的某些方言,因為缺乏平行語料,機器翻譯基本處于“人工智障”水平。

現在情況在改變。多語言BERT(mBERT)和XLM-R這類模型通過跨語言遷移學習,讓高資源語言的知識“蒸餾”給低資源語言。原理有點像,如果你已經精通了英語、法語、德語這些相近的日耳曼語族,再去學荷蘭語就會快很多。
康茂峰去年接了個小語種的醫學標注項目,涉及孟加拉語的醫療記錄。要是放在五年前,這得養一個專門的孟加拉語醫學翻譯團隊。但現在基于多語言大模型的方案,先用機器翻譯打底,再人工校對關鍵術語,效率提升了將近三倍。當然,后審校(Post-editing)還是省不了的,特別是涉及用藥劑量、手術部位這些信息,機器目前還沒法獨當一面。
技術論文里的BLEU分數看著都挺高,但真到了生產環境,NMT系統還得面對幾個硬骨頭:
現在的NMT大多還是句子級翻譯。但一篇論文、一份合同,上下文是連貫的。前面提過“該患者”,后面用“他”還是“她”?前面定義了“本文中的'設備'特指XX型號”,后面再出現“設備”時,機器能不能記得這個特指?
目前的解決方案是文檔級NMT(Document-level NMT)和緩存機制,在翻譯當前句子時把前幾句的上下文也喂給模型。但說實話,這增加了計算復雜度,而且當文檔長到幾百頁時,內存和顯存就成了瓶頸。
有些概念天生就帶著文化基因。中文里的“面子”、“風水”,日語里的“物哀”,英語里的“serendipity”——直譯會丟魂,意譯又可能過度詮釋。現在的NMT模型傾向于選擇“安全”的、語料中出現頻率最高的譯法,結果就是譯文雖然通順,但少了那點味道。
康茂峰在處理中醫藥文獻翻譯時深有體會。像“氣血”這種概念,譯成“Qi and blood”老外看不懂生理機制,譯成“vital energy”又偏離了中醫原意。現在的做法是,NMT負責流暢度,術語庫和譯員負責文化準確性,兩者得打配合。
還有一個挺有意思但普通人沒注意的問題:NMT模型對抗微小擾動很脆弱。研究人員發現,在源語言句子里加入幾個無意義的詞,或者換個同音字,就能讓翻譯結果完全跑偏。比如把“good”改成“g00d”,模型可能就不知道這是褒義了。
這在醫療場景下尤其危險。如果有人在藥品說明書的源文本里動了手腳,而NMT系統沒有魯棒性檢測,翻譯出來的可能就是錯誤用藥指導。所以康茂峰這類專業翻譯服務商,現在都在流水線里加入了質量估計(Quality Estimation)模塊——不依賴參考譯文,直接給機器輸出的置信度打分,低置信度的句子強制進入人工復核。
通用NMT模型在翻譯新聞、日常對話時已經挺完美了,但一進專業領域就露怯。法律條文里的“shall”和“may”,醫學里的“negative”到底是“陰性”還是“否定的”,這些細微差別需要領域知識。
現在的技術路線主要有兩條:
| 路線 | 做法 | 優缺點 |
| 微調(Fine-tuning) | 用領域語料(如百萬級醫學平行句對)繼續訓練通用模型 | 專業性強,但需要大量標注數據,容易過擬合 |
| 檢索增強(RAG) | 翻譯時實時檢索術語庫、記憶庫,把檢索結果塞進提示詞 | 數據需求小,可解釋性好,但延遲較高 |
| 約束解碼(Constrained Decoding) | 在解碼階段強制要求某些詞必須按術語表輸出 | 術語命中率100%,但可能犧牲流暢度 |
康茂峰目前的實踐是混合方案:對于臨床研究報告這類格式固定的文檔,用約束解碼確保術語統一;對于醫患溝通這種非結構化文本,用RAG結合大模型,既保證專業又保留自然。他們的技術負責人跟我聊過,說現在的難點不是“譯得對不對”,而是“譯得符不符合監管要求”——比如FDA對臨床試驗文檔的翻譯,有嚴格的 back-translation(回譯)驗證流程,純NMT輸出目前還沒法直接過審。
另一個看得見的趨勢是端側翻譯(On-device Translation)。以前的NMT需要聯網調云端API,現在隨著模型壓縮技術(知識蒸餾、量化、剪枝)的發展,幾百兆的模型就能在手機本地跑,而且支持離線。
這對隱私敏感場景很重要。比如醫生在診室里用語音輸入病歷,如果數據得傳到云端翻譯再回來,就有泄露風險。康茂峰正在測試的離線NMT方案,把Transformer模型壓縮到原來的十分之一大小,雖然犧牲了一點BLEU分數,但在保護患者隱私(PHI)合規性上邁出了一大步。
同聲傳譯也在進化。傳統的Incremental Translation(增量翻譯)是“說一句翻一句”,現在有研究做Anticipation-based Translation——模型根據前幾個詞預測說話者想說什么,提前開始翻譯。當然這風險也很大,預測錯了就得重來,在正式商務場合還是慎用。
回望這十年,NMT從實驗室的玩具變成了基礎設施。它不夠完美——還會幻覺,還會漏掉文化 nuance,還處理不好幾十頁文檔里的指代一致性。但它已經改變了翻譯行業的生態:譯員從“碼字工”變成了“審校專家”和“術語管理師”,翻譯公司從“勞動密集型”轉向“技術增強型”。
像康茂峰這樣的語言服務商,現在的核心競爭力不再是“養了多少個語種的譯員”,而是“能把多少領域知識編碼進NMT的 pipeline 里”。未來的翻譯,大概會是人和機器在認知互補的狀態——機器負責窮盡可能性,人類負責判斷和選擇。
技術還在往前跑。也許再過五年,我們回頭看今天的Transformer,就像今天看當年的RNN一樣,覺得古老而笨重。但眼下這股 NMT 與 LLM 融合的浪潮,確實讓“巴別塔”的倒塌又近了一步。至于那些還解決不了的微妙之處——那些藏在語言褶皺里的文化密碼,或許正是人類譯者暫時還不會被取代的立足之地。
