code: def __init__(self, num_classes):
      super().__init__()
  
      self.conv1 = XConv(
          0, 48, dim=3, kernel_size=8, hidden_channels=32
      )
      self.conv2 = XConv(
          48, 96, dim=3, kernel_size=12, hidden_channels=64, dilation=2
      )
      self.conv3 = XConv(
          96,
          192,
          dim=3,
          kernel_size=16,
          hidden_channels=128,
          dilation=2,
      )
      self.conv4 = XConv(
          192,
          384,
          dim=3,
          kernel_size=16,
          hidden_channels=256,
          dilation=2,
      )
  
      self.lin1 = Lin(384, 256)
      self.lin2 = Lin(256, 128)
      self.lin3 = Lin(128, num_classes)
  
file_path: pytorch_geometric/benchmark/points/point_cnn.py
imports: import argparse
  import torch
  import torch.nn.functional
  from points.datasets import get_dataset
  from points.train_eval import run
  from torch.nn import Linear
  from torch_geometric.nn import XConv, fps, global_mean_pool
  from torch_geometric.profile import rename_profile_file
label_desc: Use image node_id 1 to create a new Net object from inherited base classes: torch.nn with example: obj = Net(num_classes)