google-research / morph-net

Fast & Simple Resource-Constrained Learning of Deep Network Structure
Apache License 2.0
1.02k stars 148 forks source link

Adapt to object detection problems #41

Closed RizhaoCai closed 5 years ago

RizhaoCai commented 5 years ago

Hello. Your work is great.

May I ask for your advice for adapting it to object detection problems?

eladeban commented 5 years ago

Hi,

For the network stem you can use MorphNet directly, you will be able to potentially speed up the creation of the embedding.

For the region proposal part of the network, you could derive similar sparseing regularization terms that could trade-off compute and accuracy.

athorneak13 commented 5 years ago

Hi eladeban,

Wanted to see if you could elaborate on your prior comment? From the research that I've done, it seems that most ssd object detection algorithms are outputting weights for regression (bounding box predictions) and class prediction at the same time. Which embeddings are you talking about?

Also, does anyone know if there is a way to have access to the object detection (https://github.com/tensorflow/models/tree/master/research/object_detection) model architecture to understand better how to use morphnet on it? We are trying to use the base code given to us, and we don't have labels to pass into the morphnet model and we aren't sure where we can find them/what format they should be in.

Thanks!

eladeban commented 5 years ago

I think of the embedding as the output of the 'stem' part of the network, that is the part the is taken from image classification networks such as inception/resnet/mobilenet.

MorphNet dose not require 'labels' it only needs the op (accessed by tensor.op) which is the start to start the graph traversal at. It could be logits.op in a classification model other ops in different networks.