Classifier chains
Classifier chains is a machine learning method for problem transformation in multi-label classification. It combines the computational efficiency of the Binary Relevance method while still being able to take the label dependencies into account for classification.[1]
Problem transformation
Several problem transformation methods exist. One of them is Binary Relevance method (BR). Given a set of labels and a data set with instances of the form where is a feature vector and is a set of labels assigned to the instance. BR transforms the data set into data sets and learns binary classifiers for each label . During this process the information about dependencies between labels is not preserved. This can lead to a situation where a set of labels is assigned to an instance although these labels never co-occur together in the data set. Thus, information about label co-occurrence can help to assign correct label combinations. Loss of this information can in some cases lead to decrease of the classification performance.[2]
Other approach, which takes into account label correlations is Label Powerset method (LP). Each different combination of labels in a data set is considered to be a single label. After transformation a single-label classifier is trained where is the power set of all labels in . The main drawback of this approach is that the number of label combinations grows exponentionally with the number of labels. For example, a multi-label data set with 10 labels can have up to label combinations. This increases the run-time of classification.
Classifier Chains method is based on the BR method and it is efficient even on a big number of labels. Furthermore, it considers dependencies between labels.
Method description
For a given a set of labels Classifier Chain model (CC) learns classifiers as in Binary Relevance method. All classifiers are linked in a chain through feature space.
Given a data set where -th instance has the form where is a subset of labels, is a set of features. The data set is transformed in data sets where instances of the -th data set has the form . If the -th label was assigned to the instance then is , otherwise it is . Thus, classifiers build a chain where each of them learns binary classification of a single label. The features given to each classifier are extended with binary values that indicate which of previous labels were assigned to the instance.
By classifying new instances the labels are again predicted by building a chain of classifiers. The classification begins with first classifier and proceeds to the last one by passing label information between classifiers through the feature space. Hence, the inter-label dependency is preserved. However, the result can vary for different order of chains. For example, if a label often co-occur with some other label only instances of one of the labels, which comes later in the label order, will have information about other one in its feature vector. In order to solve this problem and increase accuracy it is possible to use ensemble of classifiers.[3]
In Ensemble of Classifier Chains (ECC) several CC classifiers can be trained with random order of chains (i.e. random order of labels) on a random subset of data set. Labels of a new instance are predicted by each classifier separately. After that, the total number of predictions or "votes" is counted for each label. The label is accepted if it was predicted by a percentage of classifiers that is bigger than some threshold value.
Another extension of CC, related to ECC, is the Monte Carlo CC (MCC),[4] which employs Monte Carlo methods for finding a good chain sequence and performing efficient inference. Other variants of CC, using different random search methods or considering different dependence structure of classifiers, have been proposed in literature.[5][6][7]
References
- Read, Jesse; Bernhard Pfahringer; Geoff Holmes; Eibe Frank (2009). "Classifier Chains for Multi-label Classification" (PDF). Proc 13th European Conference on Principles and Practice of Knowledge Discovery in Databases and 20th European Conference on Machine Learning. 2009.
- Dembczynski, Krzysztof; Willem Waegeman; Weiwei Cheng; Eyke Hüllermeier (2010). "On label dependence in multi-label classification" (PDF). Workshop Proceedings of Learning from Multi-Label Data. 2010: 5–12.
- Rokach, Lior (2010). "Ensemble-based classifiers" (PDF). Artif. Intell. Rev. Norwell, MA, USA: ACM. 33 (1–2): 1–39. doi:10.1007/s10462-009-9124-7.
- Read, Jesse; Martino, Luca; Luengo, David (2014-03-01). "Efficient monte carlo methods for multi-dimensional learning with classifier chains". Pattern Recognition. Handwriting Recognition and other PR Applications. 47 (3): 1535–1546. arXiv:1211.2190. doi:10.1016/j.patcog.2013.10.006.
- Gonçalves, Eduardo C.; Plastino, Alexandre; Freitas, Alex A. (2015-01-01). "Simpler is Better: A Novel Genetic Algorithm to Induce Compact Multi-label Chain Classifiers" (PDF). Proceedings of the 2015 Annual Conference on Genetic and Evolutionary Computation. GECCO '15. New York, NY, USA: ACM: 559–566. doi:10.1145/2739480.2754650. ISBN 978-1-4503-3472-3.
- Read, Jesse; Martino, Luca; Olmos, Pablo M.; Luengo, David (2015-06-01). "Scalable multi-output label prediction: From classifier chains to classifier trellises". Pattern Recognition. 48 (6): 2096–2109. arXiv:1501.04870. doi:10.1016/j.patcog.2015.01.004.
- Soufan, Othman; Ba-Alawi, Wail; Afeef, Moataz; Essack, Magbubah; Kalnis, Panos; Bajic, Vladimir B. (2016-11-10). "DRABAL: novel method to mine large high-throughput screening assays using Bayesian active learning". Journal of Cheminformatics. 8: 64. doi:10.1186/s13321-016-0177-8. ISSN 1758-2946. PMC 5105261. PMID 27895719.
External links
- Better Classifier Chains for Multi-label Classification Presentation on Classifier Chains by Jesse Read and Fernando Pérez Cruz