HawkAaron / RNN-Transducer

MXNet implementation of RNN Transducer (Graves 2012): Sequence Transduction with Recurrent Neural Networks
136 stars 31 forks source link

RNNTLoss issue with model 2013 #16

Closed rzcwade closed 5 years ago

rzcwade commented 5 years ago

Hi @HawkAaron ,

I was trying out your joint network but ran into the argument error for RNNTLoss function. Below is the error message:

Traceback (most recent call last): File "train_char_wsj.py", line 260, in train() File "train_char_wsj.py", line 182, in train loss = model(xs, ys, xlen, ylen) File "/home/zichengr/anaconda3/lib/python3.6/site-packages/mxnet-1.5.0-py3.6.egg/mxnet/gluon/block.py", line 540, in call out = self.forward(args) File "/home/zichengr/RNN_T_mxnet/RNN-Transducer/modelX_char_wsj.py", line 87, in forward loss = self.loss(ytu, ys, xlen, ylen) File "/home/zichengr/anaconda3/lib/python3.6/site-packages/mxnet-1.5.0-py3.6.egg/mxnet/gluon/block.py", line 540, in call out = self.forward(args) File "/home/zichengr/anaconda3/lib/python3.6/site-packages/mxnet-1.5.0-py3.6.egg/mxnet/gluon/block.py", line 917, in forward return self.hybrid_forward(ndarray, x, *args, **params) File "/home/zichengr/RNN_T_mxnet/RNN-Transducer/rnnt_mx.py", line 18, in hybrid_forward blank_label=self.blank_label) File "", line 80, in RNNTLoss File "/home/zichengr/anaconda3/lib/python3.6/site-packages/mxnet-1.5.0-py3.6.egg/mxnet/_ctypes/ndarray.py", line 92, in _imperative_invoke ctypes.byref(out_stypes))) File "/home/zichengr/anaconda3/lib/python3.6/site-packages/mxnet-1.5.0-py3.6.egg/mxnet/base.py", line 252, in check_call raise MXNetError(py_str(_LIB.MXGetLastError())) mxnet.base.MXNetError: [04:48:42] src/c_api/../imperative/imperative_utils.h:347: Check failed: num_inputs == infered_num_inputs (4 vs. 5) Operator _contrib_RNNTLoss expects 5 inputs, but got 4 instead.

Stack trace returned 10 entries: [bt] (0) /home/zichengr/incubator-mxnet/lib/libmxnet.so(dmlc::StackTrace[abi:cxx11]()+0x179) [0x7f6604491729] [bt] (1) /home/zichengr/incubator-mxnet/lib/libmxnet.so(mxnet::imperative::SetNumOutputs(nnvm::Op const, nnvm::NodeAttrs const&, int const&, int, int)+0xdfb) [0x7f6606e6022b] [bt] (2) /home/zichengr/incubator-mxnet/lib/libmxnet.so(MXImperativeInvokeImpl(void, int, void, int, void, int, char const, char const)+0xd71) [0x7f6606e5cce1] [bt] (3) /home/zichengr/incubator-mxnet/lib/libmxnet.so(MXImperativeInvokeEx+0x426) [0x7f6606e5eba6] [bt] (4) /home/zichengr/anaconda3/lib/python3.6/lib-dynload/../../libffi.so.6(ffi_call_unix64+0x4c) [0x7f66787baec0] [bt] (5) /home/zichengr/anaconda3/lib/python3.6/lib-dynload/../../libffi.so.6(ffi_call+0x22d) [0x7f66787ba87d] [bt] (6) /home/zichengr/anaconda3/lib/python3.6/lib-dynload/_ctypes.cpython-36m-x86_64-linux-gnu.so(_ctypes_callproc+0x2ce) [0x7f66789cfe2e] [bt] (7) /home/zichengr/anaconda3/lib/python3.6/lib-dynload/_ctypes.cpython-36m-x86_64-linux-gnu.so(+0x12865) [0x7f66789d0865] [bt] (8) /home/zichengr/anaconda3/bin/python3(_PyObject_FastCallDict+0x8b) [0x55fc017edd7b] [bt] (9) /home/zichengr/anaconda3/bin/python3(+0x19e7ce) [0x55fc0187d7ce]

Do you have any clue of where came from?

Thanks!

HawkAaron commented 5 years ago

@rzcwade You need to recompile MxNet with the master branch of mxnet-transducer.

rzcwade commented 5 years ago

Thanks!