code: def _build_network(self):
      self.hparams.node_input_dim = (
          self.hparams.continuous_dim + self.hparams.embedded_cat_dim
      )
      self.dense_block = DenseODSTBlock(
          input_dim=self.hparams.node_input_dim,
          num_trees=self.hparams.num_trees,
          num_layers=self.hparams.num_layers,
          tree_output_dim=self.hparams.output_dim
          + self.hparams.additional_tree_output_dim,
          max_features=self.hparams.max_features,
          input_dropout=self.hparams.input_dropout,
          depth=self.hparams.depth,
          choice_function=getattr(
              activations, self.hparams.choice_function
          ),
          bin_function=getattr(activations, self.hparams.bin_function),
          initialize_response_=getattr(
              nn.init, self.hparams.initialize_response + "_"
          ),
          initialize_selection_logits_=getattr(
              nn.init, self.hparams.initialize_selection_logits + "_"
          ),
          threshold_init_beta=self.hparams.threshold_init_beta,
          threshold_init_cutoff=self.hparams.threshold_init_cutoff,
      )
      self.output_dim = (
          self.hparams.output_dim
          + self.hparams.additional_tree_output_dim
      )
  
imports: import warnings
  import torch
  import torch.nn
  from omegaconf import DictConfig
  from pytorch_tabular.models.common.layers import Embedding1dLayer
  from pytorch_tabular.utils import get_logger
  from ..base_model import BaseModel
  from ..common import activations
  from ..common.layers import Lambda
  from .architecture_blocks import DenseODSTBlock
label_desc: Use image node_id 2 for calling the NODEBackbone obj's underlying member method code with example usage: obj._build_network() without return types