find.best.f: Best hierarchical F-score

Description Usage Arguments Details Value Examples

View source: R/perf.meas.R

Description

Select the best hierarchical F-score by choosing an appropriate threshold in the scores.

Usage

1
2
3
4
5
6
7
find.best.f(
  target,
  predicted,
  n.round = 3,
  verbose = TRUE,
  b.per.example = FALSE
)

Arguments

target

matrix with the target multilabel: rows correspond to examples and columns to classes. target[i,j]=1 if example i belongs to class j, target[i,j]=0 otherwise.

predicted

a numeric matrix with continuous predicted values (scores): rows correspond to examples and columns to classes.

n.round

number of rounding digits to be applied to predicted (default=3).

verbose

a boolean value. If TRUE (def.) the number of iterations are printed on stdout.

b.per.example

a boolean value.

  • TRUE: results are returned for each example;

  • FALSE: only the average results are returned;

Details

All the examples having no positive annotations are discarded. The predicted scores matrix (predicted) is rounded according to parameter n.round and all the values of predicted are divided by max(predicted). Then all the thresholds corresponding to all the different values included in predicted are attempted, and the threshold leading to the maximum F-measure is selected.

Names of rows and columns of target and predicted matrix must be provided in the same order, otherwise a stop message is returned.

Value

Two different outputs respect to the input parameter b.per.example:

Examples

1
2
3
4
5
6
7
data(graph);
data(labels);
data(scores);
root <- root.node(g);
L <- L[,-which(colnames(L)==root)];
S <- S[,-which(colnames(S)==root)];
fscore <- find.best.f(L, S, n.round=3, verbose=TRUE, b.per.example=TRUE);

HEMDAG documentation built on Feb. 12, 2021, 5:13 p.m.