Root package info.
Project description
Eqxvision
Eqxvision is a package of popular computer vision model architectures built using Equinox.
Installation
Use the package manager pip to install eqxvision.
pip install eqxvision
requires: python>=3.7
optional: torch, only if pretrained models are required.
Documentation
Available at https://eqxvision.readthedocs.io/en/latest/.
Usage
Picking a model and doing a forward pass is as simple as ...
import jax
import jax.random as jr
import equinox as eqx
from eqxvision.models import alexnet
from eqxvision.utils import CLASSIFICATION_URLS
@eqx.filter_jit
def forward(net, images, key):
keys = jax.random.split(key, images.shape[0])
output = jax.vmap(net, axis_name=('batch'))(images, key=keys)
...
net = alexnet(torch_weights=CLASSIFICATION_URLS['alexnet'])
images = jr.uniform(jr.PRNGKey(0), shape=(1,3,224,224))
output = forward(net, images, jr.PRNGKey(0))
What's New?
FCN,DeepLabV3andLRASPPadded as new image segmentation models.- Backward incompatible changes to
v0.2.0for loading apretrainedmodel. - Almost all image classification models are ported from
torchvision. - New tutorial for generating
adversarial examplesand others coming soon.
Get Started!
Start with any one of these easy to follow tutorials.
Tips
- Better to use
@equinox.filter_jitinstead of@jax.jit. - Use
jax.{v,p}mapwithaxis_name='batch'when using models that use batch normalisation. - Don't forget to switch to
inferencemode for evaluations. (model = eqx.tree_inference(model)) - Initialise Optax optimisers as
optim.init(eqx.filter(net, eqx.is_array)). (See here.)
Contributing
Pull requests are welcome. For major changes, please open an issue first to discuss what you would like to change.
Development Process
If you plan to modify the code or documentation, please follow the steps below:
- Fork the repository and create your branch from
dev. - If you have modified the code (new feature or bug-fix), please add unit tests.
- If you have changed APIs, update the documentation. Make sure the documentation builds.
mkdocs serve - Ensure the test suite passes.
pytest tests -vvv - Make sure your code passes the formatting checks. Automatically checked with a
pre-commithook.
Acknowledgements
License
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
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 eqxvision-0.2.8.tar.gz.
File metadata
- Download URL: eqxvision-0.2.8.tar.gz
- Upload date:
- Size: 44.3 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.2 CPython/3.9.16
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
59ee613259dbc7ac52fef23108c93f15b4d909abeed11d2c7e599eb3ea2f89de
|
|
| MD5 |
42bb0e9a0ba9b1b2c52f5810c0afe324
|
|
| BLAKE2b-256 |
b9c5743c0b1b6c884b22f662eeed0f3d0eeea562e8f00c302200a7830237f737
|
File details
Details for the file eqxvision-0.2.8-py3-none-any.whl.
File metadata
- Download URL: eqxvision-0.2.8-py3-none-any.whl
- Upload date:
- Size: 66.7 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.2 CPython/3.9.16
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
c45a4418c73a53ec23ec1ed3c33ea28443e3d7a86aba2d25adb6ca6c5e1a7163
|
|
| MD5 |
687c15260266fd9bf820c38146135dcd
|
|
| BLAKE2b-256 |
ce54fc9189d29fdf6403e64cf67989e9be640783eddb7ccc6dc1f84964db0acc
|