You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 10 Next »

Introduction:

This page tracks the current status and development  to support ONNX  on Mxnet. We currently support:

  • 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.

OperatorTest CoverageMxnet (Import)Mxnet (Export)
AbsYesOKOK
AddYesOKOK
And 

OK


ArgMaxYesOKOK
ArgMinYes OKOK
AveragePoolYesOKOK
BatchNormalizationYesOKOK
CastYesOKOK
CeilYes OKOK
ClipYesOK
ConcatYesOKOK
ConstantYesOK
ConvYesOKOK
ConvTransposeYes OKOK
DepthToSpace NOT OK, under development
DivYesOKOK
Dropout OKOK
EluYesOKOK
EqualYesOK
ExpYesOKOK
FlattenYesPARTIAL, only supports default axis=1OK
Floor YesOKOK
GRU NOT OK , under development
GatherYesOK
GemmYesOKOK
GlobalAveragePoolYesOKOK
GlobalLpPool OK
GlobalMaxPoolYesOKOK
Greater OK
HardSigmoid OK
Hardmax OK
InstanceNormalization OK
LRN OKOK
LSTM NOT OK, under development
LeakyReluYesOKOK
Less OK
LogYesOKOK
LogSoftMax OK
LpNormalization OKOK
LpPoolYesOK
MaxYesOKOK
MaxPoolYesOKOK
MaxRoiPool OK
Mean OKOK
MinYesOKOK
MulYesOKOK
NegYesOKOK
Not OK
Or OK
PReluYesOKOK
PadYesOKOK
PowYesPartial, only supports default axis=1OK
RNN NOT OK, under development
RandomNormal OK
RandomNormalLike OK
RandomUniform OK
RandomUniformLike OK
Reciprocal OKOK
ReduceL1 OK
ReduceL2 OK
ReduceLogSum OK
ReduceLogSumExp OK
ReduceMaxYesOKOK
ReduceMeanYesOKOK
ReduceMinYesOKOK
ReduceProdYesOKOK
ReduceSumYesOK
ReduceSumSquare OK
ReluYesOKOK
ReshapeYesOKOK
SeluYesNOT OK, under developmentOK
SigmoidYesOKOK
SliceYesPartial, supports axis=1OK
SoftmaxYesOKOK
SoftplusYesOOK
Softsign NOT OK, under developmentOK
SpaceToDepth NOT OK, under development
SplitYesNOT OK, under developmentOK
Sqrt OKOK
SqueezeYesOKOK
SubYesOKOK
SumYesOKOK
TanhYesOKOK
Tile NOT OK, under development
TransposeYesOKOK
Xor NOT OK, under development
experimental ATen NOT OK, under development
experimental Affine NOT OK, under development
experimental ConstantFill NOT OK, under development
experimental Crop NOT OK, under development
experimental FC NOT OK, under development
experimental GRUUnit NOT OK, under development
experimental GivenTensorFill NOT OK, under development
experimental Identity NOT OK, under development
experimental ImageScaler NOT OK, under development
experimental MeanVarianceNormalization NOT OK, under development
experimental ParametricSoftplus NOT OK, under development
experimental Scale NOT OK, under development
experimental ScaledTanh NOT OK, under development
experimental ThresholdedRelu NOT OK, under development
experimental Upsample NOT OK, under development

 

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 issue
squeezenetOK
vgg16OK
vgg19OK
bvlc_googlenetOK
bvlc_caffenetOK
bvlc-rcnn-ilsvrc13OK

 

 

 

 

 

 

 

 

 

 

 

  • No labels