smash.factory.Net.layers#

property Net.layers[source]#

List of Layer objects defining the graph of the network.

The graph is set using Net.add.

Examples

>>> from smash.factory import Net
>>> net = Net()
>>> net.add(layer="dense", options={"input_shape": (6,), "neurons": 32})
>>> net.add(layer="activation", options={"name": "sigmoid"})
>>> net.add(layer="dropout", options={"drop_rate": 0.2})

If you are using IPython, tab completion allows you to visualize all the attributes and methods of each Layer object:

>>> layer_1 = net.layers[0]
>>> layer_1.<TAB>
layer_1.bias                layer_1.neurons
layer_1.bias_initializer    layer_1.n_params(
layer_1.input_shape         layer_1.output_shape(
layer_1.kernel_initializer  layer_1.trainable
layer_1.layer_input         layer_1.weight
layer_1.layer_name(
>>> layer_2 = net.layers[1]
>>> layer_2.<TAB>
layer_2.activation_name  layer_2.output_shape(
layer_2.input_shape      layer_2.n_params(
layer_2.layer_name(      layer_2.trainable
>>> layer_3 = net.layers[-1]
>>> layer_3.<TAB>
layer_3.drop_rate      layer_3.n_params(
layer_3.input_shape    layer_3.output_shape(
layer_3.layer_name(    layer_3.trainable