You are freezing all parameters of the untrained model besides the new linear layer in model.fc.
Since the model wasn’t pretrained, I would assume that your training fails as you are trying to use transfer learning to a randomly initialized model.
Also, model.fc2, model.fc3, etc. won’t be used unless you override the forward and use them explicitly. If you want to use more than a single new linear layer in model.fc, replace model.fc with an nn.Sequential container.