torchzero 0.4.2__tar.gz → 0.4.3__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {torchzero-0.4.2 → torchzero-0.4.3}/PKG-INFO +1 -1
- {torchzero-0.4.2 → torchzero-0.4.3}/pyproject.toml +1 -1
- {torchzero-0.4.2 → torchzero-0.4.3}/tests/test_identical.py +1 -1
- {torchzero-0.4.2 → torchzero-0.4.3}/torchzero/modules/basis/ggt_basis.py +1 -1
- {torchzero-0.4.2 → torchzero-0.4.3}/torchzero/modules/momentum/momentum.py +9 -9
- {torchzero-0.4.2 → torchzero-0.4.3}/torchzero/utils/optuna_tools.py +1 -1
- {torchzero-0.4.2 → torchzero-0.4.3}/torchzero.egg-info/PKG-INFO +1 -1
- {torchzero-0.4.2 → torchzero-0.4.3}/setup.cfg +0 -0
- {torchzero-0.4.2 → torchzero-0.4.3}/tests/test_module.py +0 -0
- {torchzero-0.4.2 → torchzero-0.4.3}/tests/test_module_autograd.py +0 -0
- {torchzero-0.4.2 → torchzero-0.4.3}/tests/test_objective.py +0 -0
- {torchzero-0.4.2 → torchzero-0.4.3}/tests/test_opts.py +0 -0
- {torchzero-0.4.2 → torchzero-0.4.3}/tests/test_tensorlist.py +0 -0
- {torchzero-0.4.2 → torchzero-0.4.3}/tests/test_utils_optimizer.py +0 -0
- {torchzero-0.4.2 → torchzero-0.4.3}/torchzero/__init__.py +0 -0
- {torchzero-0.4.2 → torchzero-0.4.3}/torchzero/_minimize/__init__.py +0 -0
- {torchzero-0.4.2 → torchzero-0.4.3}/torchzero/_minimize/methods.py +0 -0
- {torchzero-0.4.2 → torchzero-0.4.3}/torchzero/_minimize/minimize.py +0 -0
- {torchzero-0.4.2 → torchzero-0.4.3}/torchzero/core/__init__.py +0 -0
- {torchzero-0.4.2 → torchzero-0.4.3}/torchzero/core/chain.py +0 -0
- {torchzero-0.4.2 → torchzero-0.4.3}/torchzero/core/functional.py +0 -0
- {torchzero-0.4.2 → torchzero-0.4.3}/torchzero/core/modular.py +0 -0
- {torchzero-0.4.2 → torchzero-0.4.3}/torchzero/core/module.py +0 -0
- {torchzero-0.4.2 → torchzero-0.4.3}/torchzero/core/objective.py +0 -0
- {torchzero-0.4.2 → torchzero-0.4.3}/torchzero/core/reformulation.py +0 -0
- {torchzero-0.4.2 → torchzero-0.4.3}/torchzero/core/transform.py +0 -0
- {torchzero-0.4.2 → torchzero-0.4.3}/torchzero/linalg/__init__.py +0 -0
- {torchzero-0.4.2 → torchzero-0.4.3}/torchzero/linalg/benchmark.py +0 -0
- {torchzero-0.4.2 → torchzero-0.4.3}/torchzero/linalg/eigh.py +0 -0
- {torchzero-0.4.2 → torchzero-0.4.3}/torchzero/linalg/linalg_utils.py +0 -0
- {torchzero-0.4.2 → torchzero-0.4.3}/torchzero/linalg/linear_operator.py +0 -0
- {torchzero-0.4.2 → torchzero-0.4.3}/torchzero/linalg/matrix_power.py +0 -0
- {torchzero-0.4.2 → torchzero-0.4.3}/torchzero/linalg/orthogonalize.py +0 -0
- {torchzero-0.4.2 → torchzero-0.4.3}/torchzero/linalg/qr.py +0 -0
- {torchzero-0.4.2 → torchzero-0.4.3}/torchzero/linalg/sketch.py +0 -0
- {torchzero-0.4.2 → torchzero-0.4.3}/torchzero/linalg/solve.py +0 -0
- {torchzero-0.4.2 → torchzero-0.4.3}/torchzero/linalg/svd.py +0 -0
- {torchzero-0.4.2 → torchzero-0.4.3}/torchzero/linalg/torch_linalg.py +0 -0
- {torchzero-0.4.2 → torchzero-0.4.3}/torchzero/modules/__init__.py +0 -0
- {torchzero-0.4.2 → torchzero-0.4.3}/torchzero/modules/adaptive/__init__.py +0 -0
- {torchzero-0.4.2 → torchzero-0.4.3}/torchzero/modules/adaptive/adagrad.py +0 -0
- {torchzero-0.4.2 → torchzero-0.4.3}/torchzero/modules/adaptive/adahessian.py +0 -0
- {torchzero-0.4.2 → torchzero-0.4.3}/torchzero/modules/adaptive/adam.py +0 -0
- {torchzero-0.4.2 → torchzero-0.4.3}/torchzero/modules/adaptive/adan.py +0 -0
- {torchzero-0.4.2 → torchzero-0.4.3}/torchzero/modules/adaptive/adaptive_heavyball.py +0 -0
- {torchzero-0.4.2 → torchzero-0.4.3}/torchzero/modules/adaptive/aegd.py +0 -0
- {torchzero-0.4.2 → torchzero-0.4.3}/torchzero/modules/adaptive/esgd.py +0 -0
- {torchzero-0.4.2 → torchzero-0.4.3}/torchzero/modules/adaptive/ggt.py +0 -0
- {torchzero-0.4.2 → torchzero-0.4.3}/torchzero/modules/adaptive/lion.py +0 -0
- {torchzero-0.4.2 → torchzero-0.4.3}/torchzero/modules/adaptive/lre_optimizers.py +0 -0
- {torchzero-0.4.2 → torchzero-0.4.3}/torchzero/modules/adaptive/mars.py +0 -0
- {torchzero-0.4.2 → torchzero-0.4.3}/torchzero/modules/adaptive/matrix_momentum.py +0 -0
- {torchzero-0.4.2 → torchzero-0.4.3}/torchzero/modules/adaptive/msam.py +0 -0
- {torchzero-0.4.2 → torchzero-0.4.3}/torchzero/modules/adaptive/muon.py +0 -0
- {torchzero-0.4.2 → torchzero-0.4.3}/torchzero/modules/adaptive/natural_gradient.py +0 -0
- {torchzero-0.4.2 → torchzero-0.4.3}/torchzero/modules/adaptive/orthograd.py +0 -0
- {torchzero-0.4.2 → torchzero-0.4.3}/torchzero/modules/adaptive/psgd/__init__.py +0 -0
- {torchzero-0.4.2 → torchzero-0.4.3}/torchzero/modules/adaptive/psgd/_psgd_utils.py +0 -0
- {torchzero-0.4.2 → torchzero-0.4.3}/torchzero/modules/adaptive/psgd/psgd.py +0 -0
- {torchzero-0.4.2 → torchzero-0.4.3}/torchzero/modules/adaptive/psgd/psgd_dense_newton.py +0 -0
- {torchzero-0.4.2 → torchzero-0.4.3}/torchzero/modules/adaptive/psgd/psgd_kron_newton.py +0 -0
- {torchzero-0.4.2 → torchzero-0.4.3}/torchzero/modules/adaptive/psgd/psgd_kron_whiten.py +0 -0
- {torchzero-0.4.2 → torchzero-0.4.3}/torchzero/modules/adaptive/psgd/psgd_lra_newton.py +0 -0
- {torchzero-0.4.2 → torchzero-0.4.3}/torchzero/modules/adaptive/psgd/psgd_lra_whiten.py +0 -0
- {torchzero-0.4.2 → torchzero-0.4.3}/torchzero/modules/adaptive/rmsprop.py +0 -0
- {torchzero-0.4.2 → torchzero-0.4.3}/torchzero/modules/adaptive/rprop.py +0 -0
- {torchzero-0.4.2 → torchzero-0.4.3}/torchzero/modules/adaptive/sam.py +0 -0
- {torchzero-0.4.2 → torchzero-0.4.3}/torchzero/modules/adaptive/shampoo.py +0 -0
- {torchzero-0.4.2 → torchzero-0.4.3}/torchzero/modules/adaptive/soap.py +0 -0
- {torchzero-0.4.2 → torchzero-0.4.3}/torchzero/modules/adaptive/sophia_h.py +0 -0
- {torchzero-0.4.2 → torchzero-0.4.3}/torchzero/modules/basis/__init__.py +0 -0
- {torchzero-0.4.2 → torchzero-0.4.3}/torchzero/modules/basis/soap_basis.py +0 -0
- {torchzero-0.4.2 → torchzero-0.4.3}/torchzero/modules/clipping/__init__.py +0 -0
- {torchzero-0.4.2 → torchzero-0.4.3}/torchzero/modules/clipping/clipping.py +0 -0
- {torchzero-0.4.2 → torchzero-0.4.3}/torchzero/modules/clipping/ema_clipping.py +0 -0
- {torchzero-0.4.2 → torchzero-0.4.3}/torchzero/modules/clipping/growth_clipping.py +0 -0
- {torchzero-0.4.2 → torchzero-0.4.3}/torchzero/modules/conjugate_gradient/__init__.py +0 -0
- {torchzero-0.4.2 → torchzero-0.4.3}/torchzero/modules/conjugate_gradient/cg.py +0 -0
- {torchzero-0.4.2 → torchzero-0.4.3}/torchzero/modules/experimental/__init__.py +0 -0
- {torchzero-0.4.2 → torchzero-0.4.3}/torchzero/modules/experimental/coordinate_momentum.py +0 -0
- {torchzero-0.4.2 → torchzero-0.4.3}/torchzero/modules/experimental/cubic_adam.py +0 -0
- {torchzero-0.4.2 → torchzero-0.4.3}/torchzero/modules/experimental/curveball.py +0 -0
- {torchzero-0.4.2 → torchzero-0.4.3}/torchzero/modules/experimental/dct.py +0 -0
- {torchzero-0.4.2 → torchzero-0.4.3}/torchzero/modules/experimental/fft.py +0 -0
- {torchzero-0.4.2 → torchzero-0.4.3}/torchzero/modules/experimental/gradmin.py +0 -0
- {torchzero-0.4.2 → torchzero-0.4.3}/torchzero/modules/experimental/higher_order_newton.py +0 -0
- {torchzero-0.4.2 → torchzero-0.4.3}/torchzero/modules/experimental/l_infinity.py +0 -0
- {torchzero-0.4.2 → torchzero-0.4.3}/torchzero/modules/experimental/matrix_nag.py +0 -0
- {torchzero-0.4.2 → torchzero-0.4.3}/torchzero/modules/experimental/newton_solver.py +0 -0
- {torchzero-0.4.2 → torchzero-0.4.3}/torchzero/modules/experimental/newtonnewton.py +0 -0
- {torchzero-0.4.2 → torchzero-0.4.3}/torchzero/modules/experimental/reduce_outward_lr.py +0 -0
- {torchzero-0.4.2 → torchzero-0.4.3}/torchzero/modules/experimental/scipy_newton_cg.py +0 -0
- {torchzero-0.4.2 → torchzero-0.4.3}/torchzero/modules/experimental/structural_projections.py +0 -0
- {torchzero-0.4.2 → torchzero-0.4.3}/torchzero/modules/grad_approximation/__init__.py +0 -0
- {torchzero-0.4.2 → torchzero-0.4.3}/torchzero/modules/grad_approximation/fdm.py +0 -0
- {torchzero-0.4.2 → torchzero-0.4.3}/torchzero/modules/grad_approximation/forward_gradient.py +0 -0
- {torchzero-0.4.2 → torchzero-0.4.3}/torchzero/modules/grad_approximation/grad_approximator.py +0 -0
- {torchzero-0.4.2 → torchzero-0.4.3}/torchzero/modules/grad_approximation/rfdm.py +0 -0
- {torchzero-0.4.2 → torchzero-0.4.3}/torchzero/modules/grad_approximation/spsa1.py +0 -0
- {torchzero-0.4.2 → torchzero-0.4.3}/torchzero/modules/least_squares/__init__.py +0 -0
- {torchzero-0.4.2 → torchzero-0.4.3}/torchzero/modules/least_squares/gn.py +0 -0
- {torchzero-0.4.2 → torchzero-0.4.3}/torchzero/modules/line_search/__init__.py +0 -0
- {torchzero-0.4.2 → torchzero-0.4.3}/torchzero/modules/line_search/_polyinterp.py +0 -0
- {torchzero-0.4.2 → torchzero-0.4.3}/torchzero/modules/line_search/adaptive.py +0 -0
- {torchzero-0.4.2 → torchzero-0.4.3}/torchzero/modules/line_search/backtracking.py +0 -0
- {torchzero-0.4.2 → torchzero-0.4.3}/torchzero/modules/line_search/interpolation.py +0 -0
- {torchzero-0.4.2 → torchzero-0.4.3}/torchzero/modules/line_search/line_search.py +0 -0
- {torchzero-0.4.2 → torchzero-0.4.3}/torchzero/modules/line_search/scipy.py +0 -0
- {torchzero-0.4.2 → torchzero-0.4.3}/torchzero/modules/line_search/strong_wolfe.py +0 -0
- {torchzero-0.4.2 → torchzero-0.4.3}/torchzero/modules/misc/__init__.py +0 -0
- {torchzero-0.4.2 → torchzero-0.4.3}/torchzero/modules/misc/debug.py +0 -0
- {torchzero-0.4.2 → torchzero-0.4.3}/torchzero/modules/misc/escape.py +0 -0
- {torchzero-0.4.2 → torchzero-0.4.3}/torchzero/modules/misc/gradient_accumulation.py +0 -0
- {torchzero-0.4.2 → torchzero-0.4.3}/torchzero/modules/misc/homotopy.py +0 -0
- {torchzero-0.4.2 → torchzero-0.4.3}/torchzero/modules/misc/misc.py +0 -0
- {torchzero-0.4.2 → torchzero-0.4.3}/torchzero/modules/misc/multistep.py +0 -0
- {torchzero-0.4.2 → torchzero-0.4.3}/torchzero/modules/misc/regularization.py +0 -0
- {torchzero-0.4.2 → torchzero-0.4.3}/torchzero/modules/misc/split.py +0 -0
- {torchzero-0.4.2 → torchzero-0.4.3}/torchzero/modules/misc/switch.py +0 -0
- {torchzero-0.4.2 → torchzero-0.4.3}/torchzero/modules/momentum/__init__.py +0 -0
- {torchzero-0.4.2 → torchzero-0.4.3}/torchzero/modules/momentum/averaging.py +0 -0
- {torchzero-0.4.2 → torchzero-0.4.3}/torchzero/modules/momentum/cautious.py +0 -0
- {torchzero-0.4.2 → torchzero-0.4.3}/torchzero/modules/ops/__init__.py +0 -0
- {torchzero-0.4.2 → torchzero-0.4.3}/torchzero/modules/ops/accumulate.py +0 -0
- {torchzero-0.4.2 → torchzero-0.4.3}/torchzero/modules/ops/binary.py +0 -0
- {torchzero-0.4.2 → torchzero-0.4.3}/torchzero/modules/ops/higher_level.py +0 -0
- {torchzero-0.4.2 → torchzero-0.4.3}/torchzero/modules/ops/multi.py +0 -0
- {torchzero-0.4.2 → torchzero-0.4.3}/torchzero/modules/ops/reduce.py +0 -0
- {torchzero-0.4.2 → torchzero-0.4.3}/torchzero/modules/ops/unary.py +0 -0
- {torchzero-0.4.2 → torchzero-0.4.3}/torchzero/modules/ops/utility.py +0 -0
- {torchzero-0.4.2 → torchzero-0.4.3}/torchzero/modules/opt_utils.py +0 -0
- {torchzero-0.4.2 → torchzero-0.4.3}/torchzero/modules/projections/__init__.py +0 -0
- {torchzero-0.4.2 → torchzero-0.4.3}/torchzero/modules/projections/cast.py +0 -0
- {torchzero-0.4.2 → torchzero-0.4.3}/torchzero/modules/projections/galore.py +0 -0
- {torchzero-0.4.2 → torchzero-0.4.3}/torchzero/modules/projections/projection.py +0 -0
- {torchzero-0.4.2 → torchzero-0.4.3}/torchzero/modules/quasi_newton/__init__.py +0 -0
- {torchzero-0.4.2 → torchzero-0.4.3}/torchzero/modules/quasi_newton/damping.py +0 -0
- {torchzero-0.4.2 → torchzero-0.4.3}/torchzero/modules/quasi_newton/diagonal_quasi_newton.py +0 -0
- {torchzero-0.4.2 → torchzero-0.4.3}/torchzero/modules/quasi_newton/lbfgs.py +0 -0
- {torchzero-0.4.2 → torchzero-0.4.3}/torchzero/modules/quasi_newton/lsr1.py +0 -0
- {torchzero-0.4.2 → torchzero-0.4.3}/torchzero/modules/quasi_newton/quasi_newton.py +0 -0
- {torchzero-0.4.2 → torchzero-0.4.3}/torchzero/modules/quasi_newton/sg2.py +0 -0
- {torchzero-0.4.2 → torchzero-0.4.3}/torchzero/modules/restarts/__init__.py +0 -0
- {torchzero-0.4.2 → torchzero-0.4.3}/torchzero/modules/restarts/restars.py +0 -0
- {torchzero-0.4.2 → torchzero-0.4.3}/torchzero/modules/second_order/__init__.py +0 -0
- {torchzero-0.4.2 → torchzero-0.4.3}/torchzero/modules/second_order/ifn.py +0 -0
- {torchzero-0.4.2 → torchzero-0.4.3}/torchzero/modules/second_order/inm.py +0 -0
- {torchzero-0.4.2 → torchzero-0.4.3}/torchzero/modules/second_order/multipoint.py +0 -0
- {torchzero-0.4.2 → torchzero-0.4.3}/torchzero/modules/second_order/newton.py +0 -0
- {torchzero-0.4.2 → torchzero-0.4.3}/torchzero/modules/second_order/newton_cg.py +0 -0
- {torchzero-0.4.2 → torchzero-0.4.3}/torchzero/modules/second_order/nystrom.py +0 -0
- {torchzero-0.4.2 → torchzero-0.4.3}/torchzero/modules/second_order/rsn.py +0 -0
- {torchzero-0.4.2 → torchzero-0.4.3}/torchzero/modules/smoothing/__init__.py +0 -0
- {torchzero-0.4.2 → torchzero-0.4.3}/torchzero/modules/smoothing/laplacian.py +0 -0
- {torchzero-0.4.2 → torchzero-0.4.3}/torchzero/modules/smoothing/sampling.py +0 -0
- {torchzero-0.4.2 → torchzero-0.4.3}/torchzero/modules/step_size/__init__.py +0 -0
- {torchzero-0.4.2 → torchzero-0.4.3}/torchzero/modules/step_size/adaptive.py +0 -0
- {torchzero-0.4.2 → torchzero-0.4.3}/torchzero/modules/step_size/lr.py +0 -0
- {torchzero-0.4.2 → torchzero-0.4.3}/torchzero/modules/termination/__init__.py +0 -0
- {torchzero-0.4.2 → torchzero-0.4.3}/torchzero/modules/termination/termination.py +0 -0
- {torchzero-0.4.2 → torchzero-0.4.3}/torchzero/modules/trust_region/__init__.py +0 -0
- {torchzero-0.4.2 → torchzero-0.4.3}/torchzero/modules/trust_region/cubic_regularization.py +0 -0
- {torchzero-0.4.2 → torchzero-0.4.3}/torchzero/modules/trust_region/dogleg.py +0 -0
- {torchzero-0.4.2 → torchzero-0.4.3}/torchzero/modules/trust_region/levenberg_marquardt.py +0 -0
- {torchzero-0.4.2 → torchzero-0.4.3}/torchzero/modules/trust_region/trust_cg.py +0 -0
- {torchzero-0.4.2 → torchzero-0.4.3}/torchzero/modules/trust_region/trust_region.py +0 -0
- {torchzero-0.4.2 → torchzero-0.4.3}/torchzero/modules/variance_reduction/__init__.py +0 -0
- {torchzero-0.4.2 → torchzero-0.4.3}/torchzero/modules/variance_reduction/svrg.py +0 -0
- {torchzero-0.4.2 → torchzero-0.4.3}/torchzero/modules/weight_decay/__init__.py +0 -0
- {torchzero-0.4.2 → torchzero-0.4.3}/torchzero/modules/weight_decay/reinit.py +0 -0
- {torchzero-0.4.2 → torchzero-0.4.3}/torchzero/modules/weight_decay/weight_decay.py +0 -0
- {torchzero-0.4.2 → torchzero-0.4.3}/torchzero/modules/wrappers/__init__.py +0 -0
- {torchzero-0.4.2 → torchzero-0.4.3}/torchzero/modules/wrappers/optim_wrapper.py +0 -0
- {torchzero-0.4.2 → torchzero-0.4.3}/torchzero/modules/zeroth_order/__init__.py +0 -0
- {torchzero-0.4.2 → torchzero-0.4.3}/torchzero/modules/zeroth_order/cd.py +0 -0
- {torchzero-0.4.2 → torchzero-0.4.3}/torchzero/optim/__init__.py +0 -0
- {torchzero-0.4.2 → torchzero-0.4.3}/torchzero/optim/mbs.py +0 -0
- {torchzero-0.4.2 → torchzero-0.4.3}/torchzero/optim/root.py +0 -0
- {torchzero-0.4.2 → torchzero-0.4.3}/torchzero/optim/utility/__init__.py +0 -0
- {torchzero-0.4.2 → torchzero-0.4.3}/torchzero/optim/utility/split.py +0 -0
- {torchzero-0.4.2 → torchzero-0.4.3}/torchzero/optim/wrappers/__init__.py +0 -0
- {torchzero-0.4.2 → torchzero-0.4.3}/torchzero/optim/wrappers/directsearch.py +0 -0
- {torchzero-0.4.2 → torchzero-0.4.3}/torchzero/optim/wrappers/fcmaes.py +0 -0
- {torchzero-0.4.2 → torchzero-0.4.3}/torchzero/optim/wrappers/mads.py +0 -0
- {torchzero-0.4.2 → torchzero-0.4.3}/torchzero/optim/wrappers/moors.py +0 -0
- {torchzero-0.4.2 → torchzero-0.4.3}/torchzero/optim/wrappers/nevergrad.py +0 -0
- {torchzero-0.4.2 → torchzero-0.4.3}/torchzero/optim/wrappers/nlopt.py +0 -0
- {torchzero-0.4.2 → torchzero-0.4.3}/torchzero/optim/wrappers/optuna.py +0 -0
- {torchzero-0.4.2 → torchzero-0.4.3}/torchzero/optim/wrappers/pybobyqa.py +0 -0
- {torchzero-0.4.2 → torchzero-0.4.3}/torchzero/optim/wrappers/scipy/__init__.py +0 -0
- {torchzero-0.4.2 → torchzero-0.4.3}/torchzero/optim/wrappers/scipy/basin_hopping.py +0 -0
- {torchzero-0.4.2 → torchzero-0.4.3}/torchzero/optim/wrappers/scipy/brute.py +0 -0
- {torchzero-0.4.2 → torchzero-0.4.3}/torchzero/optim/wrappers/scipy/differential_evolution.py +0 -0
- {torchzero-0.4.2 → torchzero-0.4.3}/torchzero/optim/wrappers/scipy/direct.py +0 -0
- {torchzero-0.4.2 → torchzero-0.4.3}/torchzero/optim/wrappers/scipy/dual_annealing.py +0 -0
- {torchzero-0.4.2 → torchzero-0.4.3}/torchzero/optim/wrappers/scipy/experimental.py +0 -0
- {torchzero-0.4.2 → torchzero-0.4.3}/torchzero/optim/wrappers/scipy/minimize.py +0 -0
- {torchzero-0.4.2 → torchzero-0.4.3}/torchzero/optim/wrappers/scipy/sgho.py +0 -0
- {torchzero-0.4.2 → torchzero-0.4.3}/torchzero/optim/wrappers/wrapper.py +0 -0
- {torchzero-0.4.2 → torchzero-0.4.3}/torchzero/utils/__init__.py +0 -0
- {torchzero-0.4.2 → torchzero-0.4.3}/torchzero/utils/benchmarks/__init__.py +0 -0
- {torchzero-0.4.2 → torchzero-0.4.3}/torchzero/utils/benchmarks/logistic.py +0 -0
- {torchzero-0.4.2 → torchzero-0.4.3}/torchzero/utils/compile.py +0 -0
- {torchzero-0.4.2 → torchzero-0.4.3}/torchzero/utils/derivatives.py +0 -0
- {torchzero-0.4.2 → torchzero-0.4.3}/torchzero/utils/metrics.py +0 -0
- {torchzero-0.4.2 → torchzero-0.4.3}/torchzero/utils/numberlist.py +0 -0
- {torchzero-0.4.2 → torchzero-0.4.3}/torchzero/utils/optimizer.py +0 -0
- {torchzero-0.4.2 → torchzero-0.4.3}/torchzero/utils/params.py +0 -0
- {torchzero-0.4.2 → torchzero-0.4.3}/torchzero/utils/python_tools.py +0 -0
- {torchzero-0.4.2 → torchzero-0.4.3}/torchzero/utils/tensorlist.py +0 -0
- {torchzero-0.4.2 → torchzero-0.4.3}/torchzero/utils/thoad_tools.py +0 -0
- {torchzero-0.4.2 → torchzero-0.4.3}/torchzero/utils/torch_tools.py +0 -0
- {torchzero-0.4.2 → torchzero-0.4.3}/torchzero.egg-info/SOURCES.txt +0 -0
- {torchzero-0.4.2 → torchzero-0.4.3}/torchzero.egg-info/dependency_links.txt +0 -0
- {torchzero-0.4.2 → torchzero-0.4.3}/torchzero.egg-info/requires.txt +0 -0
- {torchzero-0.4.2 → torchzero-0.4.3}/torchzero.egg-info/top_level.txt +0 -0
|
@@ -105,7 +105,7 @@ def test_adam(amsgrad):
|
|
|
105
105
|
tz_fn_ops = lambda p: tz.Optimizer(
|
|
106
106
|
p,
|
|
107
107
|
tz.m.DivModules(
|
|
108
|
-
tz.m.EMA(0.9,
|
|
108
|
+
tz.m.EMA(0.9, debias=True),
|
|
109
109
|
[tz.m.SqrtEMASquared(0.999, debiased=True, amsgrad=amsgrad), tz.m.Add(1e-8)]
|
|
110
110
|
))
|
|
111
111
|
tz_fn_ops2 = lambda p: tz.Optimizer(
|
|
@@ -111,7 +111,7 @@ class GGTBasis(TensorTransform):
|
|
|
111
111
|
inner: Chainable | None = None,
|
|
112
112
|
):
|
|
113
113
|
defaults = locals().copy()
|
|
114
|
-
del defaults['self'], defaults['inner']
|
|
114
|
+
del defaults['self'], defaults['inner'], defaults["basis_opt"]
|
|
115
115
|
|
|
116
116
|
super().__init__(defaults, concat_params=True, inner=inner)
|
|
117
117
|
self.set_child("basis_opt", basis_opt)
|
|
@@ -6,7 +6,7 @@ import torch
|
|
|
6
6
|
|
|
7
7
|
from ...core import TensorTransform
|
|
8
8
|
from ...utils import NumberList, TensorList, unpack_dicts, unpack_states
|
|
9
|
-
from ..opt_utils import debias, ema_
|
|
9
|
+
from ..opt_utils import debias as _debias, ema_
|
|
10
10
|
|
|
11
11
|
|
|
12
12
|
class EMA(TensorTransform):
|
|
@@ -15,13 +15,13 @@ class EMA(TensorTransform):
|
|
|
15
15
|
Args:
|
|
16
16
|
momentum (float, optional): momentum (beta). Defaults to 0.9.
|
|
17
17
|
dampening (float, optional): momentum dampening. Defaults to 0.
|
|
18
|
-
|
|
18
|
+
debias (bool, optional): whether to debias the EMA like in Adam. Defaults to False.
|
|
19
19
|
lerp (bool, optional): whether to use linear interpolation. Defaults to True.
|
|
20
20
|
ema_init (str, optional): initial values for the EMA, "zeros" or "update".
|
|
21
21
|
target (Target, optional): target to apply EMA to. Defaults to 'update'.
|
|
22
22
|
"""
|
|
23
|
-
def __init__(self, momentum:float=0.9, dampening:float=0,
|
|
24
|
-
defaults = dict(momentum=momentum,dampening=dampening,
|
|
23
|
+
def __init__(self, momentum:float=0.9, dampening:float=0, debias: bool = False, lerp=True, ema_init: Literal['zeros', 'update'] = 'zeros'):
|
|
24
|
+
defaults = dict(momentum=momentum,dampening=dampening,debias=debias,lerp=lerp,ema_init=ema_init)
|
|
25
25
|
super().__init__(defaults, uses_grad=False)
|
|
26
26
|
|
|
27
27
|
self.add_projected_keys("grad", "exp_avg")
|
|
@@ -30,7 +30,7 @@ class EMA(TensorTransform):
|
|
|
30
30
|
def multi_tensor_apply(self, tensors, params, grads, loss, states, settings):
|
|
31
31
|
step = self.global_state['step'] = self.global_state.get('step', 0) + 1
|
|
32
32
|
|
|
33
|
-
|
|
33
|
+
debias, lerp, ema_init = itemgetter('debias','lerp','ema_init')(settings[0])
|
|
34
34
|
|
|
35
35
|
exp_avg = unpack_states(states, tensors, 'exp_avg',
|
|
36
36
|
init=torch.zeros_like if ema_init=='zeros' else tensors, cls=TensorList)
|
|
@@ -38,7 +38,7 @@ class EMA(TensorTransform):
|
|
|
38
38
|
|
|
39
39
|
exp_avg = ema_(TensorList(tensors), exp_avg_=exp_avg,beta=momentum,dampening=dampening,lerp=lerp)
|
|
40
40
|
|
|
41
|
-
if
|
|
41
|
+
if debias: return _debias(exp_avg, step=step, beta1=momentum, alpha=1, inplace=False)
|
|
42
42
|
else: return exp_avg.clone() # this has exp_avg storage so needs to be cloned
|
|
43
43
|
|
|
44
44
|
|
|
@@ -49,14 +49,14 @@ class HeavyBall(EMA):
|
|
|
49
49
|
Args:
|
|
50
50
|
momentum (float, optional): momentum (beta). Defaults to 0.9.
|
|
51
51
|
dampening (float, optional): momentum dampening. Defaults to 0.
|
|
52
|
-
|
|
52
|
+
debias (bool, optional): whether to debias the EMA like in Adam. Defaults to False.
|
|
53
53
|
lerp (bool, optional):
|
|
54
54
|
whether to use linear interpolation, if True, this becomes exponential moving average. Defaults to False.
|
|
55
55
|
ema_init (str, optional): initial values for the EMA, "zeros" or "update".
|
|
56
56
|
target (Target, optional): target to apply EMA to. Defaults to 'update'.
|
|
57
57
|
"""
|
|
58
|
-
def __init__(self, momentum:float=0.9, dampening:float=0,
|
|
59
|
-
super().__init__(momentum=momentum, dampening=dampening,
|
|
58
|
+
def __init__(self, momentum:float=0.9, dampening:float=0, debias: bool = False, lerp=False, ema_init: Literal['zeros', 'update'] = 'update'):
|
|
59
|
+
super().__init__(momentum=momentum, dampening=dampening, debias=debias, lerp=lerp, ema_init=ema_init)
|
|
60
60
|
|
|
61
61
|
def nag_(
|
|
62
62
|
tensors_: TensorList,
|
|
@@ -27,7 +27,7 @@ def get_momentum(trial: optuna.Trial, prefix: str, conditional: bool=True) -> li
|
|
|
27
27
|
m = NAG(beta, dampening, lerp)
|
|
28
28
|
if debiased: m = Chain(m, Debias(beta1=beta))
|
|
29
29
|
else:
|
|
30
|
-
m = EMA(beta, dampening,
|
|
30
|
+
m = EMA(beta, dampening, debias=debiased, lerp=lerp)
|
|
31
31
|
return [m]
|
|
32
32
|
return []
|
|
33
33
|
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{torchzero-0.4.2 → torchzero-0.4.3}/torchzero/modules/experimental/structural_projections.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{torchzero-0.4.2 → torchzero-0.4.3}/torchzero/modules/grad_approximation/forward_gradient.py
RENAMED
|
File without changes
|
{torchzero-0.4.2 → torchzero-0.4.3}/torchzero/modules/grad_approximation/grad_approximator.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{torchzero-0.4.2 → torchzero-0.4.3}/torchzero/optim/wrappers/scipy/differential_evolution.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|