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

code #2

Open
songbohui opened this issue Apr 30, 2024 · 4 comments
Open

code #2

songbohui opened this issue Apr 30, 2024 · 4 comments

Comments

@songbohui
Copy link

我现在想复现您在论文中基于COCO2014数据集的图像描述任务,我发现您提供的config.py文件,epoch与seqlen分别是10和80,这好像是拓展任务段落描述的参数,请问,我想实现基于COCO2014数据集的图像描述任务,都需要修改那些地方?

实验过程:我直接将config.py文件中的epoch和seqlen分别修改为论文中提到的的60和24,最后B-4结果只有24.9%。可能还需要修改其他地方,我并不知道,希望你看到能回复一下,谢谢!

@wangyuchi369
Copy link
Owner

@songbohui 你好,感谢关注LaDiC!
或许可以关注一下结果的具体表现,比如生成的caption是句子不通顺还是和图片匹配度不高,loss是否收敛,是否下降正常?

关于对于超参数的调整,我们有以下建议:

  1. batch size: 现在config.py里bsz是为了debug方便,其实是过小的,您应该根据显存大小适当增大,例如,我们最少设置的为64,此外,我们是在8张V100上并行训练的,因此实际batch size应该为64*8。如果您的计算资源不足,建议调小一点学习率,可以参考这个tutorial
  2. var_dilate:这一参数主要是对噪声放缩,可以加快收敛速度,增强效果,参考自difformer,建议您开启(设为4或9)。
  3. 当前的inference步数是5,建议您增加这一步数,即调整coco_eval.py里的STEP
  4. 其他:可以尝试调整classifier free的weight,back$refine的back步数等

感谢您的建议!我们后续也会更新一版config.py

@songbohui
Copy link
Author

我已经尝试修改了,我输出了每个batch后的loss。发现在15轮之后,loss基本就固定10左右,不变化了,分数也稳定在20+左右,请问您遇到过吗?或者怎么解决它?感谢!

@wangyuchi369
Copy link
Owner

你好!

loss为10是相对正常的,我们的模型大概为8-9左右。尽管loss相对平稳了,也建议您继续训练下去,可以参考diffusion model的loss下降趋势是什么样的? - 小胖的AI图像复原的回答 - 知乎。建议至少训练60个epoch,考虑到不同batch size以及learning rate的影响可以尝试增多训练epoch数如120。

此外,我们也更新了一些代码中的训练和测试超参默认值,你可以check一下。

@songbohui
Copy link
Author

感谢您的回答!我看您更新了config.py和coco_eval.py文件,我再次尝试一下。

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

2 participants