tanluren / yolov3-channel-and-layer-pruning

yolov3 yolov4 channel and layer pruning, Knowledge Distillation 层剪枝,通道剪枝,知识蒸馏
Apache License 2.0
1.5k stars 446 forks source link

UnboundLocalError: Caught UnboundLocalError in DataLoader worker process 0. #139

Open anusha657 opened 3 years ago

anusha657 commented 3 years ago

Hi , I am performing sparsity training using yolov4 weights . Command Used - ! python3 train.py --cfg /content/darknet/cfg/yolov4.cfg --data /content/objcoco.data --weights /content/darknet/weights/yolov4.weights --epochs 200 --batch-size 32 -sr --s 0.001 --prune 1

ERROR -

Namespace(accumulate=2, adam=False, arc='defaultpw', batch_size=32, bucket='', cache_images=False, cfg='/content/darknet/cfg/yolov4.cfg', data='/content/objcoco.data', device='', epochs=200, evolve=False, img_size=416, img_weights=False, multi_scale=False, name='', nosave=False, notest=False, prebias=False, prune=1, rect=False, resume=False, s=0.001, sr=True, t_cfg='', t_weights='', transfer=False, var=None, weights='/content/darknet/weights/yolov4.weights') Using CUDA device0 _CudaDeviceProperties(name='Tesla T4', total_memory=15079MB)

2020-12-24 06:17:08.252129: I tensorflow/stream_executor/platform/default/dso_loader.cc:49] Successfully opened dynamic library libcudart.so.10.1 loaded weights from /content/darknet/weights/yolov4.weights

shortcut sparse training Reading labels (11 found, 3 missing, 0 empty for 14 images): 100% 14/14 [00:00<00:00, 14315.03it/s] Model Summary: 327 layers, 6.43631e+07 parameters, 6.43631e+07 gradients Starting training for 200 epochs...

 Epoch   gpu_mem      GIoU       obj       cls     total      soft    rratio   targets  img_size

0% 0/1 [00:00<?, ?it/s]Traceback (most recent call last): File "train.py", line 542, in train() # train normally File "train.py", line 308, in train for i, (imgs, targets, paths, _) in pbar: # batch ------------------------------------------------------------- File "/usr/local/lib/python3.6/dist-packages/tqdm/std.py", line 1104, in iter for obj in iterable: File "/usr/local/lib/python3.6/dist-packages/torch/utils/data/dataloader.py", line 435, in next data = self._next_data() File "/usr/local/lib/python3.6/dist-packages/torch/utils/data/dataloader.py", line 1085, in _next_data return self._process_data(data) File "/usr/local/lib/python3.6/dist-packages/torch/utils/data/dataloader.py", line 1111, in _process_data data.reraise() File "/usr/local/lib/python3.6/dist-packages/torch/_utils.py", line 428, in reraise raise self.exc_type(msg) UnboundLocalError: Caught UnboundLocalError in DataLoader worker process 0. Original Traceback (most recent call last): File "/usr/local/lib/python3.6/dist-packages/torch/utils/data/_utils/worker.py", line 198, in _worker_loop data = fetcher.fetch(index) File "/usr/local/lib/python3.6/dist-packages/torch/utils/data/_utils/fetch.py", line 44, in fetch data = [self.dataset[idx] for idx in possibly_batched_index] File "/usr/local/lib/python3.6/dist-packages/torch/utils/data/_utils/fetch.py", line 44, in data = [self.dataset[idx] for idx in possibly_batched_index] File "/content/yolov4/yolov3-channel-and-layer-pruning/utils/datasets.py", line 416, in getitem img, labels = load_mosaic(self, index) File "/content/yolov4/yolov3-channel-and-layer-pruning/utils/datasets.py", line 594, in load_mosaic labels4.append(labels) UnboundLocalError: local variable 'labels' referenced before assignment

0% 0/1 [00:00<?, ?it/s]

djfijj commented 2 years ago

Make sure there are no empty labels in your dataset and the path is in English