Closed qyouurcs closed 9 years ago
This is definitely a problem!
I have just made a change that drops much of the loading and saving code that I wrote, in favor of just using Python's built-in pickling mechanism more directly.
If you have a chance to check out the github master and can check on it, I'd appreciate hearing whether this fixes the issue!
I'm going to go ahead and close this -- feel free to reopen if it's still a problem.
Hello all,
I tried to load the trained model (Bidirectional LSTM). Using the same layer structure, I received the following errors.
The problem is that we have built a LSTM model, however, the key for the parameters is "bdrnn".
We can delve into the construction of the network as follows.
1) We set debug before line 3 in the above code. In the theanets.Experiment, it will try to construct a network model. we can check the structure of the model.
This is consistent with what we are trying to do.
2) We set debug before line 7.
In the load function, the lib is also trying to build a network model. In particular,
In line 99 at graph.py, it tries to build the structure of the model. In particular, we can check the process when constructing the 2nd layer.
And, we continue to go on the debugging at graph.py:add_layer() function.
Here, in line 230
Thus, we do not have "worker" field in the dict, which will leads the code to set name to "bdrnn1" in line 231-232.
This is going to lead the error when loading the bidirectional lstm model.
To solve this problem, one can update the add_layer function.
Or we can change the save, which can save the "worker" field into the model as well.
Let me know if I have made any mistakes.
Thanks.