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)
| File | Size | Uploaded | |
|---|---|---|---|
| jax-fixedpoint-0.0.4.tar.gz | 25.4 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| 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
|