Model Zoo
This page lists model archives that are pre-trained and pre-packaged, ready to be served for inference with MMS. To propose a model for inclusion, please submit a pull request.
Special thanks to the Apache MXNet community whose Model Zoo and Model Examples were used in generating these model archives.
Model File | Type | Dataset | Source | Size | Download |
---|---|---|---|---|---|
AlexNet | Image Classification | ImageNet | ONNX | 233 MB | .mar |
ArcFace-ResNet100 | Face Recognition | Refined MS-Celeb1M | ONNX | 236.4 MB | .mar |
Character-level Convolutional Networks for Text Classification | Text Classification | Amazon Product Data | Gluon | 40 MB | .mar |
CaffeNet | Image Classification | ImageNet | MXNet | 216 MB | .mar |
FERPlus | Emotion Detection | FER2013 | ONNX | 35MB | .mar |
Inception v1 | Image Classification | ImageNet | ONNX | 27 MB | .mar |
Inception v3 w/BatchNorm | Image Classification | ImageNet | MXNet | 45 MB | .mar |
LSTM PTB | Language Modeling | PennTreeBank | MXNet | 16 MB | .mar |
MobileNetv2-1.0 | Image Classification | ImageNet | ONNX | 13.7 MB | .mar |
Network in Network (NiN) | Image Classification | ImageNet | MXNet | 30 MB | .mar |
ResNet-152 | Image Classification | ImageNet | MXNet | 241 MB | .mar |
ResNet-18 | Image Classification | ImageNet | MXNet | 43 MB | .mar |
ResNet50-SSD | SSD (Single Shot MultiBox Detector) | ImageNet | MXNet | 124 MB | .mar |
ResNext101-64x4d | Image Classification | ImageNet | MXNet | 334 MB | .mar |
ResNet-18v1 | Image Classification | ImageNet | ONNX | 45 MB | .mar |
ResNet-34v1 | Image Classification | ImageNet | ONNX | 83 MB | .mar |
ResNet-50v1 | Image Classification | ImageNet | ONNX | 98 MB | .mar |
ResNet-101v1 | Image Classification | ImageNet | ONNX | 171 MB | .mar |
ResNet-152v1 | Image Classification | ImageNet | ONNX | 231 MB | .mar |
ResNet-18v2 | Image Classification | ImageNet | ONNX | 45 MB | .mar |
ResNet-34v2 | Image Classification | ImageNet | ONNX | 83 MB | .mar |
ResNet-50v2 | Image Classification | ImageNet | ONNX | 98 MB | .mar |
ResNet-101v2 | Image Classification | ImageNet | ONNX | 171 MB | .mar |
ResNet-152v2 | Image Classification | ImageNet | ONNX | 231 MB | .mar |
Shufflenet | Image Classification | ImageNet | ONNX | 8.1 MB | .mar |
SqueezeNet_v1.1 | Image Classification | ImageNet | ONNX | 5 MB | .mar |
SqueezeNet v1.1 | Image Classification | ImageNet | MXNet | 5 MB | .mar |
VGG16 | Image Classification | ImageNet | MXNet | 490 MB | .mar |
VGG16 | Image Classification | ImageNet | ONNX | 527 MB | .mar |
VGG16_bn | Image Classification | ImageNet | ONNX | 527 MB | .mar |
VGG19 | Image Classification | ImageNet | MXNet | 509 MB | .mar |
VGG19 | Image Classification | ImageNet | ONNX | 548 MB | .mar |
VGG19_bn | Image Classification | ImageNet | ONNX | 548 MB | .mar |
Details on Each Model
Each model below comes with a basic description, and where available, a link to a scholarly article about the model.
Many of these models use a kitten image to test inference. Use the following to get one that will work:
curl -O https://s3.amazonaws.com/model-server/inputs/kitten.jpg
AlexNet
-
Type: Image classification trained on ImageNet
-
Reference: Krizhevsky, et al.
-
Model Service: mxnet_vision_service.py
- Start Server:
multi-model-server --start --models alexnet=https://s3.amazonaws.com/model-server/model_archive_1.0/alexnet.mar
- Run Prediction:
curl -X POST http://127.0.0.1:8080/predictions/alexnet -T kitten.jpg
ArcFace-ResNet100 (from ONNX model zoo)
-
Type: Face Recognition model trained on refined MS-Celeb1M dataset (model imported from ONNX)
-
Reference: Deng et al.
- Model Service:
- Install dependencies:
pip install opencv-python pip install scikit-learn pip install easydict pip install scikit-image pip install numpy
- Start Server:
multi-model-server --start --models arcface=https://s3.amazonaws.com/model-server/model_archive_1.0/onnx-arcface-resnet100.mar
- Get two test images: ```bash curl -O https://s3.amazonaws.com/model-server/inputs/arcface-input1.jpg
curl -O https://s3.amazonaws.com/model-server/inputs/arcface-input2.jpg
* **Run Prediction**:
```bash
curl -X POST http://127.0.0.1:8080/predictions/arcface -F "img1=@arcface-input1.jpg" -F "img2=@arcface-input2.jpg"
CaffeNet
-
Type: Image classification trained on ImageNet
-
Reference: Krizhevsky, et al.
-
Model Service: mxnet_vision_service.py
- Start Server:
multi-model-server --start --models caffenet=https://s3.amazonaws.com/model-server/model_archive_1.0/caffenet.mar
- Run Prediction:
curl -X POST http://127.0.0.1:8080/predictions/caffenet -T kitten.jpg
Character-level Convolutional Networks for text Classification
-
Type: Character-level Convolutional network for text classification trained on Amazon Product Data.
-
Reference: R. He, J. McAuley et al., J. McAuley, C. Targett, J. Shi, A. van den Hengel et al.
-
Model Service: gluon_crepe.py
- Start Server:
multi-model-server --start --models crepe=https://s3.amazonaws.com/model-server/model_archive_1.0/crepe.mar
- Run Prediction:
curl -X POST http://127.0.0.1:8080/predictions/crepe -F "data=[{\"review_title\":\"Inception is the best\",\"review\": \"great direction and story\"}]"
DUC-ResNet101 (from ONNX model zoo)
-
Type: Semantic Segmentation model trained on the Cityscapes dataset (model imported from ONNX)
-
Reference: Wang et al.
- Model Service:
- Install dependencies:
pip install opencv-python pip install pillow
- Start Server:
multi-model-server --models duc=https://s3.amazonaws.com/model-server/model_archive_1.0/onnx-duc.mar
- Get the test image:
curl -O https://s3.amazonaws.com/multi-model-server/onnx-duc/city1.jpg
- Download inference script:
The script makes an inference call to the server using the test image, displays the colorized segmentation map and prints the confidence score.
curl -O https://s3.amazonaws.com/multi-model-server/onnx-duc/duc-inference.py
- Run Prediction:
python duc-inference.py city1.jpg
FERPlus
-
Type: Emotion detection trained on FER2013 dataset (model imported from ONNX)
-
Reference: Barsoum et al.
-
Model Service: emotion_detection_service.py
- Start Server:
multi-model-server --start --models FERPlus=https://s3.amazonaws.com/model-server/model_archive_1.0/FERPlus.mar
- Get a test image:
curl -O https://s3.amazonaws.com/model-server/inputs/ferplus-input.jpg
- Run Prediction:
curl -X POST http://127.0.0.1:8080/predictions/FERPlus -T ferplus-input.jpg
Inception v1
-
Type: Image classification trained on ImageNet
-
Reference: Szegedy, et al., Google
-
Model Service: mxnet_vision_service.py
- Start Server:
multi-model-server --start --models onnx-inception-v1=https://s3.amazonaws.com/model-server/model_archive_1.0/onnx-inception_v1.mar
- Run Prediction:
curl -X POST http://127.0.0.1:8080/predictions/onnx-inception-v1 -T kitten.jpg
Inception v3
-
Type: Image classification trained on ImageNet
-
Reference: Szegedy, et al., Google
-
Model Service: mxnet_vision_service.py
- Start Server:
multi-model-server --start --models inception-bn=https://s3.amazonaws.com/model-server/model_archive_1.0/inception-bn.mar
- Run Prediction:
curl -X POST http://127.0.0.1:8080/predictions/inception-bn -T kitten.jpg
LSTM PTB
Long short-term memory network trained on the PennTreeBank dataset.
-
Reference: Hochreiter, et al.
-
Model Service: lstm_ptb_service.py
- Start Server:
multi-model-server --start --models lstm_ptb=https://s3.amazonaws.com/model-server/model_archive_1.0/lstm_ptb.mar
- Run Prediction:
curl -X POST http://127.0.0.1:8080/predictions/lstm_ptb -H "Content-Type: application/json" -d '[{"input_sentence": "on the exchange floor as soon as ual stopped trading we <unk> for a panic said one top floor trader"}]'
MobileNetv2-1.0 (from ONNX model zoo)
-
Type: Image classification trained on ImageNet (imported from ONNX)
-
Reference: Sandler et al.
-
Model Service: mxnet_vision_service.py
- Start Server:
multi-model-server --start --models mobilenet=https://s3.amazonaws.com/model-server/model_archive_1.0/onnx-mobilenet.mar
- Run Prediction:
curl -X POST http://127.0.0.1:8080/predictions/mobilenet -T kitten.jpg
Network in Network
-
Type: Image classification trained on ImageNet
-
Reference: Lin, et al.
-
Model Service: mxnet_vision_service.py
- Start Server:
multi-model-server --start --models nin=https://s3.amazonaws.com/model-server/model_archive_1.0/nin.mar
- Run Prediction:
curl -X POST http://127.0.0.1:8080/predictions/nin -T kitten.jpg
ResNet-152
-
Type: Image classification trained on ImageNet
-
Reference: Lin, et al.
-
Model Service: mxnet_vision_service.py
- Start Server:
multi-model-server --start --models resnet-152=https://s3.amazonaws.com/model-server/model_archive_1.0/resnet-152.mar
- Run Prediction:
curl -X POST http://127.0.0.1:8080/predictions/resnet-152 -T kitten.jpg
ResNet-18
-
Type: Image classification trained on ImageNet
-
Reference: He, et al.
-
Model Service: mxnet_vision_service.py
- Start Server:
multi-model-server --start --models resnet-18=https://s3.amazonaws.com/model-server/model_archive_1.0/resnet-18.mar
- Run Prediction:
curl -X POST http://127.0.0.1:8080/predictions/resnet-18 -T kitten.jpg
ResNet50-SSD
-
Type: Image classification trained on ImageNet
-
Reference: Liu, et al.
-
Model Service: ssd_service.py
- Start Server:
multi-model-server --start --models SSD=https://s3.amazonaws.com/model-server/model_archive_1.0/resnet50_ssd.mar
- Run Prediction: ```bash curl -O https://www.dphotographer.co.uk/users/21963/thm1024/1337890426_Img_8133.jpg
curl -X POST http://127.0.0.1:8080/predictions/SSD -T 1337890426_Img_8133.jpg
## <a name="resnext101"></a>ResNext101-64x4d
* **Type**: Image classification trained on ImageNet
* **Reference**: [Xie, et al.](https://arxiv.org/pdf/1611.05431.pdf)
* **Model Service**: [mxnet_vision_service.py](https://github.com/awslabs/multi-model-server/blob/master/examples/mxnet_vision/mxnet_vision_service.py)
* **Start Server**:
```bash
multi-model-server --start --models resnext101=https://s3.amazonaws.com/model-server/model_archive_1.0/resnext-101-64x4d.mar
- Run Prediction:
curl -X POST http://127.0.0.1:8080/predictions/resnext101 -T kitten.jpg
ResNet (from ONNX model zoo)
ResNet18-v1
-
Type: Image classification trained on ImageNet (imported from ONNX)
-
Reference: He, et al.
-
Model Service: mxnet_vision_service.py
- Start Server:
multi-model-server --start --models resnet18-v1=https://s3.amazonaws.com/model-server/model_archive_1.0/onnx-resnet18v1.mar
- Run Prediction:
curl -X POST http://127.0.0.1:8080/predictions/resnet18-v1 -T kitten.jpg
ResNet34-v1
-
Type: Image classification trained on ImageNet (imported from ONNX)
-
Reference: He, et al.
-
Model Service: mxnet_vision_service.py
- Start Server:
multi-model-server --start --models resnet34-v1=https://s3.amazonaws.com/model-server/model_archive_1.0/onnx-resnet34v1.mar
- Run Prediction:
curl -X POST http://127.0.0.1:8080/predictions/resnet34-v1 -T kitten.jpg
ResNet50-v1
-
Type: Image classification trained on ImageNet (imported from ONNX)
-
Reference: He, et al.
-
Model Service: mxnet_vision_service.py
- Start Server:
multi-model-server --start --models resnet50-v1=https://s3.amazonaws.com/model-server/model_archive_1.0/onnx-resnet50v1.mar
- Run Prediction:
curl -X POST http://127.0.0.1:8080/predictions/resnet50-v1 -T kitten.jpg
ResNet101-v1
-
Type: Image classification trained on ImageNet (imported from ONNX)
-
Reference: He, et al.
-
Model Service: mxnet_vision_service.py
- Start Server:
multi-model-server --start --models resnet101-v1=https://s3.amazonaws.com/model-server/model_archive_1.0/onnx-resnet101v1.mar
- Run Prediction:
curl -X POST http://127.0.0.1:8080/predictions/resnet101-v1 -T kitten.jpg
ResNet152-v1
-
Type: Image classification trained on ImageNet (imported from ONNX)
-
Reference: He, et al.
-
Model Service: mxnet_vision_service.py
- Start Server:
multi-model-server --start --models resnet152-v1=https://s3.amazonaws.com/model-server/model_archive_1.0/onnx-resnet152v1.mar
- Run Prediction:
curl -X POST http://127.0.0.1:8080/predictions/resnet152-v1 -T kitten.jpg
ResNet18-v2
-
Type: Image classification trained on ImageNet (imported from ONNX)
-
Reference: He, et al.
-
Model Service: mxnet_vision_service.py
- Start Server:
multi-model-server --start --models resnet18-v2=https://s3.amazonaws.com/model-server/model_archive_1.0/onnx-resnet18v2.mar
- Run Prediction:
curl -X POST http://127.0.0.1:8080/predictions/resnet18-v2 -T kitten.jpg
ResNet34-v2
-
Type: Image classification trained on ImageNet (imported from ONNX)
-
Reference: He, et al.
-
Model Service: mxnet_vision_service.py
- Start Server:
multi-model-server --start --models resnet34-v2=https://s3.amazonaws.com/model-server/model_archive_1.0/onnx-resnet34v2.mar
- Run Prediction:
curl -X POST http://127.0.0.1:8080/predictions/resnet34-v2 -T kitten.jpg
ResNet50-v2
-
Type: Image classification trained on ImageNet (imported from ONNX)
-
Reference: He, et al.
-
Model Service: mxnet_vision_service.py
- Start Server:
multi-model-server --start --models resnet50-v2=https://s3.amazonaws.com/model-server/model_archive_1.0/onnx-resnet50v2.mar
- Run Prediction:
curl -X POST http://127.0.0.1:8080/predictions/resnet50-v2 -T kitten.jpg
ResNet101-v2
-
Type: Image classification trained on ImageNet (imported from ONNX)
-
Reference: He, et al.
-
Model Service: mxnet_vision_service.py
- Start Server:
multi-model-server --start --models resnet101-v2=https://s3.amazonaws.com/model-server/model_archive_1.0/onnx-resnet101v2.mar
- Run Prediction:
curl -X POST http://127.0.0.1:8080/predictions/resnet101-v2 -T kitten.jpg
ResNet152-v2
-
Type: Image classification trained on ImageNet (imported from ONNX)
-
Reference: He, et al.
-
Model Service: mxnet_vision_service.py
- Start Server:
multi-model-server --start --models resnet152-v2=https://s3.amazonaws.com/model-server/model_archive_1.0/onnx-resnet152v2.mar
- Run Prediction:
curl -X POST http://127.0.0.1:8080/predictions/resnet152-v2 -T kitten.jpg
Shufflenet_v2
-
Type: Image classification trained on ImageNet
-
Reference: Zhang, et al.
-
Model Service: mxnet_vision_service.py
- Start Server:
multi-model-server --start --models shufflenet=https://s3.amazonaws.com/model-server/model_archive_1.0/shufflenet.mar
- Run Prediction:
curl -X POST http://127.0.0.1:8080/predictions/shufflenet -T kitten.jpg
SqueezeNet v1.1
-
Type: Image classification trained on ImageNet
-
Reference: Iandola, et al.
-
Model Service: mxnet_vision_service.py
- Start Server:
multi-model-server --start --models squeezenet_v1.1=https://s3.amazonaws.com/model-server/model_archive_1.0/squeezenet_v1.1.mar
- Run Prediction:
curl -X POST http://127.0.0.1:8080/predictions/squeezenet_v1.1 -T kitten.jpg
SqueezeNet v1.1 (from ONNX model zoo)
-
Type: Image classification trained on ImageNet (imported from ONNX)
-
Reference: Iandola, et al.
-
Model Service: mxnet_vision_service.py
- Start Server:
multi-model-server --start --models onnx-squeezenet=https://s3.amazonaws.com/model-server/model_archive_1.0/onnx-squeezenet.mar
- Run Prediction:
curl -X POST http://127.0.0.1:8080/predictions/onnx-squeezenet -T kitten.jpg
VGG16
-
Type: Image classification trained on ImageNet
-
Reference: Simonyan, et al.
-
Model Service: mxnet_vision_service.py
- Start Server:
multi-model-server --start --models vgg16=https://s3.amazonaws.com/model-server/model_archive_1.0/vgg16.mar
- Run Prediction:
curl -X POST http://127.0.0.1:8080/predictions/vgg16 -T kitten.jpg
VGG19
-
Type: Image classification trained on ImageNet
-
Reference: Simonyan, et al.
-
Model Service: mxnet_vision_service.py
- Start Server:
multi-model-server --start --models vgg19=https://s3.amazonaws.com/model-server/model_archive_1.0/vgg19.mar
- Run Prediction:
curl -X POST http://127.0.0.1:8080/predictions/vgg19 -T kitten.jpg
VGG (from ONNX model zoo)
VGG16
-
Type: Image classification trained on ImageNet (imported from ONNX)
-
Reference: Simonyan, et al.
-
Model Service: mxnet_vision_service.py
- Start Server:
multi-model-server --start --models onnx-vgg16=https://s3.amazonaws.com/model-server/model_archive_1.0/onnx-vgg16.mar
- Run Prediction:
curl -X POST http://127.0.0.1:8080/predictions/onnx-vgg16 -T kitten.jpg
VGG16_bn
-
Type: Image classification trained on ImageNet (imported from ONNX)
-
Reference: Simonyan, et al. (Batch normalization applied after each conv layer of VGG16)
-
Model Service: mxnet_vision_service.py
- Start Server:
multi-model-server --start --models onnx-vgg16_bn=https://s3.amazonaws.com/model-server/model_archive_1.0/onnx-vgg16_bn.mar
- Run Prediction:
curl -X POST http://127.0.0.1:8080/predictions/onnx-vgg16_bn -T kitten.jpg
VGG19
-
Type: Image classification trained on ImageNet (imported from ONNX)
-
Reference: Simonyan, et al.
-
Model Service: mxnet_vision_service.py
- Start Server:
multi-model-server --start --models onnx-vgg19=https://s3.amazonaws.com/model-server/model_archive_1.0/onnx-vgg19.mar
- Run Prediction:
curl -X POST http://127.0.0.1:8080/predictions/onnx-vgg19 -T kitten.jpg
VGG19_bn
-
Type: Image classification trained on ImageNet (imported from ONNX)
-
Reference: Simonyan, et al. (Batch normalization applied after each conv layer of VGG19)
-
Model Service: mxnet_vision_service.py
- Start Server:
multi-model-server --start --models onnx-vgg19_bn=https://s3.amazonaws.com/model-server/model_archive_1.0/onnx-vgg19_bn.mar
- Run Prediction:
curl -X POST http://127.0.0.1:8080/predictions/onnx-vgg19_bn -T kitten.jpg