RuntimeError: Expected floating point type for target with class probabilities, got Long
时间: 2023-09-23 17:04:18 浏览: 324
runtime error R6002 -floating point support not loaded解决办法
5星 · 资源好评率100%
这个错误通常是由于使用了错误的数据类型导致的。在使用分类器时,目标张量应该是浮点型的,而不是整型的。
解决方法是将目标张量的数据类型转换为浮点型,可以使用`target.float()`将目标张量转换为浮点型,或者在定义目标张量时就使用浮点型。
例如,如果你的代码中有以下定义:
```
target = torch.tensor([0, 1, 0])
```
可以将其修改为:
```
target = torch.tensor([0, 1, 0], dtype=torch.float)
```
或者在使用时进行转换:
```
output = model(input)
target = target.float()
loss = criterion(output, target)
```
阅读全文