Legacy autograd function with non-static forward method is deprecated
在网络s3fd_atss_sapd 测试时发现这个问题,
detect 是个Function,
class Detect(Function):
xxx
self.detect = Detect(cfg)
改之前代码:
if self.phase == 'test':
output = self.detect(
loc.view(loc.size(0), -1, 4), # loc preds
self.softmax.forward(conf.view(conf.size(0), -1,
self.num_classes)), # conf preds
# self.priors.type(type(x.data)) # default boxes
self.priors.type_as(x) # default boxes
)
改之后代码:
if self.phase == 'test':
output = self.detect.forward(
loc.view(loc.size(0), -1, 4), # loc preds
self.softmax.forward(conf.view(conf.size(0), -1,
self.num_classes)), # conf preds
# self.priors.type(type(x.data)) # default boxes
self.priors.type_as(x) # default boxes
)
基本上与网上方法一致,
网上的方法:
Legacy autograd function with non-static forward method is deprecated. - 知乎
解决方案是将ssd.py中的以下代码进行修改:
修改为
发布于 2021-03-09 22:
版权说明 : 本文为转载文章, 版权归原作者所有 版权申明
原文链接 : https://blog.csdn.net/jacke121/article/details/122794652
内容来源于网络,如有侵权,请联系作者删除!