我有一个浮点张量,是通过将矩阵乘以它的逆(即单位矩阵)而得到的。当我转换为int时,它不是单位矩阵,即1.0000e00变为0。我需要一种使用舍入进行类型转换的方法。
我尝试使用.int()和.long()进行类型转换,但是它们舍入为零。具体来说:
I = tensor([[ 1.0000e+00, 1.1921e-07, -1.1921e-07],
[-5.9605e-08, 1.0000e+00, 0.0000e+00],
[-2.9802e-08, 0.0000e+00, 1.0000e+00]])
I = I.long()
print(I)
给予:
tensor([[0, 0, 0],
[0, 1, 0],
[0, 0, 0]])
应该发生的是print(I)
返回
tensor([[1, 0, 0],
[0, 1, 0],
[0, 0, 1]])
哪一行代码会将张量更改为我想要的?只需一行。
答案 0 :(得分:0)
答案是重新启动Jupyter内核,或插入python3。无论出于何种原因,此错误都是在Jupyter笔记本中发生的。