在这个教程中,我们将学习如何使用 PyTorch 框架构建一个简单的神经网络。神经网络是机器学习中最强大的工具之一,可以用于各种任务,如图像识别、自然语言处理等。
网络结构
以下是构建简单神经网络的基本步骤:
导入必要的库
import torch import torch.nn as nn import torch.optim as optim
定义网络结构
class SimpleNN(nn.Module): def __init__(self): super(SimpleNN, self).__init__() self.fc1 = nn.Linear(784, 128) self.relu = nn.ReLU() self.fc2 = nn.Linear(128, 10) def forward(self, x): x = self.fc1(x) x = self.relu(x) x = self.fc2(x) return x
创建模型实例
model = SimpleNN()
定义损失函数和优化器
criterion = nn.CrossEntropyLoss() optimizer = optim.SGD(model.parameters(), lr=0.01)
训练模型
for epoch in range(10): optimizer.zero_grad() outputs = model(x_train) loss = criterion(outputs, y_train) loss.backward() optimizer.step()
评估模型
with torch.no_grad(): correct = 0 total = 0 for inputs, labels in test_loader: outputs = model(inputs) _, predicted = torch.max(outputs.data, 1) total += labels.size(0) correct += (predicted == labels).sum().item() print('Accuracy of the network on the 10000 test images: %d %%' % (100 * correct / total))
扩展阅读
想了解更多关于 PyTorch 的内容?请访问我们的 PyTorch 教程页面。