tf.contrib.layers.stack(inputs, layer, stack_args, **kwargs)
Builds a stack of layers by applying layer repeatedly using stack_args.
stack
allows you to repeatedly apply the same operation with different arguments stack_args[i]
. For each application of the layer, stack
creates a new scope appended with an increasing number. For example:
1 2 3 4 5 6 | y = stack(x, fully_connected, [ 32 , 64 , 128 ], scope = 'fc' ) # It is equivalent to: x = fully_connected(x, 32 , scope = 'fc/fc_1' ) x = fully_connected(x, 64 , scope = 'fc/fc_2' ) y = fully_connected(x, 128 , scope = 'fc/fc_3' ) |
If the scope
argument is not given in kwargs
, it is set to layer.__name__
, or layer.func.__name__
(for functools.partial
objects). If neither __name__
nor func.__name__
is available, the layers are called with scope='stack'
.
Args:
-
inputs
: ATensor
suitable for layer. -
layer
: A layer with arguments(inputs, *args, **kwargs)
-
stack_args
: A list/tuple of parameters for each call of layer. -
**kwargs
: Extra kwargs for the layer.
Returns:
a Tensor
result of applying the stacked layers.
Raises:
-
ValueError
: if the op is unknown or wrong.
Please login to continue.