Code Monkey home page Code Monkey logo

Comments (12)

PANXiao1994 avatar PANXiao1994 commented on August 30, 2024

我下载了readme页面上的pretrain_checkpoint_last_RAS.pt,使用这个checkpoint复现无微调的德翻英结果。
数据集处理方面,经过预处理,使用mrasp的bpe词表进行切分后之后,在英法语料的句首分别拼接了LANG_TOK_DE和LANG_TOK_EN。
在生成时,使用generate的--prefix-size 1参数来保证目标端存在LANG_TOK_EN。
我使用了官方fairseq,tag:v0.10.2的代码,生成时使用的参数如下
CUDA_VISIBLE_DEVICES=8 python fairseq_cli/generate.py $DATA_PATH --path ~/mRASP/pretrain_checkpoint_last_RAS.pt --gen-subset valid --beam 5 --batch-size 16 --max-len-a 0 --max-len-b 256 --skip-invalid-size-inputs-valid-test --prefix-size 1

但我在德翻英的测试集合上只获得了bleu 17.53的结果。生成的部分翻译句子与bleu得分如下:
S-2633 LANG_TOK_DE Z@@ u viel Stre@@ ss
T-2633 LANG_TOK_EN To@@ o st@@ res@@ sed
H-2633 -0.26273542642593384 LANG_TOK_EN To@@ o Mu@@ ch Stre@@ ss

S-1076 LANG_TOK_DE Be@@ zir@@ k Pil@@ @@@ @ sen
T-1076 LANG_TOK_EN Pil@@ @@@ @ sen region
H-1076 -1.3391966819763184 LANG_TOK_EN Pil@@ son@@ g Dist@@ ric@@ t

S-2911 LANG_TOK_DE Dar@@ auf bin ich stol@@ z .
T-2911 LANG_TOK_EN That ple@@ @@@ @ as@@ es me .
H-2911 -0.3221472203731537 LANG_TOK_EN I am pro@@ ud of this .

希望作者提供一些改进的建议

Hello, we updated the repo and added a customized directory, you should generate with the following script:

fairseq-generate $DATA_PATH \
    --user-dir ${repo_dir}/user_dir \
    -s de \
    -t en \
    --skip-invalid-size-inputs-valid-test \
    --beam 5 --batch-size 16 --max-len-a 0 --max-len-b 256 \
    --path ${ckpt} \
    --task translation_w_langtok \
    --lang-prefix-tok LANG_TOK_EN \
    --nbest 1

from mrasp.

duterscmy avatar duterscmy commented on August 30, 2024

我参考上面的指令,使用这个 customized directory 进行解码,报错没有这个任务。
发现translation_w_langtok.py 这个文件是空的,这原本就是空的吗

from mrasp.

moonscar avatar moonscar commented on August 30, 2024

我参考上面的指令,使用这个 customized directory 进行解码,报错没有这个任务。
发现translation_w_langtok.py 这个文件是空的,这原本就是空的吗

那个commit提交的三个文件尚未实现,接着等吧

from mrasp.

PANXiao1994 avatar PANXiao1994 commented on August 30, 2024

不好意思,刚刚提交了

from mrasp.

PANXiao1994 avatar PANXiao1994 commented on August 30, 2024

注意 --lang-prefix-tok 后面的language token是目标端语言的language token,比如en2de的话就用--lang-prefix-tok LANG_TOK_DE

from mrasp.

alphadl avatar alphadl commented on August 30, 2024

您好!很棒的工作~ 不过我有个疑问哈。WMT14 En-De 4.5M训练集 from-scratch训练,在newstest19测试的结果大约是36~37。虽然mbart原文没有这个setting,但是有同规模下的WMT17 En-Lv,4.5M这个规模使用mbart是会显著提升的。也就是说应该大于37~ 为何文中w/ mbart仅仅30.5 w/ mRASP也才35.2? 希望能解答

from mrasp.

linzehui avatar linzehui commented on August 30, 2024

您好!很棒的工作~ 不过我有个疑问哈。WMT14 En-De 4.5M训练集 from-scratch训练,在newstest19测试的结果大约是3637。虽然mbart原文没有这个setting,但是有同规模下的WMT17 En-Lv,4.5M这个规模使用mbart是会显著提升的。也就是说应该大于37 为何文中w/ mbart仅仅30.5 w/ mRASP也才35.2? 希望能解答

你好,你的问题是为什么mbart在en-lv上有提升而en-de没有提升吗?似乎mbart的en-de使用的是19的训练集,所以他在table 3标注en-de训练集的数量是28M,在大于10M规模的数据集上mbart就会有下降了。另外你说的36-37是根据哪篇论文?mbart report的结果是 30.9。

from mrasp.

alphadl avatar alphadl commented on August 30, 2024

您好!很棒的工作~ 不过我有个疑问哈。WMT14 En-De 4.5M训练集 from-scratch训练,在newstest19测试的结果大约是3637。虽然mbart原文没有这个setting,但是有同规模下的WMT17 En-Lv,4.5M这个规模使用mbart是会显著提升的。也就是说应该大于37 为何文中w/ mbart仅仅30.5 w/ mRASP也才35.2? 希望能解答

你好,你的问题是为什么mbart在en-lv上有提升而en-de没有提升吗?似乎mbart的en-de使用的是19的训练集,所以他在table 3标注en-de训练集的数量是28M,在大于10M规模的数据集上mbart就会有下降了。另外你说的36-37是根据哪篇论文?mbart report的结果是 30.9。

谢谢回复~ 提4.5M为了说 mabrt在这个规模是work的,效果比from-scratch要好。我们自己组的结果wmt14 ende训练transformer_big,在newstest19测试是~37.5BLEU,这样的话w/ mbart,这个setting应该要好于37.5。

from mrasp.

alphadl avatar alphadl commented on August 30, 2024

mbart Table3 报的 30.9 BLEU 是从wmt19 ende随机抽取了28M训练数据,在newstest14做的测试。所以30.9是比较合理的~

from mrasp.

alphadl avatar alphadl commented on August 30, 2024

p.s. wmt19 ende 的训练数据 训练transformer_big,在newstest 19上测试应该是 ~39-40。 anyway, 我觉得你们model的提升很合理,建议再check一下table 5的测试集~

from mrasp.

zhangtianjack avatar zhangtianjack commented on August 30, 2024

您好,我利用你们提供2亿6千万的训练集和bpe code和vocab文件来预训练一个多语言模型,但按照您上述提及的customized task来进行无微调的EN-DE翻译任务会报错没有dict.en.txt词典。因为我使用你们的融合语料库和字典进行的训练。那是否代表我需要自建一个新的英语德语的字典用作翻译呢?还有这个DATA_PATH的训练集和开发集也都是以src和trg为标识符的,他们需要出现在无微调测试中的DATA_PATH目录中吗?

from mrasp.

PANXiao1994 avatar PANXiao1994 commented on August 30, 2024

测试无微调的结果首先需要在source端手动加上source language token,比如__EN__,然后再进行binarize处理。参考这个:

fairseq-generate $DATA_PATH \
    --user-dir ${repo_dir}/user_dir \
    -s de \
    -t en \
    --skip-invalid-size-inputs-valid-test \
    --beam 5 --batch-size 16 --max-len-a 0 --max-len-b 256 \
    --path ${ckpt} \
    --task translation_w_langtok \
    --lang-prefix-tok LANG_TOK_EN \
    --nbest 1

from mrasp.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.