I can’t run the notebook, as the data is missing.
However, based on the code I’m not sure how the learning rate is set in Keras.
In PyTorch you are using lr=0.0001, while I guess Keras might be using their default of 0.001 as given here?
If so, change it in PyTorch to the same value.
Also, I would recommend to remove the sigmoid and use nn.BCEWithLogitsLoss for a better numerical stability.