isht7 / pytorch-deeplab-resnet

DeepLab resnet v2 model in pytorch
MIT License
602 stars 118 forks source link

How can I train my own dataset? #22

Closed shonehang closed 6 years ago

shonehang commented 6 years ago

Thank you for sharing this code, I can train VOC database by your code.

Issue 1:I can train VOC,but it stoped at 17636 when I set max iter is 40000. I want to know the reason, 1727430532

Issue 2:I want to train my own dataset, which has 7 classes. But the model dict size of the init model is for 21 classes. How can I train this network without init model using my dataset?

Thank you very much! Look forward to your reply! @isht7

isht7 commented 6 years ago

The error you show seems to be because data_list has been exhausted. You can modify this and change 10 to 20 to remove this error. For training network with 7 classes, read the Readme, updates section, second point under 24 June 2017.

isht7 commented 6 years ago

The first error shouldn't have occurred. Maybe you are not training on the full set of images.

shonehang commented 6 years ago

Thank you very much!!! I have solved my problem according to your reply. Yes, I should change the line you pointed. Because my maxIter=40000, batch_size=6 and the number of train_aug=10582, so 40000 × 6 / 10582 ≈ 23, I changed like this: for i in range(23) and everything will be OK! Now I can train my own dataset too, my train dataset is 176 images of 1000×1000 size. I set scale=1.0, batch_size=1, maxIter=30000, I must zoom my images to be 890 × 890 and the memory usage is 11787MB(Titan X). If the image size becomes larger, it will be out of memory, so now I only can train images of 890 × 890 size. Thank you~