2017-03-24 6 views
0

Ich versuche ein Modell zu erstellen, um mehrere Attribute in einem Bild zu erkennen.Wie Train Inception V3-Modell für Multilabel-Klassifizierung?

Ich benutze das vortrainierte Konzept der Einführung V3. Ich verstehe, dass wir die endgültige Softmax-Schicht zu Sigmoid ändern müssen.

Ich lade das Modell wie folgt:

with slim.arg_scope(inception.inception_v3_arg_scope()): 
       logits, _ = inception.inception_v3(images, num_classes=numClass, is_training=True) 

Nun, wie kann ich die softmax Ebene auf Sigmoid?

+0

Dieser Thread könnte hilfreich sein: https://github.com/tensorflow/skflow/issues/113 –

Antwort

1

Wenn Sie den Quellcode für inception_v3 überprüfen, werden Sie die vollen Argumente verfügbar unter:

def inception_v3(inputs, 
       num_classes=1000, 
       is_training=True, 
       dropout_keep_prob=0.8, 
       min_depth=16, 
       depth_multiplier=1.0, 
       prediction_fn=slim.softmax, 
       spatial_squeeze=True, 
       reuse=None, 
       scope='InceptionV3'): 

einfach ändern prediction_fn=tf.sigmoid

+0

Können Sie uns sagen, ob dieser Ansatz funktioniert hat? – Ravikrn