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

关于预训练权重 #7

Closed
xuebaobizui1 opened this issue Nov 4, 2022 · 3 comments
Closed

关于预训练权重 #7

xuebaobizui1 opened this issue Nov 4, 2022 · 3 comments

Comments

@xuebaobizui1
Copy link

尊敬的大佬您好,感谢您的杰出的工作!!
我正在尝试复现您的代码,我发现您提供的在FSC147上Fine-tuned weights文件FSC147.pth大小为1.1G

我从头开始训练,在Pretrain on FSC147阶段得到的权重文件大小是1.3G,大小与您提供的pretrain.pth文件(1.3G)吻合

但是,在Finetune on FSC147阶段
选用mae_vit_base_patch16参数最后得到的pth文件大小为481.9MB
选用mae_vit_base6_patch16 = mae_vit_base_patch16_fim6参数训练后得到的权重文件大小674.5MB
这与您最终分享的权重FSC147.pth1.1G相差过大
我该如何才能够得到正确大小的权重文件
您是否能解答我的疑惑

@Verg-Avesta
Copy link
Owner

我不确定你是用我的代码跑的,还是自己复现的呢?
在fine-tune时选用mae_vit_base_patch16就好,mae_vit_base6_patch16是用来进行消融实验的。

从你说的我不太能明白问题出在哪,或许你可以多提供一些信息?
比如你对代码是否进行了什么改动?或者你得到的pth文件能够进行测试吗,结果如何?

@xuebaobizui1
Copy link
Author

我是使用您提供的代码在RTX3090下跑的,就改了数据集路径和权重的路径,我尝试输出了一下481.9MB的和1.1G的两个pth文件中l的key和value,然后查看了其中model部分的value.size()和value.dtype,两者都是torch.float32类型的以及层数和形状都一样。不知道为什么文件大小相差如此巨大。
并且·我跑完之后,最优的轮数在950-999轮之间,在FSC147上test了一下MAE: 13.89, RMSE: 82.74,然后我尝试了直接使用您提供的权重FSC147.pth(1.1G)测试结果是MAE: 12.44, RMSE: 89.86,看上去我自己得到的结果似乎是可信的,但是我仍然疑惑,在权重文件大小相差如此之大的情况下,我的结果真的是准确的嘛?您能否给我提供一些建议呢?

@Verg-Avesta
Copy link
Owner

我也不太确定为什么会这样。。
可能由于某些库的版本的问题,导致类似optimizer之类的参数没有被保存下来?
你可以详细地调查一下两个文件里value.size()和value.dtype的区别

不过其实问题不大(大概)
只要model部分的参数没有问题就可以,结果肯定是准确的

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