PyTorch 是一个流行的开源机器学习库,用于深度学习和计算机视觉。本教程将带你从基础开始,逐步深入学习 PyTorch。
安装 PyTorch
在开始之前,你需要安装 PyTorch。你可以根据你的操作系统和 Python 版本,从 PyTorch 官网 下载并安装。
基础概念
- 张量(Tensor):PyTorch 的基本数据结构,类似于 NumPy 的数组。
- 神经网络(Neural Network):由多个层组成的模型,用于学习和预测。
- 损失函数(Loss Function):用于衡量模型预测值和真实值之间的差异。
实践项目
- 线性回归(Linear Regression):预测一个连续值。
- 分类(Classification):预测一个离散值。
- 图像识别(Image Recognition):识别图像中的对象。
示例代码
import torch
import torch.nn as nn
# 创建一个简单的神经网络
class SimpleNet(nn.Module):
def __init__(self):
super(SimpleNet, self).__init__()
self.fc = nn.Linear(1, 1)
def forward(self, x):
return self.fc(x)
# 实例化网络
net = SimpleNet()
# 输入数据
x = torch.tensor([[1.0]], dtype=torch.float32)
y = torch.tensor([[2.0]], dtype=torch.float32)
# 训练网络
criterion = nn.MSELoss()
optimizer = torch.optim.SGD(net.parameters(), lr=0.01)
for epoch in range(100):
optimizer.zero_grad()
output = net(x)
loss = criterion(output, y)
loss.backward()
optimizer.step()
if epoch % 10 == 0:
print(f'Epoch {epoch}, Loss: {loss.item()}')
更多资源
想要深入了解 PyTorch,可以参考以下资源: