语言:
- 多语言
- 阿拉伯语
- 捷克语
- 德语
- 英语
- 西班牙语
- 爱沙尼亚语
- 芬兰语
- 法语
- 古吉拉特语
- 印地语
- 意大利语
- 日语
- 哈萨克语
- 韩语
- 立陶宛语
- 拉脱维亚语
- 缅甸语
- 尼泊尔语
- 荷兰语
- 罗马尼亚语
- 俄语
- 僧伽罗语
- 土耳其语
- 越南语
- 中文
- 南非荷兰语
- 阿塞拜疆语
- 孟加拉语
- 波斯语
- 希伯来语
- 克罗地亚语
- 印尼语
- 格鲁吉亚语
- 高棉语
- 马其顿语
- 马拉雅拉姆语
- 蒙古语
- 马拉地语
- 波兰语
- 普什图语
- 葡萄牙语
- 瑞典语
- 斯瓦希里语
- 泰米尔语
- 泰卢固语
- 泰语
- 他加禄语
- 乌克兰语
- 乌尔都语
- 科萨语
- 加利西亚语
- 斯洛文尼亚语
许可证: mit
标签:
mBART-50多语言翻译模型
mBART-50是基于"多语言去噪预训练"目标训练的多语言序列到序列模型。该模型由论文《通过可扩展多语言预训练与微调实现多语言翻译》首次提出。
模型描述
mBART-50是多语言序列到序列模型,其创新性在于展示了通过多语言微调可以创建多语言翻译模型。不同于传统单方向微调,该模型同时对多个翻译方向进行微调。基于原始mBART模型扩展新增25种语言,最终支持50种语言的多语言机器翻译。
多语言去噪预训练原理:模型通过拼接N种语言数据构建训练集:D = {D1, ..., DN}
,其中每个Di代表语言i
的单语文档集合。采用两种噪声方案处理源文档:随机打乱原句顺序,以及创新的文本片段掩码方案(用单个掩码标记替换文本片段)。模型需重构原始文本,每个实例中35%的单词通过泊松分布(λ=3.5
)随机采样进行掩码。解码器输入为偏移一位的原始文本,使用语言ID符号LID
作为预测句子的起始标记。
应用场景与限制
mbart-large-50
是预训练模型,主要适用于翻译任务的微调,也可用于其他多语言序列到序列任务。访问模型中心可获取已微调的版本。
训练方式
作为多语言模型,其输入序列需要特殊格式:在源文本和目标文本前添加语言ID前缀。文本格式为[语言代码] X [结束符]
,其中X分别代表源文本或目标文本,语言代码
对应源语言或目标语言代码。注意不使用bos
标记。按此格式准备数据后,即可像常规序列到序列模型进行训练。
from transformers import MBartForConditionalGeneration, MBart50TokenizerFast
model = MBartForConditionalGeneration.from_pretrained("facebook/mbart-large-50")
tokenizer = MBart50TokenizerFast.from_pretrained("facebook/mbart-large-50", src_lang="en_XX", tgt_lang="ro_RO")
src_text = " UN Chief Says There Is No Military Solution in Syria"
tgt_text = "Şeful ONU declară că nu există o soluţie militară în Siria"
model_inputs = tokenizer(src_text, return_tensors="pt")
with tokenizer.as_target_tokenizer():
labels = tokenizer(tgt_text, return_tensors="pt").input_ids
model(**model_inputs, labels=labels)
支持语言
阿拉伯语(ar_AR)、捷克语(cs_CZ)、德语(de_DE)、英语(en_XX)、西班牙语(es_XX)、爱沙尼亚语(et_EE)、芬兰语(fi_FI)、法语(fr_XX)、古吉拉特语(gu_IN)、印地语(hi_IN)、意大利语(it_IT)、日语(ja_XX)、哈萨克语(kk_KZ)、韩语(ko_KR)、立陶宛语(lt_LT)、拉脱维亚语(lv_LV)、缅甸语(my_MM)、尼泊尔语(ne_NP)、荷兰语(nl_XX)、罗马尼亚语(ro_RO)、俄语(ru_RU)、僧伽罗语(si_LK)、土耳其语(tr_TR)、越南语(vi_VN)、中文(zh_CN)、南非荷兰语(af_ZA)、阿塞拜疆语(az_AZ)、孟加拉语(bn_IN)、波斯语(fa_IR)、希伯来语(he_IL)、克罗地亚语(hr_HR)、印尼语(id_ID)、格鲁吉亚语(ka_GE)、高棉语(km_KH)、马其顿语(mk_MK)、马拉雅拉姆语(ml_IN)、蒙古语(mn_MN)、马拉地语(mr_IN)、波兰语(pl_PL)、普什图语(ps_AF)、葡萄牙语(pt_XX)、瑞典语(sv_SE)、斯瓦希里语(sw_KE)、泰米尔语(ta_IN)、泰卢固语(te_IN)、泰语(th_TH)、他加禄语(tl_XX)、乌克兰语(uk_UA)、乌尔都语(ur_PK)、科萨语(xh_ZA)、加利西亚语(gl_ES)、斯洛文尼亚语(sl_SI)
BibTeX引用格式
@article{tang2020multilingual,
title={Multilingual Translation with Extensible Multilingual Pretraining and Finetuning},
author={Yuqing Tang and Chau Tran and Xian Li and Peng-Jen Chen and Naman Goyal and Vishrav Chaudhary and Jiatao Gu and Angela Fan},
year={2020},
eprint={2008.00401},
archivePrefix={arXiv},
primaryClass={cs.CL}
}