Your welcome   .Here is some toy code if you want to try and see that if you scale the CE by 10000 and keep the same learning rate you oscillate.
import torch
from torch import nn

x1=torch.randn(100,1)
x2=torch.randn(100,1)+2
t1=torch.zeros(100,)
t2=torch.ones(100,)


sample=torch.cat((x1,x2))
targets=torch.cat((t1,t2))



w1=torch.randn(1,1)
b=torch.zeros(1,)
b.requires_grad=True
w1.requires_grad=True

epochs=100
lr=0.1

for e in range(epochs):
        predictions=nn.functional.sigmoid(torch.mm(sample,w1)+b)
        cost=nn.functional.binary_cross_entropy(predictions,targets)
        cost.backward()


        w1.data=w1.data-lr*w1.grad.data
        w1.grad.data.zero_()

        b.data=b.data-lr*b.grad.data
        b.grad.data.zero_()

        print("On epoch {} getting CE={}".format(e,cost.data))