I run the cheetah-vel experiment, only changing the recurrent encoder to True. I got the error:
collecting initial pool of data for train and eval
Traceback (most recent call last):
File "launch_experiment.py", line 144, in
File "/mnt/thangdn3/miniconda3/envs/pearl/lib/python3.5/site-packages/click/core.py", line 764, in call
return self.main(*args, **kwargs)
File "/mnt/thangdn3/miniconda3/envs/pearl/lib/python3.5/site-packages/click/core.py", line 717, in main
rv = self.invoke(ctx)
File "/mnt/thangdn3/miniconda3/envs/pearl/lib/python3.5/site-packages/click/core.py", line 956, in invoke
return ctx.invoke(self.callback, **ctx.params)
File "/mnt/thangdn3/miniconda3/envs/pearl/lib/python3.5/site-packages/click/core.py", line 555, in invoke
return callback(*args, **kwargs)
File "/mnt/thangdn3/miniconda3/envs/pearl/lib/python3.5/contextlib.py", line 77, in exit
self.gen.throw(type, value, traceback)
File "/mnt/thangdn3/miniconda3/envs/pearl/lib/python3.5/site-packages/click/core.py", line 105, in augment_usage_errors
yield
File "/mnt/thangdn3/miniconda3/envs/pearl/lib/python3.5/site-packages/click/core.py", line 555, in invoke
return callback(*args, **kwargs)
File "launch_experiment.py", line 141, in main
if name == "main":
File "launch_experiment.py", line 114, in experiment
def deep_update_dict(fr, to):
File "/home/thangdn3/investigate_PEARL/rlkit/core/rl_algorithm.py", line 192, in train
self.try_to_eval(it)
File "/home/thangdn3/investigate_PEARL/rlkit/core/rl_algorithm.py", line 236, in _try_to_eval
self.evaluate(epoch)
File "/home/thangdn3/investigate_PEARL/rlkit/core/rl_algorithm.py", line 423, in evaluate
self.agent.infer_posterior(context)
File "/home/thangdn3/investigate_PEARL/rlkit/torch/sac/agent.py", line 125, in infer_posterior
params = self.context_encoder(context)
File "/mnt/thangdn3/miniconda3/envs/pearl/lib/python3.5/site-packages/torch/nn/modules/module.py", line 532, in call
result = self.forward(*input, **kwargs)
File "/home/thangdn3/investigate_PEARL/rlkit/torch/networks.py", line 168, in forward
out, (hn, cn) = self.lstm(out, (self.hidden, torch.zeros(self.hidden.size()).to(ptu.device)))
File "/mnt/thangdn3/miniconda3/envs/pearl/lib/python3.5/site-packages/torch/nn/modules/module.py", line 532, in call
result = self.forward(*input, **kwargs)
File "/mnt/thangdn3/miniconda3/envs/pearl/lib/python3.5/site-packages/torch/nn/modules/rnn.py", line 556, in forward
self.check_forward_args(input, hx, batch_sizes)
File "/mnt/thangdn3/miniconda3/envs/pearl/lib/python3.5/site-packages/torch/nn/modules/rnn.py", line 512, in check_forward_args
'Expected hidden[0] size {}, got {}')
File "/mnt/thangdn3/miniconda3/envs/pearl/lib/python3.5/site-packages/torch/nn/modules/rnn.py", line 176, in check_hidden_size
raise RuntimeError(msg.format(expected_hidden_size, tuple(hx.size())))
RuntimeError: Expected hidden[0] size (1, 1, 200), got (1, 16, 200)
Sorry the "recurrent" option is currently broken. It is on my TODO list to fix.