The Lesson 07 module indicates the n_out to be the number of classes/ labels for the dataset.
The source code indicates the xresnet n_out default =1000.
When I tried to use the default, I got similar results as
when I used dls.c.
Is the n_out value a max? such that if the n_out is not indicated, it defaults to the number of classes detected in get_y, or to 1000 if there are more than 1000 classes?
Thank you!
Maria
Hi @yrodriguezmd,
as far as I know almost all pretrained vision models are trained for the ImageNet Large Scale Visual Recognition Challenge (ILSVRC), or at least take the data set as a benchmark. The goal of the challenge is to predict 1000 different classes with the best accuracy.
So
- the default n_out of (x)resnets is 1000
- this is usually changed when you use the pretrained model for your dataset
- dls.c is the number of unique labels in your dataset
- since the Imagenette dataset in the book has also 1000 classes you didn’t see any changes
Try to run the code on the pets dataset (path = untar_data(URLs.PETS)/'images'
). Then you’ll see the dls.c is different.
Cheers
@JackByte, thank you for the reply!
- I think xresnet is not pretrained
- I was not using Imagenette.
- The dls.c for the dataset I am using is 10. But when I did not indicate any (ie used the default), I got a very similar accuracy. I couldn’t gather info from the docs why this would be so…
Maria