RuntimeError: Expected tensor for argument #1 'indices' to have one of the following scalar types: Long, Int; but got torch.FloatTensor instead (while checking arguments for embedding)
时间: 2024-04-07 11:34:00 浏览: 262
tensorflow报错
这个错误通常发生在使用PyTorch的嵌入层(embedding layer)时,参数中的索引类型不正确。嵌入层的索引应该是整数类型(Long或Int),但是你传入了一个浮点类型(FloatTensor)的张量。
为了解决这个问题,你可以将输入张量的类型转换为整数类型。你可以使用`.long()`方法或`.int()`方法将浮点类型的张量转换为长整数类型或整数类型。
例如,如果你的输入张量是`input_tensor`,你可以这样进行转换:
```python
input_tensor = input_tensor.long() # 或者 input_tensor = input_tensor.int()
```
然后,将转换后的张量传递给嵌入层进行处理。这样应该可以解决该错误。
阅读全文