code: def forward(self, x):  # pylint: disable=arguments-differ
      x = x.view((-1, 1, 28, 28))
      x = self.conv1(x)
      x = F.relu(x)
      x = self.conv2(x)
      x = F.relu(x)
      x = F.max_pool2d(x, 2)
      x = self.dropout1(x)
      x = torch.flatten(x, 1)
      x = self.fc1(x)
      x = F.relu(x)
      x = self.dropout2(x)
      x = self.fc2(x)
      output = F.log_softmax(x, dim=1)
      return output
  
file_path: petastorm/examples/spark_dataset_converter/pytorch_converter_example.py
imports: from __future__ import division
  import logging
  import torch
  import torch.nn
  import torch.nn.functional
  import torch.optim
  from pyspark.sql import SparkSession
  from torch.autograd import Variable
  from examples.spark_dataset_converter.utils import get_mnist_dir
  from petastorm.spark import SparkDatasetConverter, make_spark_converter
label_desc: Use image node_id 2 for calling the Net obj's underlying member method code with example usage: obj.forward(x) and returns: output