简单神经网络的构建与训练
1. 从图到PyTorch代码
可以使用以下代码将图转换为PyTorch图:
import torch
inputs = torch.FloatTensor([2])
weights = torch.rand(1, requires_grad=True)
bias = torch.rand(1, requires_grad=True)
t = inputs @ weights
out = t + bias
out.backward()
print(weights.grad) # tensor([2.])
print(bias.grad) # tensor([1.])
2. Autograd与张量属性
通常,用户可以使用两个主要API访问自动求导(Autograd),它们几乎可以处理构建神经网络时遇到的所有操作。当张量成为图的一部分时,需要存储自动求导所需的信息。张量作为计算图中的节点,通过功能模块实例与其他节点相连。张量实例主要有三个属性支持自动求导: .grad 、 .data 和 grad_fn() 。
- .grad :存储任意时刻的梯度,所有反向传播调用都会将当前梯度累加到 .grad 属性中。
- .data :提供对包含数据的裸张量对象的访问。
- grad_fn() :指向创建该张量的函数对象(用户
超级会员免费看
订阅专栏 解锁全文

被折叠的 条评论
为什么被折叠?



