yatengLG / Retinanet-Pytorch

Retinanet目标检测算法(简单,明了,易用,全中文注释,单机多卡训练,视频检测)(based on pytorch,Simple, Clear, Mutil GPU)
267 stars 96 forks source link

net.load_pretrained_weight 没这个方法呢? #2

Open yangbisheng2009 opened 4 years ago

yangbisheng2009 commented 4 years ago

AttributeError: 'RetainNet' object has no attribute 'load_pretrained_weight'

yatengLG commented 4 years ago

这个错报在哪儿了,我瞅瞅,这个模型只训练到一半就有事儿没再弄了,所以这个加载预训练好的模型这块儿没测.但是模型是肯定没问题的

yatengLG commented 4 years ago

方法刚填加了,但是我这个没提供训练好的最终模型. (只提供了base网络的权重预训练.)

Retinanet-Pytorch/Demo_eval.py 中 net.load_pretrained_weight('XXX.pkl') XXX.pkl为你 训练好的最终模型.

yatengLG commented 4 years ago

更多问题欢迎issues ,或参考 https://github.com/yatengLG/SSD-Pytorch 来个项目是同样的结构. 这个项目是完整的提供了最终训练模型权重的.

yangbisheng2009 commented 4 years ago

感谢,另外后续有计划和其它模型做map的对比么?能达到paper里面的精度么

yatengLG commented 4 years ago

1.最近没时间做后续的补充. 2.实现这个项目主要原因是使用focalloss损失,顺便实现的. 3.模型结构以及训练过程是没有任何问题的.短时间内不会补充预训练权重. 4.在实际的使用中,精度是有所提升的.但是没有想象中那么大(主要在之前就已经做了很大一部分的数据平衡的工作了) 5.本项目应该不会去复现论文. 6.本项目对深度学习有一些了解,并准备在自建数据集进行模型训练的研究项目会帮助比较大(项目结构有较好的移植性与灵活性);如果是单纯的论文复现,可能意义不是特别大(只是结构更加清晰了).

有其他问题欢迎issues.

yangbisheng2009 commented 4 years ago

还是报错,我看了下你的保存模型的方式,是:torch.save(model.module.state_dict() 是不是和这个有关

self.class.name, "\n\t".join(error_msgs))) RuntimeError: Error(s) in loading state_dict for RetainNet: Missing key(s) in state_dict: "backbone.layer3.6.conv1.weight", "backbone.layer3.6.bn1.weight", "backbone.layer3.6.bn1.bias", "backbone.layer3.6.bn1.running_mean", "backbone.layer3.6.bn1.running_var", "backbone.layer3.6.conv2.weight", "backbone.layer3.6.bn2.weight", "backbone.layer3.6.bn2.bias", "backbone.layer3.6.bn2.running_mean", "backbone.layer3.6.bn2.running_var", "backbone.layer3.6.conv3.weight", "backbone.layer3.6.bn3.weight", "backbone.layer3.6.bn3.bias", "backbone.layer3.6.bn3.running_mean", "backbone.layer3.6.bn3.running_var", "backbone.layer3.7.conv1.weight", "backbone.layer3.7.bn1.weight", "backbone.layer3.7.bn1.bias", "backbone.layer3.7.bn1.running_mean", "backbone.layer3.7.bn1.runnin

yatengLG commented 4 years ago

真是不好意思说啊.刚在忙其他的.

我直接clone下来, 自己弄一下吧.

弄好通知你,应该很快的,你一会儿重clone就行.

yatengLG commented 4 years ago

已经改完了,你现在可以config里面设置好参数,然后直接跑 demo_train.py去训练, 训练过程保存的模型在 Weights/trained下, 然后你可以用 demo_det**.py 进行检测.

Shuwrood-SSW commented 4 years ago

what is the version of pytorch?

yatengLG commented 4 years ago

@Shuwrood-SSW 对pytorch没要求,但是 torchvision需要0.3 以上. 只需要 pytorch与torchvision对应就行. 另外不要star下么?

yatengLG commented 4 years ago

@Shuwrood-SSW only need torchvision version > 0.3.0 . the pytorch version sould match with torchvision.