RuntimeError: mat1 and mat2 shapes cannot be multiplied (4x5645376 and 121x192

lass Net(nn.Module):

def __init__(self):

    super(Net, self).__init__()

    self.conv1 = nn.Conv2d(3, 192, 3)

    self.pool = nn.MaxPool2d(2, 2)

    self.conv2 = nn.Conv2d(192, 921, 3)

  

    self.conv3 = nn.Conv2d(921, 212, 3)

    self.conv4 = nn.Conv2d(212, 121, 3)

    

    self.fc1 = nn.Linear(121, 192)

    self.fc2 = nn.Linear(121, 192)

    self.fc3 = nn.Linear(192, 120)

def forward(self, x):

    x = F.relu(self.conv1(x))

    x = F.relu(self.conv2(x))

    x = F.relu(self.conv3(x))

    x = F.relu(self.conv4(x))

    

    x = x.view(x.size(0), -1)

    x = F.relu(self.fc1(x))

    x = F.relu(self.fc2(x))

    x = self.fc1(x)

    return x

The input feature size must be matched to the linear layer size. (Consider the output shape after the last conv layer and the expected input size to the first fully connected layer)

Change this:

self.fc1 = nn.Linear (5645376, 192)