当我尝试运行从GitHub克隆的'mobile-yolov5-pruning-distillation'项目时,在google colab中,它得到了这个错误。
Traceback (most recent call last):
File "train.py", line 776, in <module>
train(hyp)
File "train.py", line 78, in train
model = Model(opt.cfg).to(device)
File "/content/gdrive/MyDrive/project_folder/mobile-yolov5-pruning-distillation/models/yolo.py", line 73, in __init__
self._initialize_biases() # only run once
File "/content/gdrive/MyDrive/project_folder/mobile-yolov5-pruning-distillation/models/yolo.py", line 124, in _initialize_biases
b[:, 4] += math.log(8 / (640 / s) ** 2) # obj (8 objects per 640 image)
RuntimeError: a view of a leaf Variable that requires grad is being used in an in-place operation.
当我试图追踪到yolo.py
b[:, 4] += math.log(8 / (640 / s) ** 2) # obj (8 objects per 640 image)
有谁能帮忙解决这个问题吗?
尝试用torch.no_grad()torch.no_grad(): your_code_here
包装代码你也可以使用。data属性来更新张量,但是如果我理解正确的话,这个方法是不推荐的。
b[:, 4].data += math.log(8 / (640 / s) ** 2) # obj (8 objects per 640 image)