Verwendung von 'Learning_Phase' in Keras für TensorFlow Backend?
Posted: 05 Mar 2025, 13:02
Ich versuche, ein Resnet -Netzwerk mit dem Keras -Backend in TensorFlow zu trainieren. Das Feed -Wörterbuch für jedes Stapel -Update ist geschrieben wie: < /p>
) Da das ursprüngliche ResNet -Netzwerk mit Keras definiert ist. Da das Modell Ausbrecher- und Batch_Norm -Schichten enthält, erfordert es eine Lernphase, die zwischen Training und Test unterschiedlich ist.
Ich beobachte, dass die Modellzug/Testgenauigkeit kaum über 10%steigt. Im Gegensatz dazu ist die Lernphase nicht festgelegt, d. H. Das Feed -Wörterbuch ist definiert als: < /p>
feed_dict= {x:X_train[indices[start:end]], y:Y_train[indices[start:end]]}
< /code>
Dann hält die Modellgenauigkeit wie erwartet auf eine Standardweise mit Epochen. Die Dokumentation von Keras 2.0 scheint vorzuschlagen, die Lernphase mit Dropout- und batch_norm -Schichten zu verwenden.
Code: Select all
feed_dict= {x:X_train[indices[start:end]], y:Y_train[indices[start:end]], keras.backend.learning_phase():1}
< /code>
Ich verwende Keras Backend (keras.backend.set_session(sess)
Ich beobachte, dass die Modellzug/Testgenauigkeit kaum über 10%steigt. Im Gegensatz dazu ist die Lernphase nicht festgelegt, d. H. Das Feed -Wörterbuch ist definiert als: < /p>
feed_dict= {x:X_train[indices[start:end]], y:Y_train[indices[start:end]]}
< /code>
Dann hält die Modellgenauigkeit wie erwartet auf eine Standardweise mit Epochen. Die Dokumentation von Keras 2.0 scheint vorzuschlagen, die Lernphase mit Dropout- und batch_norm -Schichten zu verwenden.