model_zoo.vision¶
Module for pre-defined neural network models.
This module contains definitions for the following model architectures: - AlexNet - DenseNet - Inception V3 - ResNet V1 - ResNet V2 - SqueezeNet - VGG - MobileNet - MobileNetV2
You can construct a model with random weights by calling its constructor:
from mxnet.gluon.model_zoo import vision
resnet18 = vision.resnet18_v1()
alexnet = vision.alexnet()
squeezenet = vision.squeezenet1_0()
densenet = vision.densenet_161()
We provide pre-trained models for all the listed models.
These models can constructed by passing pretrained=True
:
from mxnet.gluon.model_zoo import vision
resnet18 = vision.resnet18_v1(pretrained=True)
alexnet = vision.alexnet(pretrained=True)
All pre-trained models expect input images normalized in the same way,
i.e. mini-batches of 3-channel RGB images of shape (N x 3 x H x W),
where N is the batch size, and H and W are expected to be at least 224.
The images have to be loaded in to a range of [0, 1] and then normalized
using mean = [0.485, 0.456, 0.406]
and std = [0.229, 0.224, 0.225]
.
The transformation should preferrably happen at preprocessing. You can use
mx.image.color_normalize
for such transformation:
image = image/255
normalized = mx.image.color_normalize(image,
mean=mx.nd.array([0.485, 0.456, 0.406]),
std=mx.nd.array([0.229, 0.224, 0.225]))
|
Returns a pre-defined model by name |
ResNet¶
|
ResNet V1 model from “Deep Residual Learning for Image Recognition” paper. |
|
ResNet V2 model from “Identity Mappings in Deep Residual Networks” paper. |
|
BasicBlock V1 from “Deep Residual Learning for Image Recognition” paper.This is used for ResNet V1 for 18, 34 layers.. |
|
BasicBlock V2 from “Identity Mappings in Deep Residual Networks” paper.This is used for ResNet V2 for 18, 34 layers.. |
|
Bottleneck V1 from “Deep Residual Learning for Image Recognition” paper.This is used for ResNet V1 for 50, 101, 152 layers.. |
|
Bottleneck V2 from “Identity Mappings in Deep Residual Networks” paper.This is used for ResNet V2 for 50, 101, 152 layers.. |
|
ResNet V1 model from “Deep Residual Learning for Image Recognition” paper.ResNet V2 model from “Identity Mappings in Deep Residual Networks” paper.. |
VGG¶
|
VGG model from the “Very Deep Convolutional Networks for Large-Scale Image Recognition” paper. |
|
VGG model from the “Very Deep Convolutional Networks for Large-Scale Image Recognition” paper. |
Alexnet¶
|
AlexNet model from the “One weird trick…” paper. |
|
AlexNet model from the “One weird trick…” paper. |
DenseNet¶
|
Densenet-BC 121-layer model from the “Densely Connected Convolutional Networks” paper. |
|
Densenet-BC 161-layer model from the “Densely Connected Convolutional Networks” paper. |
|
Densenet-BC 169-layer model from the “Densely Connected Convolutional Networks” paper. |
|
Densenet-BC 201-layer model from the “Densely Connected Convolutional Networks” paper. |
|
Densenet-BC model from the “Densely Connected Convolutional Networks” paper. |
SqueezeNet¶
|
SqueezeNet 1.0 model from the “SqueezeNet: AlexNet-level accuracy with 50x fewer parameters and <0.5MB model size” paper. |
|
SqueezeNet 1.1 model from the official SqueezeNet repo.SqueezeNet 1.1 has 2.4x less computation and slightly fewer parameters than SqueezeNet 1.0, without sacrificing accuracy.. |
|
SqueezeNet model from the “SqueezeNet: AlexNet-level accuracy with 50x fewer parameters and <0.5MB model size” paper.SqueezeNet 1.1 model from the official SqueezeNet repo.SqueezeNet 1.1 has 2.4x less computation and slightly fewer parameters than SqueezeNet 1.0, without sacrificing accuracy.. |
Inception¶
|
Inception v3 model from “Rethinking the Inception Architecture for Computer Vision” paper. |
|
Inception v3 model from “Rethinking the Inception Architecture for Computer Vision” paper. |
MobileNet¶
|
MobileNet model from the “MobileNets: Efficient Convolutional Neural Networks for Mobile Vision Applications” paper. |
|
MobileNetV2 model from the “Inverted Residuals and Linear Bottlenecks: Mobile Networks for Classification, Detection and Segmentation” paper. |