Python nn.Sequential - PullRequest
       4

Python nn.Sequential

0 голосов
/ 26 октября 2019

Я создаю CNN с двумя сверточными слоями и продолжаю получать эту ошибку: ожидаемый 4-мерный ввод для 4-мерного веса [32, 1, 5, 5], но получен ввод размера [1, 32, 784] вместоКажется, проблема заключается в out = self.features (x)

Вот мой код:

    self.features = nn.Sequential(
        nn.Conv2d(1, 32, 5, 1, 1),
        nn.MaxPool2d(2.2),
        nn.ReLU(True),
        nn.BatchNorm2d(32),
        nn.Conv2d(32, 64, 5,  1, 1),
        nn.MaxPool2d(2,2),
        nn.ReLU(True),
        nn.BatchNorm2d(64),
        nn.LogSoftmax(dim=1)

    )

    self.classifier = nn.Linear(4 * 4 * 16, 10)


def forward(self, x):
    x = x.unsqueeze(0)
    print(x.shape)
    out = self.features(x)

    return F.log_softmax(out, dim=-1)

Я смотрел на подобные ошибки, но я не могу понять, как ямогу это исправить. Спасибо

...