I noticed that when I try to use
arch=vgg16_bn
I get an error:
---------------------------------------------------------------------------
KeyError Traceback (most recent call last)
<ipython-input-9-0e8771e4fad3> in <module>()
----> 1 learn = ConvLearner.pretrained(arch, data, precompute=True)
~/fastaip1v2/fastai/courses/dl1/fastai/conv_learner.py in pretrained(self, f, data, ps, xtra_fc, xtra_cut, **kwargs)
89 @classmethod
90 def pretrained(self, f, data, ps=None, xtra_fc=None, xtra_cut=0, **kwargs):
---> 91 models = ConvnetBuilder(f, data.c, data.is_multi, data.is_reg, ps=ps, xtra_fc=xtra_fc, xtra_cut=xtra_cut)
92 return self(data, models, **kwargs)
93
~/fastaip1v2/fastai/courses/dl1/fastai/conv_learner.py in __init__(self, f, c, is_multi, is_reg, ps, xtra_fc, xtra_cut)
31 self.xtra_fc = xtra_fc or [512]
32
---> 33 cut,self.lr_cut = model_meta[f]
34 cut-=xtra_cut
35 layers = cut_model(f(True), cut)
KeyError: <function vgg16_bn at 0x7fa52e8d3730>
But when I used arch = vgg16
it actually pulls in the vgg16_bn file so my question is: is vgg16 actually vgg16_bn and if so, what is vgg16_bn?
One theory I have is that VGG16 is directly from PyTorch and it actually uses VGG16 with batch normalization and VGG16_bn is maybe not fully developed yet, but it is something that Jeremy is developing still?