pregenRobot:

        self.conv1 = nn.Conv2d(
            1,
            3, 
            (5, 768))



Here the three input params mean: (in_channels, out_channels, kernel_size). Since your in_channels=1,
conv1out.shape = [1,3,252,1] is expected.