你好,我想知道为什么我训练途中会出错?
使用 --resume 后效果很差,并且也会出现同样的错误
Epoch gpu_mem GIoU obj cls total targets img_size
79/299 6.01G 0.02431 0.04288 0.01463 0.08182 35 608: 100%|██████████| 289/289 [02:33<00:00, 1.88it/s]
Class Images Targets P R [email protected] [email protected]:.95: 0%| | 0/97 [00:00<?, ?it/s]Traceback (most recent call last):
File "", line 1, in
Class Images Targets P R [email protected] [email protected]:.95: 0%| | 0/97 [00:02<?, ?it/s]
File "D:\Soft\Anaconda3\envs\yangchao\lib\multiprocessing\spawn.py", line 116, in spawn_main
Traceback (most recent call last):
File "D:/YC/PyTorch_YOLOv4-u5/train.py", line 479, in
exitcode = _main(fd, parent_sentinel)
File "D:\Soft\Anaconda3\envs\yangchao\lib\multiprocessing\spawn.py", line 126, in _main
self = reduction.pickle.load(from_parent)
EOFError: Ran out of input
train(hyp, tb_writer, opt, device)
File "D:/YC/PyTorch_YOLOv4-u5/train.py", line 349, in train
results, maps, times = test.test(opt.data,
File "D:\YC\PyTorch_YOLOv4-u5\test.py", line 79, in test
for batch_i, (img, targets, paths, shapes) in enumerate(tqdm(dataloader, desc=s)):
File "D:\Soft\Anaconda3\envs\yangchao\lib\site-packages\tqdm\std.py", line 1166, in iter
for obj in iterable:
File "D:\Soft\Anaconda3\envs\yangchao\lib\site-packages\torch\utils\data\dataloader.py", line 352, in iter
return self._get_iterator()
File "D:\Soft\Anaconda3\envs\yangchao\lib\site-packages\torch\utils\data\dataloader.py", line 294, in _get_iterator
return _MultiProcessingDataLoaderIter(self)
File "D:\Soft\Anaconda3\envs\yangchao\lib\site-packages\torch\utils\data\dataloader.py", line 801, in init
w.start()
File "D:\Soft\Anaconda3\envs\yangchao\lib\multiprocessing\process.py", line 121, in start
self._popen = self._Popen(self)
File "D:\Soft\Anaconda3\envs\yangchao\lib\multiprocessing\context.py", line 224, in _Popen
return _default_context.get_context().Process._Popen(process_obj)
File "D:\Soft\Anaconda3\envs\yangchao\lib\multiprocessing\context.py", line 327, in _Popen
return Popen(process_obj)
File "D:\Soft\Anaconda3\envs\yangchao\lib\multiprocessing\popen_spawn_win32.py", line 93, in init
reduction.dump(process_obj, to_child)
File "D:\Soft\Anaconda3\envs\yangchao\lib\multiprocessing\reduction.py", line 60, in dump
ForkingPickler(file, protocol).dump(obj)
File "D:\Soft\Anaconda3\envs\yangchao\lib\multiprocessing\synchronize.py", line 104, in getstate
h = context.get_spawning_popen().duplicate_for_child(sl.handle)
File "D:\Soft\Anaconda3\envs\yangchao\lib\multiprocessing\popen_spawn_win32.py", line 99, in duplicate_for_child
return reduction.duplicate(handle, self.sentinel)
File "D:\Soft\Anaconda3\envs\yangchao\lib\multiprocessing\reduction.py", line 79, in duplicate
return _winapi.DuplicateHandle(
PermissionError: [WinError 5] 拒绝访问。
Process finished with exit code 1
Set the num_work process to 0
What is the specific operation? thank you.
I'm really sorry, I can't find a place to modify the configuration.
I'm really sorry, I can't find a place to modify the "num_work" configuration
我训练的时候发生这个问题
Traceback (most recent call last):
File "F:\Code\Swin-Unet-main\train.py", line 99, in
trainer[dataset_name](args, net, args.output_dir)
File "F:\Code\Swin-Unet-main\trainer.py", line 53, in trainer_synapse
for i_batch, sampled_batch in enumerate(trainloader):
File "D:\Anaconda\envs\pytorch\lib\site-packages\torch\utils\data\dataloader.py", line 359, in iter
return self._get_iterator()
File "D:\Anaconda\envs\pytorch\lib\site-packages\torch\utils\data\dataloader.py", line 305, in _get_iterator
return _MultiProcessingDataLoaderIter(self)
File "D:\Anaconda\envs\pytorch\lib\site-packages\torch\utils\data\dataloader.py", line 918, in init
w.start()
File "D:\Anaconda\envs\pytorch\lib\multiprocessing\process.py", line 112, in start
self._popen = self._Popen(self)
File "D:\Anaconda\envs\pytorch\lib\multiprocessing\context.py", line 223, in _Popen
return _default_context.get_context().Process._Popen(process_obj)
File "D:\Anaconda\envs\pytorch\lib\multiprocessing\context.py", line 322, in _Popen
return Popen(process_obj)
File "D:\Anaconda\envs\pytorch\lib\multiprocessing\popen_spawn_win32.py", line 89, in init
reduction.dump(process_obj, to_child)
File "D:\Anaconda\envs\pytorch\lib\multiprocessing\reduction.py", line 60, in dump
ForkingPickler(file, protocol).dump(obj)
AttributeError: Can't pickle local object 'trainer_synapse..worker_init_fn'
Traceback (most recent call last):
File "", line 1, in
File "D:\Anaconda\envs\pytorch\lib\multiprocessing\spawn.py", line 99, in spawn_main
new_handle = reduction.steal_handle(parent_pid, pipe_handle)
File "D:\Anaconda\envs\pytorch\lib\multiprocessing\reduction.py", line 87, in steal_handle
_winapi.DUPLICATE_SAME_ACCESS | _winapi.DUPLICATE_CLOSE_SOURCE)
PermissionError: [WinError 5] 拒绝访问。