Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

  • import of ONNX models into Mxnet.
  • export MXNet models to ONNX format.


ONNX-MXNET Import Module

We have two repositories for the import module:

  1. onnx-mxnet repository inside onnx https://github.com/onnx/onnx-mxnet  (deprecated)
  2. A newly created and refactored module inside Mxnet -> contrib. https://github.com/apache/incubator-mxnet/tree/master/python/mxnet/contrib/onnx/onnx2mx


MXNET-ONNX Export module

A new module has been added to MXNet repository to export MXNet models to ONNX model format. https://github.com/apache/incubator-mxnet/tree/master/python/mxnet/contrib/onnx/mx2onnx

 

Operator Coverage:

This table keeps track of the status of all ONNX operators supported by Mxnet.
ONNX backend test script reports the coverage on the operators and attributes.


Status meaning:

OK = currently we support the operator

OK, in review = PR is out

NOT OK, under development = Operator is missing on MXNet backend or direct 1:1 mapping doesn’t exist

NOT OK = Not supported right now


     
OperatorTest CoverageMxnet (Import)Mxnet (Export)
AbsYesOKOK
AcosYesOKOK
AddYesOKOK
AndYes  

OK 

OK
ArgMax YesOKOK
ArgMinYes OKOK
Asin

Yes

OKOK
AtanYesOKOk
AveragePoolYesOKOK
BatchNormalizationYesOKOK
CastYesOKOK
Ceil Yes OKOK
ClipYesOKNOT OK, under development
ConcatYesOKOK
ConstantYesNOT OK
ConvYesOKOK
ConvTransposeYes OKOK
CosYesOKOK
Crop

OK
DepthToSpaceYes OKNOT OK, under development
DivYesOKOK
Dropout  YesOKOK
EluYesOKOK
EqualYesOKNOT OK
ExpYesOKOK
FlattenYesPARTIAL, only supports default axis=1OK
Floor  YesOKOK
GRU 
NOT OK , under development
GatherYesNOT OK, under development
GemmYesOKOK
GlobalAveragePoolYesOKOK
GlobalLpPool Yes OKNOT OK, under development
GlobalMaxPoolYesOKOK
Greater YesOKNOT OK, under development
HardSigmoid YesOKNOT OK, under development
Hardmax YesOKNOT OK, under development
Identity
NOT OKOK
If


InstanceNormalization YesOKNOT OK, under development
LRNYes OKOK
LSTM
NOT OK, under development
LeakyReluYesOKOK
LessYes OKNOT OK, under development
LogYesOKOK
LogSoftMaxYes OKNOT OK, under development
Loop


LpNormalization  Yes
NOT OK, under developmentOK
LpPool YesNOT OK, under development
LpPoolMatMulYesOKOK
MaxYesOKOK
MaxPoolYesOKOK
MaxRoiPoolYes OKNOT OK, under development
MeanYes OKNOT OK, under development
MinYesOKOK
MulYesOKOK
MultinomialYesOKOK
NegYesOKOK
NotYes OKNOT OK, under development
OrYes OKNOT OK, under development
PReluYesOKOK
PadYesOKOK
PowYesPartial, only supports default axis=1OK
RNN
NOT OK, under development
RandomNormalYes OKOK
RandomNormalLikeYes OKOK
RandomUniformYes OKOK
RandomUniformLikeYes OKOK
ReciprocalYes OKOK
ReduceL1Yes OKNOT OK, under development
ReduceL2 YesOKNOT OK, under development
ReduceLogSum YesOKNOT OK, under development
ReduceLogSumExp YesOKNOT OK, under development
ReduceMaxYesOKOK
ReduceMeanYesOKOK
ReduceMinYesOKOK
ReduceProdYesOKOK
ReduceSumYesOKOK
ReduceSumSquareYes OKNOT OK, under development
ReluYesOKOK
ReshapeYesOKOK
SeluYesOKOK
Shape
OKNOT OK, under developmentOK
SigmoidYesOKOK
SinYesOKOK
SliceSizeYesNOT OK, under developmentOK
SoftmaxSliceYesPARTIALPartial, only supports default axis=1OK
SoftmaxYesOKOK
SoftplusYesNOT OK, under developmentOK
Softsign YesNOT OK, under developmentOK
SpaceToDepth YesOKNOT OK, under development
SplitYesNOT OK, under developmentOK
SqrtYes OKOK
SqueezeYesOKOK
SubYesOKOK
SumYesOKOK
TanYesOKOK
TanhYesOKOK
Tile YesNOT OK, under developmentNOT OK, under development
TopKYesOK, in reviewOK, in review
TransposeYesOKOK
XorUnsqueeze YesNOT OK, under developmentexperimental ATen NOT OK, under developmentexperimental Affine NOT OK, under developmentexperimental ConstantFill NOT OK, under developmentexperimental Crop NOT OK, under developmentexperimental FC NOT OK, under developmentexperimental GRUUnit NOT OK, under developmentexperimental GivenTensorFill NOT OK, under developmentexperimental Identity NOT OK, under developmentexperimental ImageScaler NOT OK, under developmentexperimental MeanVarianceNormalization NOT OK, under developmentexperimental ParametricSoftplus NOT OK, under developmentexperimental Scale NOT OK, under developmentexperimental ScaledTanh NOT OK, under developmentexperimental ThresholdedRelu NOT OK, under developmentexperimental Upsample NOT OK, under development

 

In reviewOK
UpsampleYesOK, in reviewOK, in review
XorYes OKOK








experimental ATen
NOT OK
experimental Affine
NOT OK
experimental ConstantFill
NOT OK
experimental GRUUnit
NOT OK
experimental GivenTensorFill
NOT OK
experimental ImageScaler YesOK, In review
experimental LoopIndex
NOT OK
experimental MeanVarianceNormalization
NOT OK
experimental ParametricSoftplus
NOT OK
experimental Scale
NOT OK
experimental ScaledTanh
NOT OK
experimental ThresholdedRelu
NOT OK


ONNX models coverage:

ONNX backend tests include below models. The table lists current status on Mxnet:

 


ONNX ModelsMxnet Support
bvlc_alexnetOK
densenet121OK
inception_v1NOT OK, precision difference due to issue
inception_v2NOT OK, precision difference due to issue
resnet50OK
shufflenetNOT OK, precision difference due to issueIn review
squeezenetOK
vgg16OK
vgg19OK
bvlc_googlenetOK
bvlc_caffenetOK
bvlc-rcnn-ilsvrc13OK

 

 

 

 

 

 

 

 

 

 

...