统计机器翻译
约 7 分钟
统计机器翻译是机器翻译的第二个时代,它的核心思想很优雅:不教规则,让数据说话。
基本原理:
假设你要翻译「The cat sat on the mat」到中文。
词对齐:先找到英语词和中文词的对应关系。The->这/那,cat->猫,sat->坐,on->在...上,the mat->垫子
语言模型:检查中文译文是否通顺。「猫坐在垫子上」通顺,「垫子坐在猫上」不通顺。语言模型给通顺的句子更高概率
翻译模型:检查译文是否忠实于原文。cat 翻译成猫的概率高,翻译成狗的概率低
综合:找一个中文句子,让「通顺度 x 忠实度」最大
数学公式(简化):
最佳翻译 = argmax P(中文|英文) ≈ argmax P(英文|中文) x P(中文)
- P(英文|中文):翻译模型(忠实度)
- P(中文):语言模型(通顺度)
训练数据:需要大量「平行文本」--同一段文字的两种语言版本。如联合国文件同时有多种语言版本,是宝贵的训练数据。
优点:
- 不需要人工写规则
- 效果随数据增加自动提升
- 适合资源丰富的语言对(如英法、英中)
缺点:
- 需要大量双语数据,小语种做不到
- 逐句翻译,不看全文(「他」指的是谁?看全文才知道)
- 译文像拼凑的,不够自然
- 无法处理需要文化知识的翻译(如成语、双关)
统计翻译的历史意义:它证明了不需要语言学知识也能做翻译。这是「数据驱动」思维的胜利--后来的神经网络方法更彻底地贯彻了这个思路。
练习:找一句有多种翻译的英文,用统计翻译的思路分析:词对齐有几种可能?哪种组合最通顺?
小纸条
统计机器翻译的基本原理是什么?有什么优缺点?
登录 后可看答案