code: def multiModal_before_train(self):
      # bert lr
      parameters = []
      params = {"lr": self.args.lr, "weight_decay": 1e-2}
      params["params"] = []
      for name, param in self.model.named_parameters():
          if "text" in name:
              params["params"].append(param)
      parameters.append(params)
  
      # vit lr
      params = {"lr": 3e-5, "weight_decay": 1e-2}
      params["params"] = []
      for name, param in self.model.named_parameters():
          if "vision" in name:
              params["params"].append(param)
      parameters.append(params)
  
      # crf lr
      params = {"lr": 5e-2, "weight_decay": 1e-2}
      params["params"] = []
      for name, param in self.model.named_parameters():
          if "crf" in name or name.startswith("fc"):
              params["params"].append(param)
      parameters.append(params)
  
      self.optimizer = optim.AdamW(parameters)
  
      self.model.to(self.args.device)
  
      self.scheduler = get_linear_schedule_with_warmup(
          optimizer=self.optimizer,
          num_warmup_steps=self.args.warmup_ratio
          * self.train_num_steps,
          num_training_steps=self.train_num_steps,
      )
  
file_path: DeepKE/src/deepke/name_entity_re/multimodal/modules/train.py
imports: import torch
  from torch import optim
  from tqdm import tqdm
  from transformers.optimization import get_linear_schedule_with_warmup
  from seqeval.metrics import classification_report
label_desc: Use image node_id 7 for calling the Trainer obj's underlying member method code with example usage: obj.multiModal_before_train() without return types