# JAXopt
[**Installation**](#installation)
| [**Documentation**](https://jaxopt.github.io)
| [**Examples**](https://github.com/google/jaxopt/tree/main/examples)
| [**Cite us**](#citeus)
Hardware accelerated, batchable and differentiable optimizers in
[JAX](https://github.com/google/jax).
- **Hardware accelerated:** our implementations run on GPU and TPU, in addition
to CPU.
- **Batchable:** multiple instances of the same optimization problem can be
automatically vectorized using JAX's vmap.
- **Differentiable:** optimization problem solutions can be differentiated with
respect to their inputs either implicitly or via autodiff of unrolled
algorithm iterations.
## Installation<a id="installation"></a>
To install the latest release of JAXopt, use the following command:
```bash
$ pip install jaxopt
```
To install the **development** version, use the following command instead:
```bash
$ pip install git+https://github.com/google/jaxopt
```
Alternatively, it can be installed from sources with the following command:
```bash
$ python setup.py install
```
## Cite us<a id="citeus"></a>
Our implicit differentiation framework is described in this
[paper](https://arxiv.org/abs/2105.15183). To cite it:
```
@article{jaxopt_implicit_diff,
title={Efficient and Modular Implicit Differentiation},
author={Blondel, Mathieu and Berthet, Quentin and Cuturi, Marco and Frostig, Roy
and Hoyer, Stephan and Llinares-L{\'o}pez, Felipe and Pedregosa, Fabian
and Vert, Jean-Philippe},
journal={arXiv preprint arXiv:2105.15183},
year={2021}
}
```
## Disclaimer
JAXopt is an open source project maintained by a dedicated team in Google Research, but is not an official Google product.
Raw data
{
"_id": null,
"home_page": "https://github.com/google/jaxopt",
"name": "jaxopt",
"maintainer": "",
"docs_url": null,
"requires_python": "",
"maintainer_email": "",
"keywords": "optimization,root finding,implicit differentiation,jax",
"author": "Google LLC",
"author_email": "no-reply@google.com",
"download_url": "https://files.pythonhosted.org/packages/db/af/9027af6323e5870e45440d4e5954e92ed2502736d3b28aa3bd0f0412c733/jaxopt-0.8.2.tar.gz",
"platform": null,
"description": "# JAXopt\n\n[**Installation**](#installation)\n| [**Documentation**](https://jaxopt.github.io)\n| [**Examples**](https://github.com/google/jaxopt/tree/main/examples)\n| [**Cite us**](#citeus)\n\nHardware accelerated, batchable and differentiable optimizers in\n[JAX](https://github.com/google/jax).\n\n- **Hardware accelerated:** our implementations run on GPU and TPU, in addition\n to CPU.\n- **Batchable:** multiple instances of the same optimization problem can be\n automatically vectorized using JAX's vmap.\n- **Differentiable:** optimization problem solutions can be differentiated with\n respect to their inputs either implicitly or via autodiff of unrolled\n algorithm iterations.\n\n## Installation<a id=\"installation\"></a>\n\nTo install the latest release of JAXopt, use the following command:\n\n```bash\n$ pip install jaxopt\n```\n\nTo install the **development** version, use the following command instead:\n\n```bash\n$ pip install git+https://github.com/google/jaxopt\n```\n\nAlternatively, it can be installed from sources with the following command:\n\n```bash\n$ python setup.py install\n```\n\n## Cite us<a id=\"citeus\"></a>\n\nOur implicit differentiation framework is described in this\n[paper](https://arxiv.org/abs/2105.15183). To cite it:\n\n```\n@article{jaxopt_implicit_diff,\n title={Efficient and Modular Implicit Differentiation},\n author={Blondel, Mathieu and Berthet, Quentin and Cuturi, Marco and Frostig, Roy \n and Hoyer, Stephan and Llinares-L{\\'o}pez, Felipe and Pedregosa, Fabian \n and Vert, Jean-Philippe},\n journal={arXiv preprint arXiv:2105.15183},\n year={2021}\n}\n```\n\n## Disclaimer\n\nJAXopt is an open source project maintained by a dedicated team in Google Research, but is not an official Google product.\n",
"bugtrack_url": null,
"license": "Apache 2.0",
"summary": "Hardware accelerated, batchable and differentiable optimizers in JAX.",
"version": "0.8.2",
"project_urls": {
"Homepage": "https://github.com/google/jaxopt"
},
"split_keywords": [
"optimization",
"root finding",
"implicit differentiation",
"jax"
],
"urls": [
{
"comment_text": "",
"digests": {
"blake2b_256": "45eea74d0ec01e2c90945cdb10f5c886441d2a78f11f612f14830df39a94b8b5",
"md5": "0ae19314b825c93c0411d2d5894bd11d",
"sha256": "5dd94a635ae52899d4a5063ec88b4c1ca9f04d921b888f73211a444c937b7cfa"
},
"downloads": -1,
"filename": "jaxopt-0.8.2-py3-none-any.whl",
"has_sig": false,
"md5_digest": "0ae19314b825c93c0411d2d5894bd11d",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": null,
"size": 170328,
"upload_time": "2023-11-06T11:01:14",
"upload_time_iso_8601": "2023-11-06T11:01:14.604318Z",
"url": "https://files.pythonhosted.org/packages/45/ee/a74d0ec01e2c90945cdb10f5c886441d2a78f11f612f14830df39a94b8b5/jaxopt-0.8.2-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "dbaf9027af6323e5870e45440d4e5954e92ed2502736d3b28aa3bd0f0412c733",
"md5": "a47dbe2de2fa830780f7e30b73666c67",
"sha256": "65b5b4d17cde3ead7e3c8de6ebd2df8a9a12a3520211f02b0345dde8de37d25d"
},
"downloads": -1,
"filename": "jaxopt-0.8.2.tar.gz",
"has_sig": false,
"md5_digest": "a47dbe2de2fa830780f7e30b73666c67",
"packagetype": "sdist",
"python_version": "source",
"requires_python": null,
"size": 120053,
"upload_time": "2023-11-06T11:01:16",
"upload_time_iso_8601": "2023-11-06T11:01:16.750156Z",
"url": "https://files.pythonhosted.org/packages/db/af/9027af6323e5870e45440d4e5954e92ed2502736d3b28aa3bd0f0412c733/jaxopt-0.8.2.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2023-11-06 11:01:16",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "google",
"github_project": "jaxopt",
"travis_ci": false,
"coveralls": false,
"github_actions": true,
"requirements": [],
"lcname": "jaxopt"
}