mahyarnajibi / SSH

SSH: Single Stage Headless Face Detector
Other
835 stars 280 forks source link

How about other Networks? #9

Open dkjsh opened 6 years ago

dkjsh commented 6 years ago

Hi, besides VGG-16, have you tried any other Networks, such as ResNet, DenseNet or DualPathNet? I have tried resnet101 and densenet92 by replacing the corresponding layers in vgg16. It's a pity these results are not good enough. Do you have any good suggestions?

po0ya commented 6 years ago

Hi @dkjsh We have recently played with ResNet a little bit and here are some points we have figured:

  1. It helps to freeze initial layers when transferring weights from imagenet.
  2. Where to put SSH modules matters.
  3. Batch normalization layer parameters are better to be left fixed (at least at first) when transferring weights from ImageNet. after all, most probably there exists a combination of these and other considerations (like having different learning rates for different part of the architectures) which should make the same core idea of multiscale modules applicable to other architectures.
dkjsh commented 6 years ago

Hi @po0ya , Thank you very much for your suggestions. In my test on resnet101,

  1. I fixed some low layers from conv1 to res2b, while opening other layers.
  2. Following the authors, the module1 based on the res3b3 (corresponding to conv4_3 in VGG16), module2 based on red4b22 (conv5_3 in vgg16), and module3 based on the downsample pooling layer from res4b22.
  3. During the trainning, BN layers are fixed.
  4. Learning rate and batchsize remain unchanged. The performance on Wider validation set are not as good as expected. When iter=21,000, the results are 0.919, 0.894 and 0.748 on easy, medium and hard respectively.

Do you have any more encouraging results based on resnet or other networks?

AndyLiu93 commented 6 years ago

Hi @dkjsh ,I have also encountered this problem that some model have not get a good result. Have you get a better result?