{
  "id": 377558,
  "title": "Image size does not match and cannot proceed",
  "url": "/competitions/rsna-breast-cancer-detection/discussion/377558",
  "author_name": "Daiki Kurosu",
  "post_date": "2023-01-11T17:14:17.065000",
  "votes": 1,
  "comment_count": 2,
  "views": 0,
  "content": "<p>I am a newbie to machine learning.<br>\nI tried to put in the efficientnet_b3 pretrain model in timm and wiggle it first, but I am getting the following error.<br>\nThe image data is 224*224 and random cropped, what could be the problem?</p>\n<h2>0%|          | 0/2394 [00:18&lt;?, ?it/s]</h2>\n<p>RuntimeError                              Traceback (most recent call last)<br>\n/tmp/ipykernel_820/1733352152.py in <br>\n      1 num_epochs=100<br>\n----&gt; 2 train_model(net, dataloaders_dict, criterion, optimizer, scheduler, num_epochs=num_epochs)</p>\n<p>/tmp/ipykernel_820/3987185367.py in train_model(net, dataloaders_dict, criterion, optimizer, scheduler, num_epochs)<br>\n     16         epoch_corrects = 0<br>\n     17 <br>\n---&gt; 18         for inputs, labels in tqdm(dataloaders_dict[phase]):<br>\n     19             inputs = inputs.to(device)<br>\n     20             labels = labels.to(device)</p>\n<p>/opt/conda/lib/python3.7/site-packages/tqdm/std.py in <strong>iter</strong>(self)<br>\n   1193 <br>\n   1194         try:<br>\n-&gt; 1195             for obj in iterable:<br>\n   1196                 yield obj<br>\n   1197                 # Update and possibly print the progressbar.</p>\n<p>/opt/conda/lib/python3.7/site-packages/torch/utils/data/dataloader.py in <strong>next</strong>(self)<br>\n    528             if self._sampler_iter is None:<br>\n    529                 self._reset()<br>\n--&gt; 530             data = self._next_data()<br>\n    531             self._num_yielded += 1<br>\n    532             if self._dataset_kind == _DatasetKind.Iterable and \\</p>\n<p>/opt/conda/lib/python3.7/site-packages/torch/utils/data/dataloader.py in _next_data(self)<br>\n    568     def _next_data(self):<br>\n    569         index = self._next_index()  # may raise StopIteration<br>\n--&gt; 570         data = self._dataset_fetcher.fetch(index)  # may raise StopIteration<br>\n    571         if self._pin_memory:<br>\n    572             data = _utils.pin_memory.pin_memory(data)</p>\n<p>/opt/conda/lib/python3.7/site-packages/torch/utils/data/_utils/fetch.py in fetch(self, possibly_batched_index)<br>\n     50         else:<br>\n     51             data = self.dataset[possibly_batched_index]<br>\n---&gt; 52         return self.collate_fn(data)</p>\n<p>/opt/conda/lib/python3.7/site-packages/torch/utils/data/_utils/collate.py in default_collate(batch)<br>\n    170 <br>\n    171         if isinstance(elem, tuple):<br>\n--&gt; 172             return [default_collate(samples) for samples in transposed]  # Backwards compatibility.<br>\n    173         else:<br>\n    174             try:</p>\n<p>/opt/conda/lib/python3.7/site-packages/torch/utils/data/_utils/collate.py in (.0)<br>\n    170 <br>\n    171         if isinstance(elem, tuple):<br>\n--&gt; 172             return [default_collate(samples) for samples in transposed]  # Backwards compatibility.<br>\n    173         else:<br>\n    174             try:</p>\n<p>/opt/conda/lib/python3.7/site-packages/torch/utils/data/<em>utils/collate.py in default_collate(batch)\n    136             storage = elem.storage()._new_shared(numel)\n    137             out = elem.new(storage).resize</em>(len(batch), *list(elem.size()))<br>\n--&gt; 138         return torch.stack(batch, 0, out=out)<br>\n    139     elif elem_type.<strong>module</strong> == 'numpy' and elem_type.<strong>name</strong> != 'str_' \\<br>\n    140             and elem_type.<strong>name</strong> != 'string_':</p>\n<p>RuntimeError: stack expects each tensor to be equal size, but got [1, 244, 224] at entry 0 and [1, 275, 224] at entry 1</p>",
  "messages": [
    {
      "id": 2095919,
      "postDate": "2023-01-11T17:33:24.293Z",
      "content": "<p>You are trying to stack non equal sized images, make sure your resize is working as intended before stack.<br>\nIf you are using pytorch's random crop, make sure to either use \"pad_if_needed\" parameter or use randomresizedcrop instead.</p>",
      "rawMarkdown": "You are trying to stack non equal sized images, make sure your resize is working as intended before stack.\nIf you are using pytorch's random crop, make sure to either use \"pad_if_needed\" parameter or use randomresizedcrop instead.",
      "votes": 1,
      "replies": [
        {
          "id": 2098195,
          "postDate": "2023-01-13T09:59:42.453Z",
          "content": "<p>Thank you very much.<br>\nYou were exactly right.</p>",
          "rawMarkdown": "Thank you very much.\nYou were exactly right."
        }
      ]
    },
    {
      "id": 2095887,
      "postDate": "2023-01-11T17:14:17.067Z",
      "content": "<p>I am a newbie to machine learning.<br>\nI tried to put in the efficientnet_b3 pretrain model in timm and wiggle it first, but I am getting the following error.<br>\nThe image data is 224*224 and random cropped, what could be the problem?</p>\n<h2>0%|          | 0/2394 [00:18&lt;?, ?it/s]</h2>\n<p>RuntimeError                              Traceback (most recent call last)<br>\n/tmp/ipykernel_820/1733352152.py in <br>\n      1 num_epochs=100<br>\n----&gt; 2 train_model(net, dataloaders_dict, criterion, optimizer, scheduler, num_epochs=num_epochs)</p>\n<p>/tmp/ipykernel_820/3987185367.py in train_model(net, dataloaders_dict, criterion, optimizer, scheduler, num_epochs)<br>\n     16         epoch_corrects = 0<br>\n     17 <br>\n---&gt; 18         for inputs, labels in tqdm(dataloaders_dict[phase]):<br>\n     19             inputs = inputs.to(device)<br>\n     20             labels = labels.to(device)</p>\n<p>/opt/conda/lib/python3.7/site-packages/tqdm/std.py in <strong>iter</strong>(self)<br>\n   1193 <br>\n   1194         try:<br>\n-&gt; 1195             for obj in iterable:<br>\n   1196                 yield obj<br>\n   1197                 # Update and possibly print the progressbar.</p>\n<p>/opt/conda/lib/python3.7/site-packages/torch/utils/data/dataloader.py in <strong>next</strong>(self)<br>\n    528             if self._sampler_iter is None:<br>\n    529                 self._reset()<br>\n--&gt; 530             data = self._next_data()<br>\n    531             self._num_yielded += 1<br>\n    532             if self._dataset_kind == _DatasetKind.Iterable and \\</p>\n<p>/opt/conda/lib/python3.7/site-packages/torch/utils/data/dataloader.py in _next_data(self)<br>\n    568     def _next_data(self):<br>\n    569         index = self._next_index()  # may raise StopIteration<br>\n--&gt; 570         data = self._dataset_fetcher.fetch(index)  # may raise StopIteration<br>\n    571         if self._pin_memory:<br>\n    572             data = _utils.pin_memory.pin_memory(data)</p>\n<p>/opt/conda/lib/python3.7/site-packages/torch/utils/data/_utils/fetch.py in fetch(self, possibly_batched_index)<br>\n     50         else:<br>\n     51             data = self.dataset[possibly_batched_index]<br>\n---&gt; 52         return self.collate_fn(data)</p>\n<p>/opt/conda/lib/python3.7/site-packages/torch/utils/data/_utils/collate.py in default_collate(batch)<br>\n    170 <br>\n    171         if isinstance(elem, tuple):<br>\n--&gt; 172             return [default_collate(samples) for samples in transposed]  # Backwards compatibility.<br>\n    173         else:<br>\n    174             try:</p>\n<p>/opt/conda/lib/python3.7/site-packages/torch/utils/data/_utils/collate.py in (.0)<br>\n    170 <br>\n    171         if isinstance(elem, tuple):<br>\n--&gt; 172             return [default_collate(samples) for samples in transposed]  # Backwards compatibility.<br>\n    173         else:<br>\n    174             try:</p>\n<p>/opt/conda/lib/python3.7/site-packages/torch/utils/data/<em>utils/collate.py in default_collate(batch)\n    136             storage = elem.storage()._new_shared(numel)\n    137             out = elem.new(storage).resize</em>(len(batch), *list(elem.size()))<br>\n--&gt; 138         return torch.stack(batch, 0, out=out)<br>\n    139     elif elem_type.<strong>module</strong> == 'numpy' and elem_type.<strong>name</strong> != 'str_' \\<br>\n    140             and elem_type.<strong>name</strong> != 'string_':</p>\n<p>RuntimeError: stack expects each tensor to be equal size, but got [1, 244, 224] at entry 0 and [1, 275, 224] at entry 1</p>",
      "rawMarkdown": "I am a newbie to machine learning.\nI tried to put in the efficientnet_b3 pretrain model in timm and wiggle it first, but I am getting the following error.\nThe image data is 224*224 and random cropped, what could be the problem?\n\n0%|          | 0/2394 [00:18<?, ?it/s]\n---------------------------------------------------------------------------\nRuntimeError                              Traceback (most recent call last)\n/tmp/ipykernel_820/1733352152.py in <module>\n      1 num_epochs=100\n----> 2 train_model(net, dataloaders_dict, criterion, optimizer, scheduler, num_epochs=num_epochs)\n\n/tmp/ipykernel_820/3987185367.py in train_model(net, dataloaders_dict, criterion, optimizer, scheduler, num_epochs)\n     16         epoch_corrects = 0\n     17 \n---> 18         for inputs, labels in tqdm(dataloaders_dict[phase]):\n     19             inputs = inputs.to(device)\n     20             labels = labels.to(device)\n\n/opt/conda/lib/python3.7/site-packages/tqdm/std.py in __iter__(self)\n   1193 \n   1194         try:\n-> 1195             for obj in iterable:\n   1196                 yield obj\n   1197                 # Update and possibly print the progressbar.\n\n/opt/conda/lib/python3.7/site-packages/torch/utils/data/dataloader.py in __next__(self)\n    528             if self._sampler_iter is None:\n    529                 self._reset()\n--> 530             data = self._next_data()\n    531             self._num_yielded += 1\n    532             if self._dataset_kind == _DatasetKind.Iterable and \\\n\n/opt/conda/lib/python3.7/site-packages/torch/utils/data/dataloader.py in _next_data(self)\n    568     def _next_data(self):\n    569         index = self._next_index()  # may raise StopIteration\n--> 570         data = self._dataset_fetcher.fetch(index)  # may raise StopIteration\n    571         if self._pin_memory:\n    572             data = _utils.pin_memory.pin_memory(data)\n\n/opt/conda/lib/python3.7/site-packages/torch/utils/data/_utils/fetch.py in fetch(self, possibly_batched_index)\n     50         else:\n     51             data = self.dataset[possibly_batched_index]\n---> 52         return self.collate_fn(data)\n\n/opt/conda/lib/python3.7/site-packages/torch/utils/data/_utils/collate.py in default_collate(batch)\n    170 \n    171         if isinstance(elem, tuple):\n--> 172             return [default_collate(samples) for samples in transposed]  # Backwards compatibility.\n    173         else:\n    174             try:\n\n/opt/conda/lib/python3.7/site-packages/torch/utils/data/_utils/collate.py in <listcomp>(.0)\n    170 \n    171         if isinstance(elem, tuple):\n--> 172             return [default_collate(samples) for samples in transposed]  # Backwards compatibility.\n    173         else:\n    174             try:\n\n/opt/conda/lib/python3.7/site-packages/torch/utils/data/_utils/collate.py in default_collate(batch)\n    136             storage = elem.storage()._new_shared(numel)\n    137             out = elem.new(storage).resize_(len(batch), *list(elem.size()))\n--> 138         return torch.stack(batch, 0, out=out)\n    139     elif elem_type.__module__ == 'numpy' and elem_type.__name__ != 'str_' \\\n    140             and elem_type.__name__ != 'string_':\n\nRuntimeError: stack expects each tensor to be equal size, but got [1, 244, 224] at entry 0 and [1, 275, 224] at entry 1",
      "votes": 1
    }
  ],
  "comments": [
    {
      "id": 2095919,
      "author_name": "Eleftherios Fanioudakis",
      "author_url": "",
      "post_date": "2023-01-11T17:33:24.293000",
      "content": "<p>You are trying to stack non equal sized images, make sure your resize is working as intended before stack.<br>\nIf you are using pytorch's random crop, make sure to either use \"pad_if_needed\" parameter or use randomresizedcrop instead.</p>",
      "votes": 1,
      "replies": [
        {
          "id": 2098195,
          "author_name": "Daiki Kurosu",
          "author_url": "",
          "post_date": "2023-01-13T09:59:42.453000",
          "content": "<p>Thank you very much.<br>\nYou were exactly right.</p>",
          "votes": 0,
          "replies": []
        }
      ]
    }
  ],
  "raw_markdown_by_id": {
    "2095919": "You are trying to stack non equal sized images, make sure your resize is working as intended before stack.\nIf you are using pytorch's random crop, make sure to either use \"pad_if_needed\" parameter or use randomresizedcrop instead.",
    "2095887": "I am a newbie to machine learning.\nI tried to put in the efficientnet_b3 pretrain model in timm and wiggle it first, but I am getting the following error.\nThe image data is 224*224 and random cropped, what could be the problem?\n\n0%|          | 0/2394 [00:18<?, ?it/s]\n---------------------------------------------------------------------------\nRuntimeError                              Traceback (most recent call last)\n/tmp/ipykernel_820/1733352152.py in <module>\n      1 num_epochs=100\n----> 2 train_model(net, dataloaders_dict, criterion, optimizer, scheduler, num_epochs=num_epochs)\n\n/tmp/ipykernel_820/3987185367.py in train_model(net, dataloaders_dict, criterion, optimizer, scheduler, num_epochs)\n     16         epoch_corrects = 0\n     17 \n---> 18         for inputs, labels in tqdm(dataloaders_dict[phase]):\n     19             inputs = inputs.to(device)\n     20             labels = labels.to(device)\n\n/opt/conda/lib/python3.7/site-packages/tqdm/std.py in __iter__(self)\n   1193 \n   1194         try:\n-> 1195             for obj in iterable:\n   1196                 yield obj\n   1197                 # Update and possibly print the progressbar.\n\n/opt/conda/lib/python3.7/site-packages/torch/utils/data/dataloader.py in __next__(self)\n    528             if self._sampler_iter is None:\n    529                 self._reset()\n--> 530             data = self._next_data()\n    531             self._num_yielded += 1\n    532             if self._dataset_kind == _DatasetKind.Iterable and \\\n\n/opt/conda/lib/python3.7/site-packages/torch/utils/data/dataloader.py in _next_data(self)\n    568     def _next_data(self):\n    569         index = self._next_index()  # may raise StopIteration\n--> 570         data = self._dataset_fetcher.fetch(index)  # may raise StopIteration\n    571         if self._pin_memory:\n    572             data = _utils.pin_memory.pin_memory(data)\n\n/opt/conda/lib/python3.7/site-packages/torch/utils/data/_utils/fetch.py in fetch(self, possibly_batched_index)\n     50         else:\n     51             data = self.dataset[possibly_batched_index]\n---> 52         return self.collate_fn(data)\n\n/opt/conda/lib/python3.7/site-packages/torch/utils/data/_utils/collate.py in default_collate(batch)\n    170 \n    171         if isinstance(elem, tuple):\n--> 172             return [default_collate(samples) for samples in transposed]  # Backwards compatibility.\n    173         else:\n    174             try:\n\n/opt/conda/lib/python3.7/site-packages/torch/utils/data/_utils/collate.py in <listcomp>(.0)\n    170 \n    171         if isinstance(elem, tuple):\n--> 172             return [default_collate(samples) for samples in transposed]  # Backwards compatibility.\n    173         else:\n    174             try:\n\n/opt/conda/lib/python3.7/site-packages/torch/utils/data/_utils/collate.py in default_collate(batch)\n    136             storage = elem.storage()._new_shared(numel)\n    137             out = elem.new(storage).resize_(len(batch), *list(elem.size()))\n--> 138         return torch.stack(batch, 0, out=out)\n    139     elif elem_type.__module__ == 'numpy' and elem_type.__name__ != 'str_' \\\n    140             and elem_type.__name__ != 'string_':\n\nRuntimeError: stack expects each tensor to be equal size, but got [1, 244, 224] at entry 0 and [1, 275, 224] at entry 1"
  }
}