PyTorch 是一个流行的深度学习框架,用于构建和训练神经网络。本教程将介绍 PyTorch 的基础概念,帮助您快速入门。
安装 PyTorch
在开始之前,您需要安装 PyTorch。您可以从 PyTorch 官网 下载适合您操作系统的安装包。
基础概念
张量(Tensor)
在 PyTorch 中,所有数据都是以张量的形式存储的。张量类似于 NumPy 的数组,但具有动态尺寸和自动求导功能。
import torch
# 创建一个 2x3 的张量
tensor = torch.tensor([[1, 2, 3], [4, 5, 6]])
print(tensor)
自动求导
PyTorch 的自动求导功能使得神经网络的训练变得简单。您只需要定义前向传播和反向传播的函数,PyTorch 会自动计算梯度。
# 定义前向传播
def forward(x):
return x * 2
# 定义反向传播
def backward(x):
return x / 2
# 创建一个张量
x = torch.tensor(10.0)
# 计算前向传播
output = forward(x)
# 计算反向传播
grad = backward(output)
print(grad)
神经网络
神经网络由多个层组成,包括输入层、隐藏层和输出层。在 PyTorch 中,您可以使用 nn.Module
创建自定义的神经网络。
import torch.nn as nn
# 定义一个简单的神经网络
class SimpleNet(nn.Module):
def __init__(self):
super(SimpleNet, self).__init__()
self.fc1 = nn.Linear(2, 3)
self.fc2 = nn.Linear(3, 1)
def forward(self, x):
x = self.fc1(x)
x = torch.relu(x)
x = self.fc2(x)
return x
# 创建网络实例
net = SimpleNet()
# 创建一个输入张量
input_tensor = torch.tensor([[1, 2], [3, 4]])
# 计算输出
output = net(input_tensor)
print(output)
扩展阅读
如果您想进一步学习 PyTorch,可以阅读以下教程:
希望这个教程能帮助您快速入门 PyTorch!🎉