Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Running test_on_video.py encountered "unexpected keyword argument 'input_shape'" error #3

Open
wangwill opened this issue Sep 2, 2019 · 12 comments

Comments

@wangwill
Copy link

wangwill commented Sep 2, 2019

python3 test_on_video.py --video_path data/UCF-101/SoccerPenalty/v_SoccerPenalty_g01_c01.avi --checkpoint_model model_checkpoints/ConvLSTM_150.pth

Namespace(channels=3, checkpoint_model='model_checkpoints/ConvLSTM_150.pth', dataset_path='data/UCF-101-frames', image_dim=112, latent_dim=512, video_path='data/UCF-101/SoccerPenalty/v_SoccerPenalty_g01_c01.avi')
Traceback (most recent call last):
File "test_on_video.py", line 41, in
model = ConvLSTM(input_shape=input_shape, num_classes=len(labels), latent_dim=opt.latent_dim)
TypeError: init() got an unexpected keyword argument 'input_shape'

@WangZhaoxue
Copy link

the same problem

@wangwill
Copy link
Author

wangwill commented Sep 6, 2019

the same problem

There were several variable issues with the extract_frames.py. I have opened a pull request for that.
#4

@WangZhaoxue
Copy link

another error after the modification
RuntimeError: Error(s) in loading state_dict for ConvLSTM:
Missing key(s) in state_dict: "lstm.lstm.weight_ih_l0_reverse", "lstm.lstm.weight_hh_l0_reverse", "lstm.lstm.bias_ih_l0_reverse", "lstm.lstm.bias_hh_l0_reverse", "output_layers.0.weight", "output_layers.0.bias", "output_layers.1.weight", "output_layers.1.bias", "output_layers.1.running_mean", "output_layers.1.running_var", "output_layers.3.weight", "output_layers.3.bias", "attention_layer.weight", "attention_layer.bias".
Unexpected key(s) in state_dict: "lstm.final.0.weight", "lstm.final.0.bias", "lstm.final.1.weight", "lstm.final.1.bias", "lstm.final.1.running_mean", "lstm.final.1.running_var", "lstm.final.1.num_batches_tracked", "lstm.final.3.weight", "lstm.final.3.bias".

@rebotnix
Copy link

rebotnix commented Dec 6, 2019

Had the same issue @WangZhaoxue , did anyone run this project besides the author?

@wangwill
Copy link
Author

wangwill commented Dec 9, 2019

Had the same issue @WangZhaoxue , did anyone run this project besides the author?

I have successfully set up the environment and run the code. (Anaconda3-2019.03 python=3.6 pytorch 1.1.0)

There are some typo errors in this repo.
I did some minor fixes here. #4

Also, make sure the extraction process is completed without error.

@rebotnix
Copy link

Thank you @WangZhaoxue for your help. I made the minor changes and still have the same error, but I must use PyTorch 1.2 or 1.3 and I think that´s the issue why the loaded can´t load. I try to fix it and response if it´s works.

Missing key(s) in state_dict: "lstm.lstm.weight_ih_l0_reverse", "lstm.lstm.weight_hh_l0_reverse", "lstm.lstm.bias_ih_l0_reverse", "lstm.lstm.bias_hh_l0_reverse", "output_layers.0.weight", "output_layers.0.bias", "output_layers.1.weight", "output_layers.1.bias"....

@nicholasguimaraes
Copy link

Thank you @WangZhaoxue for your help. I made the minor changes and still have the same error, but I must use PyTorch 1.2 or 1.3 and I think that´s the issue why the loaded can´t load. I try to fix it and response if it´s works.

Missing key(s) in state_dict: "lstm.lstm.weight_ih_l0_reverse", "lstm.lstm.weight_hh_l0_reverse", "lstm.lstm.bias_ih_l0_reverse", "lstm.lstm.bias_hh_l0_reverse", "output_layers.0.weight", "output_layers.0.bias", "output_layers.1.weight", "output_layers.1.bias"....

Check out this issue. They found a solution for this error. It seems that you need to edit the name of the layers and add an attention layer to the pre trained model.

#2 (comment)

I'll try it out later today and update here if I was able to advance or not.

@sathees07
Copy link

@nicholasguimaraes could you tell the solution for this problem

@nicholasguimaraes
Copy link

@nicholasguimaraes could you tell the solution for this problem

Hello @sathees07,

I still didn't try testing the pre trained model but if you want to load the model provided by erik you will need to update the names of the layers in the state_dict.

Also, the pretrained model does not have an attention layer so, it seems that you should add that when fixing the state_dict.

Here is a link where you can check how to access the names of the layers of your model through its state_dict.

https://pytorch.org/tutorials/beginner/saving_loading_models.html#what-is-a-state-dict

@sathees07
Copy link

Thank you @nicholasguimaraes i will check this

@js-kang
Copy link

js-kang commented Aug 7, 2020

Did you solve this problem?

@sathees07
Copy link

No @js-kang

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

6 participants