Keras 3 API documentation / Utilities / Model plotting utilities

Model plotting utilities

[source]

plot_model function

keras.utils.plot_model( model, to_file="model.png", show_shapes=False, show_dtype=False, show_layer_names=False, rankdir="TB", expand_nested=False, dpi=200, show_layer_activations=False, show_trainable=False, **kwargs ) 

Converts a Keras model to dot format and save to a file.

Example

inputs = ... outputs = ... model = keras.Model(inputs=inputs, outputs=outputs) dot_img_file = '/tmp/model_1.png' keras.utils.plot_model(model, to_file=dot_img_file, show_shapes=True) 

Arguments

  • model: A Keras model instance
  • to_file: File name of the plot image.
  • show_shapes: whether to display shape information.
  • show_dtype: whether to display layer dtypes.
  • show_layer_names: whether to display layer names.
  • rankdir: rankdir argument passed to PyDot, a string specifying the format of the plot: "TB" creates a vertical plot; "LR" creates a horizontal plot.
  • expand_nested: whether to expand nested Functional models into clusters.
  • dpi: Image resolution in dots per inch.
  • show_layer_activations: Display layer activations (only for layers that have an activation property).
  • show_trainable: whether to display if a layer is trainable.

Returns

A Jupyter notebook Image object if Jupyter is installed. This enables in-line display of the model plots in notebooks.


[source]

model_to_dot function

keras.utils.model_to_dot( model, show_shapes=False, show_dtype=False, show_layer_names=True, rankdir="TB", expand_nested=False, dpi=200, subgraph=False, show_layer_activations=False, show_trainable=False, **kwargs ) 

Convert a Keras model to dot format.

Arguments

  • model: A Keras model instance.
  • show_shapes: whether to display shape information.
  • show_dtype: whether to display layer dtypes.
  • show_layer_names: whether to display layer names.
  • rankdir: rankdir argument passed to PyDot, a string specifying the format of the plot: "TB" creates a vertical plot; "LR" creates a horizontal plot.
  • expand_nested: whether to expand nested Functional models into clusters.
  • dpi: Image resolution in dots per inch.
  • subgraph: whether to return a pydot.Cluster instance.
  • show_layer_activations: Display layer activations (only for layers that have an activation property).
  • show_trainable: whether to display if a layer is trainable.

Returns

A pydot.Dot instance representing the Keras model or a pydot.Cluster instance representing nested model if subgraph=True.