|View source on GitHub|
Creates a Head for multi label classification. (deprecated)
tf.contrib.learn.multi_label_head( n_classes, label_name=None, weight_column_name=None, enable_centered_bias=False, head_name=None, thresholds=None, metric_class_ids=None, loss_fn=None )
Multi-label classification handles the case where each example may have zero
or more associated labels, from a discrete set. This is distinct from
multi_class_head which has exactly one label from a discrete set.
This head by default uses sigmoid cross entropy loss, which expects as input
a multi-hot tensor of shape
n_classes: Integer, number of classes, must be >= 2
label_name: String, name of the key in label dict. Can be null if label is a tensor (single headed models).
weight_column_name: A string defining feature column name representing weights. It is used to down weight or boost examples during training. It will be multiplied by the loss of the example.
enable_centered_bias: A bool. If True, estimator will learn a centered bias variable for each class. Rest of the model structure learns the residual after centered bias.
head_name: name of the head. If provided, predictions, summary and metrics keys will be suffixed by
"/" + head_nameand the default variable scope will be
thresholds: thresholds for eval metrics, defaults to [.5]
metric_class_ids: List of class IDs for which we should report per-class metrics. Must all be in the range
loss_fn: Optional function that takes (
weights) as parameter and returns a weighted scalar loss.
weightsshould be optional. See
An instance of
Head for multi label classification.
ValueError: If n_classes is < 2
ValueError: If loss_fn does not have expected signature.