【问题标题】:XLNetForSequenceClassification Pretrained model unable to loadXLNetForSequenceClassification 预训练模型无法加载
【发布时间】:2021-03-24 16:59:15
【问题描述】:

我尝试加载预训练的 XLNet,但发生了这种情况。我以前试过这个,它有效,但是,现在它没有。有关如何解决此问题的任何建议?

model = XLNetForSequenceClassification.from_pretrained("xlnet-large-cased", num_labels = 2)
model.to(device)
---------------------------------------------------------------------------
RuntimeError                              Traceback (most recent call last)
<ipython-input-55-d6f698a3714b> in <module>()
----> 1 model = XLNetForSequenceClassification.from_pretrained("xlnet-large-cased", num_labels = 2)
      2 model.to(device)

3 frames
/usr/local/lib/python3.6/dist-packages/torch/nn/modules/sparse.py in __init__(self, num_embeddings, embedding_dim, padding_idx, max_norm, norm_type, scale_grad_by_freq, sparse, _weight)
     95         self.scale_grad_by_freq = scale_grad_by_freq
     96         if _weight is None:
---> 97             self.weight = Parameter(torch.Tensor(num_embeddings, embedding_dim))
     98             self.reset_parameters()
     99         else:

RuntimeError: Trying to create tensor with negative dimension -1: [-1, 1024]

【问题讨论】:

    标签: nlp pytorch pre-trained-model


    【解决方案1】:

    您应该从 transformers 导入 XLNetForSequenceClassification,而不是从 pytorch-transformers。首先,确保安装了变压器:

    > pip install transformers
    

    然后,在您的代码中:

    from transformers import XLNetForSequenceClassification
    model = XLNetForSequenceClassification.from_pretrained("xlnet-large-cased", num_labels = 2)
    

    这应该可行。

    【讨论】:

      【解决方案2】:

      如果您没有在内部进行任何更改,很可能是版本不匹配。您是否升级了任何相关模块?如果你有这个应该可以解决它,返回到以前的版本。

      Pytorch Quantization RuntimeError: Trying to create tensor with negative dimension

      【讨论】:

      • 感谢您的回复。我正在研究 google colab,但我没有升级任何东西。因此,鉴于您指出的链接,我不确定该怎么做。
      猜你喜欢
      • 2021-04-05
      • 1970-01-01
      • 1970-01-01
      • 2021-02-19
      • 1970-01-01
      • 2020-08-16
      • 2020-02-07
      • 2019-07-17
      • 1970-01-01
      相关资源
      最近更新 更多