Training Policies

There are multiple ways to define the set of positive and negative examples for training the binary classifiers. In HiClass we implemented 6 policies described at 1, which were based on previous work from 2 and 3. In the table below the notation used to define the sets of positive and negative examples is presented, as described by 1.

Symbol

Meaning

\(Tr\)

The set of all training examples

\(Tr^+(c_i)\)

The set of positive training examples of \(c_i\)

\(Tr^-(c_i)\)

The set of negative training examples of \(c_i\)

\(\uparrow (c_i)\)

The parent category of \(c_i\)

\(\downarrow (c_i)\)

The set of children categories of \(c_i\)

\(\Uparrow (c_i)\)

The set of ancestor categories of \(c_i\)

\(\Downarrow (c_i)\)

The set of descendant categories of \(c_i\)

\(\leftrightarrow (c_i)\)

The set of sibling categories of \(c_i\)

\(*(c_i)\)

Denotes examples whose most specific known class is \(c_i\)

Based on this notation, we can define the different policies and their sets of positive and negative examples as follows:

Policy

Positive examples

Negative examples

Exclusive

\(Tr^+(c_i) = *(c_i)\)

\(Tr^-(c_i) = Tr \setminus *(c_i)\)

Less exclusive

\(Tr^+(c_i) = *(c_i)\)

\(Tr^-(c_i) = Tr \setminus *(c_i) \cup \Downarrow (c_i)\)

Less inclusive

\(Tr^+(c_i) = *(c_i) \cup \Downarrow (c_i)\)

\(Tr^-(c_i) = Tr \setminus *(c_i) \cup \Downarrow (c_i)\)

Inclusive

\(Tr^+(c_i) = *(c_i) \cup \Downarrow (c_i)\)

\(Tr^-(c_i) = Tr \setminus *(c_i) \cup \Downarrow (c_i) \cup \Uparrow (c_i)\)

Siblings

\(Tr^+(c_i) = *(c_i) \cup \Downarrow (c_i)\)

\(Tr^-(c_i) = \leftrightarrow (c_i) \cup \Downarrow (\leftrightarrow (c_i))\)

Exclusive siblings

\(Tr^+(c_i) = *(c_i)\)

\(Tr^-(c_i) = \leftrightarrow (c_i)\)

Using as example the class “Wolf” from the hierarchy represented in the image below, we have the following sets of positive and negative examples for each policy:

../_images/local_classifier_per_node.svg

Visual representation of the local classifier per node approach.

Policy

\(Tr^+(c_{Wolf})\)

\(Tr^-(c_{Wolf})\)

Exclusive

Wolf

Reptile, Snake, Lizard, Mammal, Cat, Dog

Less exclusive

Wolf

Reptile, Snake, Lizard, Mammal, Cat

Less inclusive

Wolf, Dog

Reptile, Snake, Lizard, Mammal, Cat

Inclusive

Wolf, Dog

Reptile, Snake, Lizard, Cat

Siblings

Wolf, Dog

Cat

Exclusive siblings

Wolf

Cat

See also

In terms of code, we explain how to select those different policies here: Binary Training Policies.

1(1,2)

Silla, C. N., & Freitas, A. A. (2011). A survey of hierarchical classification across different application domains. Data Mining and Knowledge Discovery, 22(1), 31-72.

2

Eisner, R., Poulin, B., Szafron, D., Lu, P., & Greiner, R. (2005, November). Improving protein function prediction using the hierarchical structure of the gene ontology. In 2005 IEEE symposium on computational intelligence in bioinformatics and computational biology (pp. 1-10). IEEE.

3

Fagni, T., & Sebastiani, F. (2007, October). On the selection of negative examples for hierarchical text categorization. In Proceedings of the 3rd language technology conference (pp. 24-28).