nn.NLLLoss expects your model to output a tensor of the shape [batch_size, nb_classes] and a target of [batch_size] containing the class indices for a usual multi-class classification use case.
If you are squeezing y_train, which shape does it have afterwards and what do you mean by



 zooraff:

and I get same values over iterations


?