It looks like correct, when I print from train_loader. Predictions look like random numbers 0 or 1 with each epoch(
data tensor([[ 0.1041, -0.1237, -0.2148,  …, -0.4751, -0.4867, -0.4756],
[ 0.1770,  0.2372,  0.1080,  …, -0.6973, -0.7080, -0.6980],
[-1.0250, -0.9747, -1.1029,  …,  1.8648,  1.8507,  1.8675],
…,
[-0.8286, -0.8282, -1.0329,  …,  0.7890,  0.8069,  0.7968],
[-0.5453, -0.4008, -0.4164,  …,  0.2117,  0.2365,  0.2151],
[ 1.2337,  1.2667,  1.1302,  …, -0.3912, -0.3921, -0.3910]])
target tensor([1, 0, 0, 0, 0, 1, 1, 0, 1, 0, 0, 1, 0, 1, 1, 0, 1, 0, 1, 1, 1, 0, 0, 0,
1, 0, 1, 0, 0, 1, 0, 1, 0, 0, 0, 1, 0, 1, 1, 1, 0, 0, 0, 0, 1, 0, 0, 1,
1, 1, 0, 0, 0, 0, 0, 1, 0, 1, 0, 1, 1, 0, 1, 0, 1, 1, 0, 1, 0, 0, 0, 0,
1, 0, 0, 0, 1, 1, 1, 1, 0, 0, 1, 0, 1, 0, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0,
1, 0, 1, 0])
pred tr tensor([0, 1, 0, 0, 0, 0, 0, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1,
1, 0, 0, 0, 0, 0, 0, 0, 1, 0, 1, 0, 1, 0, 1, 1, 1, 0, 0, 0, 1, 1, 0, 0,
1, 1, 1, 1, 0, 0, 0, 0, 1, 1, 0, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 1, 0,
0, 1, 0, 1, 0, 0, 1, 1, 0, 0, 0, 1, 1, 0, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0,
0, 1, 0, 0])