Package weka.classifiers.meta
Class Vote
- All Implemented Interfaces:
Serializable,Cloneable,CapabilitiesHandler,OptionHandler,Randomizable,RevisionHandler,TechnicalInformationHandler
public class Vote
extends RandomizableMultipleClassifiersCombiner
implements TechnicalInformationHandler
Class for combining classifiers. Different
combinations of probability estimates for classification are available.
For more information see:
Ludmila I. Kuncheva (2004). Combining Pattern Classifiers: Methods and Algorithms. John Wiley and Sons, Inc..
J. Kittler, M. Hatef, Robert P.W. Duin, J. Matas (1998). On combining classifiers. IEEE Transactions on Pattern Analysis and Machine Intelligence. 20(3):226-239. Valid options are:
For more information see:
Ludmila I. Kuncheva (2004). Combining Pattern Classifiers: Methods and Algorithms. John Wiley and Sons, Inc..
J. Kittler, M. Hatef, Robert P.W. Duin, J. Matas (1998). On combining classifiers. IEEE Transactions on Pattern Analysis and Machine Intelligence. 20(3):226-239. Valid options are:
-S <num> Random number seed. (default 1)
-B <classifier specification> Full class name of classifier to include, followed by scheme options. May be specified multiple times. (default: "weka.classifiers.rules.ZeroR")
-D If set, classifier is run in debug mode and may output additional info to the console
-R <AVG|PROD|MAJ|MIN|MAX|MED> The combination rule to use (default: AVG)BibTeX:
@book{Kuncheva2004,
author = {Ludmila I. Kuncheva},
publisher = {John Wiley and Sons, Inc.},
title = {Combining Pattern Classifiers: Methods and Algorithms},
year = {2004}
}
@article{Kittler1998,
author = {J. Kittler and M. Hatef and Robert P.W. Duin and J. Matas},
journal = {IEEE Transactions on Pattern Analysis and Machine Intelligence},
number = {3},
pages = {226-239},
title = {On combining classifiers},
volume = {20},
year = {1998}
}
- Version:
- $Revision: 12426 $
- Author:
- Alexander K. Seewald (alex@seewald.at), Eibe Frank (eibe@cs.waikato.ac.nz), Roberto Perdisci (roberto.perdisci@gmail.com)
- See Also:
-
Field Summary
FieldsModifier and TypeFieldDescriptionstatic final intcombination rule: Average of Probabilitiesstatic final intcombination rule: Majority Voting (only nominal classes)static final intcombination rule: Maximum Probabilitystatic final intcombination rule: Median Probability (only numeric class)static final intcombination rule: Minimum Probabilitystatic final intcombination rule: Product of Probabilities (only nominal classes)static final Tag[]combination rules -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionvoidbuildClassifier(Instances data) Buildclassifier selects a classifier from the set of classifiers by minimising error on the training data.doubleclassifyInstance(Instance instance) Classifies the given test instance.Returns the tip text for this propertydouble[]distributionForInstance(Instance instance) Classifies a given instance using the selected combination rule.Returns default capabilities of the classifier.Gets the combination rule usedString[]Gets the current settings of Vote.Returns the revision string.Returns an instance of a TechnicalInformation object, containing detailed information about the technical background of this class, e.g., paper reference or book this class is based on.Returns a string describing classifierReturns an enumeration describing the available options.static voidMain method for testing this class.voidsetCombinationRule(SelectedTag newRule) Sets the combination rule to use.voidsetOptions(String[] options) Parses a given list of options.toString()Output a representation of this classifierMethods inherited from class weka.classifiers.RandomizableMultipleClassifiersCombiner
getSeed, seedTipText, setSeedMethods inherited from class weka.classifiers.MultipleClassifiersCombiner
classifiersTipText, getClassifier, getClassifiers, setClassifiersMethods inherited from class weka.classifiers.Classifier
debugTipText, forName, getDebug, makeCopies, makeCopy, setDebug
-
Field Details
-
AVERAGE_RULE
public static final int AVERAGE_RULEcombination rule: Average of Probabilities- See Also:
-
PRODUCT_RULE
public static final int PRODUCT_RULEcombination rule: Product of Probabilities (only nominal classes)- See Also:
-
MAJORITY_VOTING_RULE
public static final int MAJORITY_VOTING_RULEcombination rule: Majority Voting (only nominal classes)- See Also:
-
MIN_RULE
public static final int MIN_RULEcombination rule: Minimum Probability- See Also:
-
MAX_RULE
public static final int MAX_RULEcombination rule: Maximum Probability- See Also:
-
MEDIAN_RULE
public static final int MEDIAN_RULEcombination rule: Median Probability (only numeric class)- See Also:
-
TAGS_RULES
combination rules
-
-
Constructor Details
-
Vote
public Vote()
-
-
Method Details
-
globalInfo
Returns a string describing classifier- Returns:
- a description suitable for displaying in the explorer/experimenter gui
-
listOptions
Returns an enumeration describing the available options.- Specified by:
listOptionsin interfaceOptionHandler- Overrides:
listOptionsin classRandomizableMultipleClassifiersCombiner- Returns:
- an enumeration of all the available options.
-
getOptions
Gets the current settings of Vote.- Specified by:
getOptionsin interfaceOptionHandler- Overrides:
getOptionsin classRandomizableMultipleClassifiersCombiner- Returns:
- an array of strings suitable for passing to setOptions()
-
setOptions
Parses a given list of options. Valid options are:-S <num> Random number seed. (default 1)
-B <classifier specification> Full class name of classifier to include, followed by scheme options. May be specified multiple times. (default: "weka.classifiers.rules.ZeroR")
-D If set, classifier is run in debug mode and may output additional info to the console
-R <AVG|PROD|MAJ|MIN|MAX|MED> The combination rule to use (default: AVG)
- Specified by:
setOptionsin interfaceOptionHandler- Overrides:
setOptionsin classRandomizableMultipleClassifiersCombiner- Parameters:
options- the list of options as an array of strings- Throws:
Exception- if an option is not supported
-
getTechnicalInformation
Returns an instance of a TechnicalInformation object, containing detailed information about the technical background of this class, e.g., paper reference or book this class is based on.- Specified by:
getTechnicalInformationin interfaceTechnicalInformationHandler- Returns:
- the technical information about this class
-
getCapabilities
Returns default capabilities of the classifier.- Specified by:
getCapabilitiesin interfaceCapabilitiesHandler- Overrides:
getCapabilitiesin classMultipleClassifiersCombiner- Returns:
- the capabilities of this classifier
- See Also:
-
buildClassifier
Buildclassifier selects a classifier from the set of classifiers by minimising error on the training data.- Specified by:
buildClassifierin classClassifier- Parameters:
data- the training data to be used for generating the boosted classifier.- Throws:
Exception- if the classifier could not be built successfully
-
classifyInstance
Classifies the given test instance.- Overrides:
classifyInstancein classClassifier- Parameters:
instance- the instance to be classified- Returns:
- the predicted most likely class for the instance or Instance.missingValue() if no prediction is made
- Throws:
Exception- if an error occurred during the prediction
-
distributionForInstance
Classifies a given instance using the selected combination rule.- Overrides:
distributionForInstancein classClassifier- Parameters:
instance- the instance to be classified- Returns:
- the distribution
- Throws:
Exception- if instance could not be classified successfully
-
combinationRuleTipText
Returns the tip text for this property- Returns:
- tip text for this property suitable for displaying in the explorer/experimenter gui
-
getCombinationRule
Gets the combination rule used- Returns:
- the combination rule used
-
setCombinationRule
Sets the combination rule to use. Values other than- Parameters:
newRule- the combination rule method to use
-
toString
Output a representation of this classifier -
getRevision
Returns the revision string.- Specified by:
getRevisionin interfaceRevisionHandler- Overrides:
getRevisionin classClassifier- Returns:
- the revision
-
main
Main method for testing this class.- Parameters:
argv- should contain the following arguments: -t training file [-T test file] [-c class index]
-