Closed adizhol closed 4 years ago
In my option. it depends on your batch size. if your batch size is small, you'd better to freeze them you can reference RetinaNet's methods
@adizhol You might be confusing freezing batchnorm layers with freezing backbone layers. Calling self.freeze_bn() does NOT freeze the whole backbone, you'll still be training the entire net.
in my fork I added freeze_backbone and freeze_bn options so that you can first freeze the backbone in order to adjust the retina heads weights. After that you can retrain the whole network by freezing the bn layers. Adding freezing bn layers avoids the bn stats numbers for small batch size.
Hello, First, thank you for the repo!
in EfficientDet.init line 55 [...] self.freeze_bn()
If I want to retrain on custom data. I'd want to retrain the entire net, no?
Thanks!