Open mnemonicker opened 8 years ago
This looks a lot like #28 . I think that something changed with the bleeding edge version of Theano. Try to uninstall Theano and install the pip version (pip install Theano
) like suggested in https://github.com/snipsco/ntm-lasagne/issues/28#issuecomment-238518018.
I tried the pip version of thenao, still have the same problem..
I am getting the same error as the above user when I try to run the copy-task example.
I tried downgrading theano (per the suggestion above), rather than using the version pulled by the requirements.txt, but it still gave the same error (as w/ user mnemonicker). But then after I downgraded lasagne as well, it now seems to be working.
Can you tell me which versions of each you are using? In the setup I have the dyck words example is producing NaN and the associative recall task is failing on
train_fn = theano.function([input_var, target_var], loss, updates=updates)
similar to above.
These are the versions that worked for me, but the only example I've tried so far is "copy". theano: 0.8.2 lasagne: 0.1
I've tried running the examples with several different version combinations of theano and lasagne and copy has been the only one to work so far. Are the other examples working for you, or just the copy?
Examples are not working. Python stops at this line:
train_fn = theano.function([input_var, target_var], loss, updates=updates)
Error is the following (this is from cop-task.py):
TypeError: (‘The following error happened while compiling the node’, forall_inplace,cpu,grad_of_scan_fn}(Shape_i{1}.0, Elemwise{sqr,no_inplace}.0, InplaceDimShuffle{0,1,3,2}.0, InplaceDimShuffle{0,1,3,2}.0, InplaceDimShuffle{0,1,2,3,x}.0, Subtensor{int64:int64:int64}.0, Alloc.0, Subtensor{int64:int64:int64}.0, Subtensor{int64:int64:int64}.0, Subtensor{int64:int64:int64}.0, Subtensor{int64:int64:int64}.0, Subtensor{int64:int64:int64}.0, Alloc.0, Subtensor{::int64}.0, Alloc.0, Alloc.0, Alloc.0, Alloc.0, Alloc.0, Alloc.0, Alloc.0, Alloc.0, Alloc.0, Alloc.0, Alloc.0, Alloc.0, Alloc.0, Alloc.0, Alloc.0, Alloc.0, Alloc.0, Alloc.0, Alloc.0, Alloc.0, Alloc.0, Alloc.0, Alloc.0, Alloc.0, Alloc.0, Alloc.0, Alloc.0, Alloc.0, Alloc.0, Shape_i{1}.0, Shape_i{1}.0, Shape_i{1}.0, controller.W_in_to_hid, controller.W_reads_to_hid, InplaceDimShuffle{x,0}.0, InplaceDimShuffle{x,0}.0, InplaceDimShuffle{1,0}.0, InplaceDimShuffle{x,0,1}.0, InplaceDimShuffle{x,0,1}.0, InplaceDimShuffle{x,0,1}.0, InplaceDimShuffle{x,0,1}.0, InplaceDimShuffle{x,0,1}.0, InplaceDimShuffle{x,0,1}.0, InplaceDimShuffle{x,0,1}.0, InplaceDimShuffle{x,0,1}.0, InplaceDimShuffle{x,0,1}.0, InplaceDimShuffle{x,0,1}.0, InplaceDimShuffle{x,0,1}.0, InplaceDimShuffle{x,0,1}.0, MakeVector{dtype=’int64'}.0, MakeVector{dtype=’int64'}.0, MakeVector{dtype=’int64'}.0, MakeVector{dtype=’int64'}.0, MakeVector{dtype=’int64'}.0, MakeVector{dtype=’int64'}.0, MakeVector{dtype=’int64'}.0, MakeVector{dtype=’int64'}.0, MakeVector{dtype=’int64'}.0, MakeVector{dtype=’int64'}.0, MakeVector{dtype=’int64'}.0, MakeVector{dtype=’int64'}.0, MakeVector{dtype=’int64'}.0, MakeVector{dtype=’int64'}.0, MakeVector{dtype=’int64'}.0, MakeVector{dtype=’int64'}.0, MakeVector{dtype=’int64'}.0, MakeVector{dtype=’int64'}.0, Reshape{2}.0, Reshape{2}.0, Reshape{2}.0, Reshape{2}.0, Reshape{2}.0, Reshape{2}.0, Reshape{2}.0, Reshape{2}.0, Reshape{2}.0, Reshape{2}.0, Reshape{2}.0, Reshape{2}.0, InplaceDimShuffle{1,0}.0, InplaceDimShuffle{1,0}.0, InplaceDimShuffle{1,0}.0, InplaceDimShuffle{1,0}.0, InplaceDimShuffle{1,0}.0, InplaceDimShuffle{1,0}.0, InplaceDimShuffle{1,0}.0, InplaceDimShuffle{1,0}.0, InplaceDimShuffle{1,0}.0, InplaceDimShuffle{1,0}.0, InplaceDimShuffle{1,0}.0, InplaceDimShuffle{1,0}.0), ‘\n’, ‘Non-unit value on shape on a broadcastable dimension.’, (0L, 0L, 0L), (False, True, False), ‘Container name “None”’)
The problem is about "updates"