code: def _discriminator_alpha(block_id, progress):
      """Returns the block input parameter for discriminator network.
  
      The discriminator has N blocks with `block_id` = 1,2,...,N. Each block
      block_id accepts an
        - input(block_id) transformed from the real data and
        - the output of block block_id + 1, i.e. output(block_id + 1)
      The final input is a linear combination of them,
      i.e. alpha * input(block_id) + (1 - alpha) * output(block_id + 1)
      where alpha = _discriminator_alpha(block_id, progress).
  
      With a fixed block_id, alpha(block_id, progress) stays to be 1
      when progress <= block_id - 1, then linear decays to 0 when
      block_id - 1 < progress <= block_id, and finally stays at 0
      when progress > block_id.
  
      Args:
        block_id: An integer of generator block id.
        progress: A scalar float `Tensor` of training progress.
  
      Returns:
        A scalar float `Tensor` of block input parameter.
      """
      return tf.clip_by_value(block_id - progress, 0.0, 1.0)
  
imports: import math
  from magenta.models.gansynth.lib import layers
  import tensorflow.compat.v1
  import tf_slim
label_desc: Use image node_id 6 for calling a global function with example usage: _discriminator_alpha(block_id, progress) and returns: tf