Skip to content

v2.13.0: ReGraMa dormant-neuron resets

Choose a tag to compare

@dougalrea dougalrea released this 01 Sep 16:37
· 26 commits to main since this release

Parameter mutation now resets dormant neurons before the Gaussian pass, using ReGraMa (gradient-magnitude
scoring). The old amplified (“super”) Gaussian band is gone.

Features

  • ReGraMa runs as the first stage of every parameter mutation. It scores each neuron with the GraMa metric of
    Liu et al., “Measure gradients, not activations!” — mean absolute gradient of
    the loss w.r.t. the pre-activation, normalised by that layer’s mean. Neurons at or below dormant_threshold
    (default 0.01) are reset: Xavier-uniform incoming weights, zero bias, small non-zero outgoing weights, and any
    adjacent norm entry restored to the identity. Output layers of heads are never reset. Target / shared networks are
    re-synced afterwards.
  • Capture rides the existing init_training_step / finalize_training_step pair, so on-policy, off-policy,
    multi-agent, bandit, and offline trainers all get scores with no extra forward/backward pass. LLM algorithms still
    skip parameter mutation.
  • Sensitivity is one field on the existing mutation block:
    mutation:
        dormant_threshold: 0.01
    The same argument exists on Mutations(...). Existing manifests and constructor calls keep working.

Changes

  • The Gaussian pass no longer has a “super” band (10× noise on ~5% of sampled weights). Of the 10% of weights
    sampled for mutation, 95% get ordinary noise scaled by mutation_sd and the weight’s own magnitude; 5%
    are redrawn from N(0, 1). The split is fixed.

CI

  • Pushing a v* or agilerl-arena/v* tag no longer publishes to PyPI. Create a GitHub Release from an existing
    tag with workflow_dispatch on the Publish release workflow.

What's Changed

  • ReGraMa & Amplified-Gaussian / Random-Reset Parameter Mutations Switches by @agilerl-hub-sync in
    #685
  • ci: publish PyPI from workflow_dispatch only

Full Changelog: v2.12.0...v2.13.0