Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

按照readme训练wos的代码时的macro和micro都显示0.0 #23

Closed
Jiajianghao opened this issue Apr 24, 2023 · 11 comments
Closed

按照readme训练wos的代码时的macro和micro都显示0.0 #23

Jiajianghao opened this issue Apr 24, 2023 · 11 comments

Comments

@Jiajianghao
Copy link

No description provided.

@Rooooyy
Copy link

Rooooyy commented Apr 26, 2023

我也是这个问题,请问您解决了吗?

@Jiajianghao
Copy link
Author

Jiajianghao commented Apr 26, 2023 via email

@wzh9969
Copy link
Owner

wzh9969 commented Apr 26, 2023

请确保所有参数与readme中一致。我们已在多个不同环境下多次测试,均可以正常训练。

@Rooooyy
Copy link

Rooooyy commented May 16, 2023

我已解决,超参lambda不要使用代码里的默认值1,而是follow readme中的设置,e.g. wos 0.05.

@Rooooyy
Copy link

Rooooyy commented May 29, 2023

更新,改成参数lambda=0.05以后micro和macro的确都不为0,但始终不超过10. 解决办法是需要保证transformer==4.2.1 (作者对BERT底层进行了改动,4.13.0版本后官方代码有较大更新,4.2.1~4.12的版本我没有测试过,尽量还是要保证版本一致) ,此外fairseq要用0.10.x的版本,并重新预处理数据,preprocess_xxx.py + data_xxx.py,不要直接把别的repo当中的数据copy过来。我曾经试过用fairseq 0.12.2改data_wos.py的代码生成数据就会出现指标不超过10的问题。虽然以上不是复现的充分必要条件,但还是建议在同版本+同参数+同数据的条件下进行实验。

@Jiajianghao
Copy link
Author

Jiajianghao commented May 29, 2023 via email

@supersomnr
Copy link

更新,改成参数lambda=0.05以后micro和macro的确都不为0,但始终不超过10. 解决办法是需要保证transformer==4.2.1 (作者对BERT底层进行了改动,4.13.0版本后官方代码有较大更新,4.2.1~4.12的版本我没有测试过,尽量还是要保证版本一致) ,此外fairseq要用0.10.x的版本,并重新预处理数据,preprocess_xxx.py + data_xxx.py,不要直接把别的repo当中的数据copy过来。我曾经试过用fairseq 0.12.2改data_wos.py的代码生成数据就会出现指标不超过10的问题。虽然以上不是复现的充分必要条件,但还是建议在同版本+同参数+同数据的条件下进行实验。

您好,请问可以参考一下您的环境版本吗?我是初学者,然后复现论文的时候有一些问题,把fairseq从0.12.2改成0.10.x之后提示numpy有问题,然后cuda版本好像也不兼容。

@Rooooyy
Copy link

Rooooyy commented May 14, 2024

时间太过久远已经没有当时的环境了,这个问题后来我找到了另一种解决方式,把作者修改的BertModel和BertEmbedding都重命名,这样就与原版BERT不冲突,可以使用高版本的transformer。至于fairseq,这个跟cuda版本关系不大,我建议还是仔细研究一下报错日志,并且要确保你的平台有C++ runtime。

@supersomnr
Copy link

时间太过久远已经没有当时的环境了,这个问题后来我找到了另一种解决方式,把作者修改的BertModel和BertEmbedding都重命名,这样就与原版BERT不冲突,可以使用高版本的transformer。至于fairseq,这个跟cuda版本关系不大,我建议还是仔细研究一下报错日志,并且要确保你的平台有C++ runtime。

您好,我训练的时候有下图这样的报错,百度之后还是不知道怎么解决,请问你知道怎么解决吗?这和cuda版本没有关系吗?我的transformer版本是4.2.1,fairseq版本也已经调成了0.10.0。
1715680087952

@Rooooyy
Copy link

Rooooyy commented May 16, 2024

这个和cuda版本有关系,但问题不出在transformer和fairseq上。是torch-geometric三件套有问题,这个库对运行环境要求苛刻,要严格遵照文档重装https://pytorch-geometric.readthedocs.io/en/1.7.2/

@supersomnr
Copy link

supersomnr commented May 16, 2024 via email

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

4 participants