ABSA-PyTorch
ABSA-PyTorch copied to clipboard
求助,复现TNet模型时遇到了这个报错。
您好,请问如何解决呢?谢谢。
epoch: 0
Traceback (most recent call last):
File "train.py", line 294, in
我尝试在报错这行“a = torch.bmm(e.transpose(1, 2), v)”之后加入“v = torch.tensor(v, dtype=torch.float32)”将v转换成float向量,但是遇到了另一个报错:
Traceback (most recent call last):
File "train.py", line 294, in
@songyouwei 目前还是没有解决,请问您知道如何修改吗?
可能和版本有关,有没有安装requirements.txt呢?
嗯嗯,安装了requirements.txt,除了用了较小的glove以外,别的地方没有改动。
v = torch.tensor(v, dtype=torch.float32).to(self.opt.device)
我再for循环的第一行添加了上面这行代码
@gpf951101 您加了这行是可以运行的吗?我刚刚去试了一下,但是报错“RuntimeError: Expected object of scalar type Double but got scalar type Float for argument #3 'mat1' in call to th_addmm”
@Gaoshuang77 你是在cpu上跑的吧
@GeneZC 是的,在CPU上跑的。
@Gaoshuang77 那就检查一下你在哪里引入了double(float64)类型的变量,按理说这份代码都应该是float(float32)类型
请问您解决了您的问题吗,我也遇到了同样的问题
@dongyang12138 @Gaoshuang77 try removing line 27 in tfnet_lf.py: pos_inx = pos_inx.cpu().numpy()
Or downgrade Pytorch version <= 1.4.0
And the best solution may be change weight = torch.tensor(weight) to weight = torch.tensor(weight).float()
我在别的模型上也出现了Float和Double类型的问题,后来我去降级了pytorch,从1.5.1降到1.4就没问题了