Whenever I am trying to run the code using CPU it is showing the error like this:
RuntimeError Traceback (most recent call last)
in
----> 1 detector = FaceDetector(name='mobilenet', weight_path='mobilenet.pth', device='cpu')
~\FRS\FaceLib-master\facelib\Retinaface\Retinaface.py in __init__(self, name, weight_path, device, confidence_threshold, top_k, nms_threshold, keep_top_k, face_size)
42
43 # setting for model
---> 44 model.load_state_dict(torch.load(weight_path))
45 model.to(device).eval()
46 self.model = model
~\Anaconda3\envs\cpu_env\lib\site-packages\torch\serialization.py in load(f, map_location, pickle_module, **pickle_load_args)
591 return torch.jit.load(f)
592 return _load(opened_zipfile, map_location, pickle_module, **pickle_load_args)
--> 593 return _legacy_load(opened_file, map_location, pickle_module, **pickle_load_args)
594
595
~\Anaconda3\envs\cpu_env\lib\site-packages\torch\serialization.py in _legacy_load(f, map_location, pickle_module, **pickle_load_args)
771 unpickler = pickle_module.Unpickler(f, **pickle_load_args)
772 unpickler.persistent_load = persistent_load
--> 773 result = unpickler.load()
774
775 deserialized_storage_keys = pickle_module.load(f, **pickle_load_args)
~\Anaconda3\envs\cpu_env\lib\site-packages\torch\serialization.py in persistent_load(saved_id)
727 obj = data_type(size)
728 obj._torch_load_uninitialized = True
--> 729 deserialized_objects[root_key] = restore_location(obj, location)
730 storage = deserialized_objects[root_key]
731 if view_metadata is not None:
~\Anaconda3\envs\cpu_env\lib\site-packages\torch\serialization.py in default_restore_location(storage, location)
176 def default_restore_location(storage, location):
177 for _, _, fn in _package_registry:
--> 178 result = fn(storage, location)
179 if result is not None:
180 return result
~\Anaconda3\envs\cpu_env\lib\site-packages\torch\serialization.py in _cuda_deserialize(obj, location)
152 def _cuda_deserialize(obj, location):
153 if location.startswith('cuda'):
--> 154 device = validate_cuda_device(location)
155 if getattr(obj, "_torch_load_uninitialized", False):
156 storage_type = getattr(torch.cuda, type(obj).__name__)
~\Anaconda3\envs\cpu_env\lib\site-packages\torch\serialization.py in validate_cuda_device(location)
136
137 if not torch.cuda.is_available():
--> 138 raise RuntimeError('Attempting to deserialize object on a CUDA '
139 'device but torch.cuda.is_available() is False. '
140 'If you are running on a CPU-only machine, '
RuntimeError: Attempting to deserialize object on a CUDA device but torch.cuda.is_available() is False. If you are running on a CPU-only machine, please use torch.load with map_location=torch.device('cpu') to map your storages to the CPU.
Whenever I am trying to run the code using CPU it is showing the error like this: RuntimeError Traceback (most recent call last)