jind11 / TextFooler

A Model for Natural Language Attack on Text Classification and Inference
MIT License
485 stars 79 forks source link

Problems in the process of reproducing the code #44

Open ChenJing-825 opened 3 years ago

ChenJing-825 commented 3 years ago

Thank you for open-sourcing the code! In the process of reproducing, the following problems appeared: Error(s) in loading state_dict for BertForSequenceClassification: size mismatch for classifier.weight: copying a param with shape torch.Size([4, 768]) from checkpoint, the shape in current model is torch.Size([2, 768]). size mismatch for classifier.bias: copying a param with shape torch.Size([4]) from checkpoint, the shape in current model is torch.Size([2]).

I haven't solved it, can you help me? Thanks!

jind11 commented 3 years ago

Hi, this error came out when you were loading the model parameters. Could you re-check the number of labels in the model configuration (currently you are using 2)? It should match the model parameters, which is 4 for the number of labels.

dp0d commented 2 years ago

Thank you for the code! I will appreciate it if you could explain the logic of the version of python, cause I can't run the code successfully. When I turn to run the setup.py file in the ESIM folder, message tells me to use python3.7. Could you please run the code again and help me with the base environment to run?

jind11 commented 2 years ago

As mentioned in the requirements.txt file, the python version should be 3.6

dp0d commented 2 years ago

Thank you for your answer sincerely, however, I still can't run this code. Python3.7 is required, I have tried all the environment foundation like docker, pyenv, conda, it didn't work. Maybe I should try to change the code for my machine to run. Anyway, thanks agin. WD7N3F6Z G}5% 3(TX$ZTTW

jind11 commented 2 years ago

When I wrote this code, I used python 3.6 so I am sure it should work.