Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[FRONTEND][MXNET] L2Normalization is not supported in nnvm #1223

Closed
ndcuong91 opened this issue Jun 4, 2018 · 5 comments
Closed

[FRONTEND][MXNET] L2Normalization is not supported in nnvm #1223

ndcuong91 opened this issue Jun 4, 2018 · 5 comments

Comments

@ndcuong91
Copy link

Hi all. I got this error when i run model VGG_VOC0712_SSD_300x300 in mxnet through command
nnvm_sym, nnvm_params = nnvm.frontend.from_mxnet(mx_sym, args, auxs)

Error is:
File "/home/prdcv181/PycharmProjects/darknet_nnvm/Phase2/from_mxnet.py", line 86, in
nnvm_sym, nnvm_params = nnvm.frontend.from_mxnet(mx_sym, args, auxs)
File "/usr/local/lib/python2.7/dist-packages/nnvm-0.8.0-py2.7.egg/nnvm/frontend/mxnet.py", line 371, in from_mxnet
sym = _from_mxnet_impl(symbol, {})
File "/usr/local/lib/python2.7/dist-packages/nnvm-0.8.0-py2.7.egg/nnvm/frontend/mxnet.py", line 334, in _from_mxnet_impl
childs = [_from_mxnet_impl(childs[i], graph) for i in range(len(childs.list_outputs()))]
File "/usr/local/lib/python2.7/dist-packages/nnvm-0.8.0-py2.7.egg/nnvm/frontend/mxnet.py", line 334, in _from_mxnet_impl
childs = [_from_mxnet_impl(childs[i], graph) for i in range(len(childs.list_outputs()))]
File "/usr/local/lib/python2.7/dist-packages/nnvm-0.8.0-py2.7.egg/nnvm/frontend/mxnet.py", line 334, in _from_mxnet_impl
childs = [_from_mxnet_impl(childs[i], graph) for i in range(len(childs.list_outputs()))]
File "/usr/local/lib/python2.7/dist-packages/nnvm-0.8.0-py2.7.egg/nnvm/frontend/mxnet.py", line 334, in _from_mxnet_impl
childs = [_from_mxnet_impl(childs[i], graph) for i in range(len(childs.list_outputs()))]
File "/usr/local/lib/python2.7/dist-packages/nnvm-0.8.0-py2.7.egg/nnvm/frontend/mxnet.py", line 334, in _from_mxnet_impl
childs = [_from_mxnet_impl(childs[i], graph) for i in range(len(childs.list_outputs()))]
File "/usr/local/lib/python2.7/dist-packages/nnvm-0.8.0-py2.7.egg/nnvm/frontend/mxnet.py", line 334, in _from_mxnet_impl
childs = [_from_mxnet_impl(childs[i], graph) for i in range(len(childs.list_outputs()))]
File "/usr/local/lib/python2.7/dist-packages/nnvm-0.8.0-py2.7.egg/nnvm/frontend/mxnet.py", line 334, in _from_mxnet_impl
childs = [_from_mxnet_impl(childs[i], graph) for i in range(len(childs.list_outputs()))]
File "/usr/local/lib/python2.7/dist-packages/nnvm-0.8.0-py2.7.egg/nnvm/frontend/mxnet.py", line 334, in _from_mxnet_impl
childs = [_from_mxnet_impl(childs[i], graph) for i in range(len(childs.list_outputs()))]
File "/usr/local/lib/python2.7/dist-packages/nnvm-0.8.0-py2.7.egg/nnvm/frontend/mxnet.py", line 334, in _from_mxnet_impl
childs = [_from_mxnet_impl(childs[i], graph) for i in range(len(childs.list_outputs()))]
File "/usr/local/lib/python2.7/dist-packages/nnvm-0.8.0-py2.7.egg/nnvm/frontend/mxnet.py", line 336, in _from_mxnet_impl
node = _convert_symbol(op_name, childs, attr)
File "/usr/local/lib/python2.7/dist-packages/nnvm-0.8.0-py2.7.egg/nnvm/frontend/mxnet.py", line 295, in _convert_symbol
_raise_not_supported('Operator: ' + op_name)
File "/usr/local/lib/python2.7/dist-packages/nnvm-0.8.0-py2.7.egg/nnvm/frontend/mxnet.py", line 24, in _raise_not_supported
raise NotImplementedError(err)
NotImplementedError: Operator: L2Normalization is not supported in nnvm.

I checked that mxnet in nnvm now only support those layer:
'Activation' : _activations,
'BatchNorm' : _batch_norm,
'BatchNorm_v1' : _batch_norm,
'Cast' : _rename('cast'),
'Concat' : _concat,
'Convolution' : _conv2d,
'Convolution_v1': _conv2d,
'Deconvolution' : _conv2d_transpose,
'Dropout' : _dropout,
'Flatten' : _rename('flatten'),
'FullyConnected': _dense,
'LeakyReLU' : _leaky_relu,
'Pooling' : _pooling,
'Pooling_v1' : _pooling,
'Reshape' : _reshape,
'SliceChannel' : _split,
'split' : _split,
'Softmax' : _rename('softmax'),
'SoftmaxOutput' : _softmax_output,
'concat' : _concat,
'max_axis' : _rename('max'),
'min_axis' : _rename('min'),
'reshape' : _reshape,
'sum_axis' : _rename('sum'),
'UpSampling' : _upsampling,
'clip' : _clip

So, how can i work around with this issue?

@PariksheetPinjari909
Copy link
Contributor

L2Normaization is supported in tvm. I have raised PR #1157 to support it in NNVM. Waiting for review. @tqchen Please review the PR #1157 so we will not face these issues.

@ndcuong91
Copy link
Author

@PariksheetPinjari909 i see. But it seem to be an error during test phase. I hope to see this feature as soon as possible

@tqchen
Copy link
Member

tqchen commented Jun 24, 2018

#1157

@ifeherva
Copy link

I just built TVM from source, yet I am getting the same error (L2Normalization is not supported in nnvm). My model is from mxnet. What symbol version is needed for this to work?

@yjcn
Copy link

yjcn commented Apr 23, 2019

@ifeherva @titikid I meet the same problem. Is the L2Normalization op still not suppoted in nnvm?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

5 participants