Sequential#
- class penzai.deprecated.v1.nn.grouping.Sequential[source]#
Bases:
LayerA group of layers to call sequentially.
Sequentialis one of the most common layer types to use in a penzai.deprecated.v1.nn model, since many networks can be written as the composition of a number of layers. However, you may prefer to useCheckedSequentialif you can define in advance the structure of inputs and outputs your layer will accept.A common pattern in penzai is:
subclass
Sequentialwith a different layer name,inherit
__init__and__call__fromSequential,define a classmethod (often called
from_config) that constructs an instance of the subclass with its contents.
This allows the configuration and initialization logic for parts of a network (such as a self-attention layer) to be grouped in a single place, without affecting the later ability to interactively modify the resulting network.
Subclasses of
Sequentialare NOT allowed to override__call__. If a user has a subclass ofSequential, they should be able to assume it just calls each child in order. (If you need finer control, consider having aSequentialas a child attribute instead, or just duplicate the relevant logic for your own class.)- Variables:
sublayers (list[Callable[[Any], Any]]) – A sequence of layers to call in order. These are usually pz.Layer instances, but are allowed to be other types of callable PyTree as well.
Methods
__init__(sublayers)treescope_color()__call__(value)Runs each of the sublayers in sequence.
Attributes
sublayersInherited Methods
(expand to view inherited methods)
attributes_dict()Constructs a dictionary with all of the fields in the class.
from_attributes(**field_values)Directly instantiates a struct given all of its fields.
input_structure()Returns the input structure of this layer.
key_for_field(field_name)Generates a JAX PyTree key for a given field name.
output_structure()Returns the output structure of this layer.
select()Wraps this struct in a selection, enabling functional-style mutations.
tree_flatten()Flattens this tree node.
tree_flatten_with_keys()Flattens this tree node with keys.
tree_unflatten(aux_data, children)Unflattens this tree node.