I am getting the following error when I try to run the finetune method as shown in the Lesson 1 notebook.
‘DirectoryIterator’ object has no attribute ‘nb_class’
Tab completion on batches shows num_classes and not nb_classes.
Anyone face similar issue ?
Hi @deepdreams, what keras version are you using ? some of the methods/properties were deprecated for keras2.Part1 was taught in 1.2
Thanks. Yeah, i had to modify the code a little bit to make it work. I am on Keras version 2.x. On a different note, are you running in the cloud or have set up everything locally.
Hey @deepdreams, would you mind sharing the code tweak you made to allow Keras v2 to work? I think it might help me. Thanks.
Most of the changes need to be done in vgg16.py file. batches/val_batches/test_batches objects no longer have
nb_samples. These have been replaced with
If you don’t want to change vgg16.py, you can add something similar to the following in your main notebook.
If you want to modify vgg16.py, her are some examples where code would have to change
I am getting following when i execute
AttributeErrorTraceback (most recent call last)
4 #val_batches.nb_class = val_batches.num_class
5 #val_batches.nb_sample = val_batches.sample
----> 6 vgg.finetune(batches)
/home/nbuser/courses/fastai/deeplearning1/nbs/vgg16.pyc in finetune(self, batches)
181 #self.ft(batches.nb_class) # commented this line due to error
–> 182 self.ft(batches.num_class)
183 classes = list(iter(batches.class_indices)) # get a list of all the class labels
AttributeError: ‘DirectoryIterator’ object has no attribute ‘num_class’
can someone help ?
Were you able to find a solution to this issue? I am facing the exact same issue. FYI, I am running to code on a local machine.
SOLVED: My bad. The path I had given was not correct.
Edit: I still have the same issue.
@saagr, which version of keras are running, part 1 of the course uses keras 1.1.0.
If you are using AWS setup as mentioned by jeremy the code should run without any modifications
@gnavink: I am using the latest keras version - 2.1.1. I have made changes to the utils and vgg16 files as recommended here and this thread.
I am not running it on AWS. I wanted to run it on my local machine.
same problem after modification.still can’t figure it out
I too am running it on my local PC and can not get rid of the effor of “AttributeError: ‘DirectoryIterator’ object has no attribute ‘num_class’”
figured it out that in Keras 2.1 we should use
'num_classes’ instead of ‘
num_class’. Hope this will help for you.
Yes. This helped! Thanks.