fastai / fastbook

The fastai book, published as Jupyter Notebooks
Other
21.75k stars 8.4k forks source link

04_mnist_basics: RuntimeError encountered after running learn.fit_one_cycle #196

Closed naity closed 4 years ago

naity commented 4 years ago
dls = ImageDataLoaders.from_folder(path, num_workers=0)
learn = cnn_learner(dls, resnet18, pretrained=False,
                    loss_func=F.cross_entropy, metrics=accuracy)
learn.fit_one_cycle(1, 0.1)

RuntimeError Traceback (most recent call last)

in 2 learn = cnn_learner(dls, resnet18, pretrained=False, 3 loss_func=F.cross_entropy, metrics=accuracy) ----> 4 learn.fit_one_cycle(1, 0.1) ~\anaconda3\envs\fastai2\lib\site-packages\fastcore\utils.py in _f(*args, **kwargs) 429 init_args.update(log) 430 setattr(inst, 'init_args', init_args) --> 431 return inst if to_return else f(*args, **kwargs) 432 return _f 433 ~\anaconda3\envs\fastai2\lib\site-packages\fastai2\callback\schedule.py in fit_one_cycle(self, n_epoch, lr_max, div, div_final, pct_start, wd, moms, cbs, reset_opt) 111 scheds = {'lr': combined_cos(pct_start, lr_max/div, lr_max, lr_max/div_final), 112 'mom': combined_cos(pct_start, *(self.moms if moms is None else moms))} --> 113 self.fit(n_epoch, cbs=ParamScheduler(scheds)+L(cbs), reset_opt=reset_opt, wd=wd) 114 115 # Cell ~\anaconda3\envs\fastai2\lib\site-packages\fastcore\utils.py in _f(*args, **kwargs) 429 init_args.update(log) 430 setattr(inst, 'init_args', init_args) --> 431 return inst if to_return else f(*args, **kwargs) 432 return _f 433 ~\anaconda3\envs\fastai2\lib\site-packages\fastai2\learner.py in fit(self, n_epoch, lr, wd, cbs, reset_opt) 201 try: 202 self.epoch=epoch; self('begin_epoch') --> 203 self._do_epoch_train() 204 self._do_epoch_validate() 205 except CancelEpochException: self('after_cancel_epoch') ~\anaconda3\envs\fastai2\lib\site-packages\fastai2\learner.py in _do_epoch_train(self) 173 try: 174 self.dl = self.dls.train; self('begin_train') --> 175 self.all_batches() 176 except CancelTrainException: self('after_cancel_train') 177 finally: self('after_train') ~\anaconda3\envs\fastai2\lib\site-packages\fastai2\learner.py in all_batches(self) 151 def all_batches(self): 152 self.n_iter = len(self.dl) --> 153 for o in enumerate(self.dl): self.one_batch(*o) 154 155 def one_batch(self, i, b): ~\anaconda3\envs\fastai2\lib\site-packages\fastai2\learner.py in one_batch(self, i, b) 159 self.pred = self.model(*self.xb); self('after_pred') 160 if len(self.yb) == 0: return --> 161 self.loss = self.loss_func(self.pred, *self.yb); self('after_loss') 162 if not self.training: return 163 self.loss.backward(); self('after_backward') ~\anaconda3\envs\fastai2\lib\site-packages\torch\nn\functional.py in cross_entropy(input, target, weight, size_average, ignore_index, reduce, reduction) 2420 if size_average is not None or reduce is not None: 2421 reduction = _Reduction.legacy_get_string(size_average, reduce) -> 2422 return nll_loss(log_softmax(input, 1), target, weight, None, ignore_index, None, reduction) 2423 2424 ~\anaconda3\envs\fastai2\lib\site-packages\torch\nn\functional.py in nll_loss(input, target, weight, size_average, ignore_index, reduce, reduction) 2216 .format(input.size(0), target.size(0))) 2217 if dim == 2: -> 2218 ret = torch._C._nn.nll_loss(input, target, weight, _Reduction.get_enum(reduction), ignore_index) 2219 elif dim == 4: 2220 ret = torch._C._nn.nll_loss2d(input, target, weight, _Reduction.get_enum(reduction), ignore_index) RuntimeError: Expected object of scalar type Long but got scalar type Int for argument #2 'target' in call to _thnn_nll_loss_forward
jph00 commented 4 years ago

Please use the forums for help. forums.fast.ai