Convert Figma logo to code with AI

onnx logomodels

A collection of pre-trained, state-of-the-art models in the ONNX format

7,697
1,374
7,697
201

Top Related Projects

ONNX Runtime: cross-platform, high performance ML inferencing and training accelerator

185,446

An Open Source Machine Learning Framework for Everyone

82,049

Tensors and Dynamic neural networks in Python with strong GPU acceleration

🤗 Transformers: State-of-the-art Machine Learning for Pytorch, TensorFlow, and JAX.

11,580

Open deep learning compiler stack for cpu, gpu and specialized accelerators

18,287

Open source platform for the machine learning lifecycle

Quick Overview

The ONNX Model Zoo is a collection of pre-trained, state-of-the-art machine learning models in the ONNX format. It serves as a centralized repository for various AI models across different domains, including computer vision, natural language processing, and speech recognition. The project aims to facilitate easy deployment and interoperability of machine learning models across different frameworks and platforms.

Pros

  • Wide variety of pre-trained models available for different tasks
  • Models are in ONNX format, ensuring compatibility across various frameworks and platforms
  • Regular updates and contributions from the community
  • Includes model performance benchmarks and usage examples

Cons

  • Some models may require significant computational resources
  • Not all models are optimized for all hardware configurations
  • Documentation for some models may be limited
  • Dependency on the ONNX ecosystem

Getting Started

To get started with the ONNX Model Zoo:

  1. Clone the repository:

    git clone https://github.com/onnx/models.git
    
  2. Navigate to the desired model's directory:

    cd models/vision/classification/resnet
    
  3. Download the model files (usually .onnx files) from the provided links in the model's README.

  4. Use an ONNX-compatible framework (e.g., ONNX Runtime) to load and run the model:

    import onnxruntime as ort
    import numpy as np
    
    # Load the ONNX model
    session = ort.InferenceSession("resnet50-v1-12.onnx")
    
    # Prepare input data
    input_data = np.random.randn(1, 3, 224, 224).astype(np.float32)
    
    # Run inference
    input_name = session.get_inputs()[0].name
    output_name = session.get_outputs()[0].name
    result = session.run([output_name], {input_name: input_data})
    
    print(result[0])
    

For specific usage instructions and requirements, refer to the README file in each model's directory.

Competitor Comparisons

ONNX Runtime: cross-platform, high performance ML inferencing and training accelerator

Pros of ONNX Runtime

  • Provides a high-performance inference engine for ONNX models
  • Supports a wide range of hardware and platforms
  • Offers optimizations and acceleration for improved model execution

Cons of ONNX Runtime

  • Requires additional setup and integration compared to using pre-trained models directly
  • May have a steeper learning curve for beginners
  • Limited to ONNX format, while models repo supports various formats

Code Comparison

ONNX Runtime usage:

import onnxruntime as ort

session = ort.InferenceSession("model.onnx")
input_name = session.get_inputs()[0].name
output = session.run(None, {input_name: input_data})

ONNX Models usage:

import onnx
import numpy as np

model = onnx.load("model.onnx")
input_data = np.random.randn(1, 3, 224, 224).astype(np.float32)
output = onnx.run_model(model, input_data)

The ONNX Runtime code focuses on efficient inference, while the ONNX Models code is more straightforward for loading and running pre-trained models. ONNX Runtime provides more control over the execution environment and optimizations, whereas ONNX Models offers a simpler approach for quick model deployment and experimentation.

185,446

An Open Source Machine Learning Framework for Everyone

Pros of TensorFlow

  • Comprehensive ecosystem with tools for training, deployment, and visualization
  • Strong support for distributed and parallel computing
  • Extensive documentation and large community support

Cons of TensorFlow

  • Steeper learning curve compared to ONNX Models
  • Larger codebase and installation size
  • Less flexibility in model interoperability across frameworks

Code Comparison

TensorFlow:

import tensorflow as tf

model = tf.keras.Sequential([
    tf.keras.layers.Dense(64, activation='relu'),
    tf.keras.layers.Dense(10, activation='softmax')
])

ONNX Models:

import onnx

model = onnx.load("model.onnx")
onnx.checker.check_model(model)

The TensorFlow example shows model creation, while the ONNX Models example demonstrates loading and checking a pre-existing model. TensorFlow offers more direct model definition, whereas ONNX Models focuses on interoperability and exchange of pre-trained models.

TensorFlow provides a full-fledged framework for building and training models, while ONNX Models serves as a repository for pre-trained models in a standardized format. TensorFlow offers more flexibility in model creation and training, but ONNX Models excels in providing a wide range of ready-to-use models across different domains and frameworks.

82,049

Tensors and Dynamic neural networks in Python with strong GPU acceleration

Pros of PyTorch

  • Comprehensive deep learning framework with extensive features and tools
  • Active development and frequent updates from a large community
  • Flexible and intuitive API for building and training neural networks

Cons of PyTorch

  • Larger repository size and more complex codebase
  • Steeper learning curve for beginners compared to pre-trained models
  • Requires more setup and configuration for specific tasks

Code Comparison

ONNX Models:

import onnx
import onnxruntime as ort

model = onnx.load("model.onnx")
session = ort.InferenceSession(model.SerializeToString())
output = session.run(None, {"input": input_data})

PyTorch:

import torch
import torchvision.models as models

model = models.resnet50(pretrained=True)
model.eval()
output = model(input_tensor)

The ONNX Models repository focuses on providing pre-trained models in a standardized format, while PyTorch offers a complete framework for building, training, and deploying deep learning models. ONNX Models is more suitable for quick deployment and inference, whereas PyTorch is better for developing custom models and research.

🤗 Transformers: State-of-the-art Machine Learning for Pytorch, TensorFlow, and JAX.

Pros of transformers

  • Extensive library of pre-trained models for various NLP tasks
  • Active community and frequent updates
  • Easy-to-use API for fine-tuning and inference

Cons of transformers

  • Focused primarily on NLP, less versatile for other domains
  • Can be resource-intensive for large models
  • Steeper learning curve for beginners

Code comparison

transformers:

from transformers import AutoModelForSequenceClassification, AutoTokenizer

model = AutoModelForSequenceClassification.from_pretrained("bert-base-uncased")
tokenizer = AutoTokenizer.from_pretrained("bert-base-uncased")

models:

import onnxruntime as ort

session = ort.InferenceSession("path/to/model.onnx")
input_name = session.get_inputs()[0].name
output = session.run(None, {input_name: input_data})

The transformers library provides a higher-level API for working with pre-trained models, while models requires more manual setup and knowledge of the ONNX format. transformers is more user-friendly for NLP tasks, but models offers greater flexibility across different domains and frameworks.

11,580

Open deep learning compiler stack for cpu, gpu and specialized accelerators

Pros of TVM

  • Comprehensive end-to-end compiler framework for machine learning models
  • Supports a wide range of hardware targets, including CPUs, GPUs, and specialized accelerators
  • Offers advanced optimization techniques for improved performance and efficiency

Cons of TVM

  • Steeper learning curve due to its complexity and extensive feature set
  • Requires more setup and configuration compared to using pre-trained models directly
  • May have higher overhead for simple deployment scenarios

Code Comparison

TVM (compilation and optimization):

import tvm
from tvm import relay

# Load and compile a model
mod, params = relay.frontend.from_onnx(onnx_model)
target = tvm.target.cuda()
with tvm.transform.PassContext(opt_level=3):
    lib = relay.build(mod, target, params=params)

ONNX Models (direct inference):

import onnxruntime as ort

# Load and run a pre-trained model
session = ort.InferenceSession("model.onnx")
input_name = session.get_inputs()[0].name
output = session.run(None, {input_name: input_data})
18,287

Open source platform for the machine learning lifecycle

Pros of MLflow

  • Comprehensive end-to-end ML lifecycle management platform
  • Supports multiple ML frameworks and languages
  • Provides experiment tracking, model versioning, and deployment capabilities

Cons of MLflow

  • Steeper learning curve due to its broader scope
  • Requires more setup and configuration compared to ONNX Models
  • May be overkill for simple model sharing use cases

Code Comparison

MLflow example:

import mlflow

mlflow.start_run()
mlflow.log_param("param1", 5)
mlflow.log_metric("accuracy", 0.95)
mlflow.pytorch.log_model(model, "model")
mlflow.end_run()

ONNX Models example:

import onnx

model = onnx.load("model.onnx")
onnx.checker.check_model(model)
onnx.save(model, "optimized_model.onnx")

MLflow offers a more comprehensive approach to ML lifecycle management, while ONNX Models focuses on providing a collection of pre-trained models in a standardized format. MLflow is better suited for teams looking for a complete MLOps solution, whereas ONNX Models is ideal for those seeking ready-to-use models or a standardized model format for interoperability between different frameworks.

Convert Figma logo designs to code with AI

Visual Copilot

Introducing Visual Copilot: A new AI model to turn Figma designs to high quality code using your components.

Try Visual Copilot

README

ONNX Model Zoo

Introduction

Welcome to the ONNX Model Zoo! The Open Neural Network Exchange (ONNX) is an open standard format created to represent machine learning models. Supported by a robust community of partners, ONNX defines a common set of operators and a common file format to enable AI developers to use models with a variety of frameworks, tools, runtimes, and compilers.

This repository is a curated collection of pre-trained, state-of-the-art models in the ONNX format. These models are sourced from prominent open-source repositories and have been contributed by a diverse group of community members. Our aim is to facilitate the spread and usage of machine learning models among a wider audience of developers, researchers, and enthusiasts.

To handle ONNX model files, which can be large, we use Git LFS (Large File Storage).

Models

Currently, we are expanding the ONNX Model Zoo by incorporating additional models from the following categories. As we are rigorously validating the new models for accuracy, refer to the validated models below that have been successfully validated for accuracy:

  • Computer Vision
  • Natural Language Processing (NLP)
  • Generative AI
  • Graph Machine Learning

These models are sourced from prominent open-source repositories such as timm, torchvision, torch_hub, and transformers, and exported into the ONNX format using the open-source TurnkeyML toolchain.

Validated Models

Vision

Language

Other

Read the Usage section below for more details on the file formats in the ONNX Model Zoo (.onnx, .pb, .npz), downloading multiple ONNX models through Git LFS command line, and starter Python code for validating your ONNX model using test data.

INT8 models are generated by Intel® Neural Compressor. Intel® Neural Compressor is an open-source Python library which supports automatic accuracy-driven tuning strategies to help user quickly find out the best quantized model. It implements dynamic and static quantization for ONNX models and can represent quantized ONNX models with operator oriented as well as tensor oriented (QDQ) ways. Users can use web-based UI service or python code to do quantization. Read the Introduction for more details.

Image Classification

This collection of models take images as input, then classifies the major objects in the images into 1000 object categories such as keyboard, mouse, pencil, and many animals.

Model ClassReferenceDescriptionHuggingface Spaces
MobileNetSandler et al.Light-weight deep neural network best suited for mobile and embedded vision applications.
Top-5 error from paper - ~10%
ResNetHe et al.A CNN model (up to 152 layers). Uses shortcut connections to achieve higher accuracy when classifying images.
Top-5 error from paper - ~3.6%
Hugging Face Spaces
SqueezeNetIandola et al.A light-weight CNN model providing AlexNet level accuracy with 50x fewer parameters.
Top-5 error from paper - ~20%
Hugging Face Spaces
VGGSimonyan et al.Deep CNN model(up to 19 layers). Similar to AlexNet but uses multiple smaller kernel-sized filters that provides more accuracy when classifying images.
Top-5 error from paper - ~8%
Hugging Face Spaces
AlexNetKrizhevsky et al.A Deep CNN model (up to 8 layers) where the input is an image and the output is a vector of 1000 numbers.
Top-5 error from paper - ~15%
Hugging Face Spaces
GoogleNetSzegedy et al.Deep CNN model(up to 22 layers). Comparatively smaller and faster than VGG and more accurate in detailing than AlexNet.
Top-5 error from paper - ~6.7%
Hugging Face Spaces
CaffeNetKrizhevsky et al.Deep CNN variation of AlexNet for Image Classification in Caffe where the max pooling precedes the local response normalization (LRN) so that the LRN takes less compute and memory.Hugging Face Spaces
RCNN_ILSVRC13Girshick et al.Pure Caffe implementation of R-CNN for image classification. This model uses localization of regions to classify and extract features from images.
DenseNet-121Huang et al.Model that has every layer connected to every other layer and passes on its own feature providing strong gradient flow and more diversified features.Hugging Face Spaces
Inception_V1Szegedy et al.This model is same as GoogLeNet, implemented through Caffe2 that has improved utilization of the computing resources inside the network and helps with the vanishing gradient problem.
Top-5 error from paper - ~6.7%
Hugging Face Spaces
Inception_V2Szegedy et al.Deep CNN model for Image Classification as an adaptation to Inception v1 with batch normalization. This model has reduced computational cost and improved image resolution compared to Inception v1.
Top-5 error from paper ~4.82%
ShuffleNet_V1Zhang et al.Extremely computation efficient CNN model that is designed specifically for mobile devices. This model greatly reduces the computational cost and provides a ~13x speedup over AlexNet on ARM-based mobile devices. Compared to MobileNet, ShuffleNet achieves superior performance by a significant margin due to it's efficient structure.
Top-1 error from paper - ~32.6%
ShuffleNet_V2Zhang et al.Extremely computation efficient CNN model that is designed specifically for mobile devices. This network architecture design considers direct metric such as speed, instead of indirect metric like FLOP.
Top-1 error from paper - ~30.6%
ZFNet-512Zeiler et al.Deep CNN model (up to 8 layers) that increased the number of features that the network is capable of detecting that helps to pick image features at a finer level of resolution.
Top-5 error from paper - ~14.3%
Hugging Face Spaces
EfficientNet-Lite4Tan et al.CNN model with an order of magnitude of few computations and parameters, while still acheiving state-of-the-art accuracy and better efficiency than previous ConvNets.
Top-5 error from paper - ~2.9%
Hugging Face Spaces

Domain-based Image Classification

This subset of models classify images for specific domains and datasets.

Model ClassReferenceDescription
MNIST-Handwritten Digit RecognitionConvolutional Neural Network with MNISTDeep CNN model for handwritten digit identification

Object Detection & Image Segmentation

Object detection models detect the presence of multiple objects in an image and segment out areas of the image where the objects are detected. Semantic segmentation models partition an input image by labeling each pixel into a set of pre-defined categories.

Model ClassReferenceDescriptionHugging Face Spaces
Tiny YOLOv2Redmon et al.A real-time CNN for object detection that detects 20 different classes. A smaller version of the more complex full YOLOv2 network.
SSDLiu et al.Single Stage Detector: real-time CNN for object detection that detects 80 different classes.
SSD-MobileNetV1Howard et al.A variant of MobileNet that uses the Single Shot Detector (SSD) model framework. The model detects 80 different object classes and locates up to 10 objects in an image.
Faster-RCNNRen et al.Increases efficiency from R-CNN by connecting a RPN with a CNN to create a single, unified network for object detection that detects 80 different classes.Hugging Face Spaces
Mask-RCNNHe et al.A real-time neural network for object instance segmentation that detects 80 different classes. Extends Faster R-CNN as each of the 300 elected ROIs go through 3 parallel branches of the network: label prediction, bounding box prediction and mask prediction.Hugging Face Spaces
RetinaNetLin et al.A real-time dense detector network for object detection that addresses class imbalance through Focal Loss. RetinaNet is able to match the speed of previous one-stage detectors and defines the state-of-the-art in two-stage detectors (surpassing R-CNN).
YOLO v2-cocoRedmon et al.A CNN model for real-time object detection system that can detect over 9000 object categories. It uses a single network evaluation, enabling it to be more than 1000x faster than R-CNN and 100x faster than Faster R-CNN. This model is trained with COCO dataset and contains 80 classes.
YOLO v3Redmon et al.A deep CNN model for real-time object detection that detects 80 different classes. A little bigger than YOLOv2 but still very fast. As accurate as SSD but 3 times faster.
Tiny YOLOv3Redmon et al.A smaller version of YOLOv3 model.
YOLOv4Bochkovskiy et al.Optimizes the speed and accuracy of object detection. Two times faster than EfficientDet. It improves YOLOv3's AP and FPS by 10% and 12%, respectively, with mAP50 of 52.32 on the COCO 2017 dataset and FPS of 41.7 on a Tesla V100.Hugging Face Spaces
DUCWang et al.Deep CNN based pixel-wise semantic segmentation model with >80% mIOU (mean Intersection Over Union). Trained on cityscapes dataset, which can be effectively implemented in self driving vehicle systems.Hugging Face Spaces
FCNLong et al.Deep CNN based segmentation model trained end-to-end, pixel-to-pixel that produces efficient inference and learning. Built off of AlexNet, VGG net, GoogLeNet classification methods.
contribute
Hugging Face Spaces

Body, Face & Gesture Analysis

Face detection models identify and/or recognize human faces and emotions in given images. Body and Gesture Analysis models identify gender and age in given image.

Model ClassReferenceDescriptionHugging Face Spaces
ArcFaceDeng et al.A CNN based model for face recognition which learns discriminative features of faces and produces embeddings for input face images.Hugging Face Spaces
UltraFaceUltra-lightweight face detection modelThis model is a lightweight facedetection model designed for edge computing devices.Hugging Face Spaces
Emotion FerPlusBarsoum et al.Deep CNN for emotion recognition trained on images of faces.
Age and Gender Classification using Convolutional Neural NetworksRothe et al.This model accurately classifies gender and age even the amount of learning data is limited.

Image Manipulation

Image manipulation models use neural networks to transform input images to modified output images. Some popular models in this category involve style transfer or enhancing images by increasing resolution.

Model ClassReferenceDescriptionHugging Face Spaces
Unpaired Image to Image Translation using Cycle consistent Adversarial NetworkZhu et al.The model uses learning to translate an image from a source domain X to a target domain Y in the absence of paired examples.
contribute
Super Resolution with sub-pixel CNNShi et al.A deep CNN that uses sub-pixel convolution layers to upscale the input image.Hugging Face Spaces
Fast Neural Style TransferJohnson et al.This method uses a loss network pretrained for image classification to define perceptual loss functions that measure perceptual differences in content and style between images. The loss network remains fixed during the training process.

Speech & Audio Processing

This class of models uses audio data to train models that can identify voice, generate music, or even read text out loud.

Model ClassReferenceDescription
Speech recognition with deep recurrent neural networksGraves et al.A RNN model for sequential data for speech recognition. Labels problems where the input-output alignment is unknown
contribute
Deep voice: Real time neural text to speechArik et al.A DNN model that performs end-to-end neural speech synthesis. Requires fewer parameters and it is faster than other systems.
contribute
Sound Generative modelsWaveNet: A Generative Model for Raw Audio A CNN model that generates raw audio waveforms. Has predictive distribution for each audio sample. Generates realistic music fragments.
contribute

Machine Comprehension

This subset of natural language processing models that answer questions about a given context paragraph.

Model ClassReferenceDescriptionHugging Face Spaces
Bidirectional Attention FlowSeo et al.A model that answers a query about a given context paragraph.Hugging Face Spaces
BERT-SquadDevlin et al.This model answers questions based on the context of the given input paragraph.Hugging Face Spaces
RoBERTaLiu et al.A large transformer-based model that predicts sentiment based on given input text.Hugging Face Spaces
GPT-2Radford et al.A large transformer-based language model that given a sequence of words within some text, predicts the next word.Hugging Face Spaces
T5Raffel et al.A large transformer-based language model trained on multiple tasks at once to achieve better semantic understanding of the prompt, capable of sentiment-analysis, question-answering, similarity-detection, translation, summarization, etc.Hugging Face Spaces

Machine Translation

This class of natural language processing models learns how to translate input text to another language.

Model ClassReferenceDescription
Neural Machine Translation by jointly learning to align and translateBahdanau et al.Aims to build a single neural network that can be jointly tuned to maximize the translation performance.
contribute
Google's Neural Machine Translation SystemWu et al.This model helps to improve issues faced by the Neural Machine Translation (NMT) systems like parallelism that helps accelerate the final translation speed.
contribute

Language Modelling

This subset of natural language processing models learns representations of language from large corpuses of text.

Model ClassReferenceDescription
Deep Neural Network Language ModelsArisoy et al.A DNN acoustic model. Used in many natural language technologies. Represents a probability distribution over all possible word strings in a language.
contribute

Visual Question Answering & Dialog

This subset of natural language processing models uses input images to answer questions about those images.

Model ClassReferenceDescription
VQA: Visual Question AnsweringAgrawal et al.A model that takes an image and a free-form, open-ended natural language question about the image and outputs a natural-language answer.
contribute
Yin and Yang: Balancing and Answering Binary Visual QuestionsZhang et al.Addresses VQA by converting the question to a tuple that concisely summarizes the visual concept to be detected in the image. Next, if the concept can be found in the image, it provides a “yes” or “no” answer. Its performance matches the traditional VQA approach on unbalanced dataset, and outperforms it on the balanced dataset.
contribute
Making the V in VQA MatterGoyal et al.Balances the VQA dataset by collecting complementary images such that every question is associated with a pair of similar images that result in two different answers to the question, providing a unique interpretable model that provides a counter-example based explanation.
contribute
Visual DialogDas et al.An AI agent that holds a meaningful dialog with humans in natural, conversational language about visual content. Curates a large-scale Visual Dialog dataset (VisDial).
contribute

Other interesting models

There are many interesting deep learning models that do not fit into the categories described above. The ONNX team would like to highly encourage users and researchers to contribute their models to the growing model zoo.

Model ClassReferenceDescription
Text to ImageGenerative Adversarial Text to image Synthesis Effectively bridges the advances in text and image modeling, translating visual concepts from characters to pixels. Generates plausible images of birds and flowers from detailed text descriptions.
contribute
Time Series ForecastingModeling Long- and Short-Term Temporal Patterns with Deep Neural Networks The model extracts short-term local dependency patterns among variables and to discover long-term patterns for time series trends. It helps to predict solar plant energy output, electricity consumption, and traffic jam situations.
contribute
Recommender systemsDropoutNet: Addressing Cold Start in Recommender SystemsA collaborative filtering method that makes predictions about an individual’s preference based on preference information from other users.
contribute
Collaborative filteringNeural Collaborative FilteringA DNN model based on the interaction between user and item features using matrix factorization.
contribute
AutoencodersA Hierarchical Neural Autoencoder for Paragraphs and DocumentsAn LSTM (long-short term memory) auto-encoder to preserve and reconstruct multi-sentence paragraphs.
contribute

Usage

Every ONNX backend should support running the models out of the box. After downloading and extracting the tarball of each model, you will find:

  • A protobuf file model.onnx that represents the serialized ONNX model.
  • Test data (in the form of serialized protobuf TensorProto files or serialized NumPy archives).

Usage - Test data starter code

The test data files can be used to validate ONNX models from the Model Zoo. We have provided the following interface examples for you to get started. Please replace onnx_backend in your code with the appropriate framework of your choice that provides ONNX inferencing support, and likewise replace backend.run_model with the framework's model evaluation logic.

There are two different formats for the test data files:

  • Serialized protobuf TensorProtos (.pb), stored in folders with the naming convention test_data_set_*.
import numpy as np
import onnx
import os
import glob
import onnx_backend as backend

from onnx import numpy_helper

model = onnx.load('model.onnx')
test_data_dir = 'test_data_set_0'

# Load inputs
inputs = []
inputs_num = len(glob.glob(os.path.join(test_data_dir, 'input_*.pb')))
for i in range(inputs_num):
    input_file = os.path.join(test_data_dir, 'input_{}.pb'.format(i))
    tensor = onnx.TensorProto()
    with open(input_file, 'rb') as f:
        tensor.ParseFromString(f.read())
    inputs.append(numpy_helper.to_array(tensor))

# Load reference outputs
ref_outputs = []
ref_outputs_num = len(glob.glob(os.path.join(test_data_dir, 'output_*.pb')))
for i in range(ref_outputs_num):
    output_file = os.path.join(test_data_dir, 'output_{}.pb'.format(i))
    tensor = onnx.TensorProto()
    with open(output_file, 'rb') as f:
        tensor.ParseFromString(f.read())
    ref_outputs.append(numpy_helper.to_array(tensor))

# Run the model on the backend
outputs = list(backend.run_model(model, inputs))

# Compare the results with reference outputs.
for ref_o, o in zip(ref_outputs, outputs):
    np.testing.assert_almost_equal(ref_o, o)
  • Serialized Numpy archives, stored in files with the naming convention test_data_*.npz. Each file contains one set of test inputs and outputs.
import numpy as np
import onnx
import onnx_backend as backend

# Load the model and sample inputs and outputs
model = onnx.load(model_pb_path)
sample = np.load(npz_path, encoding='bytes')
inputs = list(sample['inputs'])
outputs = list(sample['outputs'])

# Run the model with an onnx backend and verify the results
np.testing.assert_almost_equal(outputs, backend.run_model(model, inputs))

Usage - Model quantization

You can get quantized ONNX models by using Intel® Neural Compressor. It provides web-based UI service to make quantization easier and supports code-based usage for more abundant quantization settings. Refer to bench document for how to use web-based UI service and example document for a simple code-based demo. image

Usage

There are multiple ways to access the ONNX Model Zoo:

Git Clone (Not Recommended)

Cloning the repository using git won't automatically download the ONNX models due to their size. To manage these files, first, install Git LFS by running:

pip install git-lfs

To download a specific model:

git lfs pull --include="[path to model].onnx" --exclude=""

To download all models:

git lfs pull --include="*" --exclude=""

GitHub UI

Alternatively, you can download models directly from GitHub. Navigate to the model's page and click the "Download" button on the top right corner.

Model Visualization

For a graphical representation of each model's architecture, we recommend using Netron.

Contributions

Contributions to the ONNX Model Zoo are welcome! Please check our contribution guidelines for more information on how you can contribute to the growth and improvement of this resource.

Thank you for your interest in the ONNX Model Zoo, and we look forward to your participation in our community!

License

Apache License v2.0