code: def discriminator(self, imgs):
      nf = 64
      with argscope(
          Conv2D, activation=tf.identity, kernel_size=4, strides=2
      ):
          l = (
              LinearWrap(imgs)
              .Conv2D("conv0", nf, activation=tf.nn.leaky_relu)
              .Conv2D("conv1", nf * 2)
              .LayerNorm("ln1")
              .tf.nn.leaky_relu()
              .Conv2D("conv2", nf * 4)
              .LayerNorm("ln2")
              .tf.nn.leaky_relu()
              .Conv2D("conv3", nf * 8)
              .LayerNorm("ln3")
              .tf.nn.leaky_relu()
              .FullyConnected("fct", 1, activation=tf.identity)()
          )
      return tf.reshape(l, [-1])
  
file_path: tensorpack/examples/GAN/Improved-WGAN.py
imports: import tensorflow
  from tensorpack import *
  from tensorpack.tfutils import get_tf_version_tuple
  from tensorpack.tfutils.scope_utils import auto_reuse_variable_scope
  from tensorpack.tfutils.summary import add_moving_summary
  import DCGAN
  from GAN import SeparateGANTrainer
label_desc: Use image node_id 1 for calling the Model obj's underlying member method code with example usage: obj.discriminator(imgs) and returns: tf