Transfer learning from classification network to ssd possible?

Is it possible to transfer the params/features from a custom trained classification network (resnext50) to a ssd network. Is it as simple as taking the the “features” property from the classification model and passing it as the “features” parameter to the SSD hybrid block?

Or is it better just to take one of the existing gluon pre-tained ssd models and just retrain that network on my classes?


if you start from an SSD network that uses Resnext50 as its base network, you can load the parameters of your trained classifier network in your SSD network.

The parameters file you load will have layers that the SSD network doesn’t use (the Dense layer) and will not have the detection layers, so you’ll need to load the parameters like this:

net.load_parameters(params_path, allow_missing=True, ignore_extra=True)

Note that the pretrained weights of the detection layers of your SSD network will need to be retrained from scratch to match the new base network.