The code looks generally alright, assuming that self.model_ft is a typo and should be self.pt_model and that .classifier[1] is the last linear layer in the pretrained model.
If that’s the case then the number of output features for the first linear layer seem to be a bit small with only 2 neurons. You would create quite a strong bottleneck at this point and might lose a lot of information from the signal.