braintools.init.Compose#
- class braintools.init.Compose(*inits)#
Compose multiple initialization strategies.
This class allows functional composition of multiple initializations, applying them in sequence.
- Parameters:
*inits (Initialization or callable) – Sequence of initializations or functions to compose. Applied from left to right (first init is applied first).
Examples
>>> import numpy as np >>> import brainunit as u >>> from braintools.init import Normal, Compose >>> >>> init = Compose( ... Normal(1.0 * u.nS, 0.2 * u.nS), ... lambda x: u.math.maximum(x, 0 * u.nS), ... lambda x: x * 0.5 ... ) >>> >>> rng = np.random.default_rng(0) >>> weights = init(1000, rng=rng)
Methods
__init__(*inits)add(value)Add a constant value.
apply(func)Apply an arbitrary function to the output.
clip([min_val, max_val])Clip values to a specified range.
multiply(value)Multiply by a constant value.