fmcp / EndToEndIncrementalLearning

End-to-End Incremental Learning
http://arxiv.org/abs/1807.09536
66 stars 18 forks source link

imagenet training help #4

Open wuyuebupt opened 5 years ago

wuyuebupt commented 5 years ago

@fmcp Thanks for the help before on the cifar dataset.

Now I am trying to use the code to reproduce the imagenet results. I notice that in the readme.md, it mentioned that:

For ImageNet, you only have to change the number of classes and relative paths to the dataset.

According to the 4 steps under the USAGE, I guess the first step I have to split the data first and then train a first model using the ResNet-Matconvnet (https://github.com/zhanghang1989/ResNet-Matconvnet).

In cifar, the build_imdbs.m loads all data into memory and then splits the data. I am wondering what's gonna to be load for the ImageNet data.

Thanks for the help and looking forward to the reply.

wuyuebupt commented 5 years ago

@fmcp

I have modified the build_imdbs.m to separate 100 imagenet classes out and train the first model using resnet-matconvenet.

However, when I do the incremental training, I met problem when building the exemplar set for the first increment (from 100 classes to 200 classes), if specific codes exemplars = build_exemplars_set([], exemplars, opts); It seems the codes pre-load all data into a 4-D array 32x32x3x6000 if 10 classes out of 100 in cifar. But for imagenet data, it seems we have to read images from filename list when doing the forward.

Will you be able to shared this part of codes to public as soon as possible ?

fmcp commented 5 years ago

Hi,

I uploaded the new file.

wuyuebupt commented 5 years ago

@fmcp Thanks for the new uploaded file. Will take a look at it later.

I fork the repo and are modifying the data loading part for imagenet. For the first batch data with 100 classes (10 increments from 1000 classes), I got around 94% top-5 accuracy. Now, I am modifying the incremental_learning.m file. It looks like that I have finished 1/4 of the codes. I am still working on the rest part.

FYI, the forked repo is at https://github.com/wuyuebupt/EndToEndIncrementalLearning