spd_learn.functional.NumericalContext#
- class spd_learn.functional.NumericalContext(**kwargs)[source]#
Bases:
objectContext manager for temporarily modifying numerical configuration.
This context manager allows temporary modification of the global numerical configuration. The original configuration is restored when exiting the context.
- Parameters:
**kwargs – Configuration parameters to temporarily override.
Examples
>>> from spd_learn.functional.numerical import ( ... numerical_config, NumericalContext, get_epsilon ... ) >>> import torch >>> # Default epsilon >>> print(f"Default: {get_epsilon(torch.float32, 'eigval_clamp'):.2e}") Default: 1.19e-03 >>> # Temporarily use more conservative threshold >>> with NumericalContext(eigval_clamp_scale=1e6): ... print(f"Conservative: {get_epsilon(torch.float32, 'eigval_clamp'):.2e}") Conservative: 1.19e-01 >>> # Back to default >>> print(f"Restored: {get_epsilon(torch.float32, 'eigval_clamp'):.2e}") Restored: 1.19e-03