aim-uofa / AdelaiDet

AdelaiDet is an open source toolbox for multiple instance-level detection and recognition tasks.
https://git.io/AdelaiDet
Other
3.37k stars 646 forks source link

The last conv layer of the mask branch in CondInst is not initialized specifically #398

Closed Johnqczhang closed 3 years ago

Johnqczhang commented 3 years ago

https://github.com/aim-uofa/AdelaiDet/blob/a559ab542cfde73337b0c91f72bd51de208a74ae/adet/modeling/condinst/mask_branch.py#L34-L51

Hi @tianzhi0549, I wonder whether the weights initialization for the last layer (Line 48-50) of the mask branch has an impact on the performance of CondInst.

Johnqczhang commented 3 years ago

BTW, I have two other questions.

  1. Why all other conv layers in the mask branch are initialized using the kaiming_uniform method, whereas other newly added conv layers are initialized, as described in the paper, using the same way as the RetinaNet.
  2. Can you give some explanation on the refine module in the mask branch, cause I don't find anything about this in the paper. Thanks!
tianzhi0549 commented 3 years ago

@Johnqczhang The initialization method here is not important. It does not affect the performance too much.

Johnqczhang commented 3 years ago

@tianzhi0549 What about the refine module? I see that the multi-level FPN features are fed into the refine module and the corresponding outputs are added together, which are then fed into the mask branch. Is the refine module necessary?

tianzhi0549 commented 3 years ago

@tianzhi0549 Yes, refine can improve the performance considerably.