mmsegmentation-distiller
mmsegmentation-distiller copied to clipboard
使用readme中的训练命令,loss不下降
使用train中的代码进行蒸馏训练,看日志loss开始会下降一点,后面一致在44.几震荡,感觉不收敛,是设置的不对吗
使用train中的代码进行蒸馏训练,看日志loss开始会下降一点,后面一致在44.几震荡,感觉不收敛,是设置的不对吗
Hi, 我使用了他的代码,出现了类似的问题。是因为代码中使用的Teacher权重不能正确加载导致。你可以修改 mmseg/models/backbones/resnet.py deep_stem 为False,就可以正确加载权重了。我使用单卡训练到16000/80000。 +--------+-------+-------+-------+ | Scope | mIoU | mAcc | aAcc | +--------+-------+-------+-------+ | global | 44.94 | 53.51 | 89.52 | +--------+-------+-------+-------+ Loss 为 2021-11-19 13:35:35,668 - mmseg - INFO - Iter [16050/80000] lr: 8.193e-03, eta: 6:36:38, time: 1.520, data_time: 1.168, memory: 5927, decode.loss_seg: 0.4076, decode.acc_seg: 81.6234, aux.loss_seg: 0.2637, aux.acc_seg: 74.2823, loss_cwd: 38.4893, loss: 39.1606 供你参考
嗯 好的 太感谢了,待会设置下再去试试。你在自己的项目中应用这种蒸馏方式了吗?
嗯 好的 太感谢了,待会设置下再去试试。你在自己的项目中应用这种蒸馏方式了吗?
我正在做项目迁移
大佬,能加个微信吗?后面有啥问题可以向你请教下
+--------+-------+-------+------+ | Scope | mIoU | mAcc | aAcc | +--------+-------+-------+------+ | global | 21.79 | 25.63 | 81.5 | +--------+-------+-------+------+ 这个是我当时训练输出的数据,我看你刚才贴那个后面的两个loss也很大呢loss_cwd这个
+--------+-------+-------+------+ | Scope | mIoU | mAcc | aAcc | +--------+-------+-------+------+ | global | 21.79 | 25.63 | 81.5 | +--------+-------+-------+------+ 这个是我当时训练输出的数据,我看你刚才贴那个后面的两个loss也很大呢loss_cwd这个
我没有训练完,所以没法给你结论。
大佬,训练完了吗?结果怎么样?
Abstract | GPU | Backbone | Resolution | Teacher | Head | mIoU |
---|---|---|---|---|---|---|
Official-mmlab | 4 | R18 | 512*1024 | / | PSPNet | 74.87 |
Official-mmlab | 4 | R101 | 512*1024 | / | PSPNet | 79.76 |
Self-train-baseline | 4 | R18 | 512*1024 | / | PSPNet | 72.26 |
Self-train-distillation | 4 | R18 | 512*1024 | Official-mmlab R101 | PSPNet | 74.83 |
Self-train-distillation | 6 | R18 | 512*1024 | Official-mmlab R101 | PSPNet |
蒸馏得到的结果基本接近mmlab官方不使用蒸馏实现的效果?可以这样理解吗?
蒸馏得到的结果基本接近mmlab官方不使用蒸馏实现的效果?可以这样理解吗?
我的结论是相比我自己的基准,蒸馏应该是有作用的,但是我不能确定官方repo里的完整配置,因为我为了适配,做了一些小的修改,如我之前的评论。所以我没有办法完全复现官方的repo结果。
好的 多谢大佬,你上次说正在做项目迁移,这块进展怎么样了?也能有如此的提升吗?
使用train中的代码进行蒸馏训练,看日志loss开始会下降一点,后面一致在44.几震荡,感觉不收敛,是设置的不对吗
loss 数值大是正常的,因为在实现的过程中,kl 计算时把没有梯度的项给去掉了,所以会导致数值有些大
Thanks for your attention !
If you want to distill model in OpenMMLab related repos, could join the wechat group in README.md