SparseZoo is a constantly-growing repository of sparsified (pruned and pruned-quantized) models with matching sparsification recipes for neural networks. It simplifies and accelerates your time-to-value in building performant deep learning models with a collection of inference-optimized models and recipes to prototype from. Read more about sparsification here.
Available via API and hosted in the cloud, the SparseZoo contains both baseline and models sparsified to different degrees of inference performance vs. baseline loss recovery. Recipe-driven approaches built around sparsification algorithms allow you to use the models as given, transfer-learn from the models onto private datasets, or transfer the recipes to your architectures.
The GitHub repository contains the Python API code to handle the connection and authentication to the cloud.
This repository is tested on Python 3.6-3.9, and Linux/Debian systems. It is recommended to install in a virtual environment to keep your system in order.
Install with pip using:
pip install sparsezoo
The Python APIs respect this format enabling you to search and download models. Some code examples are given below. The SparseZoo UI also enables users to load models by copying a stub directly from a model page.
from sparsezoo import Model # copied from https://sparsezoo.neuralmagic.com/ stub = "zoo:cv/classification/resnet_v1-50/pytorch/sparseml/imagenet/pruned90_quant-none" model = Model(stub) print(model)
from sparsezoo import search_models models = search_models( domain="cv", sub_domain="classification", return_stubs=True, ) print(models)
Users can specify the directory where models (temporarily during download) and its required credentials will be saved in your working machine.
SPARSEZOO_MODELS_PATH is the path where the downloaded models will be saved temporarily. Default
SPARSEZOO_CREDENTIALS_PATH is the path where
credentials.yaml will be saved. Default
In addition to the Python APIs, a console script entry point is installed with the package
This enables easy interaction straight from your console/terminal.
Download command help
Download ResNet-50 Model
Download pruned and quantized ResNet-50 Model
Search command help
sparsezoo search -h
Searching for all classification MobileNetV1 models in the computer vision domain
sparsezoo search --domain cv --sub-domain classification --architecture mobilenet_v1
Searching for all ResNet-50 models
sparsezoo search --domain cv --sub-domain classification \ --architecture resnet_v1 --sub-architecture 50
For a more in-depth read, check out SparseZoo documentation.
Official builds are hosted on PyPI
Additionally, more information can be found via GitHub Releases.
The project is licensed under the Apache License Version 2.0.
We appreciate contributions to the code, examples, integrations, and documentation as well as bug reports and feature requests! Learn how here.
For user help or questions about SparseZoo, sign up or log in to our Deep Sparse Community Slack. We are growing the community member by member and happy to see you there. Bugs, feature requests, or additional questions can also be posted to our GitHub Issue Queue.
You can get the latest news, webinar and event invites, research papers, and other ML Performance tidbits by subscribing to the Neural Magic community.
For more general questions about Neural Magic, please fill out this form.