JAX implementation of Competitive Gradient Descent algorithms
Project description
JAX-CGD
JAX implementation of Competitive Gradient Descent algorithms for minimax optimization problems.
Features
- ACGD (Adaptive Competitive Gradient Descent): An adaptive variant of competitive gradient descent with momentum
- BCGD (Basic Competitive Gradient Descent): Standard competitive gradient descent algorithm
- Flexible Solvers: Support for different linear algebra solvers (CG, GMRES)
- JAX Integration: Built on JAX for automatic differentiation and JIT compilation
Installation
pip install jax-cgd
Algorithms
ACGD (Adaptive Competitive Gradient Descent)
- Includes momentum and adaptive learning rates
- Better convergence properties for complex minimax problems
- Configurable exponential decay rate (beta) and numerical stability (eps)
BCGD (Basic Competitive Gradient Descent)
- Standard competitive gradient descent
- Simpler implementation for basic minimax optimization
Requirements
- Python >= 3.10
- JAX >= 0.5.1
- NumPy
- Flax >= 1.10.0
License
MIT License
Contributing
Contributions are welcome! Please feel free to submit a Pull Request.
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
jax_cgd-1.0.2.tar.gz
(8.2 kB
view details)
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file jax_cgd-1.0.2.tar.gz.
File metadata
- Download URL: jax_cgd-1.0.2.tar.gz
- Upload date:
- Size: 8.2 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.0.1 CPython/3.10.16
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
f1fe4387ad85e47af9d90eb158f80451687480bd51d6f688007254a1135e816f
|
|
| MD5 |
6e73ebc0b1afc431e0924a0675cac650
|
|
| BLAKE2b-256 |
3b63a572f6ee677386f00af67837f87b440e129fb5c7fbb51bb0f57ca2a10fa9
|
File details
Details for the file jax_cgd-1.0.2-py3-none-any.whl.
File metadata
- Download URL: jax_cgd-1.0.2-py3-none-any.whl
- Upload date:
- Size: 9.0 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.0.1 CPython/3.10.16
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
a669b1b371129bb9f9ce92735fd7785752729e7cc1ebfd5a08b0fcd63c0dae62
|
|
| MD5 |
625bea95441f18ef9f8a4fbc69653cad
|
|
| BLAKE2b-256 |
687cf94b138abeb9c2f11a440ead9aaef07a73bbf108954d5f28c7b3be44aab6
|