Finally I fixed the problem !
it was because of this line:
self.fc3 = nn.Linear(100, 1) this line is the final layer in the network.
I must replace ‘1’  with 2 because there is two outputs.
I ruled this out at first because it didn’t make any sense to me, I mean if my label was 1, 0 (binary) I must use 1 output but it didn’t work until I changed to  (one_hot_encoding) [0, 1]
problem which is 2 need two output.
I hope my explanation make sense to you.