@charan_Vjy
No, when I run it, nothing happens. My model train is here:

num_epochs = 10
losses = []
for epoch in range(num_epochs):
for i, (inputs, targets) in enumerate(train_dl):
    inputs = to_var(inputs)
    targets = to_var(targets)
    
    #forward pass
    optimizer.zero_grad()
    outputs = model(inputs)
    
    #loss
    loss = criterion(outputs, targets)
    losses += [loss.data]
    
    #backward pass
    loss.backward()
    
    #update parameters
    optimizer.step()
    
    #report
    if (i+1) % 50 == 0:
        print('Epoch [%2d/%2d], Step [%3d, %3d], Loss: %.4f'
             % (epoch + 1, num_epochs, i + 1, len(train_ds) // batch_size, loss.data))   

As I told above, I found that something is wrong in the target.