code: def training_step(self, train_batch, batch_idx):
      x = train_batch.x
      y = train_batch.y.view(-1, 1)
      edge_index = train_batch.edge_index
      h = self.recurrent(x, edge_index)
      h = F.relu(h)
      h = self.linear(h)
      loss = F.mse_loss(h, y)
      return loss
  
file_path: pytorch_geometric_temporal/examples/recurrent/lightning_example.py
imports: import torch
  from torch.nn import functional
  import pytorch_lightning
  from pytorch_lightning.callbacks.early_stopping import EarlyStopping
  from torch_geometric_temporal.nn.recurrent import DCRNN
  from torch_geometric_temporal.dataset import ChickenpoxDatasetLoader
  from torch_geometric_temporal.signal import temporal_signal_split
label_desc: Use image node_id 3 for calling the LitDiffConvModel obj's underlying member method code with example usage: obj.training_step(train_batch, batch_idx) and returns: loss