code: def weighted_crossentropy(y_pred, y_true, weight=1.0):
      """Weighted Crossentropy.
  
      Computes weighted sigmoid cross entropy between y_pred (logits) and y_true
      (labels).
  
      Computes a weighted cross entropy.
  
      This is like sigmoid_cross_entropy_with_logits() except that pos_weight,
      allows one to trade off recall and precision by up- or down-weighting the
      cost of a positive error relative to a negative error.
  
      The usual cross-entropy cost is defined as:
  
      `targets * -log(sigmoid(logits)) + (1 - targets) * -log(1 - sigmoid(logits))`
  
      The argument pos_weight is used as a multiplier for the positive targets:
  
      `targets * -log(sigmoid(logits)) * pos_weight + (1 - targets) * -log(1 - sigmoid(logits))`
  
      For brevity, let x = logits, z = targets, q = pos_weight. The loss is:
  
      ```
        qz * -log(sigmoid(x)) + (1 - z) * -log(1 - sigmoid(x))
      = qz * -log(1 / (1 + exp(-x))) + (1 - z) * -log(exp(-x) / (1 + exp(-x)))
      = qz * log(1 + exp(-x)) + (1 - z) * (-log(exp(-x)) + log(1 + exp(-x)))
      = qz * log(1 + exp(-x)) + (1 - z) * (x + log(1 + exp(-x))
      = (1 - z) * x + (qz +  1 - z) * log(1 + exp(-x))
      = (1 - z) * x + (1 + (q - 1) * z) * log(1 + exp(-x))
      ```
  
      Setting l = (1 + (q - 1) * z), to ensure stability and avoid overflow,
      the implementation uses
  
      `(1 - z) * x + l * (log(1 + exp(-abs(x))) + max(-x, 0))`
  
      logits and targets must have the same type and shape.
  
      Arguments:
          y_pred: `Tensor` of `float` type. Predicted values.
          y_true: `Tensor` of `float` type. Targets (labels).
          weight: A coefficient to use on the positive examples.
  
      """
      with tf.name_scope("WeightedCrossentropy"):
          return tf.reduce_mean(
              tf.nn.weighted_cross_entropy_with_logits(
                  targets=y_true, logits=y_pred, pos_weight=weight
              )
          )
  
file_path: tflearn/tflearn/objectives.py
imports: from __future__ import division, print_function, absolute_import
  import tensorflow.compat.v1
  from .config import _EPSILON, _FLOATX
  from .utils import get_from_module
label_desc: Use image node_id 5 for calling a global function with example usage: weighted_crossentropy(y_pred, y_true, weight) and returns: tf