pytorch构建前向传播神经网络

# 使用pytorch构建一个前向传播得神经网络
import torch.nn as nn
import torch.nn.functional as F


# 定义前向传播网络
# 接收输入,经过层层得计算得到输出
# A定义模型得网络必须是继承父类nn.Model得网络模型
class Net(nn.Module):
    def __init__(self):
        super(Net, self).__init__()
        # 定义卷积层
        self.conv1 = nn.Conv2d(1, 6, 5)
        # 上述表示为图片单通道,6表示图片得输出通道数量,5表示卷积核为5*5
        # 卷积层
        self.conv2 = nn.Conv2d(6, 16, 5)
        # 全连接层
        self.fc1 = nn.Linear(16 * 5 * 5, 120)
        self.fc2 = nn.Linear(120, 84)
        self.fc3 = nn.Linear(84, 10)

    def format(self, x):
        x = F.max_pool2d(F.relu(self.conv1(x)), (2, 2))
        x = F.max_pool2d(F.relu(self.conv2(x)), 2)
        x = x.view(x.size()[0], -1)
        x = F.relu(self.fc1(x))
        x = F.relu(self.fc2(x))
        x = self(self.fc3(x))
        return x


net = Net()
print(net)

result.png
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容