在训练中,我试图找到平均损失,但我犯了一个错误
loss, logits, _ = model(data1, labels=target1)
meanloss = loss.mean()
total_loss += meanloss
meanloss.backward()
optimizer.step()
那么,这就是错误
AttributeError: 'str' object has no attribute 'mean'
这一定是您的模型造成的。你能展示你定义的模型吗?
这里有一个例子:
>>> import torch
>>> from transformers import GPT2Tokenizer, GPT2LMHeadModel
>>> tokenizer = GPT2Tokenizer.from_pretrained('gpt2')
>>> model = GPT2LMHeadModel.from_pretrained('gpt2')
>>> inputs = tokenizer("Hello, my dog is cute", return_tensors="pt")
>>> outputs = model(**inputs, labels=inputs["input_ids"])
>>> loss, logits = outputs[:2]