# Loss is None during training

**URL:** <https://discuss.pytorch.org/t/loss-is-none-during-training/118488>\
**Category:** Uncategorized\
**Created:** [April 17, 2021, 12:41am UTC](https://discuss.pytorch.org/t/loss-is-none-during-training/118488 "2021-04-17T00:41:30Z")\
**Posts on this page:** 1\
**Page:** 1

<div class="post-metadata">

**Author:** ![igoneal](https://discuss.pytorch.org/letter_avatar_proxy/v4/letter/i/a8b319/32.png) [@igoneal](https://discuss.pytorch.org/u/igoneal)\
**Post date:** [April 17, 2021, 12:41am UTC](https://discuss.pytorch.org/t/loss-is-none-during-training/118488/1 "2021-04-17T00:41:30Z")

</div>

class SyNet(sy.Module):  
def **init** (self, torch\_ref):  
super(SyNet, self). **init** (torch\_ref=torch\_ref)  
self.layer1 = self.torch\_ref.nn.Linear(in\_dim, 20)  
self.layer2 = self.torch\_ref.nn.Linear(20, 30)  
self.out = self.torch\_ref.nn.Linear(30, out\_dim)

```
def forward(self, X):
    X = self.torch_ref.nn.functional.relu(self.layer1(X))
    X = self.torch_ref.nn.functional.relu(self.layer2(X))
    output = self.torch_ref.nn.functional.relu(self.out(X), dim=1)
    return output

```

local\_model = SyNet(torch)  
remote\_model = local\_model.send(duet)  
remote\_torch =duet.torch  
params = remote\_model.parameters()  
optim = remote\_torch.optim.Adam(params=params, lr=0.00000001)  
#%%pixie\_debugger  
start\_time = time.time()  
#import pdb; pdb.set\_trace()  
#from IPython.core.debugger import Tracer; Tracer()()  
def train(iterations, model, torch\_ref, optim, data\_ptr, target\_ptr):

```
losses = []

for i in range(iterations):

    optim.zero_grad()

    output = model(data_ptr)

    loss = torch_ref.nn.functional.mse_loss(output, target_ptr.long())

    loss_item = loss.item()

    loss_value = loss_item.get(
        reason="To evaluate training progress", request_block=True, timeout_secs=5
    )

    if i % 10 == 0:
        print("Epoch", i, "loss", loss_value)

    losses.append(loss_value)

    loss.backward()

    optim.step()

return losses

```

print(“Computation Time:- %s seconds -” % (time.time() - start\_time))  
iteration = 100  
losses = train(iteration, remote\_model, remote\_torch, optim, data\_ptr, target\_ptr)  
I am getting this from the training  
poch 0 loss None  
Epoch 10 loss None  
Epoch 20 loss None  
Epoch 30 loss None  
Epoch 40 loss None  
Epoch 50 loss None  
Epoch 60 loss None  
Epoch 70 loss None  
Epoch 80 loss None  
Epoch 90 loss None
