在这个教程中,我们将学习如何使用 PyTorch 框架构建一个简单的神经网络。神经网络是机器学习中最强大的工具之一,可以用于各种任务,如图像识别、自然语言处理等。

网络结构

以下是构建简单神经网络的基本步骤:

  1. 导入必要的库

    import torch
    import torch.nn as nn
    import torch.optim as optim
    
  2. 定义网络结构

    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
    
  3. 创建模型实例

    model = SimpleNN()
    
  4. 定义损失函数和优化器

    criterion = nn.CrossEntropyLoss()
    optimizer = optim.SGD(model.parameters(), lr=0.01)
    
  5. 训练模型

    for epoch in range(10):
        optimizer.zero_grad()
        outputs = model(x_train)
        loss = criterion(outputs, y_train)
        loss.backward()
        optimizer.step()
    
  6. 评估模型

    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 教程页面

图片展示

神经网络结构图

Neural_Network_structure