I am using gluon now.
for a brief example, AntisymmetricRNN
That network seems difficult for me to reproduce, mxnet has no “Antisymmetric matrix” now, but I found it is much easier to get an antisymmetric weight matrix by:
x=[i for i in net.collect('the weight I want').values()][0]
the x._data[0]
could be what I want.
BUT… the question is, I cannot using x._data[0]=...
since gluon.Trainer
will raise an exception.
My solution is using x._data[0]+=...
or something else, much ugly than what I expected.
Is there any good solutions to manipulate parameters directly?
Thanks:)