sud0301 / essentials_for_cil Goto Github PK
View Code? Open in Web Editor NEWOfficial repository of the paper 'Essentials for Class Incremental Learning'
Official repository of the paper 'Essentials for Class Incremental Learning'
I can't find where is "coarse_label_names" used in the code?
I want to use the checkpoint.pth , load it and and want to do predition , can you please share a small snippet for this
I expect to get the result of CCIL+H-Aug 71.66, but I get 68.25.
I conduct the following command
python main_cifar.py \
--new-classes 10 \
--start-classes 50 \
--cosine \
--kd \
--w-kd 1 \
--epochs 120 \
--exp-name 'kd_ep120_50_5' \
--save \
--num-sd 0\
--aug
Results:
[79.56, 74.01666666666667, 69.98571428571428, 65.1375, 61.63333333333333, 59.16]
Avg accuracy: 68.24886904761904
Do I miss some details?
Expect your reply. Thanks
Hi, I think the following codes seem not proper:
essentials_for_CIL/main_cifar.py
Lines 321 to 337 in c7eb378
In 'main_imagenet.py' , line 321:
x = Variable(transform(Image.fromarray(img))).cuda()
You use Image.fromarray(img) to load a array type image object. However, channel order in img is BGR (opencv) while the channel order in Image is RGB, which means this operation will confuse the channel order.
你好,请问你尝试使用常规fc层做实验而非cosinelinear吗?如果尝试过,在论文算法下,两种分类器对比怎么样?
还有在使用cosinelinear分类器,我训练自己数据集,发现sigma固定增加,模型很快(10个epoch样子)就达到最佳,继续性能就会降得很快,你在训练中是否有该现象。
==> Current Class: [50, 51, 52, 53, 54, 55, 56, 57, 58, 59]
==> Building model..
in_features: 512 out_features: 50
current net output dim: 60
old net output dim: 50
[50, 51, 52, 53, 54, 55, 56, 57, 58, 59]
[0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59]
Constructing exemplar set for class-50...
exemplar set shape: 33
Done
Constructing exemplar set for class-51...
exemplar set shape: 33
Done
Constructing exemplar set for class-52...
exemplar set shape: 33
Done
Constructing exemplar set for class-53...
exemplar set shape: 33
Done
Constructing exemplar set for class-54...
exemplar set shape: 33
Done
Constructing exemplar set for class-55...
exemplar set shape: 33
Done
Constructing exemplar set for class-56...
exemplar set shape: 33
Done
Constructing exemplar set for class-57...
exemplar set shape: 33
Done
Constructing exemplar set for class-58...
exemplar set shape: 33
Done
Constructing exemplar set for class-59...
exemplar set shape: 33
Done
start self-distillation for original model.....
setting optimizer and scheduler.................
Traceback (most recent call last):
File "main_imagenet.py", line 472, in
train(model=net, old_model=old_net, epoch=args.epochs, optimizer=optimizer, scheduler=scheduler, lamda=args.lamda, train_loader=trainLoader, use_sd=False, checkPoint=50)
File "main_imagenet.py", line 151, in train
exemplar_set = ExemplarDataset(exemplar_sets, transform=transform_ori)
File "/home/ubuntu/Desktop/Alex/IL/essentials_for_CIL/data/data_loader_imagenet.py", line 17, in init
self.data = np.concatenate(data, axis=0)
File "<array_function internals>", line 6, in concatenate
ValueError: all the input arrays must have same number of dimensions, but the array at index 0 has 4 dimension(s) and the array at index 1 has 1 dimension(s)
Hi Sudhanshu,
Thank you for your nice work and codebase.
If possible, can you please share the version of ImageNet 1000 that you have used? Is it ImageNet 2017? If you have the download link handy, it would be very helpful if you could share them.
Thanks!
I am currently using 128 gigabytes of RAM, but out of memory comes out when I train with Imagenet. How many gigabytes of ram did you experiment with?
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.