1. 程式人生 > 其它 >報錯記錄error:‘Hardswish‘ object has no attribute ‘inplace‘

報錯記錄error:‘Hardswish‘ object has no attribute ‘inplace‘

除錯程式的時候報錯,torch.nn.modules.module.ModuleAttributeError: ‘Hardswish‘ object has no attribute ‘inplace‘
查資料發現可能是yolov5和torch版本的關係。
這篇提到可以降版本解決,https://blog.csdn.net/qq_38767041/article/details/109736024

分別把 torch 版本降到 1.6.0 、torchvision 版本降到 0.7.0,執行檢測,成功~

但是我用的是rtx3090,用的是用的是torch 1.7.1+cu110,想用gpu就不能降torch版本,故上面的方法不適用與我。

然後發現了另一篇資料提到可以改torch的activation.py檔案,改完確實有效,記錄一下。
根據報錯提示的路徑,編輯/torch/nn/modules/activation.py,把“,self.inplace”刪掉,大概在438行左右。

    def forward(self, input: Tensor) -> Tensor:
        #return F.hardswish(input, self.inplace)  #刪除,self,inplace即可
        return F.hardswish(input)

在這裡插入圖片描述
原文在此:https://blog.csdn.net/ynxdb2002/article/details/109697772