code: def sigmoid_class_label_loss(top_out,
                               targets,
                               model_hparams,
                               vocab_size,
                               weights_fn):
    
    # Expect inputs of size [batch-size, timesteps, 1, num-classes], where the
    # last dimension of num-classes represents logits for binary labels
    del model_hparams, vocab_size  # unused arg
    loss_scale = tf.losses.sigmoid_cross_entropy(
        multi_class_labels=targets, logits=top_out)
    weights = weights_fn(targets)
    loss_denom = tf.reduce_sum(weights)
    return loss_scale, loss_denom
docs: Loss for class label.