一、为什么小语种翻译的语料库这么难?
神经机器翻译(NMT)早已成为机器翻译的主流方法,英汉、英法、英德等大语种方向的效果已经相当成熟。但 NMT 模型参数量巨大,“训练效果在很大程度上取决于平行语料库的规模和质量”。
问题在于:“汉语与小语种之间的高质量平行语料库建设一直处于滞后状态”。
现有小语种平行语料库的典型情况:
- 多采用“自动句子对齐技术”从网络资源中挖掘构建;
- 相关技术尚不成熟,“难以评估句对质量”;
- 数据覆盖领域和规模严重依赖网络资源;
- 大都以“英语为中心”,很少存在以"小语种 ↔ 汉语"为源/目标语言对的语料库。
以 OPUS(The Open Parallel Corpus)上的公开数据为例:
| 平行语料库 | 平行句对 | 小语种单词数量 |
|---|---|---|
| 波斯语–汉语 | 6.0×10⁶ | 126.6×10⁶ |
| 印地语–汉语 | 3.1×10⁶ | 78.5×10⁶ |
| 印尼语–汉语 | 7.7×10⁶ | 151.5×10⁶ |
以波斯语为例,这些语料库来源包括 WikiMatrix、XLEnt、Tanzil(《古兰经》译本)、TED 演讲字幕、QED 教育字幕、Ubuntu 本地化文件等——“几乎全是自动抽取 + 特定领域”,缺乏高质量的人工翻译语料。
人工构建虽然能保证质量和领域覆盖,但存在一系列实操难题:
- 如何获得足够规模的原始语料?
- 如何清洗、筛选出合适的句子进行翻译?
- 如何做好项目规划管理?
- 如何做到“经济高效”?
以“波斯语、印地语、印尼语”三种语言为例,给出一条可复制的、标准化的小语种 → 汉语平行语料库人工构建路线。
💡 “选语言的理由”:三种语言分别是西亚、南亚、东盟地区的重要语言,也是"一带一路"国家的重要官方语言。其中印地语+乌尔都语的使用人数仅次于汉语;波斯语的分支达利语和塔吉克斯坦语分别是阿富汗和塔吉克斯坦的官方语言。
二、总体方案:三阶段流水线
“目标”:每个语种各构建 “50 万条” 高质量人工平行句对。
“语料来源”:涵盖多领域内容的互联网新闻网站,保证数据领域覆盖广。
整体流程分三个阶段(可并行推进):
阶段一:译员团队组建 + 语料爬取 + 整理(同期进行)
│
阶段二:试译文件测试
│ ├─ 测试并统计译员的翻译水平、速度、质量 → 把控工期
│ └─ 收集译员反馈 → 了解语料问题、及时调整
│
阶段三:正式翻译
├─ 项目进度记录
├─ 语料收发
└─ 检验(初筛 → 抽样 → 第三方质检)
三、构建方法详解
3.1 原始语料采集:CommonCrawl + 自研爬虫
采集分三步:
- 选取著名新闻网站作为爬虫工具 “CommonCrawl” 的初始网页;
- 以这些网页为起点,大规模搜索目标语种网页,获得足够的原始文本;
- 清洗后,每个语种各得到 “50 万条”语料。
CommonCrawl 是一个非盈利组织,自 2008 年起免费公开爬取的网页档案(已包含拍字节级数据,每月更新一次)。论文使用其 “CommonCrawl Capture Index(CDX)” 索引对网页档案进行筛选,找到与初始网页最相关的网页集合。
同时,作者还实现了“多进程网页文本爬取工具”作为补充,流程为:
广度优先搜索同域名链接 → 拉取网页前端代码、去除 HTML 标签 → 分词工具分句 → 每行一句存入文件
以波斯语为例,初始网站选取了 5 个阿富汗知名新闻机构(如 The Khaama Press News Agency、TOLOnews 等),并“优先选取年份较新的网页”保证时效性。
3.2 数据清洗:四道关卡
挑选合理的原始语料直接影响最终语料库质量,论文做了四件事:
| 步骤 | 操作 | 理由 |
|---|---|---|
| ① 去重 | 与现存小语种–汉语平行语料库对比去重 | 避免重复句对 |
| ② 去长句 | 只保留 “20–50 词”的句子 | 过长句子在 NMT 训练时计算资源消耗大、显存占用不稳定 |
| ③ 保信噪比 | 去除目标语种 “Unicode Block 字符含量 < 75%” 的句子 | 剔除混入其他语言引用、无关符号过多的句子 |
| ④ 保顺序 | 尽量保留爬取语料的原始顺序 | 试译反馈后加入:语料有上下文参考性,译员翻译更连贯高效 |
一个有意思的失败尝试:主动学习筛选
基于“信息增益的主动学习”方法筛选语料——按句子中"未见过的 n-gram 数量 ÷ 句子长度"打分排序,每轮挑选得分最高的句子,选出对模型训练最有信息量的句子:
sentence_weight = Σ (n=1..2) #(unseen_n_grams) / |sentence|
但“试译后译员反馈不佳”:筛出的句子包含大量人名、地名、机构名,且全是长难句,译员要反复核对专名译文并保持统一,翻译效率严重下降。
原因分析:新闻领域的人名、地名、机构名本来就是报道的必要元素,n-gram 方法不可避免地会挑出长难句。这类主动学习方法更侧重于“在已有双语语料基础上挑选”,直接用于单语数据筛选需要补充更多限制条件。
💡“学术上‘最优’的筛选策略,未必适合真实的人工翻译流水线”。
3.3 译员组织:高年级学生代替专业译员
专业译员费用高昂(小语种尤甚),且国内小语种专业译员数量有限。论文的方案是:“启用相关语种专业的高年级学生及毕业生”。
- 每个语种招募约 “30 名”学生译员;
- 国内外高校。
3.4 项目管理流程
50 万句对的翻译是一个不折不扣的工程项目,论文的管理流程值得借鉴:
“① 材料组织”
- 每个语种 50 万条数据用 “Excel” 组织:A 列 = 句段编号,B 列 = 原文,C 列 = 译文;
- 原文有问题无法翻译时,译员在表格前端标记
ERROR; - “共享文档维护术语汇总表”:人名、地名、机构名由译员协商登记,保证专名翻译统一;
- 句中英文词若是公开缩写(如 IBM)直接保留,否则正常翻译。
“② 翻译策略”
- 译员可凭自身知识直接翻译,也可基于所提供的小语种机器翻译模型采用 “MTPE(机器翻译后编辑)” 方式,自由选择;
- 统计结果:“大部分译员采用了 MTPE”。
“③ 语料分发”
- 以每 “100 条”语料为一个 Excel 文件进行分割;
- 按批次时间节点分发,另建“批次进度表”统计:文件名称、负责译员、译文返回时间、是否初筛、质检结果、完成状态。
“④ 译文回收”
- 回收译文并初筛;
- 初筛合格数据抽样后,提交第三方翻译公司人工质检。
3.5 质量控制:初筛 + 人工质检双保险
“第一道:译文初筛——译后编辑率检查”
检查译员对机器翻译的依赖程度:
- 调用“谷歌翻译”(经对比,其在这 3 个语种上效果优于其他平台)翻译原始语料;
- 用“编辑距离、Needleman–Wunsch 算法、n-gram precision 的算术平均数”计算译员译文与谷歌译文的相似度,得到译后编辑率;
- “译后编辑率低于 10% → 判定过度依赖机器 → 返工重翻”。
“第二道:人工质检——第三方翻译公司”
每个 Excel 文件抽样 “10%”,由职业译员按 0–5 分标准打分:
| 分数 | 打分标准 |
|---|---|
| 5 分 | 可以接受,翻译得很好(用词恰当,翻译通畅、贴切) |
| 4 分 | 可以接受,翻译得较好(意思相符,用词恰当,但可以更好) |
| 3 分 | 可以接受,翻译得一般(句义大致正确,无明显错误,个别词语暧昧) |
| 2 分 | 不能接受,翻译得较差(句子不通顺,句义表达不清) |
| 1 分 | 不能接受,大段漏译 |
| 0 分 | 不能接受,翻译与原文完全无关 |
质检不合格 → 判定该译员整体翻译不通过 → “所有文件返工”,重新进入质检循环,直至合格。
四、语料库统计结果
4.1 完成情况
| 语言对 | 完成句对数 |
|---|---|
| 波斯语–汉语 | 501,000 |
| 印地语–汉语 | 511,932 |
| 印尼语–汉语 | 501,700 |
4.2 质检结果
共抽检波斯语 50,031 条、印地语 51,727 条、印尼语 50,344 条。
“第三方翻译公司打分”(单位:%):
| 语言 | 小于 3 分 | 3 分 | 4 分 | 5 分 |
|---|---|---|---|---|
| 波斯语 | 1.5 | 94.6 | 3.7 | 0.1 |
| 印地语 | 0.5 | 32.1 | 45.8 | 21.5 |
| 印尼语 | 0.5 | 30.9 | 49.1 | 19.5 |
“第三方质检二次打分”(单位:%):
| 语种 | 小于 3 分 | 3 分 | 4 分 | 5 分 |
|---|---|---|---|---|
| 波斯语 | 1.2 | 7.8 | 30.4 | 60.6 |
| 印地语 | 4.1 | 13.4 | 12.0 | 70.5 |
| 印尼语 | 6.9 | 23.0 | 27.2 | 42.9 |
二次质检评分普遍高于首轮打分,说明“第三方翻译公司判定时较为严格,实际语料质量可能优于其估计”。
五、实验验证:语料库真的有用吗?
5.1 实验设置
- “模型”:Transformer(编码器/解码器各 6 层,嵌入尺寸 512,前馈层维度 2048,注意力头数 8,批尺寸 5000 词,学习率 0.0005,dropout 0.25)
- “评估指标”:BLEU
- “三类训练集”:
- 第 1 类:现有公开语料库清洗合并(基线)
- 第 2 类:本文构建的语料库
- 第 3 类:第 1 类 + 本文语料库合并
- “验证/测试集”:均从本文语料库中划分(波斯语 922 条、印地语 1000 条、印尼语 841 条)
5.2 BLEU 结果
| 语种 | 第 1 类数据集 | 第 2 类数据集 | 第 3 类数据集 |
|---|---|---|---|
| 波斯语–汉语 | 4.19 | “42.71” | “44.12” |
| 印地语–汉语 | 4.17 | “28.30” | “28.85” |
| 印尼语–汉语 | 25.15 | 15.15 | 16.42 |
“结果分析”:
- 波斯语、印地语模型在第 2、3 类数据集上效果显著更好,直接证明了所构建语料库的有效性;
- 波斯语、印地语在第 1 类数据集上 BLEU 极低——测试集与旧公开语料库的“领域分布差别较大”;
- 印尼语情况相反:旧语料库反而更好,第 3 类合并集也未带来提升——可能是两个语料库的“数据类型分布差异”导致。
💡 一个重要启示:“领域匹配比数据规模更关键”。测试集和训练集的领域分布,会彻底改变"哪个语料库更好"的结论。
六、相关工作速览
自动构建方向的主流工作:
- “CCAligned”:从 86 个 CommonCrawl 网页快照挖掘,利用 URL 标志做网页篇章对齐,平均准确率 94.5%,发布 8144 个语言对;
- “CCMatrix”:从 327 亿条句子中挖掘出 45 亿平行句对,覆盖 38 种语言;
- “预训练模型过滤”:用 BERT 衡量平行句对相似度、GPT 平衡各领域语料数量,解决网络文本噪声问题;
- “回译过滤”:对回译得到的伪源语言语料再次回译,按句子相似度保留高质量伪平行句对。
其他低资源语言对的实践:
- “英–泰语”:融合网络文本、政府文件、预训练模型生成文本等多领域语料,难句人工翻译、易句众包;
- “英–缅甸语”:基于余弦相似度 + 孪生 BERT 过滤回译噪声,并针对缅甸语特点设计无监督子词分割模型;
- “英–阿拉伯语”:以推特内容为源构建平行语料库,方法具有普适性。
与这些工作相比,本文的独特之处在于:“面向‘小语种 → 汉语’这一被英语中心主义忽视的方向,给出完整的人工构建工程方法”。
七、经验建议
- “了解语种特点,做好预处理”——不同语种有不同的文字系统和语言特性,预处理策略要针对性调整;
- “正式开工前必做试译”——试译能同时反映译员素质和语料情况,对原始语料及时调整、项目进度把控至关重要(本文的主动学习筛选失败,正是靠试译反馈发现的);
- “专名管理要前置”——共享术语表从第一天就开始维护,避免后期返工统一;
- “质控闭环要严格”——初筛(译后编辑率 ≥ 10%)+ 抽样 10% 人工质检 + 不合格整体返工,用流程而不是信任保证质量。
八、总结
“相对完整、经济高效的小语种 → 汉语平行语料库人工构建方法”:
- ✅ 成功构建波斯语、印地语、印尼语 → 汉语各 “50 万条”高质量平行语料;
- ✅ 实验证明语料库显著提升小语种 NMT 模型训练效果(波斯语 BLEU 从 4.19 → 44.12);
- ✅ 沉淀了从语料采集、清洗、译员组织、项目管理到质量控制的“全流程工程经验”。
对于正在做低资源语言 NMT、或需要构建垂直领域平行语料的同学,这套“新闻语料爬取 + 学生译员 + MTPE 辅助 + 双重质检”的路线非常值得参考。
转载自 CSDN-专业IT技术社区
原文链接:https://blog.csdn.net/m0_58278710/article/details/170486785



