baris:

Also why is the input [4,33,33] and not [33,33] ? Is it because I used a batch size of 4?


Yes !



 baris:

RuntimeError: Expected 4-dimensional input for 4-dimensional weight [3, 1, 5, 5], but got 3-dimensional input of size [4, 33, 33] instead


If you are using convnets, then you must explicitly tell how many channels your image has. In your case, I guess you should do something like tensor_training_x = tensor_training_x.unsqueeze(1) to get a tensor of size N x 1 x 33 x 33.
I hope it helps !