I have attached a stripped down version of lesson2-image_models.ipynb below.
What is strange about it is learn.summary
with no parenthesis works, and so does learn
. But when I run learn.summary()
, it throws the following error:
---------------------------------------------------------------------------
ValueError Traceback (most recent call last)
<ipython-input-11-bc39e9e85f86> in <module>()
----> 1 learn.summary()
~/fastai/courses/dl1/fastai/conv_learner.py in summary(self)
117 precompute = self.precompute
118 self.precompute = False
--> 119 res = super().summary()
120 self.precompute = precompute
121 return res
~/fastai/courses/dl1/fastai/learner.py in summary(self)
51 def data(self): return self.data_
52
---> 53 def summary(self): return model_summary(self.model, [3,self.data.sz,self.data.sz])
54
55 def __repr__(self): return self.model.__repr__()
~/fastai/courses/dl1/fastai/model.py in model_summary(m, input_size)
161 x = [to_gpu(Variable(torch.rand(1,*in_size))) for in_size in input_size]
162 else: x = [to_gpu(Variable(torch.rand(1,*input_size)))]
--> 163 m(*x)
164
165 for h in hooks: h.remove()
~/src/anaconda3/envs/fastai/lib/python3.6/site-packages/torch/nn/modules/module.py in __call__(self, *input, **kwargs)
323 for hook in self._forward_pre_hooks.values():
324 hook(self, input)
--> 325 result = self.forward(*input, **kwargs)
326 for hook in self._forward_hooks.values():
327 hook_result = hook(self, input, result)
~/src/anaconda3/envs/fastai/lib/python3.6/site-packages/torch/nn/modules/container.py in forward(self, input)
65 def forward(self, input):
66 for module in self._modules.values():
---> 67 input = module(input)
68 return input
69
~/src/anaconda3/envs/fastai/lib/python3.6/site-packages/torch/nn/modules/module.py in __call__(self, *input, **kwargs)
323 for hook in self._forward_pre_hooks.values():
324 hook(self, input)
--> 325 result = self.forward(*input, **kwargs)
326 for hook in self._forward_hooks.values():
327 hook_result = hook(self, input, result)
~/src/anaconda3/envs/fastai/lib/python3.6/site-packages/torch/nn/modules/batchnorm.py in forward(self, input)
35 return F.batch_norm(
36 input, self.running_mean, self.running_var, self.weight, self.bias,
---> 37 self.training, self.momentum, self.eps)
38
39 def __repr__(self):
~/src/anaconda3/envs/fastai/lib/python3.6/site-packages/torch/nn/functional.py in batch_norm(input, running_mean, running_var, weight, bias, training, momentum, eps)
1009 size = list(input.size())
1010 if reduce(mul, size[2:], size[0]) == 1:
-> 1011 raise ValueError('Expected more than 1 value per channel when training, got input size {}'.format(size))
1012 f = torch._C._functions.BatchNorm(running_mean, running_var, training, momentum, eps, torch.backends.cudnn.enabled)
1013 return f(input, weight, bias)
ValueError: Expected more than 1 value per channel when training, got input size [1, 1024]
Is anybody else experiencing this issue?
Thank you!