🚀 FSMT
FSMT是一个用于机器翻译的模型,它基于fairseq的wmt19 transformer架构,支持俄语和英语之间的翻译。该模型在机器翻译任务中具有较高的准确性和效率。
🚀 快速开始
安装
你可以通过以下步骤安装所需的库:
pip install transformers
使用示例
以下是一个使用FSMT进行俄语到英语翻译的示例代码:
from transformers import FSMTForConditionalGeneration, FSMTTokenizer
mname = "facebook/wmt19-ru-en"
tokenizer = FSMTTokenizer.from_pretrained(mname)
model = FSMTForConditionalGeneration.from_pretrained(mname)
input = "Машинное обучение - это здорово, не так ли?"
input_ids = tokenizer.encode(input, return_tensors="pt")
outputs = model.generate(input_ids)
decoded = tokenizer.decode(outputs[0], skip_special_tokens=True)
print(decoded)
✨ 主要特性
- 多语言支持:支持俄语和英语之间的双向翻译。
- 模型多样:提供了四种不同的翻译模型,包括
wmt19-en-ru
、wmt19-ru-en
、wmt19-en-de
和wmt19-de-en
。
📚 详细文档
模型描述
这是fairseq wmt19 transformer的俄语到英语的移植版本。更多详细信息,请参考Facebook FAIR的WMT19新闻翻译任务提交。
缩写FSMT代表FairSeq Machine Translation。所有四种模型均可使用:
预期用途和限制
使用方法
你可以使用上述的示例代码进行翻译。
限制和偏差
- 原始模型(以及这个移植版本)似乎不能很好地处理包含重复子短语的输入,内容会被截断。
训练数据
预训练权重与fairseq发布的原始模型相同。更多详细信息,请参考论文。
评估结果
语言对 |
fairseq |
transformers |
ru-en |
41.3 |
39.20 |
得分略低于fairseq
报告的得分,因为transformers
目前不支持:
- 模型集成,因此移植了性能最佳的检查点(
model4.pt
)。
- 重新排序。
得分是使用以下代码计算的:
git clone https://github.com/huggingface/transformers
cd transformers
export PAIR=ru-en
export DATA_DIR=data/$PAIR
export SAVE_DIR=data/$PAIR
export BS=8
export NUM_BEAMS=15
mkdir -p $DATA_DIR
sacrebleu -t wmt19 -l $PAIR --echo src > $DATA_DIR/val.source
sacrebleu -t wmt19 -l $PAIR --echo ref > $DATA_DIR/val.target
echo $PAIR
PYTHONPATH="src:examples/seq2seq" python examples/seq2seq/run_eval.py facebook/wmt19-$PAIR $DATA_DIR/val.source $SAVE_DIR/test_translations.txt --reference_path $DATA_DIR/val.target --score_path $SAVE_DIR/test_bleu.json --bs $BS --task translation --num_beams $NUM_BEAMS
注意:fairseq报告使用的束宽为50,因此如果你使用--num_beams 50
重新运行,应该会得到略高的分数。
数据来源
BibTeX引用和引用信息
@inproceedings{...,
year={2020},
title={Facebook FAIR's WMT19 News Translation Task Submission},
author={Ng, Nathan and Yee, Kyra and Baevski, Alexei and Ott, Myle and Auli, Michael and Edunov, Sergey},
booktitle={Proc. of WMT},
}
TODO
📄 许可证
本项目采用Apache-2.0许可证。