BranchAndAddTogether

BranchAndAddTogether#

class penzai.nn.combinators.BranchAndAddTogether[source]#

Bases: Layer

A data-flow branch with additive interactions between branches.

BranchAndAddTogether can be used to compose multiple operations that all produce values of the same shape (or broadcast-compatible shapes). Each branch receives the same input, and the outputs of all branches are added together.

Variables:

branches (list[layer_base.LayerLike]) – A list of layers that will be run on the same input, and have their outputs added together.

Methods

__init__(branches)

__call__(arg)

Attributes

branches

Inherited 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.

treescope_color()

Computes a CSS color to display for this object in treescope.