code: def update_core(self):
      gen_optimizer = self.get_optimizer("gen")
      dis_optimizer = self.get_optimizer("dis")
  
      batch = self.get_iterator("main").next()
      x_real = Variable(self.converter(batch, self.device)) / 255.0
      xp = chainer.cuda.get_array_module(x_real.data)
  
      gen, dis = self.gen, self.dis
      batchsize = len(batch)
  
      y_real = dis(x_real)
  
      z = Variable(xp.asarray(gen.make_hidden(batchsize)))
      x_fake = gen(z)
      y_fake = dis(x_fake)
  
      dis_optimizer.update(self.loss_dis, dis, y_fake, y_real)
      gen_optimizer.update(self.loss_gen, gen, y_fake)
  
file_path: tensorboardX/examples/chainer/extension_logger/updater.py
imports: from __future__ import print_function
  import chainer
  import chainer.functions
  from chainer import Variable
label_desc: Use image node_id 4 for calling the DCGANUpdater obj's underlying member method code with example usage: obj.update_core() without return types