asheshjain399 / RNNexp

Other
256 stars 91 forks source link

Error in MultipleRNNCombine #2

Closed engr3os closed 8 years ago

engr3os commented 8 years ago

I tried to run the simulation using the 'all' maneuver-type, fold_1. I modified the maneuver-rnn.py so it takes in maneuver-type rather than index argument. I'm getting an error during the execution of MultipleRNNsCombined. It says too many values to unpack. Any thoughts on what might be the problem.

python maneuver-rnn.py 'all' 1 (7, 1888, 13) (7, 1888) <type 'numpy.float32'> Number of classes 6 Feature dimension 13 Traceback (most recent call last): File "maneuver-rnn.py", line 107, in rnn = MultipleRNNsCombined([layers_1,layers_2],output_layer,softmax_decay_loss,trY,step_size,Adagrad()) File "/home/oolabiyi/brain4cars/NeuralModels/neuralmodels/models/MultipleRNNsCombined.py", line 59, in init self.train = theano.function([self.X[0],self.X[1],self.Y],self.cost,updates=self.updates) File "/home/oolabiyi/anaconda/lib/python2.7/site-packages/theano/compile/function.py", line 266, in function profile=profile) File "/home/oolabiyi/anaconda/lib/python2.7/site-packages/theano/compile/pfunc.py", line 489, in pfunc no_default_updates=no_default_updates) File "/home/oolabiyi/anaconda/lib/python2.7/site-packages/theano/compile/pfunc.py", line 191, in rebuild_collect_shared for (store_into, update_val) in iter_over_pairs(updates): ValueError: too many values to unpack

engr3os commented 8 years ago

Ok figured out the problem. I believe the NeuralModels have been updated since you probably downloaded it.

The updates argument in theano.function() expects list of pairs (tuples) but the rmsprop update step (self.updates = update_type.get_updates(self.params,self.cost)) is adding some other list that's creating some problem.

So I only sublist the obtained self.updates by doing: self.updates = self.updates[0] before passing it into the theano.function()

Then, everything works.