tf.contrib.learn.multi_class_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,
label_keys=None
)
Defined in tensorflow/contrib/learn/python/learn/estimators/head.py
.
Creates a Head
for multi class single label classification. (deprecated)
The Head uses softmax cross entropy loss.
This head expects to be fed integer labels specifying the class index. But
if label_keys
is specified, then labels must be strings from this
vocabulary, and the predicted classes will be strings from the same
vocabulary.
Args:
n_classes
: Integer, number of classes, must be >= 2label_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_name
and the default variable scope will behead_name
.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[0, n_classes)
. Invalid ifn_classes
is 2.loss_fn
: Optional function that takes (labels
,logits
,weights
) as parameter and returns a weighted scalar loss.weights
should be optional. Seetf.losses
label_keys
: Optional list of strings with size[n_classes]
defining the label vocabulary. Only supported forn_classes
> 2.
Returns:
An instance of Head
for multi class classification.
Raises:
ValueError
: ifn_classes
is < 2.ValueError
: Ifmetric_class_ids
is provided whenn_classes
is 2.ValueError
: Iflen(label_keys) != n_classes
.