code: def _build_optimizer(self):
      parameters = [
          p for p in self.model.parameters() if p.requires_grad
      ]
      self.optimizer = optim.Adam(
          parameters, lr=self.opt["learning_rate"]
      )
      self.scheduler = WarmupCosineSchedule(
          self.optimizer,
          warmup_steps=self.opt["warmup_steps"],
          t_total=self.opt["max_steps"],
      )
  
imports: import os
  import resource
  import numpy
  import torch
  import torch.optim
  from torch.utils.data import DataLoader
  from torch.utils.tensorboard import SummaryWriter
  from graph4nlp.pytorch.models.graph2seq import Graph2Seq
  from graph4nlp.pytorch.models.graph2seq_loss import Graph2SeqLoss
  from graph4nlp.pytorch.modules.evaluation import BLEU
  from args import get_args
  from build_model import get_model
  from dataset import IWSLT14Dataset
  from utils import WarmupCosineSchedule, get_log, wordid2str
label_desc: Use image node_id 6 for calling the NMT obj's underlying member method code with example usage: obj._build_optimizer() without return types