Wenn Sie das Tensorflow-Backend verwenden, können Sie neben plot_model
auch keras.callbacks.TensorBoard
Callback verwenden, um das gesamte Diagramm im Tensorboard zu visualisieren. Beispiel:
callback = keras.callbacks.TensorBoard(log_dir='./graph',
histogram_freq=0,
write_graph=True,
write_images=True)
model.fit(..., callbacks=[callback])
Dann tensorboard --logdir ./graph
aus dem gleichen Verzeichnis ausgeführt werden.
Dies ist eine schnelle Abkürzung, aber Sie können sogar noch weiter gehen. Fügen Sie zum Beispiel tensorflow Code zu definieren (Last) das Modell in benutzerdefinierten tf.Graph
Beispiel wie folgt aus:
from keras.layers import LSTM
import tensorflow as tf
my_graph = tf.Graph()
with my_graph.as_default():
# All ops/variables in the LSTM layer are created as part of our graph
x = tf.placeholder(tf.float32, shape=(None, 20, 64))
y = LSTM(32)(x)
.. nach dem Sie list all graph nodes with dependencies, evaluate any variable, display the graph topology und so weiter, um die Modelle zu vergleichen.
Ich persönlich denke, der einfachste Weg ist, Ihre eigene Sitzung einzurichten. Es funktioniert in allen Fällen mit minimalem Patching:
import tensorflow as tf
from keras import backend as K
sess = tf.Session()
K.set_session(sess)
...
# Now can evaluate/access any node in this session, e.g. `sess.graph`