code: def _set_default_params(self):
      default_params = {
          "data.categorical.convert_to_text": False,
          "model.names": ["ft_transformer"],
          "model.ft_transformer.embedding_arch": ["linear"],
          "env.batch_size": 128,
          "env.per_gpu_batch_size": 128,
          "env.num_workers": 0,
          "env.num_workers_evaluation": 0,
          "optimization.max_epochs": 2000,  # Specify a large value to train until convergence
          "optimization.weight_decay": 1.0e-5,
          "optimization.lr_choice": None,
          "optimization.lr_schedule": "polynomial_decay",
          "optimization.warmup_steps": 0.0,
          "optimization.patience": 20,
          "optimization.top_k": 3,
          "_max_features": 300,  # FIXME: This is a hack, move to AG_ARGS_FIT for v0.7
      }
      for param, val in default_params.items():
          self._set_default_param_value(param, val)
  
file_path: autogluon/tabular/src/autogluon/tabular/models/automm/ft_transformer.py
imports: import logging
  from typing import Dict
  from autogluon.common.features.types import R_CATEGORY, R_FLOAT, R_INT, S_TEXT_NGRAM, S_TEXT_SPECIAL
  from .automm_model import MultiModalPredictorModel
label_desc: Use image node_id 4 for calling the FTTransformerModel obj's underlying member method code with example usage: obj._set_default_params() without return types