pytorch_lightning
问题:
root@7128c9029a5b:~/AI-lab/power_dekor_danyang# python train.py[0] fold_i: 0 soft_labels is None soft_labels is None /opt/conda/lib/python3.8/site-packages/pytorch_lightning/utilities/warnings.py:18: RuntimeWarning: Displayed epoch numbers in the progress bar start from "1" until v0.6.x, but will start from "0" in v0.8.0. warnings.warn(*args, **kwargs) /opt/conda/lib/python3.8/site-packages/pytorch_lightning/utilities/warnings.py:18: UserWarning: The dataloader, train dataloader, does not have many workers which may be a bottleneck. Consider increasing the value of the `num_workers` argument` in the `DataLoader` init to improve performance. warnings.warn(*args, **kwargs) /opt/conda/lib/python3.8/site-packages/pytorch_lightning/utilities/warnings.py:18: UserWarning: The dataloader, val dataloader 0, does not have many workers which may be a bottleneck. Consider increasing the value of the `num_workers` argument` in the `DataLoader` init to improve performance. warnings.warn(*args, **kwargs) Traceback (most recent call last): File "train.py", line 179, in trainer.fit(model, train_dataloader, val_dataloader) File "/opt/conda/lib/python3.8/site-packages/pytorch_lightning/trainer/trainer.py", line 704, in fit self.single_gpu_train(model) File "/opt/conda/lib/python3.8/site-packages/pytorch_lightning/trainer/distrib_parts.py", line 477, in single_gpu_train self.run_pretrain_routine(model) File "/opt/conda/lib/python3.8/site-packages/pytorch_lightning/trainer/trainer.py", line 864, in run_pretrain_routine self.train() File "/opt/conda/lib/python3.8/site-packages/pytorch_lightning/trainer/training_loop.py", line 363, in train self.run_training_epoch() File "/opt/conda/lib/python3.8/site-packages/pytorch_lightning/trainer/training_loop.py", line 421, in run_training_epoch for batch_idx, (batch, is_last_batch) in self.profiler.profile_iterable( File "/opt/conda/lib/python3.8/site-packages/pytorch_lightning/profiler/profilers.py", line 64, in profile_iterable value = next(iterator) File "/opt/conda/lib/python3.8/site-packages/pytorch_lightning/trainer/training_loop.py", line 799, in _with_is_last last = next(it) File "/opt/conda/lib/python3.8/site-packages/torch/utils/data/dataloader.py", line 530, in __next__ data = self._next_data() File "/opt/conda/lib/python3.8/site-packages/torch/utils/data/dataloader.py", line 570, in _next_data data = self._dataset_fetcher.fetch(index) # may raise StopIteration File "/opt/conda/lib/python3.8/site-packages/torch/utils/data/_utils/fetch.py", line 49, in fetch data = [self.dataset[idx] for idx in possibly_batched_index] File "/opt/conda/lib/python3.8/site-packages/torch/utils/data/_utils/fetch.py", line 49, in data = [self.dataset[idx] for idx in possibly_batched_index] File "/root/AI-lab/power_dekor_danyang/dataset.py", line 62, in __getitem__ top = round(random.randint(0, fill_h)) File "/opt/conda/lib/python3.8/random.py", line 248, in randint return self.randrange(a, b+1) File "/opt/conda/lib/python3.8/random.py", line 226, in randrange raise ValueError("empty range for randrange() (%d, %d, %d)" % (istart, istop, width)) ValueError: empty range for randrange() (0, -3016, -3016)
问题出在图片大小上
解释:
这个网络是先填充再缩小
所以我们需要找到自己手里训练的图片中,宽和高的最大值,把其他图片都先填充到这个最大值
遍历了一下自己的图片
宽和高的最大值,取整后为1500和6000
datesets.py
修改代码:
h, w = image.shape[:2] fill_h = 6000 - h top = round(random.randint(0, fill_h)) fill_w = 1500 - w left = round(random.randint(0, fill_w))
utility.py
parser.add_argument("--image_size", nargs="+", default=[150, 600]) # [200, 50]
修改为150,600
相当于缩小十倍



