Skip to content
This repository was archived by the owner on May 24, 2018. It is now read-only.
This repository was archived by the owner on May 24, 2018. It is now read-only.

ImageNet Example : train error does not decrease! #235

Open
@fangli1992

Description

@fangli1992

Hi,

I am training ImageNet using the default configuer file:ImageNet.conf.
I use the latest version cxxnet downloaded from https://github.com/dmlc/cxxnet ,and I got result like this:

[1] train-error:0.999173    train-rec@1:0.00181927  train-rec@5:0.00576143  test-error:0.999    test-rec@1:0.00106  test-rec@5:0.0051
[2] train-error:0.998985    train-rec@1:0.000984172 train-rec@5:0.00498642  test-error:0.999    test-rec@1:0.0013   test-rec@5:0.00538
[3] train-error:0.998985    train-rec@1:0.00102632  train-rec@5:0.00492242  test-error:0.999    test-rec@1:0.00102  test-rec@5:0.00448
[4] train-error:0.998985    train-rec@1:0.000982611 train-rec@5:0.00496066  test-error:0.999    test-rec@1:0.00098  test-rec@5:0.00444
[5] train-error:0.998985    train-rec@1:0.00105441  train-rec@5:0.00507695  test-error:0.999    test-rec@1:0.00112  test-rec@5:0.00566
[6] train-error:0.998985    train-rec@1:0.000970124 train-rec@5:0.00502935  test-error:0.999    test-rec@1:0.00098  test-rec@5:0.0046
[7] train-error:0.998985    train-rec@1:0.00096466  train-rec@5:0.0049271   test-error:0.999    test-rec@1:0.00078  test-rec@5:0.005
[8] train-error:0.998985    train-rec@1:0.00104271  train-rec@5:0.00509178  test-error:0.999    test-rec@1:0.001    test-rec@5:0.00484

I found a similar issues #84 but did not find right answer.
Here is the further information about my cxxnet and training(maybe this can help):

  • I use the latest version cxxnet downloaded from https://github.com/dmlc/cxxnet .
  • I did not modified the default conf file except adding 'shuffle = 1' as well as some Path.
# ImageNet.conf
data = train
iter = imgrec
#  image_list = "../../NameList.train"
  image_rec  = "./data/train.bin"
#  image_root = "../../data/resize256/"
  image_mean = "models/image_net_mean.bin"
  rand_crop=1
  rand_mirror=1
  shuffle = 1
iter = threadbuffer
iter = end

eval = test
iter = imgrec
#  image_list = "../../NameList.test"
  image_rec = "./data/val.bin"
#  image_root = "../../data/resize256/"
  image_mean = "models/image_net_mean.bin"
# no random crop and mirror in test
iter = end
...
...
  • I trained LeNet on MNIST with a conf file I converted from Caffe, and it works well!(default MNIST.conf works well too)
  • I did not use CUDNN(USE_CUDNN = 0)
  • I create the image_list_file in format like this:
# for train.bin (of course, this line is not in image_list_file)
1   0   n01440764/n01440764_10026.JPEG
2   0   n01440764/n01440764_10027.JPEG
3   0   n01440764/n01440764_10029.JPEG
4   0   n01440764/n01440764_10040.JPEG
5   0   n01440764/n01440764_10042.JPEG
...
63341   48  n01695060/n01695060_6356.JPEG
63342   48  n01695060/n01695060_6360.JPEG
63343   48  n01695060/n01695060_6371.JPEG
63344   48  n01695060/n01695060_6389.JPEG
63345   48  n01695060/n01695060_64.JPEG
63346   48  n01695060/n01695060_6400.JPEG
63347   48  n01695060/n01695060_6403.JPEG
...

# for test.bin(In my conf, it is val.bin. Of course, this line is not in image_list_file. )
1   65  ILSVRC2012_val_00000001.JPEG
2   970     ILSVRC2012_val_00000002.JPEG
3   230     ILSVRC2012_val_00000003.JPEG
4   809     ILSVRC2012_val_00000004.JPEG
5   516     ILSVRC2012_val_00000005.JPEG
6   57  ILSVRC2012_val_00000006.JPEG
  • I use ./bin/im2rec image_list_file image_root_dir train.bin resize=256 to create rec file.
  • I also tyied to run on the eraly version cxxnet downloaded from https://github.com/dmlc/cxxnet/tree/revert-208-fix_aug , but got the same output.
  • I run kaiming.conf, and the output was still very bad==!

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions