pytorch小白, 自己瞎摸索的结论, 如有不对希望大神指出~
1 data()
对tensor 类型的变量(注意为float型) 中的 requires_grad() 变为False, 既不能进行梯度下将的计算
![](https://i-blog.csdnimg.cn/blog_migrate/bd5ae78f3d3b2cbd851dd3fd1ad917e5.png)
2 item()
Tensor.item() 是将 tensor 类型的数据转换为 python 中的float 类型的数据, 在 deep learning 中的 loss function 中是numpy中的float 类型, 因此需要进行转换
注意 item() 只能将一个 tensor 数据进行转换
![](https://i-blog.csdnimg.cn/blog_migrate/fa4a4653928cfbd06530215fdc79f7b9.png)
![](https://i-blog.csdnimg.cn/blog_migrate/ffc09c972347e54588b0b38f48cc436c.png)