Pytorch Huggingface BERT SequenceClassification-值错误:要解压缩的值太多(应为2个)

Pytorch Huggingface BERT SequenceClassification-值错误:要解压缩的值太多(应为2个),pytorch,classification,bert-language-model,Pytorch,Classification,Bert Language Model,两个类模型的类标签是0、1、0、0等。只有一个 每个输入序列的标签。标签在python列表中设置并转换为 张量。(从csv文件读取-直接向前) 其值:张量(0) 其形状如图所示:torch.Size([]) 当我创建批次等并在模型中设置参数时(huggingface sequenceclassification模型) 对于每个批处理迭代 b_input_ids = batch[0].to(device) b_input_mask = batch[1].to(device) b_

两个类模型的类标签是0、1、0、0等。只有一个 每个输入序列的标签。标签在python列表中设置并转换为 张量。(从csv文件读取-直接向前)

其值:张量(0) 其形状如图所示:torch.Size([])

当我创建批次等并在模型中设置参数时(huggingface sequenceclassification模型)

对于每个批处理迭代

   b_input_ids = batch[0].to(device)
   b_input_mask = batch[1].to(device)
   b_token_type_ids = batch[2].to(device)
   b_labels = batch[3].to(device)
然后设置为模型(作为培训的一部分)

错误消息如下所示:

    ValueError                                
    
        Traceback (most recent call last)
        
        <ipython-input-17-b3a36df2f659> in <module>()
             89                              attention_mask=b_input_mask,
             90                              token_type_ids=b_token_type_ids,
        ---> 91                              labels=b_labels)
             92 
             93         # Accumulate the training loss over all of the batches so that we can
        
ValueError: too many values to unpack (expected 2)
ValueError
回溯(最近一次呼叫最后一次)
在()
89注意遮罩=b_输入遮罩,
90令牌类型标识=b令牌类型标识,
--->91标签=b_标签)
92
93#累积所有批次的培训损失,以便我们能够
ValueError:要解压缩的值太多(应为2个)
这是我几天前能够使用和训练的代码。(我有一个保存的模型)。 错误消息(我想)可能与大小等有关


有人遇到过类似的问题吗?谢谢。

Hugging face网站在标签上有一个额外的unsqueze(来自)labels=torch.tensor([1,0])。unsqueze(0)outputs=model(输入ID,注意掩码=注意掩码,标签=标签)请同时显示遇到相同问题的模型初始化代码,但当我使用XLNet和BART时会发生这种情况,你知道如何解决这个问题吗?
    ValueError                                
    
        Traceback (most recent call last)
        
        <ipython-input-17-b3a36df2f659> in <module>()
             89                              attention_mask=b_input_mask,
             90                              token_type_ids=b_token_type_ids,
        ---> 91                              labels=b_labels)
             92 
             93         # Accumulate the training loss over all of the batches so that we can
        
ValueError: too many values to unpack (expected 2)