Skip to main content

fax: fixed-point jax

Implicit and competitive differentiation in JAX.

Our "competitive differentiation" approach uses Competitive Gradient Descent to solve the equality-constrained nonlinear program associated with the fixed-point problem. A standalone implementation of CGD is provided under fax/competitive/cga.py and the equality-constrained solver derived from it can be accessed via fax.constrained.cga_lagrange_min or fax.constrained.cga_ecp. An implementation of implicit differentiation based on Christianson's two-phases reverse accumulation algorithm can also be obtained with the function fax.implicit.two_phase_solver.

See fax/constrained/constrained_test.py for examples. Please note that the API is subject to change.

References

Citing competitive differentiation:

@inproceedings{bacon2019optrl,
  author={Pierre-Luc Bacon, Florian Schaefer, Clement Gehring, Animashree Anandkumar, Emma Brunskill},
  title={A Lagrangian Method for Inverse Problems in Reinforcement Learning},
  booktitle={NeurIPS Optimization Foundations for Reinforcement Learning Workshop},
  year={2019},
  url={http://lis.csail.mit.edu/pubs/bacon-optrl-2019.pdf},
  keywords={Optimization, Reinforcement Learning, Lagrangian}
}

Citing this repo:

@misc{gehring2019fax,
  author = {Clement Gehring, Pierre-Luc Bacon, Florian Schaefer},
  title = {{FAX: differentiating fixed point problems in JAX}},
  note = {Available at: https://github.com/gehring/fax},
  year = {2019}
}

Release files for jax-fixedpoint 0.0.4

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for jax-fixedpoint 0.0.4
File Size Uploaded
jax-fixedpoint-0.0.4.tar.gz 25.4 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for jax-fixedpoint 0.0.4
File Interpreter ABI Platform
jax_fixedpoint-0.0.4-py3-none-any.whl Python 3 none any Details

Total release size: 225.1 kB

Release files / jax-fixedpoint-0.0.4.tar.gz

Download URL jax-fixedpoint-0.0.4.tar.gz
Size 25.4 kB
Tags Source
SHA-256 checksum
How to use checksums
231f62cc15001a880def06d743cb5139e9813992dff2fda269253e26214bf3ae
BLAKE2b-256 checksum
How to use checksums
656cf00dcebe8bfad8650e39bbd4f89604d866b3661e02c8795663e2efe18924
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/3.1.1 pkginfo/1.5.0.1 requests/2.23.0 setuptools/46.0.0 requests-toolbelt/0.9.1 tqdm/4.43.0 CPython/3.8.1

Release files / jax_fixedpoint-0.0.4-py3-none-any.whl

Download URL jax_fixedpoint-0.0.4-py3-none-any.whl
Size 199.7 kB
Tags Python 3
SHA-256 checksum
How to use checksums
fea60907d928103b3bf470c90a56c1905e9e388e0094770f5b51f71b7ae4ce1c
BLAKE2b-256 checksum
How to use checksums
704b0661345c8d8a8abf4b8e6ac088ca1cea29a7fb855482424feb0b98be565f
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/3.1.1 pkginfo/1.5.0.1 requests/2.23.0 setuptools/46.0.0 requests-toolbelt/0.9.1 tqdm/4.43.0 CPython/3.8.1

Release history Release notifications | RSS feed

This release

0.0.4 This release

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page