方法
- 调用tensor的data属性
- 调用tensor的detach()函数
- 调用clone()可行吗?不可行
验证
先写结论:.data 和.detach只取出本体tensor数据,舍弃了grad,grad_fn等额外反向图计算过程需保存的额外信息。但是.data所创建的tensor与原tensor的内存是共享的,也就是说改变二者任一变量,另一个变量的内容也会发生同样的改变。
data属性 与 detach()函数
进一步,当我调用.backward()时会发生错误:
-
.data:
-
.detach()
clone()函数验证
如上所示,clone()后的结果仍然requires_grad。所以并不能切断梯度