About Keras layers

All Keras layers have a number of methods in common:

  • layer.get_weights(): returns the weights of the layer as a list of Numpy arrays.
  • layer.set_weights(weights): sets the weights of the layer from a list of Numpy arrays (with the same shapes as the output of get_weights).
  • layer.get_config(): returns a dictionary containing the configuration of the layer. The layer can be reinstantiated from its config via:
  1. layer = Dense(32)
  2. config = layer.get_config()
  3. reconstructed_layer = Dense.from_config(config)

Or:

  1. from keras import layers
  2. config = layer.get_config()
  3. layer = layers.deserialize({'class_name': layer.__class__.__name__,
  4. 'config': config})

If a layer has a single node (i.e. if it isn't a shared layer), you can get its input tensor, output tensor, input shape and output shape via:

  • layer.input
  • layer.output
  • layer.input_shape
  • layer.output_shape

If the layer has multiple nodes (see: the concept of layer node and shared layers), you can use the following methods:

  • layer.get_input_at(node_index)
  • layer.get_output_at(node_index)
  • layer.get_input_shape_at(node_index)
  • layer.get_output_shape_at(node_index)