class_docstr: create a backbone-based generator:
  This is simply an encoder
  (can be used in classification, regression, metric learning and so one)
code: def _get_factory(self, model_name, modules_lib) -> BaseFactory:
      factory_module_cls = getattr(
          modules_lib, "{}Factory".format(model_name), None
      )
      if factory_module_cls is None:
          factory_module_cls = BaseFactory
      return factory_module_cls
  
imports: from torch import nn
  from torch_geometric.nn import global_max_pool, global_mean_pool, fps, radius, knn_interpolate
  from torch.nn import Linear, ReLU, LeakyReLU, BatchNorm1d, Dropout
  from omegaconf.listconfig import ListConfig
  from omegaconf.dictconfig import DictConfig
  import logging
  from torch_points3d.datasets.base_dataset import BaseDataset
  from torch_points3d.models.base_model import BaseModel
  from torch_points3d.models.base_architectures import BaseFactory
  from torch_points3d.core.common_modules.base_modules import Identity
  from torch_points3d.core.losses import instantiate_loss_or_miner
  from torch_points3d.utils.config import is_list
label_desc: Use image node_id 5 for calling the BackboneBasedModel obj's underlying member method code with example usage: obj._get_factory(model_name, modules_lib) and returns: factory_module_cls