squeezeDet
squeezeDet copied to clipboard
How about combining object detection and image classification in a single network?
In addition to do object detection using SqueezeDet, I tried adding another branch to do image classification, as follows, ######################################################### # One more fire module that is not trained before fire10_2 = self._fire_layer( 'fire10_2', fire9, s1x1=96, e1x1=384, e3x3=384, freeze=False) pool10_2 = self._pooling_layer('pool10_2', fire10_2, size=3, stride=2, padding='SAME') dropout10_2 = tf.nn.dropout(pool10_2, self.keep_prob, name='drop10_2')
num_output_2 = mc.GLOBAL_CLASSES # number of classes in image classification
conv11_2 = self._conv_layer(
'conv11_2', dropout10_2, filters=num_output_2, size=3, stride=1,
padding='SAME', freeze=False, relu=True, stddev=0.0001)
self.preds_2 = self._pooling_layer_avg('pool11_2', conv11_2, conv11_2.get_shape().as_list()[1], conv11_2.get_shape().as_list()[2])
#########################################################
However, when training, the branch for object detection converges, but the one for image classification diverges terribly. My friends, what's your opinion?
What do you get out of doing detection+classification in a single net? The detection net will already classify the objects in the picture... On Fri, 22 Sep 2017 at 10:16 AM, centosrhel [email protected] wrote:
In addition to do object detection using SqueezeDet, I tried adding another branch to do image classification, as follows, #########################################################
One more fire module that is not trained before
fire10_2 = self._fire_layer( 'fire10_2', fire9, s1x1=96, e1x1=384, e3x3=384, freeze=False) pool10_2 = self._pooling_layer('pool10_2', fire10_2, size=3, stride=2, padding='SAME') dropout10_2 = tf.nn.dropout(pool10_2, self.keep_prob, name='drop10_2')
num_output_2 = mc.GLOBAL_CLASSES # number of classes in image classification conv11_2 = self._conv_layer( 'conv11_2', dropout10_2, filters=num_output_2, size=3, stride=1, padding='SAME', freeze=False, relu=True, stddev=0.0001) self.preds_2 = self._pooling_layer_avg('pool11_2', conv11_2, conv11_2.get_shape().as_list()[1], conv11_2.get_shape().as_list()[2]) #########################################################
However, when training, the branch for object detection converges, but the one for image classification diverges terribly. My friends, what's your opinion?
— You are receiving this because you are subscribed to this thread. Reply to this email directly, view it on GitHub https://github.com/BichenWuUCB/squeezeDet/issues/79, or mute the thread https://github.com/notifications/unsubscribe-auth/AN_wJtl7SycJDYH61w0IpRaAp8sVurbuks5skxiVgaJpZM4PgJGR .