Package weka.classifiers.lazy
Class KStar
java.lang.Object
weka.classifiers.AbstractClassifier
weka.classifiers.lazy.KStar
- All Implemented Interfaces:
Serializable
,Cloneable
,Classifier
,KStarConstants
,UpdateableClassifier
,BatchPredictor
,CapabilitiesHandler
,CapabilitiesIgnorer
,CommandlineRunnable
,OptionHandler
,RevisionHandler
,TechnicalInformationHandler
public class KStar
extends AbstractClassifier
implements KStarConstants, UpdateableClassifier, TechnicalInformationHandler
K* is an instance-based classifier, that is the class of a test instance is based upon the class of those training instances similar to it, as determined by some similarity function. It differs from other instance-based learners in that it uses an entropy-based distance function.
For more information on K*, see
John G. Cleary, Leonard E. Trigg: K*: An Instance-based Learner Using an Entropic Distance Measure. In: 12th International Conference on Machine Learning, 108-114, 1995. BibTeX:
For more information on K*, see
John G. Cleary, Leonard E. Trigg: K*: An Instance-based Learner Using an Entropic Distance Measure. In: 12th International Conference on Machine Learning, 108-114, 1995. BibTeX:
@inproceedings{Cleary1995, author = {John G. Cleary and Leonard E. Trigg}, booktitle = {12th International Conference on Machine Learning}, pages = {108-114}, title = {K*: An Instance-based Learner Using an Entropic Distance Measure}, year = {1995} }Valid options are:
-B <num> Manual blend setting (default 20%)
-E Enable entropic auto-blend setting (symbolic class only)
-M <char> Specify the missing value treatment mode (default a) Valid options are: a(verage), d(elete), m(axdiff), n(ormal)
- Version:
- $Revision: 15519 $
- Author:
- Len Trigg (len@reeltwo.com), Abdelaziz Mahoui (am14@cs.waikato.ac.nz) - Java port
- See Also:
-
Field Summary
Modifier and TypeFieldDescriptionstatic final Tag[]
Define possible missing value handling methodsFields inherited from class weka.classifiers.AbstractClassifier
BATCH_SIZE_DEFAULT, NUM_DECIMAL_PLACES_DEFAULT
Fields inherited from interface weka.classifiers.lazy.kstar.KStarConstants
B_ENTROPY, B_SPHERE, EPSILON, FLOOR, FLOOR1, INITIAL_STEP, LOG2, M_AVERAGE, M_DELETE, M_MAXDIFF, M_NORMAL, NUM_RAND_COLS, OFF, ON, ROOT_FINDER_ACCURACY, ROOT_FINDER_MAX_ITER
-
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescriptionvoid
buildClassifier
(Instances instances) Generates the classifier.double[]
distributionForInstance
(Instance instance) Calculates the class membership probabilities for the given test instance.Returns the tip text for this propertyReturns default capabilities of the classifier.boolean
Get whether entropic blending being usedint
Get the value of the global blend parameterGets the method to use for handling missing values.String[]
Gets the current settings of K*.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 the tip text for this propertyReturns a string describing classifierReturns an enumeration describing the available options.static void
Main method for testing this class.Returns the tip text for this propertyvoid
setEntropicAutoBlend
(boolean e) Set whether entropic blending is to be used.void
setGlobalBlend
(int b) Set the global blend parametervoid
setMissingMode
(SelectedTag newMode) Sets the method to use for handling missing values.void
setOptions
(String[] options) Parses a given list of options.toString()
Returns a description of this classifier.void
updateClassifier
(Instance instance) Adds the supplied instance to the training setMethods inherited from class weka.classifiers.AbstractClassifier
batchSizeTipText, classifyInstance, debugTipText, distributionsForInstances, doNotCheckCapabilitiesTipText, forName, getBatchSize, getDebug, getDoNotCheckCapabilities, getNumDecimalPlaces, implementsMoreEfficientBatchPrediction, makeCopies, makeCopy, numDecimalPlacesTipText, postExecution, preExecution, run, runClassifier, setBatchSize, setDebug, setDoNotCheckCapabilities, setNumDecimalPlaces
-
Field Details
-
TAGS_MISSING
Define possible missing value handling methods
-
-
Constructor Details
-
KStar
public KStar()
-
-
Method Details
-
globalInfo
Returns a string describing classifier- Returns:
- a description 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:
getTechnicalInformation
in interfaceTechnicalInformationHandler
- Returns:
- the technical information about this class
-
getCapabilities
Returns default capabilities of the classifier.- Specified by:
getCapabilities
in interfaceCapabilitiesHandler
- Specified by:
getCapabilities
in interfaceClassifier
- Overrides:
getCapabilities
in classAbstractClassifier
- Returns:
- the capabilities of this classifier
- See Also:
-
buildClassifier
Generates the classifier.- Specified by:
buildClassifier
in interfaceClassifier
- Parameters:
instances
- set of instances serving as training data- Throws:
Exception
- if the classifier has not been generated successfully
-
updateClassifier
Adds the supplied instance to the training set- Specified by:
updateClassifier
in interfaceUpdateableClassifier
- Parameters:
instance
- the instance to add- Throws:
Exception
- if instance could not be incorporated successfully
-
distributionForInstance
Calculates the class membership probabilities for the given test instance.- Specified by:
distributionForInstance
in interfaceClassifier
- Overrides:
distributionForInstance
in classAbstractClassifier
- Parameters:
instance
- the instance to be classified- Returns:
- predicted class probability distribution
- Throws:
Exception
- if an error occurred during the prediction
-
missingModeTipText
Returns the tip text for this property- Returns:
- tip text for this property suitable for displaying in the explorer/experimenter gui
-
getMissingMode
Gets the method to use for handling missing values. Will be one of M_NORMAL, M_AVERAGE, M_MAXDIFF or M_DELETE.- Returns:
- the method used for handling missing values.
-
setMissingMode
Sets the method to use for handling missing values. Values other than M_NORMAL, M_AVERAGE, M_MAXDIFF and M_DELETE will be ignored.- Parameters:
newMode
- the method to use for handling missing values.
-
listOptions
Returns an enumeration describing the available options.- Specified by:
listOptions
in interfaceOptionHandler
- Overrides:
listOptions
in classAbstractClassifier
- Returns:
- an enumeration of all the available options.
-
globalBlendTipText
Returns the tip text for this property- Returns:
- tip text for this property suitable for displaying in the explorer/experimenter gui
-
setGlobalBlend
public void setGlobalBlend(int b) Set the global blend parameter- Parameters:
b
- the value for global blending
-
getGlobalBlend
public int getGlobalBlend()Get the value of the global blend parameter- Returns:
- the value of the global blend parameter
-
entropicAutoBlendTipText
Returns the tip text for this property- Returns:
- tip text for this property suitable for displaying in the explorer/experimenter gui
-
setEntropicAutoBlend
public void setEntropicAutoBlend(boolean e) Set whether entropic blending is to be used.- Parameters:
e
- true if entropic blending is to be used
-
getEntropicAutoBlend
public boolean getEntropicAutoBlend()Get whether entropic blending being used- Returns:
- true if entropic blending is used
-
setOptions
Parses a given list of options. Valid options are:-B <num> Manual blend setting (default 20%)
-E Enable entropic auto-blend setting (symbolic class only)
-M <char> Specify the missing value treatment mode (default a) Valid options are: a(verage), d(elete), m(axdiff), n(ormal)
- Specified by:
setOptions
in interfaceOptionHandler
- Overrides:
setOptions
in classAbstractClassifier
- 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 K*.- Specified by:
getOptions
in interfaceOptionHandler
- Overrides:
getOptions
in classAbstractClassifier
- Returns:
- an array of strings suitable for passing to setOptions()
-
toString
Returns a description of this classifier. -
main
Main method for testing this class.- Parameters:
argv
- should contain command line options (see setOptions)
-
getRevision
Returns the revision string.- Specified by:
getRevision
in interfaceRevisionHandler
- Overrides:
getRevision
in classAbstractClassifier
- Returns:
- the revision
-