hqhz1817
hqhz1817
It seems you can only change one model's trainable before model.compile, if you compile one model, your change of trainable will not work. So, why do you change model.trainable twice...
I think alpha should be min(negative CAMS). CAM = Conv(weight * Feature), Feature must be >= 0, but weight maybe < 0, so min(CAM) maybe < 0.
https://github.com/dontLoveBugs/Deformable_ConvNet_pytorch/blob/aea497d1a5a6090940c8f24a47b97ea09073ae98/network/deform_conv/deform_conv.py#L50 This code just change the order from [x1, y1, x2, y2...] to [x1, x2,...y1,y2...], not from [x1, x2,...y1,y2...] to [x1, y1, x2, y2...].
https://github.com/zbwxp/SegVit/blob/85616388cd8983e2d4daafd971540b210e956666/decode_heads/atm_single_head.py#L277 semseg = mask_cls.softmax(-1) @ mask_pred.sigmoid() which will result in: **1>= semseg >= 0** When we compute [loss_func](https://github.com/zbwxp/SegVit/blob/85616388cd8983e2d4daafd971540b210e956666/losses/criterion.py#L58), we set semseg as a **logits**, and compute prob by semseg.sigmoid() If...