code: def training_step(self, batch, batch_idx):
      x, y = batch
      logits = self(x)
      loss = F.nll_loss(logits, y)
      preds = torch.argmax(logits, dim=1)
      acc = accuracy(preds, y)
  
      self.log("loss.train", loss)
      self.log("accuracy.train", acc)
      return loss
  
imports: import pytorch_lightning
  import torch
  from pytorch_lightning.metrics.functional import accuracy
  from torch import nn
  from torch.nn import functional
  from torch.utils.data import DataLoader, random_split
  from torchvision import transforms
  from torchvision.datasets import MNIST
  from labml import lab, experiment
  from labml.utils.lightning import LabMLLightningLogger
label_desc: Use image node_id 3 for calling the LitMNIST obj's underlying member method code with example usage: obj.training_step(batch, batch_idx) and returns: loss