def forward(self, x, recurrence=1):
x = self.relu1(self.bn1(self.conv1(x)))
x = self.relu2(self.bn2(self.conv2(x)))
x = self.relu3(self.bn3(self.conv3(x)))
x = self.maxpool(x)
x = self.layer1(x)
x = self.layer2(x)
x = self.layer3(x)
x_dsn = self.dsn(x)
x = self.layer4(x)
x = self.head(x, recurrence)
return [x, x_dsn]
I do not know why return [x, x_dsn]? why not return (torch.cat(x, x_dsn))