Mesopotamia

Results 33 comments of Mesopotamia

感觉是不正常的,我找不到yolox的训练log了,你可以按照config跑一下蒸馏,跑一个epoch,和baseline的一个epoch比较一下,应该蒸馏是会明显涨点的

我没遇到过这个情况,我只能帮你debug一下。训练中的测试使用的是simple下的self.student.simple_test,你可以试试把这改成self.teacher.simple_test,看看训练中eval是不是老师的精度。或者可以把训练完1轮的model进行transfer后,使用dist_test.sh进行推理一下,看看学生是否正确训练

还有两个你可以debug注意的点,1是你可以试试使用蒸馏框架,但不带蒸馏损失看看能不能正常训练。2是可能问题在于学生的初始化self.studnet.init_weights和train.py的model.init_weights(),不同版本mmdet使用的方法是不同的。

你试试这个框架蒸馏其他的模型,看看retinanet啥的有没有问题,还不行就重新clone设置代码把

我也整不明白了 你来个完整log我看看

那你自己dubug一下吧,试试学生也像老师那样load一个训练好的模型进行初始化,看看能不能正常eval

我看issue其他同学是可以正常跑出来的,你从头整一下代码把,对齐mmdet和mmcv-full版本

1. The initialization follows gcblock. 2. yes, gcblock needs to be trained. But we donot need them for inference.

It seems strange. What's the teacher's and student's performance before distillation. Teacher is 75%, how about the student?

For distillation, you should keep the training setting as 2. For example, using pretrained Res-50 first, then train the student with FGD. Besides, you can use [inheriting strategy](https://github.com/yzd-v/FGD/blob/master/mmdet/distillation/distillers/detection_distiller.py#L37) to further...