fairseq-train
--tensorboard-logdir #可视化训练过程
--keep-last-epochs 10 # 默认保存最后10个epoch
--eval-bleu # 在验证阶段评估bleu
--eval-bleu-args '{"beam": 5, "max_len_a": 1.2, "max_len_b": 10}' # 评估bleu的参数
--eval-bleu-detok moses # 验证阶段时使用moses工具来进行detokenize
--eval-bleu-remove-bpe # 在验证阶段评估bleu时 remove-bpe
--best-checkpoint-metric bleu # 选择best-checkpoint的策略,默认是loss最低,这里使用bleu
--maximize-best-checkpoint-metric # 最大化选择best-checkpoint的策略,在使用bleu时使用
--patience 10 # 如果连续10次验证运行的有效性能没有提高,则提前停止训练
fairseq-generate
--beam 5 # 解码时beam search设置为5
--remove-bpe # 生成remove bpe之后的结果
--scoring sacrebleu # 默认使用bleu
--sacrebleu # 效果同上
--quiet # 只打印最终成绩
fairseq-score
-s, --sys # 机器翻译模型的输出
-r, --ref # 目标语句
-o, --order # n-gram的阶数,默认为4
--ignore-case # 大小写敏感的分数
--sacrebleu # 使用sacrebleu
--sentence-bleu # 报告句子级别的BLEU
fairseq-interactive
--path # 模型checkpoint的路径
data
--beam # beam size
--source-lang # 源语言类型
--target-lang # 目标语言类型
--tokenizer # 使用的tokenizer,可以选择使用 moses、nltk和space
--bpe # 使用的bpe,可以选择用 byte_bpe、bytes、characters、fastbpe、gpt2、bert、hf_byte_bpe、sentencepiece、 subword_nmt
--bpe-codes # 指定训练得到的bpe-codes
--max-len-a # 生成的最大长度为 ax+b(x是源序列长度),这里指定a,默认为0
--max-len-b # 生成的最大长度为 ax+b(x是源序列长度),这里指定b,默认为200
--min-len # 最小生成长度,默认为1