Keras to Pytorch

I’m trying to build a model to classify MNIST.
I saw this website:
And tried to copy what they did, besides the fact I only want 1 CNN and not 15.

But the results I get have very different accuracy, so I got to be missing something.
Here is my code:

class Net(nn.Module):
     def __init__(self):
         super(Net, self).__init__()
         self.conv1 = nn.Conv2d(1, 10, kernel_size=5)
         self.conv2 = nn.Conv2d(10, 20, kernel_size=5)
         self.conv2_drop = nn.Dropout2d()
         self.fc1 = nn.Linear(320, 50)
         self.fc2 = nn.Linear(50, 10)

     def forward(self, x):
         x = F.relu(F.max_pool2d(self.conv1(x), 2))
         x = F.relu(F.max_pool2d(self.conv2_drop(self.conv2(x)), 2))
         x = x.view(-1, 320)
         x = F.relu(self.fc1(x))
         x = F.dropout(x,
         x = self.fc2(x)
         return F.log_softmax(x)

Can you please help me convert?

Based on the notebook it seems the author create CNNs containing 7 conv-bn blocks and a final linear layer, while your current model seems to be quite different.
Am I missing the “right” model implementation or is the posted code not supposed to replicate the Keras model?