PyTorch - 24 - CNN输出大小公式 - 额外的神经网络调试Session
Overview Of Our Network
我们流程的高级概述
- 准备数据
- 建立模型
a. 了解前向转换 - 训练模型
- 分析模型的结果
在过去的六篇文章中,我们将使用的CNN是我们一直在使用的CNN。
- 输入层
- 隐藏的转换层
- 隐藏的转换层
- 隐藏的线性层
- 隐藏的线性层
- 输出层
我们使用PyTorch的nn.Module类构建了该网络,网络类的定义如下:
class Network(nn.Module):
def __init__(self):
super().__init__()
self.conv1 = nn.Conv2d(in_channels=1, out_channels=6, kernel_size=5)
self.conv2 = nn.Conv2d(in_channels=6, out_channels=12, kernel_size=5)
self.fc1 = nn.Linear(in_features=12*4*4, out_features=120)
self.fc2 = nn.Linear(in_features=120, out_features=60)
self.out = nn.Linear(in_features=60, out_features=10)
def forward(self, t):
# (1) input layer
t = t
# (2) hidden conv layer
t = self.conv1(t)
t = F.relu(t)
t = F.max_pool2d(t, kernel_size=2, stride=2)
# (3) hidden conv layer
t = self.conv2(t)
t = F.relu(t)
t = F.max_pool2d(t, kernel_size=2, stride=