arthurdouillard / incremental_learning.pytorch

A collection of incremental learning paper implementations including PODNet (ECCV20) and Ghost (CVPR-W21).
MIT License
383 stars 60 forks source link

result about Imagenet1000 #27

Closed userDJX closed 3 years ago

userDJX commented 3 years ago

Hello, thank you very much for being able to open source this code. I want to ask, the result I ran with your code in Imagenet1000 is two points lower than the one you report in your paper. Could you please help me check it?

arthurdouillard commented 3 years ago

Hey, which setting of imagenet1000?

userDJX commented 3 years ago

I used your podnet_cnn_imagenet1000.yaml

arthurdouillard commented 3 years ago

You may want, if you can as I did, to increase the batch size in the options file (64 -> 256) and the learning rate (0.05 -> 0.2).

But more importantly, did you specify the initial set of classes (--initial_increment 500) and the increment (--increment 100)?

userDJX commented 3 years ago

Yes I set the classes as you said. Sorry, I can not set so large batch size, it is out of memory.

arthurdouillard commented 3 years ago

Last potential solution, have you taken in account this recent fix: https://github.com/arthurdouillard/incremental_learning.pytorch/commit/889359036fea30aa5f8dd2b69455bce507dd601c ?

If it still doesn't help, I'm not sure I can be of any help. You may want to try a distributed model on several gpus to have this kind of batch size, or aggragated gradients over several sub-batches.

userDJX commented 3 years ago

I use the previous weight decay as 0.0005. I also started running the fixed version using 0.0001 but the results for first several steps seem very similar as the one using 0.0005. I will wait till the final result. Thank you!

arthurdouillard commented 3 years ago

Don't forget that the fix also contains a correction on the memory size, that's crucial ;)

Good luck!