Multi-target prediction tries to achieve better prediction accuracy or speed through prediction of multiple dependent variables at once. It works on multi-target data, which is also supported by Orange’s tab file format using multiclass directive.
List of supported learners:
For evaluation of multi-target methods, see the corresponding section in Multi-target Scoring (scoring).
The addon also includes three sample datasets:
Example of loading an included dataset:
import Orange
data = Orange.data.Table('multitarget:bridges.tab')
The following example uses a simple multi-target data set (generated with generate_multitarget.py) to show some basic functionalities (part of multitarget.py).
import Orange
data = Orange.data.Table('multitarget:bridges.tab')
print 'Features:', data.domain.features
print 'Classes:', data.domain.class_vars
print 'First instance:', data[0]
print 'Actual classes:', data[0].get_classes()
Multi-target learners can build prediction models (classifiers) which then predict (multiple) class values for a new instance (continuation of multitarget.py):
majority = Orange.classification.majority.MajorityLearner()
mt_majority = Orange.multitarget.binary.BinaryRelevanceLearner(learner = majority)
c_majority = mt_majority(data)
print 'Majority predictions:\n', c_majority(data[0])
mt_majority = Orange.multitarget.chain.ClassifierChainLearner(learner = majority)
c_majority = mt_majority(data)
print 'Chain Majority predictions:\n', c_majority(data[0])
pls = Orange.multitarget.pls.PLSClassificationLearner()
c_pls = pls(data)
print 'PLS predictions:\n', c_pls(data[0])
clust_tree = Orange.multitarget.tree.ClusteringTreeLearner()
c_clust_tree = clust_tree(data)
print 'Clustering Tree predictions: \n', c_clust_tree(data[0])