ошибка при загрузке семантического сходства с моделью BERT - PullRequest
0 голосов
/ 08 октября 2019

Я хочу вычислить семантическое сходство между предложениями, используя BERT. Я нашел этот код на github для уже настроенного BERT для семантического сходства:

    from semantic_text_similarity.models import WebBertSimilarity
    from semantic_text_similarity.models import      ClinicalBertSimilarity 
    web_model = WebBertSimilarity(device='cpu', batch_size=10)

Он загружает 100% и выдает мне следующую ошибку (это последняя строка):

    TypeError: init_weights() takes 1 positional argument but 2 were given

Я пытался прочитать об этой ошибке, но я не понимаю, где два позиционных аргумента, которые были заданы вместо одного.

Буду признателен за любую подсказку, где искать.

Спасибо!

------------------------- РЕДАКТИРОВАТЬ ВОПРОС ------------------------------

Вот и вся ошибка:

---------------------------------------------------------------------------
TypeError                                 Traceback (most recent call last)
<ipython-input-73-97be4030b59e> in <module>()
----> 1 web_model = WebBertSimilarity(device='cpu', batch_size=10) #defaults to GPU prediction

/anaconda3/lib/python3.6/site-packages/semantic_text_similarity/models/bert/web_similarity.py in __init__(self, device, batch_size, model_name)
      6     def __init__(self, device='cuda', batch_size=10, model_name="web-bert-similarity"):
      7         model_path = get_model_path(model_name)
----> 8         super().__init__(device=device, batch_size=batch_size, bert_model_path=model_path)

/anaconda3/lib/python3.6/site-packages/semantic_text_similarity/models/bert/similarity.py in __init__(self, args, device, bert_model_path, batch_size, learning_rate, weight_decay, additional_features)
     80         config.pretrained_config_archive_map['additional_features'] = additional_features
     81 
---> 82         self.regressor_net = BertSimilarityRegressor.from_pretrained(self.args['bert_model_path'], config=config)
     83         self.optimizer = torch.optim.Adam(
     84             self.regressor_net.parameters(),

/anaconda3/lib/python3.6/site-packages/pytorch_transformers/modeling_utils.py in from_pretrained(cls, pretrained_model_name_or_path, *model_args, **kwargs)
    534         if hasattr(model, 'tie_weights'):
    535             model.tie_weights()  # make sure word embedding weights are still tied
--> 536 
    537         # Set model in evaluation mode to desactivate DropOut modules by default
    538         model.eval()

/anaconda3/lib/python3.6/site-packages/semantic_text_similarity/models/bert/similarity.py in __init__(self, bert_model_config)
     25         )
     26 
---> 27         self.apply(self.init_weights)
     28 
     29 

/anaconda3/lib/python3.6/site-packages/torch/nn/modules/module.py in apply(self, fn)
    291         """
    292         for module in self.children():
--> 293             module.apply(fn)
    294         fn(self)
    295         return self

/anaconda3/lib/python3.6/site-packages/torch/nn/modules/module.py in apply(self, fn)
    291         """
    292         for module in self.children():
--> 293             module.apply(fn)
    294         fn(self)
    295         return self

/anaconda3/lib/python3.6/site-packages/torch/nn/modules/module.py in apply(self, fn)
    291         """
    292         for module in self.children():
--> 293             module.apply(fn)
    294         fn(self)
    295         return self

/anaconda3/lib/python3.6/site-packages/torch/nn/modules/module.py in apply(self, fn)
    292         for module in self.children():
    293             module.apply(fn)
--> 294         fn(self)
    295         return self
    296 

TypeError: init_weights() takes 1 positional argument but 2 were given
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...