Package weka.classifiers.mi
Class MIEMDD
java.lang.Object
weka.classifiers.Classifier
weka.classifiers.RandomizableClassifier
weka.classifiers.mi.MIEMDD
- All Implemented Interfaces:
Serializable,Cloneable,CapabilitiesHandler,MultiInstanceCapabilitiesHandler,OptionHandler,Randomizable,RevisionHandler,TechnicalInformationHandler
public class MIEMDD
extends RandomizableClassifier
implements OptionHandler, MultiInstanceCapabilitiesHandler, TechnicalInformationHandler
EMDD model builds heavily upon Dietterich's Diverse Density (DD) algorithm.
It is a general framework for MI learning of converting the MI problem to a single-instance setting using EM. In this implementation, we use most-likely cause DD model and only use 3 random selected postive bags as initial starting points of EM.
For more information see:
Qi Zhang, Sally A. Goldman: EM-DD: An Improved Multiple-Instance Learning Technique. In: Advances in Neural Information Processing Systems 14, 1073-108, 2001. BibTeX:
It is a general framework for MI learning of converting the MI problem to a single-instance setting using EM. In this implementation, we use most-likely cause DD model and only use 3 random selected postive bags as initial starting points of EM.
For more information see:
Qi Zhang, Sally A. Goldman: EM-DD: An Improved Multiple-Instance Learning Technique. In: Advances in Neural Information Processing Systems 14, 1073-108, 2001. BibTeX:
@inproceedings{Zhang2001,
author = {Qi Zhang and Sally A. Goldman},
booktitle = {Advances in Neural Information Processing Systems 14},
pages = {1073-108},
publisher = {MIT Press},
title = {EM-DD: An Improved Multiple-Instance Learning Technique},
year = {2001}
}
Valid options are:
-N <num> Whether to 0=normalize/1=standardize/2=neither. (default 1=standardize)
-S <num> Random number seed. (default 1)
-D If set, classifier is run in debug mode and may output additional info to the console
- Version:
- $Revision: 9144 $
- Author:
- Eibe Frank (eibe@cs.waikato.ac.nz), Lin Dong (ld21@cs.waikato.ac.nz)
- See Also:
-
Field Summary
FieldsModifier and TypeFieldDescriptionstatic final intNo normalization/standardizationstatic final intNormalize training datastatic final intStandardize training datastatic final Tag[]The filter to apply to the training data -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionvoidbuildClassifier(Instances train) Builds the classifierdouble[]Computes the distribution for a given exemplarReturns the tip text for this propertyReturns default capabilities of the classifier.Gets how the training data will be transformed.Returns the capabilities of this multi-instance classifier for the relational data.String[]Gets the current settings of the classifier.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 this filterReturns an enumeration describing the available optionsstatic voidMain method for testing this class.voidsetFilterType(SelectedTag newType) Sets how the training data will be transformed.voidsetOptions(String[] options) Parses a given list of options.toString()Gets a string describing the classifier.Methods inherited from class weka.classifiers.RandomizableClassifier
getSeed, seedTipText, setSeedMethods inherited from class weka.classifiers.Classifier
classifyInstance, debugTipText, forName, getDebug, makeCopies, makeCopy, setDebug
-
Field Details
-
FILTER_NORMALIZE
public static final int FILTER_NORMALIZENormalize training data- See Also:
-
FILTER_STANDARDIZE
public static final int FILTER_STANDARDIZEStandardize training data- See Also:
-
FILTER_NONE
public static final int FILTER_NONENo normalization/standardization- See Also:
-
TAGS_FILTER
The filter to apply to the training data
-
-
Constructor Details
-
MIEMDD
public MIEMDD()
-
-
Method Details
-
globalInfo
Returns a string describing this filter- Returns:
- a description of the filter suitable for displaying in the explorer/experimenter gui
-
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
-
listOptions
Returns an enumeration describing the available options- Specified by:
listOptionsin interfaceOptionHandler- Overrides:
listOptionsin classRandomizableClassifier- Returns:
- an enumeration of all the available options
-
setOptions
Parses a given list of options. Valid options are:-N <num> Whether to 0=normalize/1=standardize/2=neither. (default 1=standardize)
-S <num> Random number seed. (default 1)
-D If set, classifier is run in debug mode and may output additional info to the console
- Specified by:
setOptionsin interfaceOptionHandler- Overrides:
setOptionsin classRandomizableClassifier- Parameters:
options- the list of options as an array of strings- Throws:
Exception- if an option is not supported
-
getOptions
Gets the current settings of the classifier.- Specified by:
getOptionsin interfaceOptionHandler- Overrides:
getOptionsin classRandomizableClassifier- Returns:
- an array of strings suitable for passing to setOptions
-
filterTypeTipText
Returns the tip text for this property- Returns:
- tip text for this property suitable for displaying in the explorer/experimenter gui
-
getFilterType
Gets how the training data will be transformed. Will be one of FILTER_NORMALIZE, FILTER_STANDARDIZE, FILTER_NONE.- Returns:
- the filtering mode
-
setFilterType
Sets how the training data will be transformed. Should be one of FILTER_NORMALIZE, FILTER_STANDARDIZE, FILTER_NONE.- Parameters:
newType- the new filtering mode
-
getCapabilities
Returns default capabilities of the classifier.- Specified by:
getCapabilitiesin interfaceCapabilitiesHandler- Overrides:
getCapabilitiesin classClassifier- Returns:
- the capabilities of this classifier
- See Also:
-
getMultiInstanceCapabilities
Returns the capabilities of this multi-instance classifier for the relational data.- Specified by:
getMultiInstanceCapabilitiesin interfaceMultiInstanceCapabilitiesHandler- Returns:
- the capabilities of this object
- See Also:
-
buildClassifier
Builds the classifier- Specified by:
buildClassifierin classClassifier- Parameters:
train- the training data to be used for generating the boosted classifier.- Throws:
Exception- if the classifier could not be built successfully
-
distributionForInstance
Computes the distribution for a given exemplar- Overrides:
distributionForInstancein classClassifier- Parameters:
exmp- the exemplar for which distribution is computed- Returns:
- the distribution
- Throws:
Exception- if the distribution can't be computed successfully
-
toString
Gets a string describing the 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 command line arguments to the scheme (see Evaluation)
-