简单神经网络的构建与训练
1. 引言
在深度学习领域,构建和训练神经网络是一项核心任务。本文将详细介绍如何使用 PyTorch 构建一个简单的神经网络,包括从数据准备、图构建、误差计算、反向传播到参数更新的整个过程。
2. PyTorch 图的构建
2.1 代码示例
以下代码展示了如何将一个简单的图转换为 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.2 自动求导 API
通常,用户可以使用两个主要的 API 来访问自动求导功能,它们几乎可以处理构建神经网络时遇到的所有操作。
2.3 张量的自动求导属性
当张量成为图的一部分时,需要存储自动求导所需的信息。张量在计算图中充当节点,并通过功能模块实例连接到其他节点。张量实例主要有三个属性来支持自动求导: .grad 、 .data 和 grad_fn() 。
超级会员免费看
订阅专栏 解锁全文

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



