I’m trying to fine-tuning vgg16. Then I got the classifier of it:
(I have changed the last output layer.)
(classifier): Sequential(
  (0): Linear(in_features=25088, out_features=4096, bias=True)
  (1): ReLU(inplace)
  (2): Dropout(p=0.5)
  (3): Linear(in_features=4096, out_features=4096, bias=True)
  (4): ReLU(inplace)
  (5): Dropout(p=0.5)
  (6): Linear(in_features=4096, out_features=1, bias=True)
)

My question is that, when use the model to predict, its output is with no range. Actually, I got
tensor([[ 0.9261],
        [ 0.6800],
        [ 0.5750],
        [ 0.5498],
        [ 0.6597],
        [ 0.7453],
        [ 0.5137],
        [ 0.6788],
        [ 1.0495],
        [ 0.7216],
        [-0.2671],
...

And I use nn.BCEWithLogitsLoss() ,
(nn.BCEWithLogitsLoss() is better than nn.BCELoss() ? )
so I can’t (shouldn’t) use output = torch.sigmoid(output)  and there is no softmax layer in the model. What is the correct way I get the accuracy? (The label is 0 or 1.)