pytorch计算反向传播的函数介绍

1.tensor(data,requires_grad=True)

该tensor后续会被计算梯度,tensor所有的操作都会被记录在grad_fn

2.with torch.no_grad():

其中的操作并不会被追踪

3.反向传播

output.backward()

4.获取梯度:x.grad,累加梯度

所以,每次反向传播之前需要先把梯度置为0

5.tensor.data:

在tensor的required_grad=False,tensor.data和tensor等价

required_grad=True时,tensor.data仅仅是获取tensor中的数据

6.tensor.numpy():

requires_grad=True不能够直接转换,需要使用tensor.detach().numpy(),detach实现的是对数据的深拷贝

 

 

 

你可能感兴趣的:(pytorch,深度学习)