ModuleNotFoundError: No module named ‘models‘解决torch.load问题【天坑】

当使用torch.load时,报错No module named 'models'
在网上查了很多资料说目录结构得和保存时一模一样,话虽如此,但一直没理解要如何一样

因为我是用detect.py调用yolov5的best.pt模型,该模型被自动保存在runs/train/exp/weights/下,但即便改成了这样,还是报同样的错

最后调试发现,No module named 'models'报错说没有models,确实是因为没有才报错的。我用的是ultralytics的yolov5,其结构目录如下
ModuleNotFoundError: No module named ‘models‘解决torch.load问题【天坑】_第1张图片
可以看到,里面真的有两个module:utils和models,即便把detect.py里修改得没有引用这两个module里任何py文件,但在torch.load模型时,还是得把这两个module放在和detect.py同一路径,而.pt模型在哪里都无所谓,最终解决这个bug

花了大概数小时,气死

你可能感兴趣的:(计算机科学与技术,python,深度学习,bug,torch,load)