Closed HouBiaoLiu closed 3 years ago
测试集评估map的代码是直接继承原有的,且并不影响剪枝实际效果,只确保能跑通。 如果需要评估map,可以使用模型直接生成检测结果,然后输入第三方评估代码中去
1、我已查到原因了,这两个脚本的区别在于,有没有initialize_weights(model),slim_prune_yolov5s.py脚本原先没加这个,于是低6个点 2、这个函数中 elif t is nn.BatchNorm2d: m.eps = 1e-3,而默认加载权重就是1e-5,所引起的 @ZJU-lishuang
:+1::+1::+1:
执行export_prune_onnx.py 导出onnx时报错,在于attempt_load函数中fuse操作,去掉fuse操作可正常导出,这个fuse操作也将bn层的eps也fuse到卷积中了
1、使用prune_finetune.py微调训练,取某一轮训练好的模型,用这个脚本计算测试集的mAP@0.5,与保存的results.txt是一致的 2、但是使用slim_prune_yolov5s.py脚本,取上面步骤的模型,计算测试集的mAP@0.5,比前者低6个点