yeezhu / SPN.pytorch

PyTorch implementation of "Soft Proposal Networks for Weakly Supervised Object Localization", ICCV 2017.
http://yzhu.work/spn.html
MIT License
211 stars 37 forks source link

inconsistent tensor size error #21

Closed AlphaGoMK closed 6 years ago

AlphaGoMK commented 6 years ago

When I run bash runme.sh, I encounter the exception below.

Traceback (most recent call last): File "/home/mukai/anaconda3/envs/py3.5/lib/python3.5/runpy.py", line 193, in _run_module_as_main "main", mod_spec) File "/home/mukai/anaconda3/envs/py3.5/lib/python3.5/runpy.py", line 85, in _run_code exec(code, run_globals) File "/home/mukai/SPN.pytorch/demo/experiment/demo_voc2007.py", line 63, in main_voc2007() File "/home/mukai/SPN.pytorch/demo/experiment/demo_voc2007.py", line 59, in main_voc2007 engine.multi_learning(model, criterion, train_dataset, val_dataset) File "/home/mukai/SPN.pytorch/demo/experiment/engine.py", line 108, in multi_learning state_dicts.append(self.learning(model, criterion, train_dataset, val_dataset, optimizer)) File "/home/mukai/SPN.pytorch/demo/experiment/engine.py", line 184, in learning self.train(train_loader, model, criterion, optimizer, epoch) File "/home/mukai/SPN.pytorch/demo/experiment/engine.py", line 211, in train for i, (input, target) in enumerate(data_loader): File "/home/mukai/anaconda3/envs/py3.5/lib/python3.5/site-packages/tqdm/_tqdm.py", line 862, in iter for obj in iterable: File "/home/mukai/anaconda3/envs/py3.5/lib/python3.5/site-packages/torch/utils/data/dataloader.py", line 212, in next return self._process_next_batch(batch) File "/home/mukai/anaconda3/envs/py3.5/lib/python3.5/site-packages/torch/utils/data/dataloader.py", line 239, in _process_next_batch raise batch.exc_type(batch.exc_msg) RuntimeError: Traceback (most recent call last): File "/home/mukai/anaconda3/envs/py3.5/lib/python3.5/site-packages/torch/utils/data/dataloader.py", line 41, in _worker_loop samples = collate_fn([dataset[i] for i in batch_indices]) File "/home/mukai/anaconda3/envs/py3.5/lib/python3.5/site-packages/torch/utils/data/dataloader.py", line 41, in samples = collate_fn([dataset[i] for i in batch_indices]) File "/home/mukai/SPN.pytorch/demo/experiment/voc.py", line 247, in getitem img = self.transform(img) File "/home/mukai/anaconda3/envs/py3.5/lib/python3.5/site-packages/torchvision/transforms.py", line 34, in call img = t(img) File "/home/mukai/SPN.pytorch/demo/experiment/engine.py", line 120, in lambda x: x - torch.Tensor(model.image_normalization_mean).view(3, 1, 1), File "/home/mukai/anaconda3/envs/py3.5/lib/python3.5/site-packages/torch/tensor.py", line 274, in sub return self.sub(other) RuntimeError: inconsistent tensor size at /opt/conda/conda-bld/pytorch_1501969512886/work/pytorch-0.1.12/torch/lib/TH/generic/THTensorMath.c:831

It may send a inconsistent tensor to the function enumerate(data_loader). I don't know how to fix it. Hope your help.

yeezhu commented 6 years ago

@AlphaGoMK
Please try pytorch 0.3.0

AlphaGoMK commented 6 years ago

@yeezhu thanks, my problem solved after update pytorch to torch-0.3.0